public ActionResult Agregar_Ruta(string calle, int numero, int servicio, float latitud, float longitud, string comentarios) { if (Session["nombre_usuario"] == null) { return(RedirectToAction("Index", "Login")); } Ruta aux = new Ruta(); aux.id_servicio = servicio; aux.servicio = db_servicios.manboss_servicios.Where(x => x.id == servicio).Select(x => x.nombre).FirstOrDefault(); aux.calle = calle; aux.numero = numero; aux.latitud = latitud; aux.longitud = longitud; aux.comentarios = comentarios; List <Ruta> rutas = (List <Ruta>)Session["rutas_mandados"]; rutas.Add(aux); Session["rutas_mandados"] = rutas; ViewBag.rutas = Session["rutas_mandados"]; return(Content("exito")); }
// GET: Mandados public ActionResult Index() { if (Session["nombre_usuario"] == null) { return(RedirectToAction("Index", "Login")); } //En Espera List <Mandado> espera = new List <Mandado>(); var espera_db = db_mandados.manboss_mandados.Where(x => x.estado == 1).ToList(); foreach (var mandado in espera_db) { Mandado aux = new Mandado(); aux.cliente = db_clientes.manboss_clientes.Where(x => x.id == mandado.cliente).Select(x => x.nombre).FirstOrDefault(); aux.repartidor = db_usuarios.manboss_usuarios.Where(x => x.id == mandado.repartidor).Select(x => x.nombre).FirstOrDefault(); aux.total = mandado.total; aux.fecha = mandado.fecha.ToString("dd/MM/yyyy"); espera.Add(aux); } ViewBag.mandados_espera = espera; //Asignado List <Mandado> asignado = new List <Mandado>(); var asignado_db = db_mandados.manboss_mandados.Where(x => x.estado == 2).ToList(); foreach (var mandado in asignado_db) { Mandado aux = new Mandado(); aux.cliente = db_clientes.manboss_clientes.Where(x => x.id == mandado.cliente).Select(x => x.nombre).FirstOrDefault(); aux.repartidor = db_usuarios.manboss_usuarios.Where(x => x.id == mandado.repartidor).Select(x => x.nombre).FirstOrDefault(); aux.total = mandado.total; aux.fecha = mandado.fecha.ToString("dd/MM/yyyy"); asignado.Add(aux); } ViewBag.mandados_asignado = asignado; //En Proceso List <Mandado> proceso = new List <Mandado>(); var proceso_db = db_mandados.manboss_mandados.Where(x => x.estado == 3).ToList(); foreach (var mandado in proceso_db) { Mandado aux = new Mandado(); aux.cliente = db_clientes.manboss_clientes.Where(x => x.id == mandado.cliente).Select(x => x.nombre).FirstOrDefault(); aux.repartidor = db_usuarios.manboss_usuarios.Where(x => x.id == mandado.repartidor).Select(x => x.nombre).FirstOrDefault(); aux.total = mandado.total; aux.fecha = mandado.fecha.ToString("dd/MM/yyyy"); proceso.Add(aux); } ViewBag.mandados_proceso = proceso; //Entregado List <Mandado> entregado = new List <Mandado>(); var entregado_db = db_mandados.manboss_mandados.Where(x => x.estado == 4).ToList(); foreach (var mandado in entregado_db) { Mandado aux = new Mandado(); aux.cliente = db_clientes.manboss_clientes.Where(x => x.id == mandado.cliente).Select(x => x.nombre).FirstOrDefault(); aux.repartidor = db_usuarios.manboss_usuarios.Where(x => x.id == mandado.repartidor).Select(x => x.nombre).FirstOrDefault(); aux.total = mandado.total; aux.fecha = mandado.fecha.ToString("dd/MM/yyyy"); entregado.Add(aux); } ViewBag.mandados_entregado = entregado; //Mandaderos List <Mandadero> mandaderos = new List <Mandadero>(); var mandaderos_db = db_repartidores.manboss_repartidores.ToList(); foreach (var mandadero in mandaderos_db) { Mandadero aux = new Mandadero(); aux.nombre = db_usuarios.manboss_usuarios.Where(x => x.id == mandadero.repartidor).Select(x => x.nombre).FirstOrDefault(); aux.latitud = mandadero.latitud; aux.longitud = mandadero.longitud; mandaderos.Add(aux); } ViewBag.mandaderos = mandaderos; //Repartidores List <Repartidor> repartidores = new List <Repartidor>(); var mandados_proceso = db_mandados.manboss_mandados.Where(x => x.estado == 3).Select(x => x.repartidor).Distinct().ToList(); foreach (var repartidor in mandados_proceso) { Repartidor aux = new Repartidor(); aux.nombre = db_usuarios.manboss_usuarios.Where(x => x.id == repartidor).Select(x => x.nombre).FirstOrDefault(); aux.id = (int)repartidor; repartidores.Add(aux); } ViewBag.repartidores = repartidores; //Rutas de los Mandados List <Ruta> rutas = new List <Ruta>(); var rutas_db = db_rutas.manboss_mandados_rutas.ToList(); var mandados_id = db_rutas.manboss_mandados_rutas.Select(x => x.mandado).Distinct().ToList(); foreach (var mandado in mandados_id) { Ruta aux = new Ruta(); int estado_actual = db_mandados.manboss_mandados.Where(x => x.id == mandado).Select(x => x.estado).FirstOrDefault(); if (estado_actual == 3) { aux.mandado = mandado; aux.puntos = new List <Lugar>(); foreach (var punto in rutas_db) { if (punto.mandado == aux.mandado) { Lugar temp = new Lugar(); temp.mandado = punto.mandado; temp.latitud = punto.latitud; temp.longitud = punto.longitud; temp.comentarios = punto.comentarios; aux.puntos.Add(temp); } } rutas.Add(aux); } } ViewBag.rutas = rutas; return(View()); }