| | |
| | | "apsClient/model/response" |
| | | _ "apsClient/model/response" |
| | | "apsClient/pkg/contextx" |
| | | "apsClient/pkg/ecode" |
| | | "apsClient/service" |
| | | "github.com/gin-gonic/gin" |
| | | "github.com/spf13/cast" |
| | |
| | | if !ok { |
| | | return |
| | | } |
| | | |
| | | plcConfig, code := service.NewDevicePlcService().GetDevicePlc() |
| | | if code != ecode.OK { |
| | | ctx.FailWithMsg(ecode.UnknownErr, "请先配置PLC") |
| | | return |
| | | } |
| | | |
| | | finishNumber, err := service.PlcRead(plcConfig, constvar.PlcStartAddressTypeFinishNumber) |
| | | if err != nil { |
| | | ctx.FailWithMsg(ecode.UnknownErr, "读取数据失败,请检查plc配置") |
| | | return |
| | | } |
| | | totalNumber, err := service.PlcRead(plcConfig, constvar.PlcStartAddressTypeTotalNumber) |
| | | if err != nil { |
| | | ctx.FailWithMsg(ecode.UnknownErr, "读取数据失败,请检查plc配置") |
| | | return |
| | | } |
| | | |
| | | finishNumber, _ := service.PlcCacheGet(constvar.PlcCacheKeyFinishNumber) |
| | | totalNumber, _ := service.PlcCacheGet(constvar.PlcCacheKeyTotalNumber) |
| | | resp := new(response.ProductProgress) |
| | | resp.FinishNumber = cast.ToInt(finishNumber) |
| | | resp.TotalNumber = cast.ToInt(totalNumber) |
| | |
| | | func (slf *PlcApi) SetProductNumber(c *gin.Context) { |
| | | ctx, ok := contextx.NewContext(c, nil) |
| | | if !ok { |
| | | return |
| | | } |
| | | |
| | | taskData, code := service.NewTaskService().GetTask() |
| | | if code != ecode.OK { |
| | | ctx.Fail(code) |
| | | return |
| | | } |
| | | |
| | | if taskData.Order == nil { |
| | | ctx.FailWithMsg(ecode.UnknownErr, "当前没有待生产工单") |
| | | return |
| | | } |
| | | |
| | | plcConfig, code := service.NewDevicePlcService().GetDevicePlc() |
| | | if code != ecode.OK { |
| | | ctx.FailWithMsg(ecode.UnknownErr, "请先配置PLC") |
| | | return |
| | | } |
| | | |
| | | err := service.PlcWrite(plcConfig, constvar.PlcStartAddressTypeFinishNumber, taskData.Order.Amount.IntPart()) |
| | | if err != nil { |
| | | ctx.FailWithMsg(ecode.UnknownErr, "设置失败,请检查plc配置") |
| | | return |
| | | } |
| | | ctx.Ok() |