From d80428a19673e819440a34f2565b6dbbbe6ac567 Mon Sep 17 00:00:00 2001
From: zhangqian <zhangqian@123.com>
Date: 星期四, 18 七月 2024 22:32:08 +0800
Subject: [PATCH] fix
---
controllers/operation.go | 50 +++++++++++++++++++++++++++++---------------------
1 files changed, 29 insertions(+), 21 deletions(-)
diff --git a/controllers/operation.go b/controllers/operation.go
index 5de6cb4..ae06b4b 100644
--- a/controllers/operation.go
+++ b/controllers/operation.go
@@ -9,7 +9,6 @@
"github.com/shopspring/decimal"
"github.com/xuri/excelize/v2"
"gorm.io/gorm"
- "sort"
"strconv"
"strings"
"time"
@@ -42,6 +41,7 @@
// @Tags 鍏ュ簱/鍑哄簱
// @Summary 娣诲姞鍏ュ簱/鍑哄簱
// @Produce application/json
+// @Param Authorization header string true "token"
// @Param object body request.AddOperation true "鍏ュ簱/鍑哄簱淇℃伅"
// @Success 200 {object} util.Response "鎴愬姛"
// @Router /api-wms/v1/operation/operation [post]
@@ -147,6 +147,7 @@
util.ResponseFormat(c, code.Success, "娣诲姞鎴愬姛")
}
+// CheckInventoryDealerType 妫�鏌ュ熀纭�绫诲瀷锛岄槻姝㈢被鍨嬩负绌烘坊鍔犲叾瀹冪被鍨�
func CheckInventoryDealerType(params *models.Operation) {
var dictType constvar.MiniDictType
dictName := "鍏朵粬"
@@ -180,19 +181,19 @@
params.DealerType = miniDict.Name
}
+// CheckDetailsRepeat 鍑哄簱銆佸叆搴撱�佺洏鐐规秹鍙婁骇鍝侀噸澶嶆�ф鏌ワ紙浠ヤ骇鍝佺紪鍙枫�佸嚭搴撳簱鎴跨紪鍙枫�佸叆搴撳簱鎴跨紪鍙凤級
+// 瀛樺湪閲嶅鍊� true锛� 涓嶅瓨鍦ㄨ繑鍥� false
func CheckDetailsRepeat(details []*models.OperationDetails) bool {
- var detailIDs []string
- var tempID string
- for _, v := range details {
- detailIDs = append(detailIDs, v.ProductId)
+ if len(details) == 0 {
+ return false
}
- sort.Strings(detailIDs)
- for _, v := range detailIDs {
- if v != tempID {
- tempID = v
- } else {
- return true
- }
+ var detailKeyMap = make(map[string]bool)
+ for _, v := range details {
+ key := fmt.Sprintf("%v%v%v", v.ProductId, v.FromLocationID, v.ToLocationID)
+ detailKeyMap[key] = true
+ }
+ if len(detailKeyMap) != len(details) { // 闀垮害鐩稿悓锛屼笉瀛樺湪閲嶅鍊硷紱闀垮害涓嶅悓瀛樺湪瀛樺湪涓嶅悓
+ return true
}
return false
}
@@ -332,6 +333,7 @@
// @Tags 鍏ュ簱/鍑哄簱
// @Summary 鍏ュ簱/鍑哄簱鍒楄〃
// @Produce application/json
+// @Param Authorization header string true "token"
// @Param object body request.OperationList true "鏌ヨ鍙傛暟"
// @Success 200 {object} util.ResponseList{data=[]models.Operation} "鎴愬姛"
// @Router /api-wms/v1/operation/list [post]
@@ -379,6 +381,10 @@
// }
//}
userInfo := middleware.GetUserInfo(c)
+ if userInfo == nil {
+ util.ResponseFormat(c, code.SetStatusError, "鐧诲綍鐢ㄦ埛淇℃伅涓虹┖锛岃鐧诲綍鍚庨噸璇曪紒")
+ return
+ }
for _, v := range list {
v.CreatedBy = userInfo.NickName
//if err == nil {
@@ -482,6 +488,7 @@
// @Tags 鍏ュ簱/鍑哄簱
// @Summary 鍒犻櫎鍏ュ簱/鍑哄簱淇℃伅
// @Produce application/json
+// @Param Authorization header string true "token"
// @Param id path int true "id"
// @Success 200 {object} util.Response "鎴愬姛"
// @Router /api-wms/v1/operation/operation/{id} [delete]
@@ -529,9 +536,10 @@
// @Tags 鍏ュ簱/鍑哄簱
// @Summary 鏇存敼璁板綍鐘舵��
// @Produce application/json
-// @Param id path int true "id"
+// @Param Authorization header string true "token"
+// @Param id path int true "id"
// @Success 200 {object} util.Response "鎴愬姛"
-// @Router /api-wms/v1/operation/finish/{id} [put]
+// @Router /api-wms/v1/operation/finish/{id} [put]
func (slf OperationController) Finish(c *gin.Context) {
id, err := strconv.Atoi(c.Param("id"))
if err != nil {
@@ -582,25 +590,26 @@
return err
}
- if operation.BaseOperationType == constvar.BaseOperationTypeIncoming {
+ if operation.BaseOperationType == constvar.BaseOperationTypeIncoming { // 鍏ュ簱
if err := service.FinishOperationInput(c, tx, operation, listDetails, mapLocAmount); err != nil {
return err
}
}
- if operation.BaseOperationType == constvar.BaseOperationTypeOutgoing || operation.BaseOperationType == constvar.BaseOperationTypeDisuse {
+ if operation.BaseOperationType == constvar.BaseOperationTypeOutgoing || // 鍑哄簱
+ operation.BaseOperationType == constvar.BaseOperationTypeDisuse { // 鎶ュ簾
if err := service.FinishOperationOutput(tx, listDetails, mapLocAmount, operation); err != nil {
return err
}
}
- if operation.BaseOperationType == constvar.BaseOperationTypeInternal {
+ if operation.BaseOperationType == constvar.BaseOperationTypeInternal { // 鍐呴儴璋冩嫧
if err := service.FinishOperationInternal(tx, listDetails, operation); err != nil {
return err
}
}
- if operation.BaseOperationType == constvar.BaseOperationTypeAdjust {
+ if operation.BaseOperationType == constvar.BaseOperationTypeAdjust { // 搴撳瓨鐩樼偣
if err := service.FinishOperationAdjust(tx, listDetails, mapLocAmount, operation); err != nil {
return err
}
@@ -623,7 +632,6 @@
go UpdateOutStatus(operation.Source, operation.SourceNumber, 4)
}
}
-
util.ResponseFormat(c, code.Success, "鎿嶄綔鎴愬姛")
}
@@ -856,7 +864,7 @@
}
if warehouse.FileTemplateCategoryIn == constvar.FileWarehouseCategory_JialianInput2 {
- fileUrl, err = JialianOperation1(warehouse.FileTemplateCategoryIn, operation)
+ fileUrl, err = JialianOperation1(constvar.FileWarehouseCategory_JialianInput2, operation)
if err != nil {
util.ResponseFormat(c, code.RequestParamError, err.Error())
return
@@ -893,7 +901,7 @@
}
if warehouse.FileTemplateCategoryOut == constvar.FileWarehouseCategory_JialianOutput2 {
- fileUrl, err = JialianOperation1(warehouse.FileTemplateCategoryOut, operation)
+ fileUrl, err = JialianOperation1(constvar.FileWarehouseCategory_JialianOutput2, operation)
if err != nil {
util.ResponseFormat(c, code.RequestParamError, err.Error())
return
--
Gitblit v1.8.0