From 08343d90d3aa73dd5ec89aaf7b3815e22eba0eb1 Mon Sep 17 00:00:00 2001
From: Rodney Chen <rodney.chen@hotmail.com>
Date: 星期二, 01 四月 2025 14:58:23 +0800
Subject: [PATCH] 备料任务第二版

---
 Tiger.Model.Net/Entitys/WMS/WMS_ITEM_PKG.cs |   32 +++++++++++++++++++++++++++++---
 1 files changed, 29 insertions(+), 3 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..baec8ad 100644
--- a/Tiger.Model.Net/Entitys/WMS/WMS_ITEM_PKG.cs
+++ b/Tiger.Model.Net/Entitys/WMS/WMS_ITEM_PKG.cs
@@ -46,7 +46,7 @@
         /// <summary>
         /// 鏁伴噺
         /// </summary>
-        public decimal QTY { get; set; }
+        public double QTY { get; set; }
         /// <summary>
         /// 鍗曚綅
         /// </summary>
@@ -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