public IEnumerable <AvailableDatesSerializer> GetDates(AvailableDatesDTO value) { var dates = new List <AvailableDatesSerializer>(); var reservations = _context.Reservations.Include(p => p.ReservationDetails).ToList(); for (int i = 0; i < reservations.Count; i++) { var rd = reservations.ElementAt(i).ReservationDetails; for (int j = 0; j < rd.Count; j++) { if (rd.Count > 0) { var date = new AvailableDatesSerializer { Date = rd.ElementAt(j).Date, Available = false, Rate = 500, }; if (j == 0 && rd.Count > 1) { date.Type = 1; } else if (j == rd.Count - 1) { date.Type = 3; } else { date.Type = 2; } if (date.Date.Year == value.Year && date.Date.Month == value.Month) { dates.Add(date); } } } } /* * // Loop from the first day of the month until we hit the next month, moving forward a day at a time * for (var date = new DateTime(value.Year, value.Month, 1); date.Month == value.Month; date = date.AddDays(1)) * { * var rDate = new AvailableDatesSerializer * { * Date = date, * Available = IsAvailableDate(date), * Rate = 500 * }; * if (!rDate.Available) * { * dates.Add(rDate); * } * * }*/ return(dates); }
public IEnumerable <AvailableDatesSerializer> GetAvailableDates(AvailableDatesDTO value) { var dates = new List <AvailableDatesSerializer>(); // Loop from the first day of the month until we hit the next month, moving forward a day at a time for (var date = new DateTime(value.Year, value.Month, 1); date.Month == value.Month; date = date.AddDays(1)) { var availableDate = new AvailableDatesSerializer { Date = date, Available = IsAvailableDate(date), Rate = 500 }; dates.Add(availableDate); } return(dates); }
public ActionResult <IEnumerable <AvailableDatesSerializer> > GetAvailableDates([FromBody] AvailableDatesDTO value) { if (value == null) { return(NotFound()); ////// revisar } else { return(Ok(_repository.GetDates(value))); } }