public FlowActionRejectToStart(FlowActionRequest dbObj) : base(dbObj) { this.currentActivityGuid = concreteMetaObj.currentActivityGuid; this.startActivityGuid = concreteMetaObj.startActivityGuid; this.roles = JsonConvert.DeserializeObject( concreteMetaObj.roles.ToString(), typeof(List <Paticipant>)); }
public FlowAction(FlowActionRequest dbObj) { if (dbObj.flowInstance != null) { flowInstanceId = dbObj.flowInstance.flowInstanceId; flowInstanceGuid = dbObj.flowInstance.guid; } flowActionRequestId = dbObj.flowActionRequestId; requestType = dbObj.requestType; bizDocumentGuid = dbObj.bizDocumentGuid; bizDocumentTypeCode = dbObj.bizDocumentTypeCode; userMemo = dbObj.userMemo; bizDataPayloadJson = dbObj.bizDataPayloadJson; concreteFlowActionMetaJson = dbObj.concreteFlowActionMetaJson; optionalFlowActionDataJson = dbObj.optionalFlowActionDataJson; createTime = dbObj.createTime; userId = dbObj.userId; userGuid = dbObj.userGuid; delegateeUserId = dbObj.delegateeUserId; delegateeUserGuid = dbObj.delegateeUserGuid; // Dynamic properties concreteMetaObj = JsonConvert.DeserializeObject( dbObj.concreteFlowActionMetaJson); }
public FlowActionInviteOther(FlowActionRequest dbObj) : base(dbObj) { this.currentActivityGuid = concreteMetaObj.currentActivityGuid; this.roles = JsonConvert.DeserializeObject( concreteMetaObj.roles.ToString(), typeof(List <Paticipant>)); this.relativeFlowTaskForUserId = concreteMetaObj.relativeFlowTaskForUserId; }
public FlowActionMoveToAutoGenerated(FlowActionRequest dbObj) : base(dbObj) { this.currentActivityGuid = concreteMetaObj.currentActivityGuid; this.roles = JsonConvert.DeserializeObject( concreteMetaObj.roles.ToString(), typeof(List <Paticipant>)); this.connectionGuid = concreteMetaObj.connectionGuid; }
private void updateReqProcessingResultInDB(FlowActionRequest reqInDb, EnumFlowActionRequestResultType resultType, string failReason = null) { reqInDb.isProcessed = true; reqInDb.finishTime = DateTime.Now; reqInDb.resultType = resultType; reqInDb.failReason = failReason; }
public FlowActionJumpTo(FlowActionRequest dbObj) : base(dbObj) { this.currentActivityGuid = concreteMetaObj.currentActivityGuid; this.roles = JsonConvert.DeserializeObject( concreteMetaObj.roles.ToString(), typeof(List <Paticipant>)); this.nextActivityGuid = concreteMetaObj.nextActivityGuid; this.forceJump = concreteMetaObj.forceJump; }
public FlowActionMoveTo(FlowActionRequest dbObj) : base(dbObj) { currentActivityGuid = concreteMetaObj.currentActivityGuid; roles = JsonConvert.DeserializeObject( concreteMetaObj.roles.ToString(), typeof(List <Paticipant>)); connectionGuid = concreteMetaObj.connectionGuid; delegateeUserId = concreteMetaObj.delegateeUserId; delegateeUserGuid = concreteMetaObj.delegateeUserGuid; }
private void updateRequestToSuccess(FlowActionRequest reqInDb, FlowInstance flowInst) { reqInDb.isProcessed = true; reqInDb.finishTime = DateTime.Now; reqInDb.resultType = EnumFlowActionRequestResultType.success; if (reqInDb.flowInstance == null || reqInDb.flowInstanceGuid == null) { reqInDb.flowInstance = flowInst; reqInDb.flowInstanceGuid = flowInst.guid; } }
private void updateTaskForUserStatesAfterAction(EnouFlowInstanceContext db, int actionUserId, DateTime bizTimeStamp, DateTime newBizTimeStamp, string currentActivityGuid, FlowInstance flowInst, FlowActionRequest reqInDb) { var tasks = db.flowTaskForUsers.Where(t => t.FlowInstance.flowInstanceId == flowInst.flowInstanceId && t.bizTimeStamp == bizTimeStamp && t.currentActivityGuid == currentActivityGuid).ToList(); tasks.ForEach(t => { if (t.userId != actionUserId) { // 其他用户已删除该任务或是已完成的邀请提供处理意见的任务,不需要标记为过期 if (t.taskState != EnumFlowTaskState.deletedByUser && t.taskState != EnumFlowTaskState.done) { t.taskState = EnumFlowTaskState.obsoleted; } } else { t.finishTime = newBizTimeStamp; t.taskState = EnumFlowTaskState.done; t.FlowActionRequest = reqInDb; t.delegateeUserId = reqInDb.delegateeUserId; // 有可能是被任务代理人完成 t.delegateeUserGuid = reqInDb.delegateeUserGuid; } }); //db.SaveChanges(); }
public FlowActionTerminate(FlowActionRequest dbObj) : base(dbObj) { this.currentActivityGuid = concreteMetaObj.currentActivityGuid; this.nextActivityGuid = concreteMetaObj.nextActivityGuid; }
public FlowActionStart(FlowActionRequest dbObj) : base(dbObj) { this.needGenerateTaskForUser = concreteMetaObj.needGenerateTaskForUser; this.roles = concreteMetaObj.roles; }