public IHttpActionResult DoInvoiceWorkflowAction(InvoicesApprovalWorkflow workflow) { if (workflow == null) { return(BadRequest("workflow object must be passed in the request body")); } try { var wfProcessor = new InvoiceWorkflowProcessor(); var dbWorkflow = wfProcessor.ChangeWorkflowStageAction(workflow.Id, (int)workflow.Status, workflow.Remarks, User.FullName); var currentStageOrderNumber = workflowService. GetWorkflowStage(dbWorkflow.StageId). StageOrderNumber; var nextStageSerialNumber = currentStageOrderNumber + 1; var nextStage = workflowService.GetWorkflowStages().SingleOrDefault(w => w.StageOrderNumber == nextStageSerialNumber); if (nextStage != null) { var nextPaymentWorkflow = new InvoicesApprovalWorkflow() { CreatedBy = User.UserId, CreatedDate = DateTime.Now, IsActive = true, InvoiceId = dbWorkflow.InvoiceId, ProcessedDate = null, StageId = nextStage.StageId, Status = (int)WorkflowLevelStatus.Forwarded, Remarks = null, IsFinished = false, ReferenceNumber = "", SequentialId = nextStageSerialNumber }; wfProcessor.ForwardNextStage(nextPaymentWorkflow, nextStage); } else { var taskId = invoicesService.GetInvoice(workflow.InvoiceId).MilestoneId; TasksHandler.Finish(taskId); } var workflows = invoicesService.GetUserInvoiceWorkflow(User.UserId).Where(l => l.InvoiceId == dbWorkflow.InvoiceId); var html = Helpers.RenderPartial("~/Views/Shared/Partial/Invoices/InvoiceWorkflowList.cshtml", workflows); return(Ok(html)); } catch (Exception ex) { return(InternalServerError(ex)); } }
public void FinishTaskPercentage(int taskId) { TasksHandler.Finish(taskId); }
public Task <bool> Delete(int id) { var taskHandler = new TasksHandler(_repository); return(Task.Run(() => taskHandler.Delete(id))); }
public Task <Models.Task> Put(Models.Task task) { var taskHandler = new TasksHandler(_repository); return(Task.Run(() => taskHandler.Update(task))); }
public Task <IEnumerable <Models.Task> > Get(int userId) { var taskHandler = new TasksHandler(_repository); return(Task.Run(() => taskHandler.GET(userId))); }
public void UpdateInvoiceTaskActualStartDate(int milestoneId) { TasksHandler.UpdateTaskActualStartDate(milestoneId); }
public void UpdateJobTaskActualStartDate(int taskId) { TasksHandler.UpdateTaskActualStartDate(taskId); }
public static void updatePlayerInfo() { foreach (PlayerControl p in PlayerControl.AllPlayerControls) { if (p != PlayerControl.LocalPlayer && !PlayerControl.LocalPlayer.Data.IsDead) { continue; } Transform playerInfoTransform = p.transform.FindChild("Info"); TMPro.TextMeshPro playerInfo = playerInfoTransform != null?playerInfoTransform.GetComponent <TMPro.TextMeshPro>() : null; if (playerInfo == null) { playerInfo = UnityEngine.Object.Instantiate(p.nameText, p.nameText.transform.parent); playerInfo.transform.localPosition += Vector3.up * 0.25f; playerInfo.fontSize *= 0.75f; playerInfo.gameObject.name = "Info"; } PlayerVoteArea playerVoteArea = MeetingHud.Instance?.playerStates?.FirstOrDefault(x => x.TargetPlayerId == p.PlayerId); Transform meetingInfoTransform = playerVoteArea != null?playerVoteArea.transform.FindChild("Info") : null; TMPro.TextMeshPro meetingInfo = meetingInfoTransform != null?meetingInfoTransform.GetComponent <TMPro.TextMeshPro>() : null; if (meetingInfo == null && playerVoteArea != null) { meetingInfo = UnityEngine.Object.Instantiate(playerVoteArea.NameText, playerVoteArea.NameText.transform.parent); meetingInfo.transform.localPosition += Vector3.down * (MeetingHud.Instance.playerStates.Length > 10 ? 0.4f : 0.25f); meetingInfo.fontSize *= 0.75f; meetingInfo.gameObject.name = "Info"; } var(tasksCompleted, tasksTotal) = TasksHandler.taskInfo(p.Data); string roleNames = String.Join(", ", RoleInfo.getRoleInfoForPlayer(p).Select(x => Helpers.cs(x.color, x.name)).ToArray()); string taskInfo = tasksTotal > 0 ? $"<color=#00FF00>({tasksCompleted}/{tasksTotal})</color>" : ""; string info = ""; if (p == PlayerControl.LocalPlayer) { info = $" "; if (DestroyableSingleton <TaskPanelBehaviour> .InstanceExists) { TMPro.TextMeshPro tabText = DestroyableSingleton <TaskPanelBehaviour> .Instance.tab.transform.FindChild("TabText_TMP").GetComponent <TMPro.TextMeshPro>(); tabText.SetText($"Tasks {taskInfo}"); } } else if (MapOptions.ghostsSeeTasksandRoles) { info = $"{roleNames} {taskInfo}".Trim(); } playerInfo.text = info; playerInfo.gameObject.SetActive(p.Visible); if (meetingInfo != null) { meetingInfo.text = MeetingHud.Instance.state == MeetingHud.VoteStates.Results ? "" : info; } } }