From 12b0846ee59a358fbf5bc392f74794b8ef13d8eb Mon Sep 17 00:00:00 2001
From: Rodney Chen <rodney.chen@hotmail.com>
Date: 星期五, 13 九月 2024 15:55:06 +0800
Subject: [PATCH] 增加出货数量验证

---
 Tiger.Business.MES/Transaction/TestNode.cs |   16 ++++++++++++----
 1 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/Tiger.Business.MES/Transaction/TestNode.cs b/Tiger.Business.MES/Transaction/TestNode.cs
index ae89b25..b95ba93 100644
--- a/Tiger.Business.MES/Transaction/TestNode.cs
+++ b/Tiger.Business.MES/Transaction/TestNode.cs
@@ -47,6 +47,9 @@
                     //鍏堝垽鏂綋鍓嶅伐鍗曚笉涓虹┖涓斿綋鍓嶅矖浣嶅湪褰撳墠宸ュ崟鏄笉鏄绔欙紝濡傛灉鏄垯涓嶅厑璁稿彉鏇村綋鍓嶅伐鍗曪紝灏濊瘯鎶婃潯鐮佺粦瀹氬埌褰撳墠宸ュ崟
                     if (!CurBatch.IsNullOrEmpty() && CurBatch.IsFirstNode(PostCode))
                     {
+                        //鏇存柊CurBatch
+                        CurBatch?.Update();
+                        //鎻愪氦鏁版嵁
                         action = NodeSubmit(action, input);
                         //鏇存柊宸ュ簭淇℃伅
                         if (!action.IsSuccessed)
@@ -64,7 +67,7 @@
                     else
                     {
                         var wosns = Biz.Db.Queryable<BIZ_MES_WO_BATCH, BIZ_MES_WO_SN>((q, s) => new JoinQueryInfos(JoinType.Inner, q.ORDER_NO == s.WORK_ORDER))
-                                                        .ByAuth(input.AuthOption).Where((q, s) => s.SN == input.SN || s.TRAY_SN == input.SN).Select((q, s) => new { Batch = q, SN = s }).ToList();
+                                                        .ByAuth(input.AuthOption).Where((q, s) => s.SN == input.SN || s.FLOW_SN == input.SN || s.TRAY_SN == input.SN).Select((q, s) => new { Batch = q, SN = s }).ToList();
 
                         //鏌ユ壘鍒版潯鐮佸凡缁戝畾鐨勫伐鍗�
                         if (!wosns.IsNullOrEmpty())
@@ -92,6 +95,8 @@
                                         return action;
                                     }
                                 }
+                                //鏇存柊CurBatch
+                                CurBatch?.Update();
                                 //鏉$爜杩囩珯
                                 action = NodeSubmit(action, input);
                                 if (!action.IsSuccessed && !CurWipSNs.Any())
@@ -133,6 +138,9 @@
                 //瀹屾垚宸ュ簭鑺傜偣宸ユ鍚庯紝寮�濮嬫墽琛屽綋鍓嶅伐搴忕殑琛屼负宸ユ
                 else if (IsFinishNodeSteps && !IsFinishAllSteps)
                 {
+                    //鏇存柊CurBatch
+                    CurBatch?.Update();
+
                     var submitStep = Steps.Where(q => q.ID == input.CurStepID && !q.IsFinished).FirstOrDefault();
                     if (submitStep.IsNullOrEmpty())
                     {
@@ -212,7 +220,7 @@
                     return woStatus;
                 }
 
-                var wipSNs = Biz.Db.Queryable<MES_WIP_DATA>().IncludesAllFirstLayer().Where(q => (q.SN == input.SN || q.TRAY_SN == input.SN) && q.WORK_ORDER == CurBatch.WO.ORDER_NO).ToList();
+                var wipSNs = Biz.Db.Queryable<MES_WIP_DATA>().IncludesAllFirstLayer().Where(q => q.SN == input.SN || q.FLOW_SN == input.SN || q.TRAY_SN == input.SN).ToList();
                 if (wipSNs.IsNullOrEmpty())
                 {
                     var wipSN = new MES_WIP_DATA()
@@ -245,7 +253,7 @@
                         action.Data.ShortMsg = new("宸ュ崟閿欒", ShortMessage.Types.Error);
                         action.IsSuccessed = false;
                         //action.LocaleMsg = new($"浜у搧[{CurSN}]涓嶅睘浜庡綋鍓嶅伐鍗曪紝璇峰垏鎹㈠埌宸ュ崟[{wipSNs.First().WORK_ORDER}]鍚庡啀鎵弿");
-                        action.LocaleMsg = new("MES.Transaction.TestNode.NodeSubmit.WoError", CurSN, wipSNs.First().WORK_ORDER);
+                        action.LocaleMsg = new("MES.Transaction.TestNode.NodeSubmit.WoError", input.SN, wipSNs.First().WORK_ORDER);
                         return action;
                     }
                     else
@@ -253,7 +261,7 @@
                         action.Data.ShortMsg = new("浜х嚎閿欒", ShortMessage.Types.Error);
                         action.IsSuccessed = false;
                         //action.LocaleMsg = new($"浜у搧[{CurSN}]宸插湪浜х嚎[{wipSNs.First().LINE_CODE}]鎶曚骇锛岃鍒颁骇绾縖{wipSNs.First().LINE_CODE}]鎵弿");
-                        action.LocaleMsg = new("MES.Transaction.TestNode.NodeSubmit.LineError", CurSN, wipSNs.First().LINE_CODE);
+                        action.LocaleMsg = new("MES.Transaction.TestNode.NodeSubmit.LineError", input.SN, wipSNs.First().LINE_CODE);
                         return action;
                     }
                 }

--
Gitblit v1.9.3