From 925079c1cd09cbc5bc2ec6f66d07875e0f982716 Mon Sep 17 00:00:00 2001 From: Rodney Chen <rodney.chen@hotmail.com> Date: 星期四, 10 十月 2024 09:43:18 +0800 Subject: [PATCH] 优化提示 --- Tiger.Business.MES/Transaction/PackingNode.cs | 36 +++++++++++++++++++++++------------- 1 files changed, 23 insertions(+), 13 deletions(-) diff --git a/Tiger.Business.MES/Transaction/PackingNode.cs b/Tiger.Business.MES/Transaction/PackingNode.cs index 4847720..d107e59 100644 --- a/Tiger.Business.MES/Transaction/PackingNode.cs +++ b/Tiger.Business.MES/Transaction/PackingNode.cs @@ -146,7 +146,7 @@ info.InputQty = CurOperInfo(input.Locale).InputQty; action.Data.OperInfo = info; } - else if (!IsFinishAllSteps) + else if (Steps.Any() && !IsFinishAllSteps) { action.Data.OperInfo = SetOperNodeInfo(CurOperInfo(input.Locale)); } @@ -251,14 +251,24 @@ public ApiAction<SubmitOutput> NodeSubmit(ApiAction<SubmitOutput> action, SubmitInput input) { var curNode = CurBatch.GetNode(PostCode); + var curNodeSetting = CurBatch.GetNodeSetting(curNode); 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()) { BeginAt = DateTime.Now; //鍒ゆ柇宸ュ崟瀹炴椂鐘舵�佸垽鏂槸鍚﹀彲浠ョ敓浜� - var woStatus = CurBatch.CheckCanProduce(curNode); + var woStatus = CurBatch.CheckCanProduce(curNode, curNodeSetting); if (!woStatus.IsSuccessed) { woStatus.Data.ShortMsg = new("宸ュ崟寮傚父", ShortMessage.Types.Error); @@ -369,7 +379,7 @@ wipSN.PRD_CODE = curShiftPeriod.Period.PRD_CODE; } //濡傛灉鏄姇鍏ョ珯 - if (curNode.IS_INPUT == "Y") + if (curNodeSetting.IS_INPUT == "Y") { var woSN = woSNs.First(q => q.SN == wipSN.SN); woSN.STATUS = BIZ_MES_WO_SN.STATUSs.Inputed.GetValue(); @@ -377,7 +387,7 @@ wipSN.INLINE_DATE = DateTime.Now; } //濡傛灉鏄骇鍑虹珯 - if (curNode.IS_OUTPUT == "Y") + if (curNodeSetting.IS_OUTPUT == "Y") { var woSN = woSNs.First(q => q.SN == wipSN.SN); woSN.STATUS = BIZ_MES_WO_SN.STATUSs.Finished.GetValue(); @@ -449,7 +459,7 @@ var _wipSns = wipSNs.Clone(); var _wipHiss = CurWipSNHiss.Clone(); var _defect = CurDefects.Clone(); - var _curNode = curNode.Clone(); + var _curNodeSetting = curNodeSetting.Clone(); var _Batch = CurBatch.Batch.Clone(); //鍒濆鍖栧伐姝ュ垪琛� @@ -474,13 +484,13 @@ db.Storageable(_defect, UserCode).ExecuteCommand(); } //濡傛灉鏄姇鍏ョ珯 - if (_curNode.IS_INPUT == "Y") + if (_curNodeSetting.IS_INPUT == "Y") { db.Updateable<BIZ_MES_WO>().SetColumns(q => q.INPUT_QTY == q.INPUT_QTY + _woSns.Count).Where(q => q.ORDER_NO == _Batch.ORDER_NO).ExecuteCommand(); db.Updateable<BIZ_MES_WO_BATCH>().SetColumns(q => q.INPUT_QTY == q.INPUT_QTY + _woSns.Count).Where(q => q.BATCH_NO == _Batch.BATCH_NO).ExecuteCommand(); } //濡傛灉鏄骇鍑虹珯 - if (_curNode.IS_OUTPUT == "Y") + if (_curNodeSetting.IS_OUTPUT == "Y") { db.Updateable<BIZ_MES_WO>().SetColumns(q => q.OUTPUT_QTY == q.OUTPUT_QTY + _woSns.Count).Where(q => q.ORDER_NO == _Batch.ORDER_NO).ExecuteCommand(); db.Updateable<BIZ_MES_WO_BATCH>().SetColumns(q => q.OUTPUT_QTY == q.OUTPUT_QTY + _woSns.Count).Where(q => q.BATCH_NO == _Batch.BATCH_NO).ExecuteCommand(); @@ -591,7 +601,7 @@ //淇濆瓨鎴愬姛锛岃繑鍥炶繃绔欐秷鎭� CurOperInfo(locale).InputQty += CurWipSNs.Count; action.Data.OperInfo = SetOperNodeInfo(CurOperInfo(locale)); - action.Data.ShortMsg = new("杩囩珯鎴愬姛", ShortMessage.Types.Success); + action.Data.ShortMsg = new(CurWipSNs.Any(q => q.DFT_FLAG == "Y") ? "涓嶈壇杩囩珯" : "鑹搧杩囩珯", ShortMessage.Types.Success); //action.LocaleMsg = new($"宸ュ崟[{CurWipSN.WORK_ORDER}]鐨勬潯鐮乕{CurWipSN.SN}]鍦ㄥ矖浣峓{CurWipSN.POST_CODE}]宸ュ簭[{CurWipSN.NODE_NAME}]杩囩珯鎴愬姛锛岀姸鎬乕{CurWipSN.STATUS.GetEnumDesc<MES_WIP_DATA.STATUSs>()}]"); action.LocaleMsg = new("MES.Transaction.CollectNode.ScanSn.PassSuccess", CurWipSNs.First().WORK_ORDER, CurSN, CurWipSNs.First().POST_CODE, CurWipSNs.First().NODE_NAME,CurWipSNs.First().STATUS.GetEnumDesc<MES_WIP_DATA.STATUSs>()); @@ -615,14 +625,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,6 +640,8 @@ action.LocaleMsg = new("MES.Transaction.PackingNode.NotMatchShipQty", shipQty, curQty, shipQty % ruleQty); return action; } + + NodeCmd = "PkgSubmit"; action = TempPkgAction.Submit(null); } else @@ -660,6 +669,7 @@ catch (Exception ex) { action.CatchExceptionWithLog(ex, $"鍖呰宸ュ簭锛氭墜鍔ㄧ粨鏉熷寘瑁呭紓甯�"); + NodeCmd = null; } return action; } -- Gitblit v1.9.3