예제 #1
0
        public static Reserva Map(ReservaCreacionDTO dto)
        {
            var reserva = new Reserva
            {
                ReservaCamas = dto.CamasIds?.Select(x => new ReservaCama {
                    CamaId = x
                }).ToList(),
                ReservaHabitacionesPrivadas = dto.HabitacionesPrivadasIds?.Select(x => new ReservaHabitacionPrivada {
                    HabitacionPrivadaId = x
                }).ToList(),
                PasajeroTitular       = PasajeroMapper.Map(dto.PasajeroTitular),
                Estado                = dto.Estado,
                Canal                 = dto.Canal,
                HoraEstimadaDeLlegada = TimeSpan.Parse(dto.HoraEstimadaDeLlegada),
                CantidadDePasajeros   = dto.CantidadDePasajeros,
                PrimeraNoche          = Utilidades.ConvertirFecha(dto.DiaDeCheckin),
                UltimaNoche           = Utilidades.ConvertirFecha(dto.DiaDeCheckout).AddDays(-1),
            };

            // Seguro esto se puede hacer mejor
            foreach (var reservaCama in reserva.ReservaCamas)
            {
                reservaCama.Reserva = reserva;
            }

            return(reserva);
        }
예제 #2
0
        public static ReservaDetalleDTO MapDetalle(Reserva entidad)
        {
            var dto = new ReservaDetalleDTO
            {
                Id     = entidad.Id,
                Estado = entidad.Estado,
                HoraEstimadaDeLlegada = entidad.HoraEstimadaDeLlegada.ToString(@"hh\:mm"),
                CantidadDePasajeros   = entidad.CantidadDePasajeros,
                Canal                = entidad.Canal,
                DiaDeCheckout        = Utilidades.ConvertirFecha(entidad.UltimaNoche.AddDays(1)),
                DiaDeCheckin         = Utilidades.ConvertirFecha(entidad.PrimeraNoche),
                PasajeroTitular      = PasajeroMapper.Map(entidad.PasajeroTitular),
                HabitacionesPrivadas = new List <HabitacionDTO>(),
                PasajerosAnexos      = new List <PasajeroDTO>(),
                Camas                = new List <CamaDTO>()
            };

            if (entidad.ReservaHabitacionesPrivadas != null)
            {
                dto.HabitacionesPrivadas = HabitacionMapper
                                           .Map(entidad.ReservaHabitacionesPrivadas.Select(x => x.HabitacionPrivada)).ToList();
            }

            if (entidad.ReservaCamas != null)
            {
                dto.Camas = HabitacionMapper.MapCamas(entidad.ReservaCamas.Select(x => x.Cama)).ToList();
            }

            if (entidad.ReservaPasajerosAnexos != null)
            {
                dto.PasajerosAnexos = PasajeroMapper.Map(entidad.ReservaPasajerosAnexos.Select(x => x.Pasajero)).ToList();
            }

            return(dto);
        }
예제 #3
0
        public static Reserva Map(HacerCheckInDTO dto)
        {
            var reserva = new Reserva
            {
                Id = dto.ReservaId,
                PasajeroTitular        = PasajeroMapper.Map(dto.PasajeroTitular),
                Estado                 = ReservaEstadoEnum.InHouse,
                ReservaPasajerosAnexos = dto.PasajerosAnexos?.Select(x => new ReservaPasajeroAnexo {
                    Pasajero = PasajeroMapper.Map(x), ReservaId = dto.ReservaId
                }).ToList(),
            };

            return(reserva);
        }