From 0cc034256b85bd3eb2e9482231d6e5649624cde2 Mon Sep 17 00:00:00 2001
From: jiangshuai <291802688@qq.com>
Date: 星期一, 13 十一月 2023 11:50:59 +0800
Subject: [PATCH] 增加取消接口,及相关修改
---
constvar/const.go | 1
controllers/product_controller.go | 35 +++++++++++++++++
controllers/operation_type.go | 6 +++
controllers/operation.go | 35 +++++++++++++++++
router/router.go | 3 +
5 files changed, 79 insertions(+), 1 deletions(-)
diff --git a/constvar/const.go b/constvar/const.go
index d82cb6c..5ca6de9 100644
--- a/constvar/const.go
+++ b/constvar/const.go
@@ -176,6 +176,7 @@
OperationStatus_Waiting //姝e湪绛夊緟
OperationStatus_Ready //灏辩华
OperationStatus_Finish //瀹屾垚
+ OperationStatus_Cancel //瀹屾垚
)
type PostType int
diff --git a/controllers/operation.go b/controllers/operation.go
index 08031a9..d9b4200 100644
--- a/controllers/operation.go
+++ b/controllers/operation.go
@@ -763,3 +763,38 @@
}
util.ResponseFormat(c, code.Success, companies)
}
+
+// Cancel
+//
+// @Tags 鍏ュ簱/鍑哄簱
+// @Summary 鍙栨秷
+// @Produce application/json
+// @Param id path int true "id"
+// @Success 200 {object} util.Response "鎴愬姛"
+// @Router /api-wms/v1/operation/cancel/{id} [put]
+func (slf OperationController) Cancel(c *gin.Context) {
+ id, err := strconv.Atoi(c.Param("id"))
+ if err != nil {
+ util.ResponseFormat(c, code.RequestParamError, "閿欒鐨刬d鍊�")
+ return
+ }
+ if id == 0 {
+ util.ResponseFormat(c, code.RequestParamError, "id涓�0")
+ return
+ }
+ operation, err := models.NewOperationSearch().SetPreload(true).SetID(id).First()
+ if err != nil {
+ util.ResponseFormat(c, code.RequestParamError, "鏈壘鍒扮浉鍏冲嚭鍏ュ簱淇℃伅:"+err.Error())
+ return
+ }
+ if operation.Status != constvar.OperationStatus_Ready {
+ util.ResponseFormat(c, code.RequestError, "璇ュ嚭鍏ュ簱淇℃伅鏃犳硶鍙栨秷")
+ return
+ }
+ operation.Status = constvar.OperationStatus_Cancel
+ if err := models.NewOperationSearch().Save(operation); err != nil {
+ util.ResponseFormat(c, code.SaveFail, err.Error())
+ return
+ }
+ util.ResponseFormat(c, code.Success, "鎿嶄綔鎴愬姛")
+}
diff --git a/controllers/operation_type.go b/controllers/operation_type.go
index 0ce0a9b..7246617 100644
--- a/controllers/operation_type.go
+++ b/controllers/operation_type.go
@@ -141,6 +141,9 @@
if value, ok := mapStatistics[strconv.Itoa(v.Id)+string(constvar.OperationStatus_Finish)]; ok {
list[k].FinishCount = value.Count
}
+ if value, ok := mapStatistics[strconv.Itoa(v.Id)+string(constvar.OperationStatus_Cancel)]; ok {
+ list[k].FinishCount = value.Count
+ }
}
util.ResponseFormatListWithPage(c, code.Success, list, cast.ToInt(total), params.Page, params.PageSize)
}
@@ -205,6 +208,9 @@
if value, ok := mapStatistics[strconv.Itoa(v.Id)+string(constvar.OperationStatus_Finish)]; ok {
list[k].FinishCount = value.Count
}
+ if value, ok := mapStatistics[strconv.Itoa(v.Id)+string(constvar.OperationStatus_Cancel)]; ok {
+ list[k].FinishCount = value.Count
+ }
}
util.ResponseFormatListWithPage(c, code.Success, list, cast.ToInt(total), params.Page, params.PageSize)
}
diff --git a/controllers/product_controller.go b/controllers/product_controller.go
index 8178e2d..b20a6b5 100644
--- a/controllers/product_controller.go
+++ b/controllers/product_controller.go
@@ -648,3 +648,38 @@
util.ResponseFormatListWithPage(c, code.Success, list, int(total), params.Page, params.PageSize)
}
+
+// CancelDisuse
+//
+// @Tags 浜у搧
+// @Summary 鍙栨秷鎶ュ簾
+// @Produce application/json
+// @Param id path int true "id"
+// @Success 200 {object} util.Response "鎴愬姛"
+// @Router /api-wms/v1/product/cancelDisuse/{id} [put]
+func (slf ProductController) CancelDisuse(c *gin.Context) {
+ id, err := strconv.Atoi(c.Param("id"))
+ if err != nil {
+ util.ResponseFormat(c, code.RequestParamError, "閿欒鐨刬d鍊�")
+ return
+ }
+ if id == 0 {
+ util.ResponseFormat(c, code.RequestParamError, "id涓�0")
+ return
+ }
+ operation, err := models.NewOperationSearch().SetID(id).First()
+ if err != nil {
+ util.ResponseFormat(c, code.RequestParamError, "鏈壘鍒扮浉鍏充俊鎭�:"+err.Error())
+ return
+ }
+ if operation.Status != constvar.OperationStatus_Ready {
+ util.ResponseFormat(c, code.RequestError, "璇ヤ俊鎭棤娉曞彇娑�")
+ return
+ }
+ operation.Status = constvar.OperationStatus_Cancel
+ if err := models.NewOperationSearch().Save(operation); err != nil {
+ util.ResponseFormat(c, code.SaveFail, err.Error())
+ return
+ }
+ util.ResponseFormat(c, code.Success, "鎿嶄綔鎴愬姛")
+}
diff --git a/router/router.go b/router/router.go
index fedd7c4..50e80d4 100644
--- a/router/router.go
+++ b/router/router.go
@@ -87,7 +87,7 @@
operationAPI.PUT("finish/:id", operationController.Finish)
operationAPI.POST("listTransfer", operationController.ListTransfer)
operationAPI.GET("getLogisticCompanyList", operationController.GetLogisticCompanyList)
-
+ operationAPI.PUT("cancel/:id", operationController.Cancel)
}
//浜у搧
@@ -112,6 +112,7 @@
productAPI.PUT("finishDisuse/:id", productController.FinishDisuse) //鎶ュ簾楠岃瘉
productAPI.POST("updateDisuse", productController.UpdateDisuse) //淇敼鎶ュ簾淇℃伅
productAPI.POST("listHistory", productController.ListHistory) //浜у搧浣嶇疆鍘嗗彶璁板綍
+ productAPI.PUT("cancelDisuse/:id", productController.CancelDisuse) //鍙栨秷鎶ュ簾
}
--
Gitblit v1.8.0