From e8710d52e1b63dd6f640054aa92a496247edbb08 Mon Sep 17 00:00:00 2001
From: Rodney Chen <rodney.chen@hotmail.com>
Date: 星期三, 20 十一月 2024 21:31:09 +0800
Subject: [PATCH] 优化包装行为数量计算

---
 Tiger.Business.MES/Transaction/YadaPacking.cs |   37 +++++++++++++++++++++++++++++++++----
 1 files changed, 33 insertions(+), 4 deletions(-)

diff --git a/Tiger.Business.MES/Transaction/YadaPacking.cs b/Tiger.Business.MES/Transaction/YadaPacking.cs
index 562f8fa..ed0cf70 100644
--- a/Tiger.Business.MES/Transaction/YadaPacking.cs
+++ b/Tiger.Business.MES/Transaction/YadaPacking.cs
@@ -698,7 +698,8 @@
                 var _woSns = woSNs.Clone();
                 var _wipSns = CurWipSNs.Clone();
                 var _wipHiss = wipHiss.Clone();
-                var _pkgList = curPkg?.IsFinished == true ? GetPackageList(curPkg.Item) : new();
+                var _pkgList = curPkg?.IsFinished == true ? GetPackageList(curPkg.Item).Clone() : new();
+                var _wipIDs = curPkg?.IsFinished == true ? curPkg.Item.GetWipSnList().Select(q => q.Key).ToList().Clone() : new();
                 //淇濆瓨鏁版嵁
                 endAction = () =>
                 {
@@ -710,14 +711,14 @@
                     db.Storageable(_wipHiss, UserCode).ExecuteCommand();
                     if (_pkgList.Any())
                     {
-                        var wipIDs = _pkgList.Where(q => !q.WIP_ID.IsNullOrEmpty()).Select(q => q.WIP_ID).ToList();
+                        //var wipIDs = _pkgList.Where(q => !q.WIP_ID.IsNullOrEmpty()).Select(q => q.WIP_ID).ToList();
                         var wo = _pkgList.First().WORK_ORDER;
                         //鍖呰淇℃伅淇濆瓨鍒扮敓浜ц繃绋嬭褰�
                         db.Updateable<MES_WIP_HIS>(UserCode)
                             .SetColumns(q => q.TRAY_SN == curPkg.Item.Package.SN)
                             .SetColumns(q => q.INNER_SN == q.CARTON_SN)
                             .SetColumns(q => q.CARTON_SN == curPkg.Item.Package.SN)
-                            .Where(q => q.WORK_ORDER == wo && q.OPER_CODE == "EndNode" && wipIDs.Contains(q.WIP_ID))
+                            .Where(q => q.WORK_ORDER == wo && q.OPER_CODE == "EndNode" && _wipIDs.Contains(q.WIP_ID))
                             .ExecuteCommand();
                     }
                 };
@@ -834,7 +835,7 @@
                         TempPkgAction.Init(this);
 
                         int shipQty = input.Data.ToInt32();
-                        int curQty = CurPkg.Item.TotalQty;
+                        double curQty = CurPkg.Item.TotalQty;
                         int ruleQty = TempPkgAction.PkgRule.GetTotalQty();
                         //鏈夊~鍑鸿揣鏁伴噺鍒欓獙璇佸綋鍓嶅寘瑁呮暟閲忓繀椤荤瓑浜庯紙鍑鸿揣鏁伴噺/鍖呰瑙勫垯鏁伴噺锛夌殑浣欐暟
                         if (shipQty > 0 && curQty != shipQty % ruleQty)
@@ -878,6 +879,34 @@
             return action;
         }
 
+        /// <summary>
+        /// 鎵撳嵃娴嬭瘯鏍囩
+        /// </summary>
+        /// <param name="input"></param>
+        /// <returns></returns>
+        public async Task<ApiAction<PackingActionOutput>> TestPrint()
+        {
+            var action = new ApiAction<PackingActionOutput>();
+            try
+            {
+                var CurPkg = Context.ContainsKey("CurPackage") ? Context["CurPackage"] as WipPkg : null;
+                var LabelPV = Biz.Db.Queryable<BAS_LABEL_PV>().ToList();
+                var label = CurPkg.Item.LABEL_CODE.IsNullOrEmpty() ? null : Biz.Db.Queryable<BAS_LABEL_TEMP>().Where(q => q.LABEL_CODE == CurPkg.Item.LABEL_CODE).IncludesAllFirstLayer().First();
+                var printLb =  SetLabelVariables(LabelPV, label, new PackingAction(), CurPkg);
+                action.Data = new PackingActionOutput()
+                {
+                    ExecCode = "PrintTest",
+                    PkgInfo = CurPkg,
+                    PrintLable = printLb,
+                };
+            }
+            catch (Exception ex)
+            {
+                action.CatchExceptionWithLog(ex, $"鍖呰宸ュ簭锛氭墦鍗版祴璇曟爣绛惧紓甯�");
+            }
+            return action;
+        }
+
         #endregion Functions
 
         /// <summary>

--
Gitblit v1.9.3