From 331b6997b7f58999ab15587fd3acbe0ffe2057c1 Mon Sep 17 00:00:00 2001 From: Rodney Chen <rodney.chen@hotmail.com> Date: 星期一, 29 七月 2024 18:09:48 +0800 Subject: [PATCH] 多语言文件 --- Tiger.Business.MES/Transaction/Position.cs | 53 +++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 49 insertions(+), 4 deletions(-) diff --git a/Tiger.Business.MES/Transaction/Position.cs b/Tiger.Business.MES/Transaction/Position.cs index b217619..99879d9 100644 --- a/Tiger.Business.MES/Transaction/Position.cs +++ b/Tiger.Business.MES/Transaction/Position.cs @@ -57,6 +57,7 @@ public IWorkBatch WorkBatch => CurBatch; public MES_WIP_DATA CurWipSN { get; set; } public MES_WIP_HIS CurWipSNHis { get; set; } + public Dictionary<string, object> Context { get; set; } = new(); public List<WorkStep> Steps { get; set; } = new(); public WorkStep CurStep { get; set; } public List<WorkStep> NextSteps { get; set; } = new(); @@ -178,7 +179,7 @@ /// <summary> /// 娣诲姞鑺傜偣鐨勪笅涓�涓涓哄埌宸ユ鍒楄〃 /// </summary> - /// <param name="curNode"></param> + /// <param name="parent"></param> private void AddNextActToSteps(WorkStep parent) { var edges = CurBatch.Edges.Where(q => q.SRC_NODE == parent.NodeID && CurBatch.NodeActs.Any(a => a.NODE_ID == parent.Node.ID && a.ID == q.TGT_NODE)).ToList(); @@ -189,6 +190,7 @@ { var next = Steps.First(q => q.NodeID == act.ID); next.Sequence = next.Sequence > parent.Sequence ? next.Sequence : (parent.Sequence + 1); + next.PrepNodeIDs.Add(parent.NodeID); next.PrepNodeIDs.AddRange(parent.PrepNodeIDs); next.PrepNodeIDs = next.PrepNodeIDs.Distinct().ToList(); AddNextActToSteps(next); @@ -203,6 +205,7 @@ NodeAct = act, Setting = CurBatch.ActionSets.FirstOrDefault(q => q.ACT_ID == act.ID), }; + next.PrepNodeIDs.Add(parent.NodeID); next.PrepNodeIDs.AddRange(parent.PrepNodeIDs); next.PrepNodeIDs = next.PrepNodeIDs.Distinct().ToList(); Steps.Add(next); @@ -266,12 +269,16 @@ //灏濊瘯鏈夋病鏈夊彲浠ョ洿鎺ュ紑濮嬬殑鍚庣画宸ユ foreach (var step in NextSteps) { + //灏濊瘯鎵ц鍚庣画宸ユ var canBegin = step.TryBegin(input); //濡傛灉鍚庣画宸ユ鍙互鐩存帴寮�濮嬪垯鐩存帴鎵ц if (canBegin.IsSuccessed) { + //鏇存柊褰撳墠鎵ц宸ユ涓哄凡寮�濮嬪伐姝� CurStep = step; + //鏇存柊鍚庣画鍙墽琛岀殑宸ユ鍒楄〃 NextSteps = GetNextSteps(CurStep); + //杩斿洖缁撴灉鍒板鎴风 result = canBegin; result.Data.IsFinished = IsFinishAllSteps; result.Data.CurWO = CurBatch.WO.ORDER_NO; @@ -284,7 +291,7 @@ } } - //鏍规嵁鍚庣画宸ユ杩斿洖ApiAction + //娌℃湁鍙互鐩存帴寮�濮嬬殑鍚庣画宸ユ锛屾牴鎹悗缁伐姝ヨ繑鍥濧piAction result.Data.IsFinished = IsFinishAllSteps; result.Data.CurWO = CurBatch.WO.ORDER_NO; result.Data.CurBatch = CurBatch.Batch.BATCH_NO; @@ -292,7 +299,7 @@ result.Data.StepActCode = CurStep.NodeAct.ACT_CODE; result.Data.NextStepID = ""; - //鏍规嵁鍚庣画鍙墽琛屽伐姝ュ垪琛ㄨ繑鍥炵浉搴旂殑鎿嶄綔鎻愮ず + //娌℃湁鍙互鐩存帴寮�濮嬬殑鍚庣画宸ユ锛屾牴鎹悗缁彲鎵ц宸ユ鍒楄〃杩斿洖鐩稿簲鐨勬搷浣滄彁绀� if (NextSteps.Count == 1) { result.LocaleMsg = NextSteps.First().GetBeginMsg(); @@ -304,7 +311,45 @@ } return result; } - + + /// <summary> + /// 鑾峰彇鎵撳嵃鏍囩妯℃澘杩囩▼鍙橀噺鍊� + /// </summary> + /// <param name="labelPVs">杩囩▼鍙橀噺鍒楄〃</param> + /// <param name="lv">鏍囩妯℃澘鍙橀噺</param> + /// <returns></returns> + public string GetPrintProcessValue(List<BAS_LABEL_PV> labelPVs, BAS_LABEL_VAR lv) + { + var pv = labelPVs.FirstOrDefault(q => q.VAR_CODE == lv.VAR_VALUE); + if (!pv.IsNullOrEmpty()) + { + switch (pv.VAR_TYPE.GetEnum<BAS_LABEL_PV.VAR_TYPEs>()) + { + case BAS_LABEL_PV.VAR_TYPEs.ServerMethod: + { + switch (pv.VAR_METHOD) + { + case "GetSN": + return CurWipSN.SN; + case "GetBAS_ITEM": + return WorkBatch.Product.ToJson(); + case "GetCustomer": + return WorkBatch.Batch.ToJson(); + default: + return ""; + } + } + case BAS_LABEL_PV.VAR_TYPEs.WebApiWebApi: + break; + case BAS_LABEL_PV.VAR_TYPEs.StoredProcedure: + break; + default: + break; + } + } + return ""; + } + #endregion Functions public override bool Close(bool needSaveHistoryLog = false) -- Gitblit v1.9.3