From 935722e71cc47d8c9f3b0e911de33c7eb0cbc693 Mon Sep 17 00:00:00 2001 From: Rodney Chen <rodney.chen@hotmail.com> Date: 星期三, 28 八月 2024 22:55:55 +0800 Subject: [PATCH] 优化工步实体,增加名称,状态,消息 --- Tiger.Business.MES/WorkAction/ThreeInOne.cs | 7 +- Tiger.Business.MES/WorkAction/VerifyItem.cs | 5 + Tiger.Business.MES/Transaction/CollectNode.cs | 16 ++-- Tiger.Business.MES/WorkAction/Assembly.cs | 5 + Tiger.Business.MES/WorkAction/Weighing.cs | 5 + Tiger.IBusiness/Common/IStep.cs | 30 +++++++++- Tiger.Business.MES/Transaction/PackingNode.cs | 18 +++--- Tiger.Business.MES/Transaction/Position.cs | 4 Tiger.Model.Net/Entitys/MES/ParameterEntity/PositionParameter.cs | 3 Tiger.Business/MES/Biz.WorkStep.cs | 28 ++++++-- Tiger.Business.MES/Transaction/TestNode.cs | 16 ++-- Tiger.Business.MES/WorkAction/IPQC.cs | 5 + Tiger.Business.MES/WorkAction/PackingAction.cs | 9 +- Tiger.Business.MES/WorkAction/PrintLabel.cs | 5 + Tiger.IBusiness/MES/IWorkAction.cs | 2 Tiger.Business.MES/WorkAction/WipExtInfo.cs | 5 + 16 files changed, 104 insertions(+), 59 deletions(-) diff --git a/Tiger.Business.MES/Transaction/CollectNode.cs b/Tiger.Business.MES/Transaction/CollectNode.cs index bb5973e..275cf5d 100644 --- a/Tiger.Business.MES/Transaction/CollectNode.cs +++ b/Tiger.Business.MES/Transaction/CollectNode.cs @@ -56,7 +56,7 @@ } else if (!IsFinishAllSteps) { - action.Data.OperInfo = SetOperNodeInfo(OperInfoDic[CurBatch.Batch.BATCH_NO]); + action.Data.OperInfo = SetOperNodeInfo(OperInfoDic[CurBatch.Batch.BATCH_NO], input.Locale); } } //褰撳墠宀椾綅鍦ㄥ綋鍓嶅伐鍗曚笉鏄绔欙紝鍒欐煡鎵炬潯鐮佸凡缁戝畾鐨勫伐鍗曞綋浣滃綋鍓嶅伐鍗� @@ -101,7 +101,7 @@ } else if (!IsFinishAllSteps) { - action.Data.OperInfo = SetOperNodeInfo(OperInfoDic[CurBatch.Batch.BATCH_NO]); + action.Data.OperInfo = SetOperNodeInfo(OperInfoDic[CurBatch.Batch.BATCH_NO], input.Locale); } } } @@ -162,7 +162,7 @@ //濡傛灉鎵�鏈夊伐姝ラ兘瀹屾垚 if (IsFinishAllSteps) { - result = DoIfFinishAllSteps(result); + result = DoIfFinishAllSteps(result, input.Locale); } else { @@ -452,7 +452,7 @@ } //瀹屾垚绗竴涓伐搴忚妭鐐瑰伐姝� - curStep.IsFinished = true; + curStep.Status = StepStatus.Finished; CurStep = curStep; } else if (!IsFinishNodeSteps) @@ -460,7 +460,7 @@ var curStep = Steps.Where(q => q.NodeType == IWorkStep.NodeTypes.Node && !q.IsFinished).OrderBy(q => q.Sequence).First(); //瀹屾垚褰撳墠宸ュ簭鑺傜偣宸ユ - curStep.IsFinished = true; + curStep.Status = StepStatus.Finished; CurStep = curStep; } @@ -498,7 +498,7 @@ if (IsFinishAllSteps) { action.Data.SetValue(CurBatch, CurStep, "", IsFinishAllSteps); - action = DoIfFinishAllSteps(action); + action = DoIfFinishAllSteps(action, input.Locale); } } catch (Exception ex) @@ -516,14 +516,14 @@ /// </summary> /// <param name="action"></param> /// <returns></returns> - public ApiAction<SubmitOutput> DoIfFinishAllSteps(ApiAction<SubmitOutput> action) + public ApiAction<SubmitOutput> DoIfFinishAllSteps(ApiAction<SubmitOutput> action, string locale) { //淇濆瓨鏁版嵁搴� SaveStepsCommitActionToDB(); //淇濆瓨鎴愬姛锛岃繑鍥炶繃绔欐秷鎭� OperInfoDic[CurBatch.Batch.BATCH_NO].InputQty += CurWipSNs.Count; - action.Data.OperInfo = SetOperNodeInfo(OperInfoDic[CurBatch.Batch.BATCH_NO]); + action.Data.OperInfo = SetOperNodeInfo(OperInfoDic[CurBatch.Batch.BATCH_NO], locale); action.Data.ShortMsg = new("杩囩珯鎴愬姛", 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>()); diff --git a/Tiger.Business.MES/Transaction/PackingNode.cs b/Tiger.Business.MES/Transaction/PackingNode.cs index 3af03ea..4584680 100644 --- a/Tiger.Business.MES/Transaction/PackingNode.cs +++ b/Tiger.Business.MES/Transaction/PackingNode.cs @@ -79,7 +79,7 @@ } else if (!IsFinishAllSteps) { - action.Data.OperInfo = SetOperNodeInfo(OperInfoDic[CurBatch.Batch.BATCH_NO]); + action.Data.OperInfo = SetOperNodeInfo(OperInfoDic[CurBatch.Batch.BATCH_NO], input.Locale); } } //褰撳墠宀椾綅鍦ㄥ綋鍓嶅伐鍗曚笉鏄绔欙紝鍒欐煡鎵炬潯鐮佸凡缁戝畾鐨勫伐鍗曞綋浣滃綋鍓嶅伐鍗� @@ -133,7 +133,7 @@ } else if (!IsFinishAllSteps) { - action.Data.OperInfo = SetOperNodeInfo(OperInfoDic[CurBatch.Batch.BATCH_NO]); + action.Data.OperInfo = SetOperNodeInfo(OperInfoDic[CurBatch.Batch.BATCH_NO], input.Locale); } } } @@ -194,7 +194,7 @@ //濡傛灉鎵�鏈夊伐姝ラ兘瀹屾垚 if (IsFinishAllSteps) { - result = DoIfFinishAllSteps(result); + result = DoIfFinishAllSteps(result, input.Locale); } else { @@ -484,15 +484,15 @@ } //瀹屾垚绗竴涓伐搴忚妭鐐瑰伐姝� - curStep.IsFinished = true; - CurStep = curStep; + curStep.Status = StepStatus.Finished; + CurStep = curStep; } else if (!IsFinishNodeSteps) { var curStep = Steps.Where(q => q.NodeType == IWorkStep.NodeTypes.Node && !q.IsFinished).OrderBy(q => q.Sequence).First(); //瀹屾垚褰撳墠宸ュ簭鑺傜偣宸ユ - curStep.IsFinished = true; + curStep.Status = StepStatus.Finished; CurStep = curStep; } @@ -530,7 +530,7 @@ if (IsFinishAllSteps) { action.Data.SetValue(CurBatch, CurStep, "", IsFinishAllSteps); - action = DoIfFinishAllSteps(action); + action = DoIfFinishAllSteps(action, input.Locale); } } catch (Exception ex) @@ -548,14 +548,14 @@ /// </summary> /// <param name="action"></param> /// <returns></returns> - public ApiAction<SubmitOutput> DoIfFinishAllSteps(ApiAction<SubmitOutput> action) + public ApiAction<SubmitOutput> DoIfFinishAllSteps(ApiAction<SubmitOutput> action, string locale) { //淇濆瓨鏁版嵁搴� SaveStepsCommitActionToDB(); //淇濆瓨鎴愬姛锛岃繑鍥炶繃绔欐秷鎭� OperInfoDic[CurBatch.Batch.BATCH_NO].InputQty += CurWipSNs.Count; - action.Data.OperInfo = SetOperNodeInfo(OperInfoDic[CurBatch.Batch.BATCH_NO]); + action.Data.OperInfo = SetOperNodeInfo(OperInfoDic[CurBatch.Batch.BATCH_NO], locale); action.Data.ShortMsg = new("杩囩珯鎴愬姛", 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>()); diff --git a/Tiger.Business.MES/Transaction/Position.cs b/Tiger.Business.MES/Transaction/Position.cs index 676be4b..e718347 100644 --- a/Tiger.Business.MES/Transaction/Position.cs +++ b/Tiger.Business.MES/Transaction/Position.cs @@ -192,13 +192,13 @@ /// <summary> /// 璁剧疆褰撳墠鏉$爜鐨勫伐搴忎俊鎭� /// </summary> - public OperInfo SetOperNodeInfo(OperInfo info) + public OperInfo SetOperNodeInfo(OperInfo info, string locale) { if (CurWipSNs.Any()) { info.CurNode = CurWipSNs.First().NODE_NAME; info.NextNode = string.Join(",", CurBatch.GetNextNodes(CurWipSNs.First()).Select(q => q.NODE_NAME)); - info.StepsInfo = Steps.Select(q => q.GetInfo()).ToList(); + info.StepsInfo = Steps.Select(q => q.GetInfo(locale)).ToList(); } else { diff --git a/Tiger.Business.MES/Transaction/TestNode.cs b/Tiger.Business.MES/Transaction/TestNode.cs index 3a9e2e2..f46b261 100644 --- a/Tiger.Business.MES/Transaction/TestNode.cs +++ b/Tiger.Business.MES/Transaction/TestNode.cs @@ -57,7 +57,7 @@ } else if (!IsFinishAllSteps) { - action.Data.OperInfo = SetOperNodeInfo(OperInfoDic[CurBatch.Batch.BATCH_NO]); + action.Data.OperInfo = SetOperNodeInfo(OperInfoDic[CurBatch.Batch.BATCH_NO], input.Locale); } } //褰撳墠宀椾綅鍦ㄥ綋鍓嶅伐鍗曚笉鏄绔欙紝鍒欐煡鎵炬潯鐮佸凡缁戝畾鐨勫伐鍗曞綋浣滃綋鍓嶅伐鍗� @@ -102,7 +102,7 @@ } else if (!IsFinishAllSteps) { - action.Data.OperInfo = SetOperNodeInfo(OperInfoDic[CurBatch.Batch.BATCH_NO]); + action.Data.OperInfo = SetOperNodeInfo(OperInfoDic[CurBatch.Batch.BATCH_NO], input.Locale); } } } @@ -163,7 +163,7 @@ //濡傛灉鎵�鏈夊伐姝ラ兘瀹屾垚 if (IsFinishAllSteps) { - result = DoIfFinishAllSteps(result); + result = DoIfFinishAllSteps(result, input.Locale); } else { @@ -452,7 +452,7 @@ } //瀹屾垚绗竴涓伐搴忚妭鐐瑰伐姝� - curStep.IsFinished = true; + curStep.Status = StepStatus.Finished; CurStep = curStep; } else if (!IsFinishNodeSteps) @@ -460,7 +460,7 @@ var curStep = Steps.Where(q => q.NodeType == IWorkStep.NodeTypes.Node && !q.IsFinished).OrderBy(q => q.Sequence).First(); //瀹屾垚褰撳墠宸ュ簭鑺傜偣宸ユ - curStep.IsFinished = true; + curStep.Status = StepStatus.Finished; CurStep = curStep; } @@ -498,7 +498,7 @@ if (IsFinishAllSteps) { action.Data.SetValue(CurBatch, CurStep, "", IsFinishAllSteps); - action = DoIfFinishAllSteps(action); + action = DoIfFinishAllSteps(action, input.Locale); } } catch (Exception ex) @@ -516,14 +516,14 @@ /// </summary> /// <param name="action"></param> /// <returns></returns> - public ApiAction<SubmitOutput> DoIfFinishAllSteps(ApiAction<SubmitOutput> action) + public ApiAction<SubmitOutput> DoIfFinishAllSteps(ApiAction<SubmitOutput> action, string locale) { //淇濆瓨鏁版嵁搴� SaveStepsCommitActionToDB(); //淇濆瓨鎴愬姛锛岃繑鍥炶繃绔欐秷鎭� OperInfoDic[CurBatch.Batch.BATCH_NO].InputQty += CurWipSNs.Count; - action.Data.OperInfo = SetOperNodeInfo(OperInfoDic[CurBatch.Batch.BATCH_NO]); + action.Data.OperInfo = SetOperNodeInfo(OperInfoDic[CurBatch.Batch.BATCH_NO], locale); action.Data.ShortMsg = new("杩囩珯鎴愬姛", 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>()); diff --git a/Tiger.Business.MES/WorkAction/Assembly.cs b/Tiger.Business.MES/WorkAction/Assembly.cs index 25ea331..0ac02f5 100644 --- a/Tiger.Business.MES/WorkAction/Assembly.cs +++ b/Tiger.Business.MES/WorkAction/Assembly.cs @@ -247,7 +247,7 @@ //涓婃枡瀹屾垚 if (CurAssembly.IsFinished) { - action = End(); + action = End(input); } return action; } @@ -274,7 +274,7 @@ /// 缁撴潫鎵ц宸ュ簭琛屼负 /// </summary> /// <returns></returns> - public ApiAction<SubmitOutput> End() + public ApiAction<SubmitOutput> End(SubmitInput input) { var action = new ApiAction<SubmitOutput>(new SubmitOutput()); @@ -340,6 +340,7 @@ }; IsFinished = true; + CurStep.Status = StepStatus.Finished; action.Data.ShortMsg = new("涓婃枡瀹屾垚", ShortMessage.Types.Success); //action.LocaleMsg = new($"浠ヤ笅鐗╂枡涓婃枡瀹屾垚锛歿string.Join("锛�", CurAssembly.Items.Select(q => $"{q.ItemInfo.ITEM_NAME}({q.ItemInfo.ITEM_CODE})"))}"); action.LocaleMsg = new("MES.WorkAction.Assembly.LoadFinish", string.Join("锛�", CurAssembly.Items.Select(q => $"{q.ItemInfo.ITEM_NAME}({q.ItemInfo.ITEM_CODE})"))); diff --git a/Tiger.Business.MES/WorkAction/IPQC.cs b/Tiger.Business.MES/WorkAction/IPQC.cs index 199d8d4..d092fe8 100644 --- a/Tiger.Business.MES/WorkAction/IPQC.cs +++ b/Tiger.Business.MES/WorkAction/IPQC.cs @@ -80,7 +80,7 @@ //琛屼负鎵ц瀹屾垚 if (false) { - action = End(); + action = End(input); } } //鎻愪氦鏁版嵁鎵ц澶辫触 @@ -103,7 +103,7 @@ /// 缁撴潫鎵ц宸ュ簭琛屼负 /// </summary> /// <returns></returns> - public ApiAction<SubmitOutput> End() + public ApiAction<SubmitOutput> End(SubmitInput input) { var action = new ApiAction<SubmitOutput>(new SubmitOutput()); @@ -165,6 +165,7 @@ }; IsFinished = true; + CurStep.Status = StepStatus.Finished; action.Data.ShortMsg = new("娴嬭瘯瀹屾垚", ShortMessage.Types.Success); action.LocaleMsg = new($"娴嬭瘯缁撴潫"); //action.LocaleMsg = new("MES.WorkAction.IPQC.Finish"); diff --git a/Tiger.Business.MES/WorkAction/PackingAction.cs b/Tiger.Business.MES/WorkAction/PackingAction.cs index 7a1566f..7a4421c 100644 --- a/Tiger.Business.MES/WorkAction/PackingAction.cs +++ b/Tiger.Business.MES/WorkAction/PackingAction.cs @@ -305,7 +305,7 @@ //鏈�澶栧眰鍖呰宸插鐞嗗畬鎴愬垯鐩存帴缁撴潫琛屼负 if (CurPkg.Item.PKG_LEVEL == FinishLevel) { - action = End(); + action = End(input); } //鏈�澶栧眰鍖呰鏈墦鍗版壂鎻忓垯缁х画 else @@ -373,7 +373,7 @@ } else { - action = End(); + action = End(input); } } break; @@ -605,7 +605,7 @@ //褰撳墠鍖呰灞傜骇鐨勬槑缁嗘暟閲忔湭杈惧埌鍖呰鏁伴噺锛屽垯瀹屾垚鏈鎵弿锛岀瓑寰呬笅涓骇鍝佽繘绔� else { - action = End(); + action = End(input); } } //鏁版嵁寮傚父 @@ -674,7 +674,7 @@ /// 缁撴潫鎵ц宸ュ簭琛屼负 /// </summary> /// <returns></returns> - public ApiAction<SubmitOutput> End() + public ApiAction<SubmitOutput> End(SubmitInput input) { var action = new ApiAction<SubmitOutput>(new SubmitOutput()); @@ -791,6 +791,7 @@ } IsFinished = true; + CurStep.Status = StepStatus.Finished; action.Data.ShortMsg = new("鍖呰瀹屾垚", ShortMessage.Types.Success); return action; diff --git a/Tiger.Business.MES/WorkAction/PrintLabel.cs b/Tiger.Business.MES/WorkAction/PrintLabel.cs index a3f2941..d4b91f5 100644 --- a/Tiger.Business.MES/WorkAction/PrintLabel.cs +++ b/Tiger.Business.MES/WorkAction/PrintLabel.cs @@ -83,7 +83,7 @@ //鎻愪氦鏁版嵁鎵ц鎴愬姛 if (input.Data.ToBoolean()) { - action = End(); + action = End(input); } //鎻愪氦鏁版嵁鎵ц澶辫触 else @@ -104,7 +104,7 @@ /// 缁撴潫鎵ц宸ュ簭琛屼负 /// </summary> /// <returns></returns> - public ApiAction<SubmitOutput> End() + public ApiAction<SubmitOutput> End(SubmitInput input) { var action = new ApiAction<SubmitOutput>(new SubmitOutput()); @@ -163,6 +163,7 @@ }; IsFinished = true; + CurStep.Status = StepStatus.Finished; action.Data.ShortMsg = new("鎵撳嵃瀹屾垚", ShortMessage.Types.Success); //action.LocaleMsg = new($"鏍囩{Label.LABEL_NAME}[{Label.LABEL_CODE}]鎵撳嵃鎴愬姛", Label.LABEL_NAME); action.LocaleMsg = new("MES.WorkAction.PrintLabel.PrintSuccess", Label.LABEL_NAME, Label.LABEL_CODE); diff --git a/Tiger.Business.MES/WorkAction/ThreeInOne.cs b/Tiger.Business.MES/WorkAction/ThreeInOne.cs index 072cad6..04bc7e3 100644 --- a/Tiger.Business.MES/WorkAction/ThreeInOne.cs +++ b/Tiger.Business.MES/WorkAction/ThreeInOne.cs @@ -90,7 +90,7 @@ NeedScan = false, Label = "", }; - action = End(); + action = End(input); } //鍘傚唴鏉$爜鏈粦瀹氬鎴锋潯鐮� else @@ -177,7 +177,7 @@ CurCSN.FLOW_SN = CurPosition.CurWipSNs.First().SN; CurCSN.WORK_ORDER = CurPosition.WorkBatch.WO.ORDER_NO; CurCSN.ITEM_CODE = CurPosition.WorkBatch.WO.ITEM_CODE; - action = End(); + action = End(input); } return action; @@ -186,7 +186,7 @@ /// 缁撴潫鎵ц宸ュ簭琛屼负 /// </summary> /// <returns></returns> - public ApiAction<SubmitOutput> End() + public ApiAction<SubmitOutput> End(SubmitInput input) { var action = new ApiAction<SubmitOutput>(new SubmitOutput()); @@ -247,6 +247,7 @@ }; IsFinished = true; + CurStep.Status = StepStatus.Finished; action.Data.ShortMsg = new("瀹㈡埛鏉$爜宸茬粦瀹�", ShortMessage.Types.Success); //action.LocaleMsg = new($"鍘傚唴鏉$爜[{0}]宸茬粦瀹氬鎴锋潯鐮乕{1}]瀹屾垚", Label.LABEL_NAME); action.LocaleMsg = new("MES.WorkAction.ThreeInOne.BindingComplete", CurCSN.FLOW_SN, CurCSN.CUST_SN); diff --git a/Tiger.Business.MES/WorkAction/VerifyItem.cs b/Tiger.Business.MES/WorkAction/VerifyItem.cs index 2abb1b8..1e9f7d2 100644 --- a/Tiger.Business.MES/WorkAction/VerifyItem.cs +++ b/Tiger.Business.MES/WorkAction/VerifyItem.cs @@ -114,7 +114,7 @@ //楠岃瘉閫氳繃鍒欎繚瀛� if (isOK) { - action = End(); + action = End(input); } //閮芥病鏈夌墿鏂欓獙璇侀�氳繃锛屽垯杩斿洖閿欒淇℃伅 @@ -135,7 +135,7 @@ /// 缁撴潫鎵ц宸ュ簭琛屼负 /// </summary> /// <returns></returns> - public ApiAction<SubmitOutput> End() + public ApiAction<SubmitOutput> End(SubmitInput input) { var action = new ApiAction<SubmitOutput>(new SubmitOutput()); @@ -192,6 +192,7 @@ }; IsFinished = true; + CurStep.Status = StepStatus.Finished; action.Data.ShortMsg = new("楠岃瘉閫氳繃", ShortMessage.Types.Success); //action.LocaleMsg = new($"浜у搧[{CurPosition.CurSN}]楠岃瘉閫氳繃"); action.LocaleMsg = new("MES.WorkAction.VerifyItem.VerifySuccess", CurPosition.CurSN); diff --git a/Tiger.Business.MES/WorkAction/Weighing.cs b/Tiger.Business.MES/WorkAction/Weighing.cs index 3b0fac9..ce49c60 100644 --- a/Tiger.Business.MES/WorkAction/Weighing.cs +++ b/Tiger.Business.MES/WorkAction/Weighing.cs @@ -108,7 +108,7 @@ } else { - action = End(); + action = End(input); } return action; } @@ -134,7 +134,7 @@ /// 缁撴潫鎵ц宸ュ簭琛屼负 /// </summary> /// <returns></returns> - public ApiAction<SubmitOutput> End() + public ApiAction<SubmitOutput> End(SubmitInput input) { var action = new ApiAction<SubmitOutput>(new SubmitOutput()); @@ -193,6 +193,7 @@ }; IsFinished = true; + CurStep.Status = StepStatus.Finished; action.Data.ShortMsg = new("绉伴噸瀹屾垚", ShortMessage.Types.Success); //action.LocaleMsg = new($"鏉$爜[{CurPosition.CurSN}]绉伴噸鏁版嵁[{CurPkg.WEIGHT} {CurPkg.WEIGHT_UNIT}]淇濆瓨鎴愬姛"); action.LocaleMsg = new("MES.WorkAction.Weighing.SaveSuccess", CurPosition.CurSN, CurPkg.WEIGHT, CurPkg.WEIGHT_UNIT); diff --git a/Tiger.Business.MES/WorkAction/WipExtInfo.cs b/Tiger.Business.MES/WorkAction/WipExtInfo.cs index 14a059c..e8df4f9 100644 --- a/Tiger.Business.MES/WorkAction/WipExtInfo.cs +++ b/Tiger.Business.MES/WorkAction/WipExtInfo.cs @@ -133,7 +133,7 @@ if (isOK) { CurWipExt.GetType().GetProperty($"FIELD_{ExtInfo.SEQ.ToString("00")}")?.SetValue(CurWipExt, input.SN); - action = End(); + action = End(input); } //閮芥病鏈夌墿鏂欓獙璇侀�氳繃锛屽垯杩斿洖閿欒淇℃伅 @@ -154,7 +154,7 @@ /// 缁撴潫鎵ц宸ュ簭琛屼负 /// </summary> /// <returns></returns> - public ApiAction<SubmitOutput> End() + public ApiAction<SubmitOutput> End(SubmitInput input) { var action = new ApiAction<SubmitOutput>(new SubmitOutput()); @@ -214,6 +214,7 @@ }; IsFinished = true; + CurStep.Status = StepStatus.Finished; action.Data.ShortMsg = new("缁戝畾瀹屾垚", ShortMessage.Types.Success); //action.LocaleMsg = new($"浜у搧[{CurPosition.CurWipSN.SN}]缁戝畾[{ExtInfo.FIELD_NAME}]鏍囩鏉$爜[{CurWipExt.GetType().GetProperty($"FIELD_{ExtInfo.SEQ.ToString("00")}")?.GetValue(CurWipExt)?.ToString()}]淇濆瓨鎴愬姛"); action.LocaleMsg = new("MES.WorkAction.WipExtInfo.SaveSuccess", CurPosition.CurSN, ExtInfo.FIELD_NAME, CurWipExt.GetType().GetProperty($"FIELD_{ExtInfo.SEQ.ToString("00")}")?.GetValue(CurWipExt)?.ToString()); diff --git a/Tiger.Business/MES/Biz.WorkStep.cs b/Tiger.Business/MES/Biz.WorkStep.cs index 467f105..0771409 100644 --- a/Tiger.Business/MES/Biz.WorkStep.cs +++ b/Tiger.Business/MES/Biz.WorkStep.cs @@ -30,6 +30,7 @@ #region Propertys & Variables public string ID { get; set; } = Guid.NewGuid().ToString("N"); + public string Name { get; set; } public IWorkStep.NodeTypes NodeType { get; set; } public MES_WO_NODE Node { get; set; } public MES_WO_OPER OperSetting { get; set; } @@ -40,12 +41,22 @@ public int Sequence { get; set; } public List<string> PrepNodeIDs { get; set; } = new(); public string NodeID => NodeType == IWorkStep.NodeTypes.Action ? NodeAct.ID : Node.ID; - private bool _IsFinished = false; - public bool IsFinished + //private bool _IsFinished = false; + //public bool IsFinished + //{ + // get => NodeType == IWorkStep.NodeTypes.Action ? CurAction.IsFinished : _IsFinished; + // set { _IsFinished = value; } + //} + public StepStatus Status { get; set; } = StepStatus.Normal; + public bool IsFinished => Status == StepStatus.Finished; + private Locale _Message; + public Locale Message { - get => NodeType == IWorkStep.NodeTypes.Action ? CurAction.IsFinished : _IsFinished; - set { _IsFinished = value; } + get => _Message; + set { _MsgHistory.Add(_Message = value); } } + private List<Locale> _MsgHistory = new(); + public List<Locale> MsgHistory => _MsgHistory; public Action DBSubmitAction { get; set; } = () => { }; #endregion @@ -93,16 +104,16 @@ /// 缁撴潫宸ユ鎵ц /// </summary> /// <returns></returns> - public ApiAction<SubmitOutput> End() + public ApiAction<SubmitOutput> End(SubmitInput input) { - return CurAction.End(); + return CurAction.End(input); } /// <summary> /// 鑾峰彇褰撳墠宸ユ鐨勪俊鎭� /// </summary> /// <returns></returns> - public WorkStepInfo GetInfo() + public WorkStepInfo GetInfo(string locale) { return new WorkStepInfo() { ID = ID, @@ -113,7 +124,8 @@ OperSetting = OperSetting, NodeAct = NodeAct, ActSetting = ActSetting, - IsFinished = IsFinished, + Status = Status.ToString(), + Message = Biz.T(Message, locale), }; } #endregion diff --git a/Tiger.IBusiness/Common/IStep.cs b/Tiger.IBusiness/Common/IStep.cs index e86ba8a..16655e8 100644 --- a/Tiger.IBusiness/Common/IStep.cs +++ b/Tiger.IBusiness/Common/IStep.cs @@ -1,6 +1,7 @@ 锘縰sing Newtonsoft.Json; using Rhea.Common; using System; +using System.ComponentModel; using Tiger.Model; using Tiger.Model.Entitys.MES.Position; @@ -17,13 +18,25 @@ /// </summary> public string ID { get; set; } /// <summary> + /// 姝ラ鍚嶇О + /// </summary> + public string Name { get; set; } + /// <summary> /// 姝ラ搴忓彿 /// </summary> public int Sequence { get; set; } /// <summary> - /// 姝ラ鏄惁瀹屾垚 + /// 姝ラ鐘舵�� /// </summary> - public abstract bool IsFinished { get; set; } + public StepStatus Status { get; set; } + /// <summary> + /// 姝ラ娑堟伅 + /// </summary> + public Locale Message { get; set; } + /// <summary> + /// 姝ラ娑堟伅鍘嗗彶 + /// </summary> + public List<Locale> MsgHistory { get; } #endregion Propertys & Variables #region Functions @@ -42,8 +55,19 @@ /// 缁撴潫鎵ц /// </summary> /// <returns></returns> - public abstract ApiAction<OutputT> End(); + public abstract ApiAction<OutputT> End(InputT input); #endregion Functions } + public enum StepStatus + { + [Description("姝e父")] + Normal = 0, + [Description("閿欒")] + Error = 1, + [Description("璀﹀憡")] + Warning = 2, + [Description("瀹屾垚")] + Finished = 3, + } } diff --git a/Tiger.IBusiness/MES/IWorkAction.cs b/Tiger.IBusiness/MES/IWorkAction.cs index 965bedc..b530d7c 100644 --- a/Tiger.IBusiness/MES/IWorkAction.cs +++ b/Tiger.IBusiness/MES/IWorkAction.cs @@ -44,7 +44,7 @@ /// 缁撴潫鎵ц宸ュ簭琛屼负 /// </summary> /// <returns></returns> - public ApiAction<SubmitOutput> End(); + public ApiAction<SubmitOutput> End(SubmitInput input); #endregion Functions } } diff --git a/Tiger.Model.Net/Entitys/MES/ParameterEntity/PositionParameter.cs b/Tiger.Model.Net/Entitys/MES/ParameterEntity/PositionParameter.cs index b55ebf6..aae3cde 100644 --- a/Tiger.Model.Net/Entitys/MES/ParameterEntity/PositionParameter.cs +++ b/Tiger.Model.Net/Entitys/MES/ParameterEntity/PositionParameter.cs @@ -256,7 +256,8 @@ public MES_WO_OPER OperSetting { get; set; } public MES_WO_NODE_ACT NodeAct { get; set; } public MES_WO_ACTION ActSetting { get; set; } - public bool IsFinished { get; set; } + public string Status { get; set; } + public string Message { get; set; } } } -- Gitblit v1.9.3