From 26a2ae9619dfff4c43487ca39307c06be635c23f Mon Sep 17 00:00:00 2001
From: liujiandao <274878379@qq.com>
Date: 星期六, 21 十月 2023 17:42:51 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.5.5:10010/r/aps/WMS

---
 controllers/product_controller.go      |   23 +++++++----
 models/material.go                     |   37 +++++++++---------
 controllers/location_product_amount.go |    6 ++-
 3 files changed, 37 insertions(+), 29 deletions(-)

diff --git a/controllers/location_product_amount.go b/controllers/location_product_amount.go
index ce3bcf4..23c0ff3 100644
--- a/controllers/location_product_amount.go
+++ b/controllers/location_product_amount.go
@@ -77,10 +77,12 @@
 				return
 			}
 		} else {
-			records[k].AdjustAmount = operation.Details[0].Amount
+			if len(operation.Details) > 0 {
+				records[k].AdjustAmount = operation.Details[0].Amount
+				records[k].DifferenceAmount = v.Amount.Add(v.AdjustAmount)
+			}
 			records[k].OperationId = operation.Id
 			records[k].Status = operation.Status
-			records[k].DifferenceAmount = v.Amount.Add(v.AdjustAmount)
 		}
 	}
 	util.ResponseFormatListWithPage(c, code.Success, records, int(total), params.Page, params.PageSize)
diff --git a/controllers/product_controller.go b/controllers/product_controller.go
index 0d3f3af..54ac018 100644
--- a/controllers/product_controller.go
+++ b/controllers/product_controller.go
@@ -535,6 +535,10 @@
 		util.ResponseFormat(c, code.RequestParamError, "璇ヤ俊鎭棤娉曚慨鏀�")
 		return
 	}
