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 })); } }
/// <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)); }
// 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)); }
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)); }
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)); }
/// <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)); }
public ActionResult Borrar(int id) { ArbolManager.Borrar(id); TempData["Msg"] = "El plato ha sido borrado correctamente."; return(RedirectToAction("Lista", "Arbol")); }