using Tiger.Model; using SqlSugar; using System; using System.Collections.Generic; using System.Linq.Expressions; using System.Text; using System.Threading.Tasks; using Rhea.Common; using System.Net; using System.Linq; using Newtonsoft.Json; using Tiger.IBusiness; using Tiger.Business.MES; using Tiger.Model.Entitys.MES.Position; namespace Tiger.Business { public partial class Biz { /// /// 工步 /// public partial class WorkStep : IWorkStep { public WorkStep(string id, IWorkStep.Types type) { ID = id; Type = type; } #region Propertys & Variables public string ID { get; set; } = Guid.NewGuid().ToString("N"); public IWorkStep.Types Type { get; set; } public int Sequence { get; set; } public MES_WO_NODE Node { get; set; } public MES_WO_NODE_ACT NodeAct { get; set; } public MES_WO_ACTION Setting { get; set; } public IPosition CurPosition { get; set; } public IWorkAction CurAction { get; set; } private bool _IsFinished = false; public bool IsFinished { get => Type == IWorkStep.Types.Action ? CurAction.IsFinished : _IsFinished; set { _IsFinished = value; } } public Action DBSubmitAction { get; set; } = () => { }; #endregion #region Functions /// /// 开始执行工步 /// /// /// public ApiAction Begin(IPosition position) { CurPosition = position; CurAction = DI.Resolve(NodeAct.Definition.SERVICE_TYPE) as IWorkAction; //CurAction = DI.Resolve("Tiger.IBusiness.IPrintLabel,Tiger.IBusiness") as IWorkAction; return CurAction.Begin(this, position, NodeAct, Setting); } /// /// 工步提交数据 /// /// /// public ApiAction Submit(SubmitInput input) { return CurAction.Submit(input); } #endregion } } }