From aa7d6bef3b1f3437b69ef21f8af4ace39939d2b9 Mon Sep 17 00:00:00 2001
From: Ben Lin <maobin001@msn.com>
Date: 星期五, 17 一月 2025 01:57:45 +0800
Subject: [PATCH] 优化库存管理和标签重打印逻辑

---
 Tiger.Model.Net/Entitys/WMS/WMS_ITEM_PKG.cs |   30 ++++++++++++++++++++++++++++--
 1 files changed, 28 insertions(+), 2 deletions(-)

diff --git a/Tiger.Model.Net/Entitys/WMS/WMS_ITEM_PKG.cs b/Tiger.Model.Net/Entitys/WMS/WMS_ITEM_PKG.cs
index 8861582..c68a20b 100644
--- a/Tiger.Model.Net/Entitys/WMS/WMS_ITEM_PKG.cs
+++ b/Tiger.Model.Net/Entitys/WMS/WMS_ITEM_PKG.cs
@@ -120,6 +120,16 @@
         /// </summary>
         public string PRINT_USER { get; set; }
         /// <summary>
+        /// 閲嶉噺
+        /// </summary>
+        [DisplayName("閲嶉噺")]
+        public double WEIGHT { get; set; }
+        /// <summary>
+        /// 閲嶉噺鍗曚綅
+        /// </summary>
+        [DisplayName("閲嶉噺鍗曚綅")]
+        public string WEIGHT_UNIT { get; set; }
+        /// <summary>
         /// 澶囨敞
         /// </summary>
         public string REMARK { get; set; }
@@ -157,8 +167,10 @@
         //      [SugarColumn(IsIgnore = true)]
         //      public List<WMS_ITEM_PKG> Children => ChildrenWithGhost?.Where(q => !q.GHOST_ROW).ToList() ?? new List<WMS_ITEM_PKG>();
         //BAS_ITEM, WMS_WAREHOUSE, WMS_REGION, WMS_SHELF, WMS_LOCATION
-        [Navigate(NavigateType.OneToOne, nameof(ITEM_CODE), nameof(BAS_ITEM.ITEM_CODE), "GHOST_ROW = 0")]//涓�瀵逛竴 ClassAId鏄疻MS_ITEM_PKG绫婚噷闈㈢殑澶栭敭ID瀛楁
-        public BAS_ITEM ItemInfo { get; set; } //娉ㄦ剰绂佹鎵嬪姩璧嬪�硷紝鍙兘鏄痭ull
+        [Navigate(NavigateType.OneToMany, nameof(BAS_ITEM.ITEM_CODE), nameof(ITEM_CODE), "GHOST_ROW = 0")]
+        public List<BAS_ITEM> _ItemInfos { get; set; } //娉ㄦ剰绂佹鎵嬪姩璧嬪�硷紝鍙兘鏄痭ull
+        [SugarColumn(IsIgnore = true)]
+        public BAS_ITEM ItemInfo => _ItemInfos?.FirstOrDefault(q => q.AUTH_ORG == AUTH_ORG);
         [Navigate(NavigateType.OneToOne, nameof(SN), nameof(WMS_ITEM.SN), "GHOST_ROW = 0")]//涓�瀵逛竴 ClassAId鏄疻MS_ITEM_PKG绫婚噷闈㈢殑澶栭敭ID瀛楁
         public WMS_ITEM Item { get; set; } //娉ㄦ剰绂佹鎵嬪姩璧嬪�硷紝鍙兘鏄痭ull
         [Navigate(NavigateType.OneToOne, nameof(SN), nameof(WMS_ITEM_EXT.SN), "GHOST_ROW = 0")]//涓�瀵逛竴 ClassAId鏄疻MS_ITEM_PKG绫婚噷闈㈢殑澶栭敭ID瀛楁
@@ -193,7 +205,21 @@
         #endregion
 
         #region 鍏叡鏂规硶
+        public static List<WMS_ITEM_PKG> UpdateQty(List<WMS_ITEM_PKG> list)
+        {
+            var minPkgs = list.Where(q => !list.Any(p => p.PARENT_SN == q.SN));
+            var parent = list.Where(q => minPkgs.Any(p => p.PARENT_SN == q.SN));
+            while (parent.Any())
+            {
+                foreach (var item in parent)
+                {
+                    item.QTY = list.Where(q => q.PARENT_SN == item.SN).Sum(q => q.QTY);
+                }
+                parent = list.Where(q => parent.Any(p => p.PARENT_SN == q.SN));
+            }
 
+            return list;
+        }
         #endregion
 
     }//endClass

--
Gitblit v1.9.3