예제 #1
0
        public ActionResult nuevoEnvio3(Envio model2, string ruta, string avion, string barco, string terrestre, string empleadoE)
        {
            string name    = TempData["username"].ToString();
            string nameRol = TempData["rol"].ToString();
            int    codUser = Int32.Parse(TempData["codUser"].ToString());

            ViewBag.name         = name;
            ViewBag.rol          = nameRol;
            TempData["username"] = name;
            TempData["rol"]      = nameRol;
            TempData["codUser"]  = codUser;

            int r       = Int32.Parse(ruta);
            int precioV = 0;

            TempData["fkE"] = empleadoE;
            DAOEnvio data = DAOEnvio.getInstance();

            if ((avion == null) && (barco == null))
            {
                data.insertarTerrRut(terrestre, model2.duracionVR, r);
                precioV = 500;
            }
            if ((avion == null) && (terrestre == null))
            {
                data.insertarBarRut(barco, model2.duracionVR, r);
                precioV = 2500;
            }
            if ((terrestre == null) && (barco == null))
            {
                data.insertarAviRut(avion, model2.duracionVR, r);
                precioV = 3000;
            }
            data = DAOEnvio.getInstance();
            Envio      envio              = data.buscarUltimoVehRut();
            Envio      envio2             = data.buscarUltimoEnvio();
            DAOPaquete dataP              = DAOPaquete.getInstance();
            Paquete    paq                = dataP.buscarUltimoPaquete();
            DAORuta    dataR              = DAORuta.getInstance();
            Ruta       buscandoPrecioRuta = dataR.buscarRuta(r);

            data.insertarTraslado(envio.cod, envio2.cod, precioV, buscandoPrecioRuta.costo);

            DAOEnvio data2 = DAOEnvio.getInstance();

            envio = data2.buscarUltimoEnvio();
            if (paq.peso >= 10)
            {
                envio.monto = (buscandoPrecioRuta.costo + precioV) * (paq.volumen);
            }
            else
            {
                envio.monto = (buscandoPrecioRuta.costo + precioV) * (paq.peso);
            }
            DAOCliente dataC   = DAOCliente.getInstance();
            Cliente    cliente = dataC.buscarClienteEnvio(paq.cod);

            cliente = dataC.buscarLVIP(cliente.CI);
            if (cliente.cantEnvios >= 5)
            {
                ViewBag.LVIP = "10% de descuento por ser L-VIP, sin serlo el monto era " + envio.monto;
                envio.monto  = envio.monto - (envio.monto * 0.1);
            }

            return(View("~/Views/EnviarPaquete/NuevoEnvioFinal.cshtml", envio));
        }