public virtual ActionResult CreateWorkflow(string operationNumber) { var workflowType = _k2IntegrationOpus.GetWorkflowType(operationNumber); var operation = _creationFormService.GetOperation(operationNumber); var validators = _k2IntegrationOpus .GetRoleByOperationTypeVM( string.Empty, workflowType, operation.OperationData.OperationType.Code, operationNumber); if (!validators.IsValid) { return(View(new CreationK2TaskViewModel { Validators = validators.Models.ToList(), Instructions = string.Empty, OperationNumber = operationNumber })); } var commentsCreation = _k2DataService.GetCommentsCreation(operationNumber); var modelTaskView = new CreationK2TaskViewModel { UserComments = commentsCreation.IsValid ? commentsCreation.CommentList : null, Instructions = Localization.GetText("OP.CR.K2.StartWorkflow.Instructions"), UserName = IDBContext.Current.UserName, Validators = validators.Models.ToList(), OperationNumber = operationNumber }; var existsWorkflowTaskRegister = _workflowTaskRegisterRepository.Any(o => o.OperationNumber.Equals(operationNumber)); if (!existsWorkflowTaskRegister) { foreach (var validator in validators.Models) { var newWorkflowTaskRegister = new WorkflowTaskRegister { OperationNumber = operationNumber, StatusName = validator.Status, UserProfile = validator.Role }; _workflowTaskRegisterRepository.Create(newWorkflowTaskRegister); } } ViewBag.SerializedViewModel = PageSerializationHelper.SerializeObject(modelTaskView); return(View(modelTaskView)); }
public virtual ActionResult TaskDetail(TaskDataModel model) { var operation = _creationFormService.GetOperation(model.OperationNumber); var validators = _k2IntegrationOpus .GetRoleByOperationTypeVM( model.UserProfile, model.TaskTypeCode.Substring(0, 9), operation.OperationData.OperationType.Code, model.OperationNumber); if (!validators.IsValid) { return(View(new CreationK2TaskViewModel { Validators = validators.Models.ToList(), Instructions = string.Empty, OperationNumber = model.OperationNumber })); } var commentsResponse = _k2DataService.GetCommentsCreation(model.OperationNumber); var modelTaskView = new CreationK2TaskViewModel { UserComments = commentsResponse.IsValid ? commentsResponse.CommentList : null, Instructions = Localization.GetText("OP.CR.K2.ApproveTaskWorkflow.Instructions"), TaskDataModel = model, UserName = IDBContext.Current.UserName, Validators = validators.Models.ToList(), UserRoleCreation = validators.Models.Where(v => v.Order > model.TaskTypeId) .Select(v => v.Role).FirstOrDefault(), OperationNumber = model.OperationNumber }; ViewBag.SerializedViewModel = PageSerializationHelper.SerializeObject(modelTaskView); return(View(modelTaskView)); }