+	if params.ProductId == "" {
+		util.ResponseFormat(c, code.RequestParamError, "璇烽�夋嫨鎶ュ簾浜у搧")
+		return
+	}
 	detail := &models.OperationDetails{
 		ProductId: params.ProductId,
 		//ProductName: params.ProductName,
@@ -542,15 +546,16 @@
 		//Unit:        params.Unit,
 	}
 	operation := models.Operation{
-		Id:              params.Id,
-		Number:          params.Number,
-		SourceNumber:    params.SourceNumber,
-		OperationTypeId: 0,
-		Status:          params.Status,
-		FromLocationID:  params.FromLocationId,
-		ToLocationID:    params.ToLocationId,
-		OperationDate:   params.OperationDate,
-		Details:         []*models.OperationDetails{detail},
+		Id:                params.Id,
+		Number:            params.Number,
+		SourceNumber:      params.SourceNumber,
+		OperationTypeId:   0,
+		Status:            params.Status,
+		FromLocationID:    params.FromLocationId,
+		ToLocationID:      params.ToLocationId,
+		OperationDate:     params.OperationDate,
+		Details:           []*models.OperationDetails{detail},
+		BaseOperationType: params.BaseOperationType,
 	}
 	if err := models.WithTransaction(func(tx *gorm.DB) error {
 		if err := models.NewOperationDetailsSearch().SetOrm(tx).SetOperationId(params.Id).Delete(); err != nil {
diff --git a/models/material.go b/models/material.go
index 7fc8138..0b46d57 100644
--- a/models/material.go
+++ b/models/material.go
@@ -493,24 +493,25 @@
 }
 
 type ResponseDisuseList struct {
-	Id             int                      `json:"id" gorm:"column:id;primary_key;AUTO_INCREMENT"`
-	Number         string                   `json:"number" gorm:"type:varchar(255)"`                                 //鍗曞彿
-	SourceNumber   string                   `json:"sourceNumber" gorm:"type:varchar(255)"`                           //婧愬崟鍙�
-	Status         constvar.OperationStatus `json:"status" gorm:"type:int(11);not null;comment:鐘舵��"`                  //鐘舵��
-	FromLocationID int                      `json:"fromLocationId"   gorm:"type:int;not null;comment:婧愪綅缃甶d"`         //婧愪綅缃甶d
-	FromLocation   Location                 `json:"fromLocation"     gorm:"foreignKey:FromLocationID;references:Id"` //婧愪綅缃�
-	ToLocation     Location                 `json:"toLocation"      gorm:"foreignKey:ToLocationID;references:Id"`    //鐩爣浣嶇疆
-	ToLocationID   int                      `json:"toLocationId"    gorm:"type:int;not null;comment:鐩爣浣嶇疆id"`         //鐩爣浣嶇疆id
-	OperationDate  string                   `json:"operationDate" gorm:"type:varchar(31);comment:瀹夋帓鏃ユ湡"`
-	ContacterID    int                      `json:"contacterID" gorm:"type:int;comment:鑱旂郴浜篒D"`
-	ContacterName  string                   `json:"contacterName" gorm:"type:varchar(63);comment:鑱旂郴浜哄鍚�"`
-	CompanyID      int                      `json:"companyID" gorm:"type:int;comment:鍏徃ID-瀹㈡埛"`
-	CompanyName    string                   `json:"companyName" gorm:"type:varchar(127);comment:鍏徃鍚嶇О-瀹㈡埛"`
-	Comment        string                   `json:"comment" gorm:"type:text;comment:澶囨敞"`
-	ProductId      string                   `json:"productId" gorm:"type:varchar(191);not null;comment:浜у搧id"`   //浜у搧id
-	ProductName    string                   `json:"productName" gorm:"type:varchar(255);not null;comment:浜у搧鍚嶇О"` //浜у搧鍚嶇О
-	Amount         decimal.Decimal          `json:"amount" gorm:"type:decimal(20,2);not null;comment:鏁伴噺"`       //鏁伴噺
-	Unit           string                   `json:"unit" gorm:"type:varchar(31);comment:鍗曚綅"`
+	Id                int                        `json:"id" gorm:"column:id;primary_key;AUTO_INCREMENT"`
+	Number            string                     `json:"number" gorm:"type:varchar(255)"`                                 //鍗曞彿
+	SourceNumber      string                     `json:"sourceNumber" gorm:"type:varchar(255)"`                           //婧愬崟鍙�
+	Status            constvar.OperationStatus   `json:"status" gorm:"type:int(11);not null;comment:鐘舵��"`                  //鐘舵��
+	FromLocationID    int                        `json:"fromLocationId"   gorm:"type:int;not null;comment:婧愪綅缃甶d"`         //婧愪綅缃甶d
+	FromLocation      Location                   `json:"fromLocation"     gorm:"foreignKey:FromLocationID;references:Id"` //婧愪綅缃�
+	ToLocation        Location                   `json:"toLocation"      gorm:"foreignKey:ToLocationID;references:Id"`    //鐩爣浣嶇疆
+	ToLocationID      int                        `json:"toLocationId"    gorm:"type:int;not null;comment:鐩爣浣嶇疆id"`         //鐩爣浣嶇疆id
+	OperationDate     string                     `json:"operationDate" gorm:"type:varchar(31);comment:瀹夋帓鏃ユ湡"`
+	ContacterID       int                        `json:"contacterID" gorm:"type:int;comment:鑱旂郴浜篒D"`
+	ContacterName     string                     `json:"contacterName" gorm:"type:varchar(63);comment:鑱旂郴浜哄鍚�"`
+	CompanyID         int                        `json:"companyID" gorm:"type:int;comment:鍏徃ID-瀹㈡埛"`
+	CompanyName       string                     `json:"companyName" gorm:"type:varchar(127);comment:鍏徃鍚嶇О-瀹㈡埛"`
+	Comment           string                     `json:"comment" gorm:"type:text;comment:澶囨敞"`
+	ProductId         string                     `json:"productId" gorm:"type:varchar(191);not null;comment:浜у搧id"`   //浜у搧id
+	ProductName       string                     `json:"productName" gorm:"type:varchar(255);not null;comment:浜у搧鍚嶇О"` //浜у搧鍚嶇О
+	Amount            decimal.Decimal            `json:"amount" gorm:"type:decimal(20,2);not null;comment:鏁伴噺"`       //鏁伴噺
+	Unit              string                     `json:"unit" gorm:"type:varchar(31);comment:鍗曚綅"`
+	BaseOperationType constvar.BaseOperationType `json:"baseOperationType" gorm:"type:tinyint;not null;comment:鍩虹浣滀笟绫诲瀷"` //鍩虹浣滀笟绫诲瀷
 }
 
 func (slf *MaterialSearch) Update(record *Material) error {

--
Gitblit v1.8.0