コード例 #1
0
 //POST:/Users/GetTodosCompleted
 public IActionResult GetTodosCompleted(UserTodos mymodel)
 {
     if (!ModelState.IsValid)
     {
         return(View(mymodel));
     }
     mymodel.Todos = DataService.GetTodosCompleted(mymodel.User.Id);
     mymodel.User  = DataService.GetUserById(mymodel.User.Id);
     return(View(mymodel));
 }
コード例 #2
0
        private void InitializeCallendar()
        {
            int days = DateTime.DaysInMonth(DateTime.Now.Year, DateTime.Now.Month);

            for (int day = 1; day <= days; day++)
            {
                var date = new DateTime(DateTime.Now.Year, DateTime.Now.Month, day);

                if (UserTodos.Any(x => x.TargetDate.Date == date))
                {
                    _days.Add(new Day()
                    {
                        Todos        = UserTodos.Where(x => x.TargetDate.Date == date).ToList(),
                        AllCompleted = UserTodos.Where(x => x.TargetDate.Date == date).All(x => x.Completed),
                        Date         = date
                    });
                }
                else
                {
                    _days.Add(new Day()
                    {
                        Date  = date,
                        Todos = new List <TodoItem>()
                    });
                }
            }

            foreach (var todo in UserTodos.Where(x => !(x.TargetDate.Month == DateTime.Now.Month && x.TargetDate.Year == DateTime.Now.Year)))
            {
                Day day = _days.SingleOrDefault(x => x.Date.Date == todo.TargetDate.Date);

                if (day == null)
                {
                    day      = new Day();
                    day.Date = todo.TargetDate;
                    _days.Add(day);
                }

                if (day.Todos == null)
                {
                    day.Todos = new HashSet <TodoItem>();
                }

                day.Todos.Add(todo);

                if (day.AllCompleted && !todo.Completed)
                {
                    day.AllCompleted = false;
                }
            }
        }