From 94f78e8c3fa502bc52eba2b88d45d5813609036c Mon Sep 17 00:00:00 2001 From: Rodney Chen <rodney.chen@hotmail.com> Date: 星期五, 13 九月 2024 10:26:48 +0800 Subject: [PATCH] 优化工单缓存对象更新逻辑 --- Tiger.Business/MES/Biz.WorkStep.cs | 39 +++++++++++++++++++++++++++++++-------- 1 files changed, 31 insertions(+), 8 deletions(-) diff --git a/Tiger.Business/MES/Biz.WorkStep.cs b/Tiger.Business/MES/Biz.WorkStep.cs index 467f105..b64748e 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,19 +104,30 @@ /// 缁撴潫宸ユ鎵ц /// </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 void SetStatusMessage(StepStatus status, Locale msg) + { + Message = msg; + Status = status; } /// <summary> /// 鑾峰彇褰撳墠宸ユ鐨勪俊鎭� /// </summary> /// <returns></returns> - public WorkStepInfo GetInfo() + public WorkStepInfo GetInfo(string locale) { return new WorkStepInfo() { ID = ID, + Name = Name, Sequence = Sequence, NodeID = NodeID, NodeType = NodeType.ToString(), @@ -113,7 +135,8 @@ OperSetting = OperSetting, NodeAct = NodeAct, ActSetting = ActSetting, - IsFinished = IsFinished, + Status = Status.ToString(), + Message = Message.IsNullOrEmpty() ? "" : Biz.T(Message, locale), }; } #endregion -- Gitblit v1.9.3