Exemple #1
0
        public ActionResult GuardarPedido(FormCollection formCollection)
        {
            try
            {
                Pedido    obtenerDatosPedido = new Pedido();
                Cliente   obtenerDatosCliente = new Cliente();
                Ubicacion ubicacion = new Ubicacion();
                double    longitud = 0, latitud = 0;
                geoCoordinateWatcher.PositionChanged += (S, E) =>
                {
                    var coordinate = E.Position.Location;
                    longitud = coordinate.Longitude;
                    latitud  = coordinate.Latitude;
                };
                geoCoordinateWatcher.Start();

                //Obtenemos datos
                obtenerDatosPedido.Cliente             = (Cliente)Session["cliente"];
                obtenerDatosPedido.ListaLineasDePedido = (List <LineaDePedido>)Session["carrito"];
                ubicacion.ObtenerDistancia(longitud, latitud, -8.115706, -79.044433);
                obtenerDatosPedido.Ubicacion = ubicacion;

                int idVenta = realizarPedidoServicio.insertarPedido(obtenerDatosPedido);
                if (idVenta > 0)
                {
                    Session["carrito"] = null;
                    return(RedirectToAction("ListaPedidoPorCliente", "Pedido", new { mensaje = "¡Registro exitoso!" }));
                }
                else
                {
                    return(RedirectToAction("Index", "Error", new { msgError = "Error al guardar pedido" }));
                }
            }
            catch (Exception ex)
            {
                return(RedirectToAction("Index", "Error", new { msgError = ex.Message }));
            }
        }