public void DeviseHomeworkPlanByDeadline(int id) { try { HomeworkPlanRepo homeworkPlanRepo = new HomeworkPlanRepo(); homeworkPlanRepo.DeleteAll(id); List <AssignedHomework> assignedHomeworks = GetAssignedHomework(id); //List<HomeworkPlan> homeworkPlans = new HomeworkPlanRepo().GetHomeworkPlans() // .Where(homeworkPlan => homeworkPlan.StudentID == id).ToList(); int count = assignedHomeworks.Count; var result = assignedHomeworks.OrderBy(homework => homework.Deadline).Select(homework => new HomeworkPlan { StudentID = id, HomeworkID = homework.HomeworkID, PriorityLevel = count--, isCompleted = false }).ToList(); foreach (var item in result) { AddHomeworkPlan(item); } } catch (Exception) { throw; } }
public bool UpdateHomeworkPlan(HomeworkPlan plan) { try { if (plan != null) { HomeworkPlanRepo homeworkPlanRepo = new HomeworkPlanRepo(); if (homeworkPlanRepo.Update(plan)) { return(true); } } } catch (Exception) { throw; } return(false); }
public List <ExtendedHomeworkPlan> GetExtendedHomeworkPlan(int id) { try { List <Assignment> assignments = new AssignmentRepo().GetAllAssignments(); List <Homework> homeworks = new HomeworkRepo().GetAllHomework(); List <HomeworkPlan> homeworkPlans = new HomeworkPlanRepo().GetHomeworkPlans() .Where(homeworkPlan => homeworkPlan.StudentID == id).ToList(); var result = from plan in homeworkPlans join homework in homeworks on plan.HomeworkID equals homework.HomeworkID select new ExtendedHomeworkPlan { StudentID = id, HomeworkID = homework.HomeworkID, Description = homework.Description, Deadline = homework.Deadline, ReqTime = homework.ReqTime, PriorityLevel = plan.PriorityLevel, isCompleted = plan.isCompleted }; if (result.Any()) { return(result.ToList()); } else { throw new PrometheusException("No Plans Found!"); //DeviseHomeworkPlanByDeadline(id); } } catch (Exception) { throw; } }