| | |
| | | ProductProcedureID: procedure.ProductProcedureID, |
| | | IsProcessing: false, |
| | | IsFinish: true, |
| | | FinishedQuantity: procedure.FinishedQuantity, |
| | | } |
| | | return service.NewTaskService().SaveTaskStatusSync(db, &record) |
| | | }) |
| | |
| | | return |
| | | } |
| | | |
| | | service.TaskFlagUnset(conf.Conf.CurrentDeviceID, procedure.Channel) |
| | | service.TaskEndTimeSet(conf.Conf.CurrentDeviceID, procedure.Channel, time.Now().Unix()) //设置工序运行结束时间 |
| | | service.TaskFlagUnset(procedure.DeviceID, procedure.Channel) |
| | | service.TaskEndTimeSet(procedure.DeviceID, procedure.Channel, time.Now().Unix()) //设置工序运行结束时间 |
| | | ctx.Ok() |
| | | } |
| | | |
| | |
| | | processModelNumber = processModel.Number |
| | | } |
| | | |
| | | fieldType := constvar.PlcStartAddressTypeTotalNumber |
| | | for _, pc := range plcConfig.Details { //如果有写入地址,优先往写入地址写入,没有的话往读取地址写入 |
| | | if pc.FieldName == constvar.PlcStartAddressTypeTotalNumberWrite && pc.Channel == procedure.Channel { |
| | | fieldType = constvar.PlcStartAddressTypeTotalNumberWrite |
| | | } |
| | | } |
| | | plcConfig.CurrentTryTimes = 0 |
| | | err = service.PlcWrite(plcConfig, constvar.PlcStartAddressTypeTotalNumber, procedure.Channel, order.Amount.IntPart()) |
| | | err = service.PlcWrite(plcConfig, fieldType, procedure.Channel, order.Amount.IntPart()) |
| | | if err != nil { |
| | | ctx.FailWithMsg(ecode.NeedConfirmedErr, "PLC请求失败,请检查PLC配置!") |
| | | return |
| | |
| | | return err |
| | | } |
| | | err = taskService.UpdateOrderStatus(db, order.ID, model.OrderStatusProcessing) |
| | | if err != nil { |
| | | return err |
| | | } |
| | | err = service.NewProgressService().Add(db, procedure, order) |
| | | if err != nil { |
| | | return err |
| | | } |
| | |
| | | return |
| | | } |
| | | |
| | | service.TaskFlagSet(conf.Conf.CurrentDeviceID, procedure.Channel, int(procedure.ID)) |
| | | service.TaskStartTimeSet(conf.Conf.CurrentDeviceID, procedure.Channel, time.Now().Unix()) //设置工序运行开始时间 |
| | | service.TaskEndTimeSet(conf.Conf.CurrentDeviceID, procedure.Channel, 0) //设置工序运行结束时间 |
| | | service.TaskFlagSet(procedure.DeviceID, procedure.Channel, int(procedure.ID)) |
| | | service.TaskStartTimeSet(procedure.DeviceID, procedure.Channel, time.Now().Unix()) //设置工序运行开始时间 |
| | | service.TaskEndTimeSet(procedure.DeviceID, procedure.Channel, 0) //设置工序运行结束时间 |
| | | ctx.Ok() |
| | | } |
| | | |
| | |
| | | logx.Errorf("miss param address, k:%v, v:%v", k, v) |
| | | continue |
| | | } |
| | | err := service.PlcWriteDirect(plcConfig, address, v) |
| | | err := service.PlcWriteDirect(plcConfig, v, &model.DevicePlcAddress{ |
| | | StartAddress: address, |
| | | }) |
| | | if err != nil { |
| | | plcConfig.CurrentErr = err |
| | | failedNumbers++ |