public void TaskDone(BPMObArg TaskArg) { var note = TaskArg.ProcessData.ContainsKey("note") ? TaskArg.ProcessData["note"].ToString() : ""; var taskID = TaskArg.ProcessData.ContainsKey("userTaskID") ? TaskArg.ProcessData["userTaskID"].ToString() : ""; _IUserTaskService.TaskDone(int.Parse(taskID), note); }
/// <summary> /// 设置高等级的档案可下载可借阅 /// </summary> /// <param name="TaskArg"></param> /// <returns></returns> public Dictionary <string, object> Excute(BPMObArg TaskArg) { var objProcess = _IObjectProcessService.Get(TaskArg.ProcessID); _IBorrowService.HighArchiveCanBorrow(objProcess.ObjectID); return(null); }
/// <summary> /// 设置低等级的档案可下载可借阅 /// </summary> /// <param name="TaskArg"></param> /// <returns></returns> public Dictionary <string, object> Excute(BPMObArg TaskArg) { var result = new Dictionary <string, object>(); var objProcess = _IObjectProcessService.Get(TaskArg.ProcessID); result.Add(TaskArg.ArgName, _IBorrowService.LowArchiveCanBorrow(objProcess.ObjectID)); return(result); }
public async Task <bool> TaskTurnCall(BPMObArg arg) { return(await Task <bool> .Factory.StartNew(() => { var userTask = new UserTaskEntity() { Identity = new Guid(arg.TaskID), ProcessID = new Guid(arg.ProcessID), Name = arg.TaskName, TaskModelID = arg.TaskModelID, ReceiveDate = DateTime.Now, Source = (int)TaskSource.生产, Status = (int)TaskStatus.达, Type = 1, Args = arg.ArgName, Time = 1 }; if (arg.IsBack) { var existsTaskCount = _IUserTaskService.Count(t => t.ProcessID == userTask.ProcessID && t.TaskModelID == userTask.TaskModelID && !t.IsDelete); userTask.Time = existsTaskCount + 1; } if (arg.JoinSigns != null) { foreach (var item in arg.JoinSigns) { userTask.UserID = item.Value; userTask.Args = "SignID#" + item.Key.ToString() + "," + arg.ArgName; _IUserTaskService.Add(userTask); } } else { userTask.UserID = int.Parse(arg.TaskUser); _IUserTaskService.Add(userTask); } return false; })); }
public override void TaskDone(BPMObArg TaskArg) { if (TaskArg.TaskModelID == "_5") { var carApplyProcess = _IObjectProcessService.Get(TaskArg.ProcessID); var applyInfo = _ICarUseService.Get(carApplyProcess.ObjectID); var carInfo = _ICarService.Get(applyInfo.CarID); // 车辆管理员通过审批 _ICarService.ChangeStatus(applyInfo.CarID, CarStatus.待出发); _NotifySrv.Send(new { Target = applyInfo.Manager, Head = "用车申请", Title = "申请通过", Content = string.Format("车辆:{3},{0}前往{1},预计返回时间:{2},请按时出发!", applyInfo.StartDate, applyInfo.TargetPlace, applyInfo.BackDate, carInfo.Name), }); } base.TaskDone(TaskArg); }
public async Task <bool> TaskTurnCall(BPMObArg arg) { var userTask = new UserTaskEntity() { Identity = new Guid(arg.TaskID), ProcessID = new Guid(arg.ProcessID), Name = arg.TaskName, TaskModelID = arg.TaskModelID, ReceiveDate = DateTime.Now, Source = (int)TaskSource.提资, Status = (int)TaskStatus.达, Type = 1, //UserID = int.Parse(arg.TaskUser), Args = arg.ArgName, Time = 1 }; if (arg.TaskModelID == "_3" && !arg.IsBack) { // 流程第一次启动 //userTask.Status = (int)TaskStatus.完成; //userTask.FinishDate = DateTime.Now; userTask.UserID = arg.CreateUser; var id = _IUserTaskService.Add(userTask); arg.ProcessData.Add("userTaskID", id); // 自动执行这个任务 await ProcessEngine.Instance.Continu(arg.TaskID, arg.CreateUser, arg.ProcessData); return(true); } else { if (arg.IsBack) { var existsTaskCount = _IUserTaskService.Count(t => t.ProcessID == userTask.ProcessID && t.TaskModelID == userTask.TaskModelID && !t.IsDelete); userTask.Time = existsTaskCount + 1; } if (arg.JoinSigns != null) { foreach (var item in arg.JoinSigns) { userTask.UserID = item.Value; userTask.Args = "SignID#" + item.Key.ToString() + "," + arg.ArgName; _IUserTaskService.Add(userTask); } } else { userTask.UserID = int.Parse(arg.TaskUser); _IUserTaskService.Add(userTask); } return(false); } }