protected async Task <ProcessTaskEntity> CreateTaskAsync(ProcessInstanceEntity processInstance, FlowNodeEntity node)
        {
            if (!ProcessItemCheck.IsTask(node.ItemType))
            {
                throw new FlowNodeException(node.FlowNodeId, "Task");
            }

            //Create New Task
            ProcessTaskEntity task = new ProcessTaskEntity()
            {
                ProcessInstanceId = processInstance.Id,
                FlowNodeId        = node.Id,
                TaskId            = node.FlowNodeId,
                TaskType          = node.ItemType,
                Assignee          = null,           //TODO Set to default Assignee
                CreatedBy         = GetUserId(),
                TenantId          = TenantId
            };

            processTaskStore.Create(task);
            await SaveChangesAsync();

            return(task);

            //TODO Add to history
            //AddHistory(proc.Name, pi.ProcessInstanceName, t.ProcessTaskName, string.Format("User: {0} Created Task '{1}'", user, proc.Name), user);
        }
Exemple #2
0
 public InstanceTask(ProcessInstanceStore store, ProcessTaskEntity entity)
 {
     Store             = store;
     CurrentStatus     = entity.CurrentStatus;
     FlowNodeId        = entity.FlowNodeId;
     Id                = entity.Id;
     IsEnded           = entity.IsEnded;
     PreviousStatus    = entity.PreviousStatus;
     ProcessInstanceId = entity.ProcessInstanceId;
     TaskId            = entity.TaskId;
     TaskType          = entity.TaskType;
     TenantId          = entity.TenantId;
     Workgroup         = entity.Workgroup;
 }