From a7d56a5843eafae7ff40bd858978cd8a39021bdb Mon Sep 17 00:00:00 2001 From: Ben Lin <maobin001@msn.com> Date: 星期四, 01 八月 2024 22:06:23 +0800 Subject: [PATCH] 重置工序 --- Tiger.Business.MES/Transaction/TestNode.cs | 35 +++++++++++++++++++---------------- 1 files changed, 19 insertions(+), 16 deletions(-) diff --git a/Tiger.Business.MES/Transaction/TestNode.cs b/Tiger.Business.MES/Transaction/TestNode.cs index b40764f..7739e6b 100644 --- a/Tiger.Business.MES/Transaction/TestNode.cs +++ b/Tiger.Business.MES/Transaction/TestNode.cs @@ -37,7 +37,7 @@ /// <returns></returns> public async Task<ApiAction<SubmitOutput>> Submit(SubmitInput input) { - var action = new ApiAction<SubmitOutput>(); + var action = new ApiAction<SubmitOutput>(new SubmitOutput()); try { //宸ユ鍒楄〃涓虹┖鎴栬�呭伐搴忚妭鐐瑰伐姝ユ湁鏈畬鎴愭椂锛屼紭鍏堝畬鎴愬伐搴忚妭鐐瑰伐姝� @@ -52,9 +52,10 @@ //褰撳墠宀椾綅鍦ㄥ綋鍓嶅伐鍗曚笉鏄绔欙紝鍒欐煡鎵炬潯鐮佸凡缁戝畾鐨勫伐鍗曞綋浣滃綋鍓嶅伐鍗� else { - var wosn = Biz.Db.Queryable<BIZ_MES_WO_BATCH, BIZ_MES_WO_SN>((b, s) => new JoinQueryInfos(JoinType.Inner, b.ORDER_NO == s.WORK_ORDER)).ByAuth(input.AuthOption) - .Where((b, s) => s.SN == input.SN && b.ACT_LINE == CurLine.LINE_CODE && (b.STATUS == BIZ_MES_WO_BATCH.STATUSs.Release.GetValue() || b.STATUS == BIZ_MES_WO_BATCH.STATUSs.Working.GetValue())) - .Select((b, s) => new { Batch = b, SN = s }).First(); + var wosn = 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 && q.ACT_LINE == CurLine.LINE_CODE && (q.STATUS == BIZ_MES_WO_BATCH.STATUSs.Release.GetValue() || q.STATUS == BIZ_MES_WO_BATCH.STATUSs.Working.GetValue())) + .Select((q, s) => new { Batch = q, SN = s }).First(); //鏌ユ壘鍒版潯鐮佸凡缁戝畾鐨勫伐鍗� if (!wosn.IsNullOrEmpty()) { @@ -126,9 +127,9 @@ result.Data.IsFinished = IsFinishAllSteps; result.Data.CurWO = CurBatch.WO.ORDER_NO; result.Data.CurBatch = CurBatch.Batch.BATCH_NO; - result.Data.CurNode = CurStep.NodeAct.ACT_NAME; - result.Data.StepActCode = CurStep.NodeAct.ACT_CODE; - result.Data.NextStepID = CurStep.ID; + result.Data.CurNode = CurStep?.NodeAct.ACT_NAME; + result.Data.StepActCode = CurStep?.NodeAct.ACT_CODE; + result.Data.NextStepID = CurStep?.ID; } } //濡傛灉鎵�鏈夊伐姝ラ兘瀹屾垚 @@ -140,14 +141,14 @@ } } //娌℃湁鍙墽琛岀殑宸ユ - ResetSteps(); + ResetNode(); action.IsSuccessed = false; //action.LocaleMsg = new($"宀椾綅[{CurPosition.POST_CODE}]宸ユ鎵ц寮傚父锛岃閲嶆柊鎵弿浜у搧鏉$爜", CurPosition.POST_CODE); action.LocaleMsg = new("MES.Transaction.TestNode.Submit.WorkStepException", CurPosition.POST_CODE); } catch (Exception ex) { - action.CatchExceptionWithLog(ex, $"娴嬭瘯宸ュ簭锛氭壂鎻忎骇鍝佹潯鐮佸紓甯�"); + action.CatchExceptionWithLog(ex, $"娴嬭瘯宸ュ簭锛氭彁浜ゆ搷浣滄暟鎹紓甯�"); } return action; } @@ -170,7 +171,7 @@ return woStatus; } //闈炴硶杩囩珯闃插憜锛氳繘鍏ュ伐搴忔椂瑕佸鍔犲垽鏂潯鐮佹槸鍚︽寜娴佺▼杩囩珯 - var wipSN = Biz.Db.Queryable<MES_WIP_DATA>().First(q => q.SN == input.SN && q.WORK_ORDER == CurBatch.WO.ORDER_NO) ?? new MES_WIP_DATA() + var wipSN = Biz.Db.Queryable<MES_WIP_DATA>().IncludesAllFirstLayer().First(q => q.SN == input.SN && q.WORK_ORDER == CurBatch.WO.ORDER_NO) ?? new MES_WIP_DATA() { SN = input.SN, STATUS = MES_WIP_DATA.STATUSs.Init.GetValue(), @@ -273,7 +274,7 @@ }; Steps.Add(curStep); - //鏈夐渶瑕佸垯娣诲姞宸ュ簭鑺傜偣鐨勫叾浠栧伐姝� + //鏈夐渶瑕佺敤鎴锋彁浜や俊鎭垯娣诲姞宸ュ簭鑺傜偣鐨勫叾浠栧伐姝� //鏈�鍚庢坊鍔犲綋鍓嶅伐搴忕殑琛屼负宸ユ GenerateSteps(curStep); @@ -294,7 +295,7 @@ //鏈畬鎴愭墍鏈夊伐姝� if (!IsFinishAllSteps) { - var result = new ApiAction<SubmitOutput>(); + var result = new ApiAction<SubmitOutput>(new SubmitOutput()); //鏈畬鎴愭墍鏈夊伐搴忚妭鐐瑰伐姝� if (!IsFinishNodeSteps) { @@ -306,7 +307,7 @@ result.Data.IsFinished = IsFinishAllSteps; result.Data.CurWO = CurBatch.WO.ORDER_NO; result.Data.CurBatch = CurBatch.Batch.BATCH_NO; - result.Data.CurNode = CurStep.Node.NODE_NAME; + result.Data.CurNode = CurStep?.Node.NODE_NAME; result.Data.NextStepID = next.ID; //鏍规嵁宸ュ簭鑺傜偣宸ユ鐨勫簭鍙疯繑鍥炵浉搴旂殑鎿嶄綔鎻愮ず @@ -333,15 +334,15 @@ action.Data.IsFinished = IsFinishAllSteps; action.Data.CurWO = CurBatch.WO.ORDER_NO; action.Data.CurBatch = CurBatch.Batch.BATCH_NO; - action.Data.CurNode = CurStep.Node.NODE_NAME; + action.Data.CurNode = CurStep?.Node.NODE_NAME; action.Data.NextStepID = ""; action = DoIfFinishAllSteps(action); } } catch (Exception ex) { - ResetSteps(); - action.CatchExceptionWithLog(ex, $"娴嬭瘯宸ュ簭锛氭壂鎻忎骇鍝佹潯鐮佸紓甯�"); + ResetNode(); + action.CatchExceptionWithLog(ex, $"娴嬭瘯宸ュ簭锛氬伐搴忚妭鐐瑰伐姝ユ彁浜ゆ暟鎹紓甯�"); } return action; } @@ -369,6 +370,8 @@ //淇濆瓨鎴愬姛锛岃繑鍥炶繃绔欐秷鎭� //action.LocaleMsg = new($"宸ュ崟[{CurWipSN.WORK_ORDER}]鐨勬潯鐮乕{CurWipSN.SN}]鍦ㄥ矖浣峓{CurWipSN.POST_CODE}]宸ュ簭[{CurWipSN.NODE_NAME}]杩囩珯鎴愬姛锛岀姸鎬乕{CurWipSN.STATUS.GetEnumDesc<MES_WIP_DATA.STATUSs>()}]", CurWipSN.WORK_ORDER, CurWipSN.SN, CurWipSN.POST_CODE, CurWipSN.NODE_NAME, CurWipSN.STATUS.GetEnumDesc<MES_WIP_DATA.STATUSs>()); action.LocaleMsg = new("MES.Transaction.TestNode.ScanSn.PassSuccess", CurWipSN.WORK_ORDER, CurWipSN.SN, CurWipSN.POST_CODE, CurWipSN.NODE_NAME, CurWipSN.STATUS.GetEnumDesc<MES_WIP_DATA.STATUSs>()); + //閲嶇疆宸ュ簭 + ResetNode(); return action; } -- Gitblit v1.9.3