From ffdeee34afd3c28f603584e80039fc1dc30f1ff9 Mon Sep 17 00:00:00 2001 From: zhangqian <zhangqian@123.com> Date: 星期三, 13 九月 2023 17:27:22 +0800 Subject: [PATCH] 下发工艺参数时记录该工序对应的设备位置 --- service/task.go | 17 +++++++++++++++-- model/procedures.go | 1 + model/response/common.go | 1 + docs/swagger.yaml | 6 ++++++ docs/docs.go | 8 ++++++++ api/v1/task.go | 2 +- docs/swagger.json | 8 ++++++++ 7 files changed, 40 insertions(+), 3 deletions(-) diff --git a/api/v1/task.go b/api/v1/task.go index 4f3b574..ca697e9 100644 --- a/api/v1/task.go +++ b/api/v1/task.go @@ -211,7 +211,7 @@ } err = model.WithTransaction(func(db *gorm.DB) error { - err = taskService.UpdateProcedureStatus(db, params.ProcedureId, model.ProcedureStatusProcessing) + err = taskService.UpdateProcedureStatusAndPosition(db, params.ProcedureId, model.ProcedureStatusProcessing, params.Position) if err != nil { return err } diff --git a/docs/docs.go b/docs/docs.go index 6c17dbd..307d0b1 100644 --- a/docs/docs.go +++ b/docs/docs.go @@ -865,6 +865,10 @@ "id": { "type": "integer" }, + "position": { + "description": "姣忎釜璁惧鍙兘鏈夊涓満浣嶅悓鏃剁敓浜э紝鐢╬osition琛ㄧず浣嶇疆", + "type": "integer" + }, "procedure": { "description": "common.ProductProcedure 瀵硅薄", "allOf": [ @@ -1040,6 +1044,10 @@ "order": { "$ref": "#/definitions/model.Order" }, + "position": { + "description": "褰撳墠浠诲姟鍦ㄨ澶囩鍑犱釜浣嶇疆", + "type": "integer" + }, "procedure": { "$ref": "#/definitions/model.Procedures" } diff --git a/docs/swagger.json b/docs/swagger.json index 381b6f7..cc4599b 100644 --- a/docs/swagger.json +++ b/docs/swagger.json @@ -853,6 +853,10 @@ "id": { "type": "integer" }, + "position": { + "description": "姣忎釜璁惧鍙兘鏈夊涓満浣嶅悓鏃剁敓浜э紝鐢╬osition琛ㄧず浣嶇疆", + "type": "integer" + }, "procedure": { "description": "common.ProductProcedure 瀵硅薄", "allOf": [ @@ -1028,6 +1032,10 @@ "order": { "$ref": "#/definitions/model.Order" }, + "position": { + "description": "褰撳墠浠诲姟鍦ㄨ澶囩鍑犱釜浣嶇疆", + "type": "integer" + }, "procedure": { "$ref": "#/definitions/model.Procedures" } diff --git a/docs/swagger.yaml b/docs/swagger.yaml index ea79766..ba90e7f 100644 --- a/docs/swagger.yaml +++ b/docs/swagger.yaml @@ -242,6 +242,9 @@ type: integer id: type: integer + position: + description: 姣忎釜璁惧鍙兘鏈夊涓満浣嶅悓鏃剁敓浜э紝鐢╬osition琛ㄧず浣嶇疆 + type: integer procedure: allOf: - $ref: '#/definitions/common.ProductProcedure' @@ -359,6 +362,9 @@ type: integer order: $ref: '#/definitions/model.Order' + position: + description: 褰撳墠浠诲姟鍦ㄨ澶囩鍑犱釜浣嶇疆 + type: integer procedure: $ref: '#/definitions/model.Procedures' type: object diff --git a/model/procedures.go b/model/procedures.go index a2aade5..99e45f4 100644 --- a/model/procedures.go +++ b/model/procedures.go @@ -17,6 +17,7 @@ OrderID string `gorm:"index;type:varchar(191);not null;comment:璁㈠崟ID" json:"-"` DeviceID string `gorm:"index;type:varchar(191);comment:璁惧ID" json:"deviceId"` ProcedureID string `gorm:"index;type:varchar(191);comment:宸ュ簭ID" json:"procedureId"` + Position int `gorm:"type:int;comment:宸ヤ綔浣嶇疆" json:"position"` //姣忎釜璁惧鍙兘鏈夊涓満浣嶅悓鏃剁敓浜э紝鐢╬osition琛ㄧず浣嶇疆 StartTime int64 `gorm:"comment:璁″垝寮�濮嬫椂闂�" json:"startTime"` EndTime int64 `gorm:"comment:璁″垝缁撴潫鏃堕棿" json:"endTime"` Status ProcedureStatus diff --git a/model/response/common.go b/model/response/common.go index 99f8a6a..269909f 100644 --- a/model/response/common.go +++ b/model/response/common.go @@ -21,6 +21,7 @@ type TaskData struct { Order *model.Order Procedure *model.Procedures + Position int //褰撳墠浠诲姟鍦ㄨ澶囩鍑犱釜浣嶇疆 AllProcedures []string CurrentProcedureIndex int } diff --git a/service/task.go b/service/task.go index 96f2b4f..16bfd92 100644 --- a/service/task.go +++ b/service/task.go @@ -66,8 +66,11 @@ } for _, procedure := range procedures { taskData := response.TaskData{ - Order: orderMap[procedure.WorkOrderID], - Procedure: procedure, + Order: orderMap[procedure.WorkOrderID], + Procedure: procedure, + AllProcedures: nil, + CurrentProcedureIndex: 0, + Position: procedure.Position, } taskDataList = append(taskDataList, &taskData) } @@ -82,6 +85,16 @@ return procedure, ecode.OK } +func (slf TaskService) UpdateProcedureStatusAndPosition(db *gorm.DB, id int, status model.ProcedureStatus, position int) error { + if status == model.ProcedureStatusFinished { + ProgressCacheUnset() + } + return model.NewProceduresSearch(db).SetId(id).UpdateByMap(map[string]interface{}{ + "status": status, + "position": position, + }) +} + func (slf TaskService) UpdateProcedureStatus(db *gorm.DB, id int, status model.ProcedureStatus) error { if status == model.ProcedureStatusFinished { ProgressCacheUnset() -- Gitblit v1.8.0