From 3e23a18bcc7b63963c430b72eb7b5df09f6a063f Mon Sep 17 00:00:00 2001
From: Rodney Chen <rodney.chen@hotmail.com>
Date: 星期五, 15 十一月 2024 15:00:51 +0800
Subject: [PATCH] 增加包装中获取所有在制品条码的方法

---
 Tiger.Business.MES/WorkAction/PackingAction.cs                   |    4 ++++
 Tiger.Model.Net/Entitys/MES/ParameterEntity/PositionParameter.cs |   18 ++++++++++++++++++
 2 files changed, 22 insertions(+), 0 deletions(-)

diff --git a/Tiger.Business.MES/WorkAction/PackingAction.cs b/Tiger.Business.MES/WorkAction/PackingAction.cs
index 45d96aa..184758f 100644
--- a/Tiger.Business.MES/WorkAction/PackingAction.cs
+++ b/Tiger.Business.MES/WorkAction/PackingAction.cs
@@ -377,6 +377,7 @@
                             //鏈�澶栧眰鍖呰宸插鐞嗗畬鎴愬垯鐩存帴缁撴潫琛屼负
                             if (CurPkg.Item.PKG_LEVEL == FinishLevel)
                             {
+                                CurPkg.Item.WipSNs = CurPosition.CurWipSNs.ToDictionary(k => k.ID, v => v.SN);
                                 action = End(input);
                             }
                             //鏈�澶栧眰鍖呰鏈墦鍗版壂鎻忓垯缁х画
@@ -586,6 +587,9 @@
                     CurPkgItem.Package.ACT_ID = NodeAct.ID;
                     CurPkgItem.Package.ACT_NAME = NodeAct.ACT_NAME;
                     CurPkgItem.Package.FLOW_SN = CurPosition.CurWipSNs.First().FLOW_SN;
+
+                    CurPkgItem.WipSNs = CurPosition.CurWipSNs.ToDictionary(k => k.ID, v => v.SN);
+
                     FinishLevel++;
                     //瀹屾垚鍖呰鐨勫眰绾у皬浜庢渶澶栧眰鍖呰灞傜骇
                     if (FinishLevel < PkgRule.Details.Max(q => q.PKG_LEVEL))
diff --git a/Tiger.Model.Net/Entitys/MES/ParameterEntity/PositionParameter.cs b/Tiger.Model.Net/Entitys/MES/ParameterEntity/PositionParameter.cs
index 3eb7342..c0c5758 100644
--- a/Tiger.Model.Net/Entitys/MES/ParameterEntity/PositionParameter.cs
+++ b/Tiger.Model.Net/Entitys/MES/ParameterEntity/PositionParameter.cs
@@ -196,6 +196,7 @@
         public MES_WIP_PKG Package { get; set; }
         public bool IsFinished { get; set; } = false;
         public List<WipPkgItem> Items { get; set; } = new List<WipPkgItem>();
+        public Dictionary<string, string> WipSNs { get; set; } = new Dictionary<string, string>();
         public int TotalQty => Items.Any() ? Items.Sum(q => q.TotalQty) : 1;
 
         public List<MES_WIP_PKG> GetMinPackageList()
@@ -218,6 +219,23 @@
             }
             return list;
         }
+
+        public List<KeyValuePair<string, string>> GetWipSnList()
+        {
+            var list = new List<KeyValuePair<string, string>>();
+            if (Items.Any())
+            {
+                foreach (var item in Items)
+                {
+                    list.AddRange(item.GetWipSnList());
+                }
+            }
+            else
+            {
+                list.AddRange(WipSNs.ToList());
+            }
+            return list;
+        }
     }
 
     /// <summary>

--
Gitblit v1.9.3