public static void LoadProjectsCompletedRate(this IEnumerable <Project> projects, IEnumerable <Tasks> taskFromRepo) { foreach (var project in projects) { var leafTasks = taskFromRepo.Where(t => t.ProjectGUID == project.ProjectGUID).GetLeafTasks(); int completedLeafTaskCount = 0; int totalLeafCount = leafTasks.Count(); foreach (var leaf in leafTasks) { string status = (leaf.TaskStatusID ?? default(int)).ToString(); Task_Status leaf_Status = (Task_Status)Enum.Parse(typeof(Task_Status), status); if (leaf_Status == Task_Status.Completed) { completedLeafTaskCount++; } } int rate = 0; if (totalLeafCount == 0) { string status = (project.ProjectStatusID ?? default(int)).ToString(); Project_Status project_Status = (Project_Status)Enum.Parse(typeof(Project_Status), status); if (project_Status == Project_Status.Completed) { rate = 100; } } else { rate = completedLeafTaskCount * 100 / totalLeafCount; } project.CompletedRate = rate; } }
internal object GetTask() { string currentTaskId = $"{Variables[Parameters.IdTaskId]}"; _taskStatus = DBHelper.GetTaskStatusByTaskId(currentTaskId); return(DBHelper.GetTaskById(currentTaskId)); }
public static string GetString(this Task_Status taskStatus) { switch (taskStatus) { case Task_Status.added: return("добавлена"); case Task_Status.started: return("выполняется"); case Task_Status.done: return("завершено"); default: return(taskStatus.ToString()); } ; }
public static IEnumerable <int> GetRootTasksCompletedRate(this IEnumerable <Tasks> rootTasks, IEnumerable <Tasks> tasksFromRepo) { List <int> rootTasksCompletedRate = new List <int>(); TreeGridModel treeGrid = new TreeGridModel(tasksFromRepo.ToList()); foreach (var root in rootTasks) { treeGrid.ChildLeafTasks = new List <Tasks>(); treeGrid.GetChildLeafTasks(root); int completedLeafTaskCount = 0; int totalLeafCount = treeGrid.ChildLeafTasks.Count(); foreach (var leaf in treeGrid.ChildLeafTasks) { string status = (leaf.TaskStatusID ?? default(int)).ToString(); Task_Status leaf_Status = (Task_Status)Enum.Parse(typeof(Task_Status), status); if (leaf_Status == Task_Status.Completed) { completedLeafTaskCount++; } } int rate = 0; if (totalLeafCount == 0) { string status = (root.TaskStatusID ?? default(int)).ToString(); Task_Status root_Status = (Task_Status)Enum.Parse(typeof(Task_Status), status); if (root_Status == Task_Status.Completed) { rate = 100; } } else { rate = completedLeafTaskCount * 100 / totalLeafCount; } rootTasksCompletedRate.Add(rate); } return(rootTasksCompletedRate); }
public void SetTaskStatus(Task_Status tS) { taskStatus = tS; }
public void SetTaskToComplete() { taskStatus = Task_Status.COMPLETED; }