private List <MonthDayViewModel> GetMonthDays(int year, int month) { List <MonthDayViewModel> days = new List <MonthDayViewModel>(); var bankHolidays = getBankHoliday.GetBankHolidays();; DateTime now = DateTime.Now; int countOfDays = DateTime.DaysInMonth(year, month); var holidays = vacRep.GetVacations(); for (int i = 1; i <= countOfDays; i++) { DateTime date = new DateTime(year, month, i); MonthDayViewModel day = new MonthDayViewModel(); day.Day = i; day.Name = date.DayOfWeek.ToString(); var bH = bankHolidays.FirstOrDefault(x => x.Day == i && x.Month == month); day.IsFreeDay = date.DayOfWeek == DayOfWeek.Saturday || date.DayOfWeek == DayOfWeek.Sunday || bH != null; day.Vacations = holidays.Where(x => DateTime.Compare(x.StartDate, date) <= 0 && DateTime.Compare(x.EndDate, date) >= 0).ToList(); day.Description = date.ToString("MMMM"); DateTimeFormatInfo mfi = new DateTimeFormatInfo(); day.Month = mfi.GetMonthName(month).ToString(); days.Add(day); } return(days); }
// GET: Dashboard public ActionResult Index() { var users = database.GetUsers(); var teams = db.GetTeams(); var roles = newdb.Roles.ToList(); DashboardViewModel dash = new DashboardViewModel() { UserList = users, TeamList = teams, Roles = roles }; CalendarViewModel Calendar = new CalendarViewModel() { BankHolidays = bank.GetBankHolidays(), Vacations = vakacio.GetVacations() }; VacationRepository vakrep = new VacationRepository(); var datum = DateTime.DaysInMonth(DateTime.Now.Year, DateTime.Now.Month); var free = vakrep.GetVacations(); for (int i = 1; i <= datum; ++i) { var date = new DateTime(DateTime.Now.Year, DateTime.Now.Month, i); bool isFreeDay = date.DayOfWeek == DayOfWeek.Saturday || date.DayOfWeek == DayOfWeek.Sunday; MonthDayViewModel day = new MonthDayViewModel() { Day = i, Name = date.DayOfWeek.ToString(), IsFreeDay = isFreeDay }; var vakacio = Calendar.BankHolidays.FirstOrDefault(x => x.Day == i && x.Month == DateTime.Now.Month); day.IsFreeDay = date.DayOfWeek == DayOfWeek.Saturday || date.DayOfWeek == DayOfWeek.Sunday || vakacio != null; day.Vacations = free.Where(x => DateTime.Compare(x.StartDate, date) <= 0 || DateTime.Compare(x.EndDate, date) >= 0).ToList(); Calendar.MonthDays.Add(day); } ; dash.Calendar = Calendar; return(View(dash)); }
public CalendarViewModel getMonthDays(AjaxDateModel model) { CalendarViewModel calendar = new CalendarViewModel(); calendar.Vacations = vacationrepo.GetVacations(); calendar.BankHolidays = bankHolidayrepo.GetBankHolidays(); var numberOfDays = DateTime.DaysInMonth(model.year, model.month); for (int i = 1; i <= numberOfDays; ++i) { var date = new DateTime(model.year, model.month, i); MonthDayViewModel day = new MonthDayViewModel(); day.day = i; day.nameOfDay = date.DayOfWeek.ToString(); var holiday = calendar.BankHolidays.FirstOrDefault(x => x.Day == i && x.Month == model.month); if (holiday != null) { day.isFreeDay = true; day.description = holiday.Description; } else { if (day.nameOfDay == "Sunday" || day.nameOfDay == "Saturday") { day.isFreeDay = true; day.description = "Weekend"; } else { day.isFreeDay = false; day.description = null; } } calendar.MonthDays.Add(day); } return(calendar); }