From 34ef7217a034599217a7fdd1e28e1ae6910e1b4b Mon Sep 17 00:00:00 2001
From: liujiandao <274878379@qq.com>
Date: 星期三, 11 十月 2023 20:15:21 +0800
Subject: [PATCH] 菜单获取编码规则
---
service/products.go | 10 ++++++++++
1 files changed, 10 insertions(+), 0 deletions(-)
diff --git a/service/products.go b/service/products.go
index e8d46e5..249cc9c 100644
--- a/service/products.go
+++ b/service/products.go
@@ -28,6 +28,9 @@
for _, product := range products {
if productIdMap[product.Id] == nil && productNumberMap[product.Number] == nil {
newProducts = append(newProducts, product)
+ } else if productIdMap[product.Id] != nil && slf.CheckProductChanged(productIdMap[product.Id], product) || productNumberMap[product.Number] != nil && slf.CheckProductChanged(productNumberMap[product.Number], product) {
+ removedProducts = append(removedProducts, product)
+ newProducts = append(newProducts, product)
}
productNumberMap2[product.Number] = product
}
@@ -39,6 +42,13 @@
return
}
+func (slf ProductsService) CheckProductChanged(originProduct, newProduct *model.Product) bool {
+ return originProduct.Number != newProduct.Number ||
+ !originProduct.Amount.Equal(newProduct.Amount) ||
+ !originProduct.Price.Equal(newProduct.Price) ||
+ !originProduct.Total.Equal(newProduct.Total)
+}
+
func (slf ProductsService) getMappedProducts(sourceProducts []*model.Product) (map[uint]*model.Product, map[string]*model.Product) {
productIdMap := make(map[uint]*model.Product, len(sourceProducts))
productNumberMap := make(map[string]*model.Product, len(sourceProducts))
--
Gitblit v1.8.0