/// <summary> /// Добавляет категорию в БД /// </summary> /// <param name="category"> Категория </param> private void AddCategoryDb(Category category) { using (var context = new PlannerContext()) { context.Categories.Add(category); context.SaveChanges(); } }
/// <summary> /// Добавляет задачу в БД /// </summary> /// <param name="task"></param> private void AddTaskDb(Task task) { using (var context = new PlannerContext()) { context.Tasks.Add(task); context.SaveChanges(); } }
/// <summary> /// Удаляет задачу /// </summary> /// <param name="id">Id задачи</param> public void DeleteTask(int id) { using (var context = new PlannerContext()) { var task = context.Tasks.FirstOrDefault(x => x.Id == id); context.Tasks.Remove(task); context.SaveChanges(); } Tasks = GetTasks(); }
/// <summary> /// Снимает пометку просроченности у задачи /// </summary> /// <param name="taskId">Id задачи</param> public void UnOverdueTask(int taskId) { using (var context = new PlannerContext()) { var task = context.Tasks.FirstOrDefault(x => x.Id == taskId); task.IsOverdue = false; context.SaveChanges(); } Tasks = GetTasks(); }
/// <summary> /// Завершает задачу /// </summary> /// <param name="taskId">Id задачи</param> public void FinishTask(int taskId) { using (var context = new PlannerContext()) { var task = context.Tasks.FirstOrDefault(x => x.Id == taskId); task.FinishDate = DateTime.Now; task.IsFinished = true; context.SaveChanges(); } Tasks = GetTasks(); }
/// <summary> /// Возвращает список категорий из БД /// </summary> /// <returns>Список категорий</returns> private ObservableCollection <Category> GetCategories() { var categories = new ObservableCollection <Category>(); using (var context = new PlannerContext()) { foreach (var category in context.Categories) { categories.Add(category); } } return(categories); }
/// <summary> /// Редактирует задачу /// </summary> /// <param name="editedTask">Задача</param> public void EditTask(Task editedTask) { using (var context = new PlannerContext()) { var task = context.Tasks.FirstOrDefault(x => x.Id == editedTask.Id); task.Name = editedTask.Name; task.CreationDate = editedTask.CreationDate; task.StartDate = editedTask.StartDate; task.EndDate = editedTask.EndDate; task.PriorityId = editedTask.PriorityId; task.CategoryId = editedTask.CategoryId; context.SaveChanges(); } }
/// <summary> /// Получение приоритетов из БД /// </summary> /// <returns>Список приоритетов</returns> private ObservableCollection <Priority> GetPriorities() { var priorities = new ObservableCollection <Priority>(); using (var context = new PlannerContext()) { foreach (var priority in context.Priorities) { priorities.Add(priority); } } return(priorities); }
/// <summary> /// Возвращает список задач из БД /// </summary> /// <returns>Список задач</returns> private ObservableCollection <Task> GetTasks() { PriorityController priorityController = new PriorityController(); CategoryController categoryController = new CategoryController(); var tasks = new ObservableCollection <Task>(); using (var context = new PlannerContext()) { if (context.Tasks == null) { return(null); } foreach (var taskContext in context.Tasks) { var task = new Task() { Id = taskContext.Id, Name = taskContext.Name, CategoryId = taskContext.CategoryId, Category = categoryController.GetCategoryById(taskContext.CategoryId), PriorityId = taskContext.PriorityId, Priority = priorityController.GetPriority(taskContext.PriorityId), CreationDate = taskContext.CreationDate, EndDate = taskContext.EndDate, IsFinished = taskContext.IsFinished, StartDate = taskContext.StartDate, FinishDate = taskContext.FinishDate, IsOverdue = taskContext.IsOverdue }; tasks.Add(task); } } return(tasks); }