Exemplo n.º 1
0
        public static DayViewModel CreateDayViewModel(int id, DateTime date, string userId,
                                                      ILaundryRepository laundryRepo, IReservationRepository reservationRepo,
                                                      IUserRepository userRepo)
        {
            var laundries = laundryRepo.GetDormitoryLaundriesWithEntitiesAtDay(id, date) ?? new List <Laundry>();
            var roomId    = userRepo.GetUserById(userId).RoomId;

            var model = new DayViewModel()
            {
                Laundries           = laundries,
                DormitoryId         = id,
                washingMachineState = reservationRepo.GetDormitoryWashingMachineStates(id),
                date = date
            };

            if (roomId != null)
            {
                model.currentRoomReservation = reservationRepo.GetRoomDailyReservation(roomId.Value, date);
                model.hasReservationToRenew  = reservationRepo.HasReservationToRenew(roomId.Value);
            }
            else
            {
                model.currentRoomReservation = null;
                model.hasReservationToRenew  = false;
            }

            return(model);
        }