From da3e478917dea118df075357cbd2e6f10833d9c6 Mon Sep 17 00:00:00 2001
From: zhangqian <zhangqian@123.com>
Date: 星期五, 14 六月 2024 20:08:22 +0800
Subject: [PATCH] 商品调整验证后生成入库单和出库单
---
controllers/operation_type.go | 55 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 54 insertions(+), 1 deletions(-)
diff --git a/controllers/operation_type.go b/controllers/operation_type.go
index 8737781..9b0525e 100644
--- a/controllers/operation_type.go
+++ b/controllers/operation_type.go
@@ -116,7 +116,12 @@
util.ResponseFormat(c, code.RequestParamError, err.Error())
return
}
- list, total, err := models.NewOperationTypeSearch().SetPage(params.Page, params.PageSize).SetKeyword(params.Keyword).SetOrder("id desc").SetPreload(true).Find()
+ list, total, err := models.NewOperationTypeSearch().
+ SetPage(params.Page, params.PageSize).
+ SetKeyword(params.Keyword).
+ SetOrder("id desc").
+ SetWarehouseId(params.WarehouseId).
+ SetPreload(true).Find()
if err != nil {
util.ResponseFormat(c, code.RequestError, "鏌ユ壘澶辫触")
return
@@ -140,6 +145,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].CancelCount = value.Count
}
}
util.ResponseFormatListWithPage(c, code.Success, list, cast.ToInt(total), params.Page, params.PageSize)
@@ -166,3 +174,48 @@
}
util.ResponseFormat(c, code.UpdateSuccess, "鍒犻櫎鎴愬姛")
}
+
+// ListTransfer
+// @Tags 涓氬姟绫诲瀷
+// @Summary 璋冩嫧绫诲瀷鍒楄〃
+// @Produce application/json
+// @Param object query request.ListTransfer true "鏌ヨ鍙傛暟"
+// @Success 200 {object} util.ResponseList "鎴愬姛"
+// @Router /api-wms/v1/operationType/listTransfer [get]
+func (slf OperationTypeController) ListTransfer(c *gin.Context) {
+ var params request.GetOperationTypeList
+ if err := c.ShouldBindQuery(¶ms); err != nil {
+ util.ResponseFormat(c, code.RequestParamError, err.Error())
+ return
+ }
+ list, total, err := models.NewOperationTypeSearch().SetPage(params.Page, params.PageSize).SetBaseOperationType(constvar.BaseOperationTypeInternal).SetKeyword(params.Keyword).SetOrder("id desc").SetPreload(true).Find()
+ if err != nil {
+ util.ResponseFormat(c, code.RequestError, "鏌ユ壘澶辫触")
+ return
+ }
+ var idList []int
+ for _, v := range list {
+ idList = append(idList, v.Id)
+ }
+ statistics, err := models.NewOperationTypeSearch().ListByStatusAndCount(idList)
+ if err != nil {
+ util.ResponseFormat(c, code.RequestError, err.Error())
+ return
+ }
+ mapStatistics := make(map[string]*models.OperationTypeByStatus, 0)
+ for _, v := range statistics {
+ mapStatistics[strconv.Itoa(v.Id)+string(v.Status)] = v
+ }
+ for k, v := range list {
+ if value, ok := mapStatistics[strconv.Itoa(v.Id)+string(constvar.OperationStatus_Ready)]; ok {
+ list[k].ReadyCount = value.Count
+ }
+ 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)
+}
--
Gitblit v1.8.0