public static void Insert(F_INST_ACTIVITY entity) { using (MainDataContext dbContext = new MainDataContext()) { //var list = from a in dbContext.F_INST_ACTIVITY select a.ID; //long total = list.LongCount(); //if (total == 0) //{ // entity.ID = 1; //} //else //{ // entity.ID = dbContext.F_INST_ACTIVITY.Max(a => a.ID) + 1; //} dbContext.F_INST_ACTIVITY.InsertOnSubmit(entity); dbContext.SubmitChanges(); //return entity.ID; } }
/// <summary> /// 启动关卡实例 /// </summary> /// <returns></returns> public void Active() { //更新状态 F_INST_ACTIVITY inst = DAL.WorkFlow.ActivityInstance.Get(m_ActivityInstanceId); inst.BeginDate = DateTime.Now; inst.State = ActivityInstanceStatus.Active; DAL.WorkFlow.ActivityInstance.Save(inst); }
public ActivityInstance(int id) { m_ActivityInstanceId = id; F_INST_ACTIVITY activityInst = DAL.WorkFlow.ActivityInstance.Get(this.ID); m_FlowInstance = new FlowInstance(activityInst.FlowInstID); m_Activity = new Activity(activityInst.ActivityID); m_State = activityInst.State; }
/// <summary> /// 搁置关卡 /// </summary> /// <returns></returns> public void Pending() { //更新状态 F_INST_ACTIVITY activityInst = DAL.WorkFlow.ActivityInstance.Get(m_ActivityInstanceId); activityInst.BeginDate = DateTime.Now; activityInst.State = ActivityInstanceStatus.Pending; DAL.WorkFlow.ActivityInstance.Save(activityInst); this.State = ActivityInstanceStatus.Pending; }
public static bool Save(F_INST_ACTIVITY entity) { using (MainDataContext dbContext = new MainDataContext()) { var model = dbContext.F_INST_ACTIVITY.FirstOrDefault(t => t.ID == entity.ID); model.FlowInstID = entity.FlowInstID; model.ActivityID = entity.ActivityID; model.BeginDate = entity.BeginDate; model.EndDate = entity.EndDate; model.State = entity.State; dbContext.SubmitChanges(); } return(true); }
/// <summary> /// 结束关卡实例 /// </summary> /// <returns></returns> public void Close() { //更新状态 F_INST_ACTIVITY inst = DAL.WorkFlow.ActivityInstance.Get(m_ActivityInstanceId); inst.EndDate = DateTime.Now; inst.State = ActivityInstanceStatus.Completed; this.State = ActivityInstanceStatus.Completed; DAL.WorkFlow.ActivityInstance.Save(inst); //关闭未完成任务 foreach (WorkItemInstance instWorkItem in WorkItemInstances) { if (instWorkItem.State == WorkItemState.Waiting) { instWorkItem.Pass(); } } }
/// <summary> /// 创建关卡实例 /// </summary> /// <param name="instFlow"></param> /// <param name="activity"></param> /// <returns></returns> public void Create(int flowInstId, int activityId) { this.FlowInstance = new FlowInstance(flowInstId); this.Activity = new Activity(activityId); this.State = ActivityInstanceStatus.InActive; //新增关卡实例 //IPrimaryKeyCreater prikey = ctx["PrimaryKeyCreater"] as IPrimaryKeyCreater; m_ActivityInstanceId = PrimaryKeyCreater.getIntPrimaryKey("F_INST_ACTIVITY"); F_INST_ACTIVITY instActivity = new F_INST_ACTIVITY(); instActivity.ID = m_ActivityInstanceId; instActivity.ActivityID = activityId; instActivity.BeginDate = DateTime.Now; instActivity.EndDate = null; instActivity.FlowInstID = flowInstId; instActivity.State = ActivityInstanceStatus.InActive; DAL.WorkFlow.ActivityInstance.Insert(instActivity); }