public void Approve() { //更新状态 F_INST_WORKITEM inst = DAL.WorkFlow.WorkItemInstance.Get(this.ID); inst.AppValue = this.AppValue; inst.AppRemark = this.AppRemark; inst.Actorid = this.Actorid; inst.EndDate = DateTime.Now; inst.State = WorkItemState.Completed; DAL.WorkFlow.WorkItemInstance.Save(inst); //调用表单Action bool isInner = this.ActivityInstance.FlowInstance.FlowDefine.IsInner; int flowId = this.ActivityInstance.FlowInstance.FlowDefine.ID; int flowNo = this.ActivityInstance.FlowInstance.FlowNo; int activityId = this.ActivityInstance.Activity.ID; FlowAction <IApprove> flowAction = new FlowAction <IApprove>(isInner, flowId); if (flowAction.action != null) { if (!flowAction.action.ApproveAction(flowId, flowNo, activityId, this.Actorid, this.AppValue, this.AppRemark)) { throw new Exception(string.Format("ApproveAction失败,flowId{0},flowNo{1},activityId{2},this.Actorid{3},AppValue{4}", flowId, flowNo, activityId, Actorid, AppValue)); } } }
public void CreateResend(int activityInstId, int workerId, string remark) { m_ActivityInstance = new ActivityInstance(activityInstId); m_State = WorkItemState.Waiting; m_WorkItemId = PrimaryKeyCreater.getIntPrimaryKey("F_INST_WORKITEM"); F_INST_WORKITEM instWorkItem = new F_INST_WORKITEM(); instWorkItem.ID = m_WorkItemId; instWorkItem.ActivityInstID = activityInstId; instWorkItem.Actorid = workerId; instWorkItem.Role = "申请人重新送出"; instWorkItem.Assigneeid = workerId; instWorkItem.Assignerid = 0; instWorkItem.BeginDate = DateTime.Now; instWorkItem.EndDate = DateTime.Now; instWorkItem.State = WorkItemState.Completed; instWorkItem.AppType = WorkItemApproveType.Blank; instWorkItem.AssignType = WorkItemAssignType.Normal; instWorkItem.AppValue = string.Empty; instWorkItem.AppRemark = remark; DAL.WorkFlow.WorkItemInstance.Insert(instWorkItem); }
public static void Insert(F_INST_WORKITEM entity) { using (MainDataContext dbContext = new MainDataContext()) { //var list = from a in dbContext.F_INST_WORKITEM select a.ID; //long total = list.LongCount(); //if (total == 0) //{ // entity.ID = 1; //} //else //{ // entity.ID = dbContext.F_INST_WORKITEM.Max(a => a.ID) + 1; //} dbContext.F_INST_WORKITEM.InsertOnSubmit(entity); dbContext.SubmitChanges(); //return entity.ID; } }
public WorkItemInstance(int id) { m_WorkItemId = id; F_INST_WORKITEM item = DAL.WorkFlow.WorkItemInstance.Get(m_WorkItemId); m_ActivityInstance = new ActivityInstance(item.ActivityInstID); m_State = item.State; }
public void Pass() { //更新状态 F_INST_WORKITEM inst = DAL.WorkFlow.WorkItemInstance.Get(this.ID); inst.EndDate = DateTime.Now; inst.State = WorkItemState.Pass; DAL.WorkFlow.WorkItemInstance.Save(inst); }
public void Sign() { IESignature sign = ctx["ESignature"] as IESignature; F_INST_WORKITEM inst = DAL.WorkFlow.WorkItemInstance.Get(this.ID); inst.Cert = sign.GetStrSignCert(); inst.Esignature = sign.GetStrSignData(this.ActivityInstance.FlowInstance.FormDigest);; DAL.WorkFlow.WorkItemInstance.Save(inst); }
public static bool Save(F_INST_WORKITEM entity) { using (MainDataContext dbContext = new MainDataContext()) { var model = dbContext.F_INST_WORKITEM.FirstOrDefault(t => t.ID == entity.ID); model.ActivityInstID = entity.ActivityInstID; model.Actorid = entity.Actorid; model.Assigneeid = entity.Assigneeid; model.Assignerid = entity.Assignerid; model.BeginDate = entity.BeginDate; model.EndDate = entity.EndDate; model.State = entity.State; model.AppType = entity.AppType; model.AssignType = entity.AssignType; model.AppValue = entity.AppValue; model.AppRemark = entity.AppRemark; dbContext.SubmitChanges(); } return(true); }
public void Create(int activityInstId, int workerId) { m_ActivityInstance = new ActivityInstance(activityInstId); m_State = WorkItemState.Waiting; //IPrimaryKeyCreater prikey = ctx["PrimaryKeyCreater"] as IPrimaryKeyCreater; m_WorkItemId = PrimaryKeyCreater.getIntPrimaryKey("F_INST_WORKITEM"); F_INST_WORKITEM instWorkItem = new F_INST_WORKITEM(); instWorkItem.ID = m_WorkItemId; instWorkItem.ActivityInstID = activityInstId; instWorkItem.Actorid = null; instWorkItem.Role = m_ActivityInstance.Activity.Name; instWorkItem.Assigneeid = workerId; instWorkItem.Assignerid = 0; instWorkItem.BeginDate = DateTime.Now; instWorkItem.EndDate = null; instWorkItem.State = WorkItemState.Waiting; instWorkItem.AppType = WorkItemApproveType.Normal; instWorkItem.AssignType = WorkItemAssignType.Normal; DAL.WorkFlow.WorkItemInstance.Insert(instWorkItem); }