示例#1
0
 public List <Reserva> ReservarPasaje()
 {
     if (IsValid())
     {
         foreach (var cabina in Cabinas.Where(x => IdsCabinasSeleccionadas.Contains(x.IdCabina)))
         {
             int cod_reserva = PasajeDAO.ReservarPasaje(
                 cabina.PorcentajeRecargo * Viajes.FirstOrDefault(x => x.IdRutaDeViaje == _RutaDeViajeSeleccionada).CalcularCostoDeRuta(),
                 cabina.IdCabina,
                 RutaDeViajeSeleccionada.Value,
                 Cliente.DNI
                 );
             Reserva reserva = new Reserva()
             {
                 Cabina      = cabina.MapToDomainObject(),
                 Cliente     = null,
                 Cod_Reserva = cod_reserva,
                 Estado      = null,
                 Precio      = _Monto,
                 Ruta        = null
             };
             this.PasajesReservados.Add(reserva);
         }
         return(PasajesReservados);
     }
     else
     {
         return(null);
     }
 }
示例#2
0
 public List <Pasaje> ComprarPasaje()
 {
     if (IsValid())
     {
         foreach (var cabina in Cabinas.Where(x => IdsCabinasSeleccionadas.Contains(x.IdCabina)))
         {
             int cod_pasaje = PasajeDAO.ComprarPasaje(
                 cabina.PorcentajeRecargo * Viajes.FirstOrDefault(x => x.IdRutaDeViaje == _RutaDeViajeSeleccionada).CalcularCostoDeRuta(),
                 cabina.IdCabina,
                 MedioDePago.IDMedioDePago,
                 RutaDeViajeSeleccionada.Value,
                 Cliente.DNI
                 );
             Pasaje pasaje = new Pasaje()
             {
                 Cabina     = cabina.MapToDomainObject(),
                 Cliente    = null,
                 Cod_Pasaje = cod_pasaje,
                 Estado     = null,
                 Pago       = null,
                 Precio     = _Monto,
                 Ruta       = null
             };
             this.PasajesComprados.Add(pasaje);
         }
         return(PasajesComprados);
     }
     else
     {
         return(null);
     }
 }
示例#3
0
        private void ActualizarMontoCalculado()
        {
            decimal montoTotal = 0;
            decimal costoRuta  = 0;

            if (RutaDeViajeSeleccionada.HasValue && Viajes.Count > 0)
            {
                costoRuta = Viajes.FirstOrDefault(x => x.IdRutaDeViaje == _RutaDeViajeSeleccionada).CalcularCostoDeRuta();
            }
            if (IdsCabinasSeleccionadas != null && IdsCabinasSeleccionadas.Count > 0)
            {
                foreach (var cabina in Cabinas.Where(x => IdsCabinasSeleccionadas.Contains(x.IdCabina)))
                {
                    montoTotal += cabina.PorcentajeRecargo * costoRuta;
                }
            }
            Monto = montoTotal;
        }