From 65369be5502820d6367beab53e33fe3645f23a06 Mon Sep 17 00:00:00 2001
From: Rodney Chen <rodney.chen@hotmail.com>
Date: 星期三, 09 十月 2024 14:59:09 +0800
Subject: [PATCH] 修复手动结束包装报错后不能继续扫码的问题

---
 Tiger.Business.MES/Transaction/PackingNode.cs |   23 ++++++++++++++++++-----
 1 files changed, 18 insertions(+), 5 deletions(-)

diff --git a/Tiger.Business.MES/Transaction/PackingNode.cs b/Tiger.Business.MES/Transaction/PackingNode.cs
index 448f73b..5deb625 100644
--- a/Tiger.Business.MES/Transaction/PackingNode.cs
+++ b/Tiger.Business.MES/Transaction/PackingNode.cs
@@ -253,6 +253,15 @@
             var curNode = CurBatch.GetNode(PostCode);
             try
             {
+                //宸ュ簭鑺傜偣閫昏緫澧炲姞濡傛灉鏍瑰熀褰撳墠宀椾綅鎵句笉鍒板搴斿伐搴忕殑鏃跺�欒鎶ラ敊
+                if (curNode.IsNullOrEmpty())
+                {
+                    action.Data.ShortMsg = new("鏈煡宸ュ簭", ShortMessage.Types.Error);
+                    action.IsSuccessed = false;
+                    //action.LocaleMsg = new($"宀椾綅[{0}]鍦ㄥ伐鍗昜{1}]宸ヨ壓璺嚎涓壘涓嶅埌瀵瑰簲鐨勫伐搴忥紝璇锋鏌ュ伐鍗曞伐鑹鸿矾绾夸腑宸ュ簭涓庡矖浣嶇殑缁戝畾鍏崇郴鏄惁姝g‘");
+                    action.LocaleMsg = new("MES.Transaction.PackingNode.NodeSubmit.OperateNodeError", PostCode, CurBatch.WO.ORDER_NO);
+                    return action;
+                }
                 //褰撳伐姝ュ垪琛ㄤ负绌猴紝鍒欐墽琛屽綋鍓嶅伐搴忕殑蹇呰閫昏緫褰撲綔绗竴涓伐搴忚妭鐐癸紝瀹屾垚鍚庢寜闇�姹傚垱寤哄悗缁殑宸ユ鍒楄〃
                 if (Steps.IsNullOrEmpty())
                 {
@@ -615,14 +624,11 @@
                 {
                     if (Context.ContainsKey("CurPackage"))
                     {
-                        var CurPkg = Context["CurPackage"] as WipPkg;
-                        int shipQty = input.Data.ToInt32();
-    
-                        NodeCmd = "PkgSubmit";
-
                         TempPkgAction = new PackingAction();
                         TempPkgAction.Init(this);
 
+                        var CurPkg = Context["CurPackage"] as WipPkg;
+                        int shipQty = input.Data.ToInt32();
                         int curQty = CurPkg.Item.TotalQty;
                         int ruleQty = TempPkgAction.PkgRule.GetTotalQty();
                         //鏈夊~鍑鸿揣鏁伴噺鍒欓獙璇佸綋鍓嶅寘瑁呮暟閲忓繀椤荤瓑浜庯紙鍑鸿揣鏁伴噺/鍖呰瑙勫垯鏁伴噺锛夌殑浣欐暟
@@ -633,7 +639,13 @@
                             action.LocaleMsg = new("MES.Transaction.PackingNode.NotMatchShipQty", shipQty, curQty, shipQty % ruleQty); 
                             return action;
                         }
+
+                        NodeCmd = "PkgSubmit";
                         action = TempPkgAction.Submit(null);
+                        if (!action.IsSuccessed)
+                        {
+                            NodeCmd = null;
+                        }
                     }
                     else
                     {
@@ -660,6 +672,7 @@
             catch (Exception ex)
             {
                 action.CatchExceptionWithLog(ex, $"鍖呰宸ュ簭锛氭墜鍔ㄧ粨鏉熷寘瑁呭紓甯�");
+                NodeCmd = null;
             }
             return action;
         }

--
Gitblit v1.9.3