获取生产进度接口有工序id参数从数据库查询实际开始时间和实际结束时间
| | |
| | | finishNumber interface{} |
| | | totalNumber interface{} |
| | | ) |
| | | |
| | | resp := new(response.ProductProgress) |
| | | |
| | | if isConnect { |
| | | finishNumber, _ = service.PlcCacheGet(conf.Conf.CurrentDeviceID, params.Channel, constvar.PlcCacheKeyFinishNumber) |
| | | totalNumber, _ = service.PlcCacheGet(conf.Conf.CurrentDeviceID, params.Channel, constvar.PlcCacheKeyTotalNumber) |
| | |
| | | totalNumber = workOrder.Amount.IntPart() |
| | | } |
| | | } else { |
| | | _, workOrder, _ := service.NewTaskService().GetProcedureAndWorkOrder(params.ProcedureId) |
| | | procedure, workOrder, _ := service.NewTaskService().GetProcedureAndWorkOrder(params.ProcedureId) |
| | | if workOrder != nil { |
| | | totalNumber = workOrder.Amount.IntPart() |
| | | } |
| | | if procedure != nil { |
| | | resp.RealStartTime = procedure.RealStartTime |
| | | resp.RealEndTime = procedure.RealEndTime |
| | | } |
| | | } |
| | | } |
| | | |
| | | resp := new(response.ProductProgress) |
| | | resp.FinishNumber = cast.ToInt(finishNumber) |
| | | resp.TotalNumber = cast.ToInt(totalNumber) |
| | | |
| | |
| | | } |
| | | resp.PlcStatus = plcStatus |
| | | |
| | | resp.RealStartTime = service.TaskStartTimeGet(conf.Conf.CurrentDeviceID, params.Channel) |
| | | resp.RealEndTime = service.TaskEndTimeGet(conf.Conf.CurrentDeviceID, params.Channel) |
| | | if params.ProcedureId == 0 { |
| | | resp.RealStartTime = service.TaskStartTimeGet(conf.Conf.CurrentDeviceID, params.Channel) |
| | | resp.RealEndTime = service.TaskEndTimeGet(conf.Conf.CurrentDeviceID, params.Channel) |
| | | } |
| | | |
| | | ctx.OkWithDetailed(resp) |
| | | } |
| | |
| | | return nil |
| | | } |
| | | |
| | | // UpdateProgress 仅限plc数据采集定时任务用 |
| | | func (slf ProgressService) UpdateProgress(deviceID string, channel int32, finishedQuantity int64) (err error) { |
| | | progressCache, err := slf.GetCurrentProgress(deviceID, channel) |
| | | if err != nil { |
| | |
| | | return nil |
| | | } |
| | | |
| | | // GetCurrentProgress 仅限plc数据采集定时任务用 |
| | | func (slf ProgressService) GetCurrentProgress(deviceID string, channel int32) (progressCache *model.ProductionProgress, err error) { |
| | | var ok bool |
| | | progressCache, ok = ProgressCacheGet(deviceID, channel) |