Ejemplo n.º 1
0
        public JsonResult GrabarCompra(PagarReservaModels pagarreserva)
        {
            var codReserva = pagarreserva.CODRES;
            var compra     = Mapper.Map <CompraModels, SRV_COMPRA>(pagarreserva.Compra);
            var tarjeta    = Mapper.Map <TarjetaModels, SRV_TARJETA>(pagarreserva.Tarjeta);
            var result     = this._reservaLogic.PagarReserva(codReserva, tarjeta, compra);

            return(Json(result));
        }
Ejemplo n.º 2
0
        public ActionResult PagarReserva(int id)
        {
            var model = new PagarReservaModels();

            var reserva = this._reservaLogic.BuscarPorId(id);

            var pasajeros = this._pasajeroLogic.ListarPasajeroPorReserva(reserva.CODRES);

            var rutas = new List <SRV_VW_CONSULTA_PROGRAMACION>();

            rutas.Add(this._consultaProgramacionLogic.BuscarPorId(reserva.CODPRO.Value));
            if (reserva.CODPRODES.HasValue)
            {
                rutas.Add(this._consultaProgramacionLogic.BuscarPorId(reserva.CODPRODES.Value));
            }

            model.CODRES            = reserva.CODRES;
            model.FECRES            = reserva.FECRES.Value.ToString("dd/MM/yyyy");
            model.Compra.CODRES     = reserva.CODRES;
            model.Compra.FECCOM     = DateTime.Now;
            model.listaPasajeros    = model.castPasajerosType(pasajeros);
            model.listaProgramacion = model.castProgramacionType(rutas);

            var numeroPasajeros = pasajeros.Count() / 2;

            var totalPasaje = rutas.Sum(c => c.PRETAR.Value);

            model.Compra.MONTOT = totalPasaje * numeroPasajeros;
            model.Compra.VALIGV = Math.Round(model.Compra.MONTOT.Value * (decimal)(0.18), 2);
            model.Compra.SUBTOT = model.Compra.MONTOT - model.Compra.VALIGV;

            var lista = this._tipoTarjetaLogic.ListarTodo();

            model.Tarjeta.ESTREG      = "1";
            model.Tarjeta.LIST_TIPTAR = model.Tarjeta.castTipoTarjetaType(lista.ToList());

            return(View(model));
        }