From b3d87ae859f20f3bfb4d2e495d7a0f316900b670 Mon Sep 17 00:00:00 2001 From: zhangqian <zhangqian@123.com> Date: 星期二, 28 十一月 2023 17:12:21 +0800 Subject: [PATCH] 获取生产进度接口有工序id参数从数据库查询实际开始时间和实际结束时间 --- api/v1/plc.go | 16 ++++++++++++---- service/progress.go | 2 ++ 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/api/v1/plc.go b/api/v1/plc.go index f2c21f1..c4638dc 100644 --- a/api/v1/plc.go +++ b/api/v1/plc.go @@ -34,6 +34,9 @@ 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) @@ -46,14 +49,17 @@ 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) @@ -68,8 +74,10 @@ } 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) } diff --git a/service/progress.go b/service/progress.go index 0f18fb9..ee41c05 100644 --- a/service/progress.go +++ b/service/progress.go @@ -34,6 +34,7 @@ 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 { @@ -50,6 +51,7 @@ 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) -- Gitblit v1.8.0