From 7af977218be09a1ff8e9ac6740dfd22983aa33d2 Mon Sep 17 00:00:00 2001
From: lishihai <dslsh@dscom>
Date: 星期五, 14 六月 2024 11:47:25 +0800
Subject: [PATCH] 属性值和对象-AttributeValue-wms_attribute_value-的曾删改

---
 task/month_stats.go |   53 +++++++++++++++++++++++++++++------------------------
 1 files changed, 29 insertions(+), 24 deletions(-)

diff --git a/task/month_stats.go b/task/month_stats.go
index a7985ad..6d82bb4 100644
--- a/task/month_stats.go
+++ b/task/month_stats.go
@@ -104,13 +104,13 @@
 			inputMoreValueArr := make([]models.UnitItems, 0, len(product.MoreUnitList))
 			outputMoreValueArr := make([]models.UnitItems, 0, len(product.MoreUnitList))
 			for _, unitItem := range product.MoreUnitList {
-				moreValueArr = append(moreValueArr, models.UnitItems{
-					Amount:   amount.Mul(unitItem.Amount),
-					Unit:     unitItem.Unit,
-					Floating: unitItem.Floating,
-				})
-				bys, _ := json.Marshal(moreValueArr)
-				moreUnits = string(bys)
+				if !amount.IsZero() {
+					moreValueArr = append(moreValueArr, models.UnitItems{
+						Amount:   amount.Mul(unitItem.Amount),
+						Unit:     unitItem.Unit,
+						Floating: unitItem.Floating,
+					})
+				}
 
 				if !inputMap[productId].IsZero() {
 					inputMoreValueArr = append(inputMoreValueArr, models.UnitItems{
@@ -118,9 +118,6 @@
 						Unit:     unitItem.Unit,
 						Floating: unitItem.Floating,
 					})
-					bys, _ = json.Marshal(inputMoreValueArr)
-					inputMoreUnits = string(bys)
-
 				}
 
 				if !outputMap[productId].IsZero() {
@@ -129,11 +126,17 @@
 						Unit:     unitItem.Unit,
 						Floating: unitItem.Floating,
 					})
-					bys, _ = json.Marshal(outputMoreValueArr)
-					outputMoreUnits = string(bys)
-
 				}
 			}
+			bys, _ := json.Marshal(moreValueArr)
+			if len(moreValueArr) > 0 {
+				fmt.Println(moreValueArr)
+			}
+			moreUnits = string(bys)
+			bys, _ = json.Marshal(inputMoreValueArr)
+			inputMoreUnits = string(bys)
+			bys, _ = json.Marshal(outputMoreValueArr)
+			outputMoreUnits = string(bys)
 		}
 
 		record.BeginMoreUnits = moreUnits
@@ -144,18 +147,20 @@
 				service.SendAlarm("鏈堝害缁熻鍒涘缓鏈湀澶辫触", fmt.Sprintf("NewMonthStatsSearch Create err:%v, record: %+v", err, record))
 			}
 
-			if oldRecordsMap[productId] != nil && (!inputMap[productId].IsZero() || !outputMap[productId].IsZero()) {
-				record.InputAmount = inputMap[productId]
-				record.InputMoreUnits = inputMoreUnits
-				record.OutputAmount = outputMap[productId]
-				record.OutputMoreUnits = outputMoreUnits
+			if oldRecordsMap[productId] != nil {
 				m := map[string]interface{}{
-					"input_amount":      inputMap[productId],
-					"input_more_units":  inputMoreUnits,
-					"output_amount":     outputMap[productId],
-					"output_more_units": outputMoreUnits,
-					"end_more_units":    moreUnits,
-					"end_amount":        amount,
+					"end_more_units": moreUnits,
+					"end_amount":     amount,
+				}
+				if !inputMap[productId].IsZero() || !outputMap[productId].IsZero() {
+					record.InputAmount = inputMap[productId]
+					record.InputMoreUnits = inputMoreUnits
+					record.OutputAmount = outputMap[productId]
+					record.OutputMoreUnits = outputMoreUnits
+					m["input_amount"] = inputMap[productId]
+					m["input_more_units"] = inputMoreUnits
+					m["output_amount"] = outputMap[productId]
+					m["output_more_units"] = outputMoreUnits
 				}
 				err = models.NewMonthStatsSearch().SetOrm(db).SetID(oldRecordsMap[productId].Id).UpdateByMap(m)
 				if err != nil {

--
Gitblit v1.8.0