Пример #1
0
        public ActionResult FormularioPedido(FormularioPedidoViewModel model)
        {
            Arbol arbol = ArbolManager.GetArbol(model.IdArbol);

            if (ModelState.IsValid)
            {
                List <Arbol> arbolesOfrecidos = new List <Arbol>();
                foreach (var item in model.ArbolesSeleccionados)
                {
                    arbolesOfrecidos.Add(ArbolManager.GetArbol(Int32.Parse(item)));
                }
                Pedido pedido = new Pedido {
                    Arbol    = arbol,
                    Emisor   = UsuarioManager.Get(model.Emisor),
                    Receptor = UsuarioManager.Get(model.Receptor),
                    Oferta   = arbolesOfrecidos
                };
                PedidoManager.Nuevo(pedido);
                TempData["Msg"] = "El pedido fue realizado correctamente";
                return(RedirectToAction("Enviados", "Pedido"));
            }
            else
            {
                TempData["Msg"] = "No se pudo realizar el pedido";
                return(RedirectToAction("PedirTrueque", "Trueque", new { id = arbol.Id }));
            }
        }
Пример #2
0
        /// <summary>
        /// Devuelve vista detalle del idArbol pasado opr parametro
        /// </summary>
        /// <param name="Id"></param>
        /// <returns></returns>
        public ActionResult Detalle(int Id)
        {
            //TODO: agregar validacion para verificar que el arbol sea del usuario en sesion
            Arbol Arbol = ArbolManager.GetArbol(Id);

            return(View(Arbol));
        }
Пример #3
0
        // GET: Dashboard/Trueque
        public ActionResult PedirTrueque(int id)
        {
            Arbol arbolBD = ArbolManager.GetArbol(id);

            if (arbolBD.IdUsuario == usuario.Id)
            {
                TempData["Msg"] = "No puedes realizar un pedido de trueque sobre tus propios árboles";
                return(RedirectToAction("Buscar", "Buscador", new { area = "", variedad = arbolBD.Variedad }));
            }
            List <ArbolCheckBoxModel> arbolesdisponibles = new List <ArbolCheckBoxModel>();
            var arboles = ArbolManager.GetArboles(usuario.Id);

            foreach (Arbol arbol in arboles)
            {
                arbolesdisponibles.Add(new ArbolCheckBoxModel {
                    Id = arbol.Id, Variedad = arbol.Variedad.ToString()
                });
            }
            FormularioPedidoViewModel model = new FormularioPedidoViewModel {
                Variedad       = arbolBD.Variedad.ToString(),             //arbol por el que se pide trueque
                Disponibilidad = arbolBD.Disponibilidad.ToString(),       //arbol por el que se pide trueque
                IdArbol        = arbolBD.Id,                              // id del arbol por el que se pide trueque
                Emisor         = usuario.Id,
                Oferta         = arbolesdisponibles,                      //listado de los arboles que posee el interesado
                Receptor       = UsuarioManager.Get(arbolBD.IdUsuario).Id //dueño del arbol
            };

            return(View(model));
        }
Пример #4
0
        public ActionResult Editar(int id)
        {
            Arbol          arbol = ArbolManager.GetArbol(id);
            ArbolViewModel model = new ArbolViewModel
            {
                Id             = arbol.Id,
                Variedad       = arbol.Variedad,
                Disponibilidad = arbol.Disponibilidad,
                Direccion      = arbol.Direccion,
                Latitud        = arbol.Latitud,
                Longitud       = arbol.Longitud
            };

            return(View(model));
        }
        public ActionResult Buscar(BuscarViewModel model)
        {
            int?IdUsuario = null;

            if (Session[Constantes.KeyCurrentUser] != null)
            {
                Usuario usuario = (Usuario)Session[Constantes.KeyCurrentUser];
                IdUsuario = usuario.Id;
            }
            ViewBag.Variedad = model.Variedad;
            ViewBag.Titulo   = "Resultados de búsqueda";
            List <Arbol> arbols = ArbolManager.GetArbolesByVariedad(model.Variedad, IdUsuario);
            //armar array de destinos
            String destinos = "";

            foreach (var arbol in arbols)
            {
                destinos += arbol.Latitud + ", " + arbol.Longitud + "|";
            }
            //pasarlo al manager
            JObject arrayDistancias = ArbolManager.CalcularDistancia(model.Posicion, destinos);
            //armar el viewmodel y agregar la ditancia
            List <ResultadosViewModel> arboles = new List <ResultadosViewModel>();

            for (int i = 0; i < arbols.Count; i++)
            {
                arboles.Add(
                    new ResultadosViewModel
                {
                    Id             = arbols[i].Id,
                    Variedad       = arbols[i].Variedad,
                    Disponibilidad = arbols[i].Disponibilidad,
                    Latitud        = arbols[i].Latitud,
                    Longitud       = arbols[i].Longitud,
                    Direccion      = arbols[i].Direccion,
                    Distancia      = arrayDistancias["rows"][0]["elements"][i]["distance"]["text"].ToString()
                }
                    );
            }
            //reordeno la lista con linq segun distancia
            var result = (from s in arboles
                          select s).OrderBy(x => x.Distancia);

            return(View("Resultados", result));
        }
        public ActionResult Detalle(int id)
        {
            ViewBag.Titulo = "Detalle";
            Arbol   arbol                      = ArbolManager.GetArbol(id);
            String  destino                    = arbol.Latitud + ", " + arbol.Longitud;
            JObject arrayDistancias            = ArbolManager.CalcularDistancia("-34.9314, -57.9489", destino);
            String  distancia                  = arrayDistancias["rows"][0]["elements"][0]["distance"]["text"].ToString();
            List <ResultadosViewModel> arboles = new List <ResultadosViewModel>
            {
                new ResultadosViewModel
                {
                    Id             = arbol.Id,
                    Variedad       = arbol.Variedad,
                    Disponibilidad = arbol.Disponibilidad,
                    Direccion      = arbol.Direccion,
                    Distancia      = distancia
                }
            };

            return(View("Resultados", arboles));
        }
Пример #7
0
 public ActionResult Nuevo(ArbolViewModel model)
 {
     if (ModelState.IsValid)
     {
         Arbol arbol = new Arbol
         {
             IdUsuario      = usuario.Id,
             Variedad       = model.Variedad,
             Disponibilidad = model.Disponibilidad,
             Direccion      = model.Direccion,
             Latitud        = model.Latitud,
             Longitud       = model.Longitud
         };
         ArbolManager.Nuevo(arbol);
         TempData["Msg"] = "Su nuevo árbol fue añadido correctamente";
     }
     else
     {
         TempData["Msg"] = "Error al añadir árbol";
     }
     return(RedirectToAction("Lista", "Arbol"));
 }
        public ActionResult Index()
        {
            List <Arbol> arboles = ArbolManager.GetTodos();

            return(View(arboles));
        }
Пример #9
0
        /// <summary>
        /// Devuelve una lista con los arboles que pertenecen al idUsuario pasado por parametro
        /// </summary>
        /// <returns></returns>
        public ActionResult Lista()
        {
            IEnumerable <Arbol> listaArboles = ArbolManager.GetArboles(usuario.Id);

            return(View(listaArboles));
        }
Пример #10
0
 public ActionResult Borrar(int id)
 {
     ArbolManager.Borrar(id);
     TempData["Msg"] = "El plato ha sido borrado correctamente.";
     return(RedirectToAction("Lista", "Arbol"));
 }