public ActionResult Index() { ViewBag.Rol = Session["Rol"].ToString(); try { ViewBag.userId = Session["Username"]; DATA.Telefonos telefono = new DATA.Telefonos(); telefono = tel.ListarTelefonos().Where(x => x.Username == Session["Username"].ToString()).FirstOrDefault(); var personasConComunicacion = com.ListarComunicaciones().Where(x => x.Numero_Twilio == telefono.Numero).Select(x => x.Id_Contacto).Distinct(); var lista = cont.ListarContactos().Where(x => x.Username == Session["Username"].ToString()).Where(x => personasConComunicacion.Contains(x.Id_Contacto)); var contactos = Mapper.Map <List <Models.Contactos> >(lista); foreach (Models.Contactos a in contactos) { var per = com.ListarComunicaciones().Where(x => x.Numero_Twilio == telefono.Numero).Where(x => x.Id_Contacto == a.Id_Contacto).Where(x => x.Estado == 6).FirstOrDefault(); if (per != null) { a.lista_negra = "Si"; } else { a.lista_negra = "No"; } } return(View(contactos)); } catch (Exception ex) { ViewBag.Mensaje = ex.Message; return(View()); } }
public ActionResult Index() { try { string cuerpoDeRespuesta = Request.Form["Body"]; string remitente = Request.Form["From"]; string emisor = Request.Form["To"]; var dateNow = DateTime.Now; DATA.Comunicaciones comunicaciones = new DATA.Comunicaciones(); DATA.Contactos contacto = new DATA.Contactos(); contacto = con.ListarContactos().Where(x => x.Numero == remitente.Replace("+", "")).FirstOrDefault(); comunicaciones.Id_Contacto = contacto.Id_Contacto; comunicaciones.Numero_Twilio = emisor.Replace("+", ""); comunicaciones.Mensaje = cuerpoDeRespuesta; comunicaciones.Estado = 6; comunicaciones.Fecha = dateNow; com.InsertarComunicaciones(comunicaciones); var logMessage = $"\"{cuerpoDeRespuesta}\", \"{remitente}\", \"{emisor}\""; Trace.WriteLine(logMessage); } catch (Exception ex) { Console.WriteLine(ex.Message); } return(Content("Handled")); }
// GET: Contactos public ActionResult Index() { try { ViewBag.userId = Session["Username"]; var lista = cont.ListarContactos().Where(x => x.Username == Session["Username"].ToString()); var contactos = Mapper.Map <List <Models.Contactos> >(lista); List <DATA.Lista_Negra> listaNegra = list_negra.ListarListaNegra(); var lista_Negra = Mapper.Map <List <Models.Lista_Negra> >(listaNegra); foreach (Models.Contactos a in contactos) { var varas = lista_Negra.Where(x => x.Id_Contacto == a.Id_Contacto).FirstOrDefault(); if (varas != null) { a.lista_negra = "Si"; } else { a.lista_negra = "No"; } } return(View(contactos)); } catch (Exception ex) { ViewBag.Mensaje = ex.Message; return(View()); } ViewBag.Rol = Session["Rol"].ToString(); }
public ActionResult UserDashboard() { int contactos; int sms; int llamadas; int correos; if (Session["Rol"].ToString() == "2") { contactos = cont.ListarContactos().Count(); ViewBag.totalContactos = contactos; sms = difu.ListarDifusines().Where(x => x.Id_Tipo_Mensaje == 1).Count(); ViewBag.totalSMS = sms; llamadas = difu.ListarDifusines().Where(x => x.Id_Tipo_Mensaje == 2).Count(); ViewBag.totalLlamadas = llamadas; correos = difu.ListarDifusines().Where(x => x.Id_Tipo_Mensaje == 3).Count(); ViewBag.totalLCorreos = correos; var listaDifusiones = difu.CantidadDifusiones(); Console.WriteLine(listaDifusiones); var dif = Mapper.Map <List <Models.Difusiones> >(listaDifusiones); foreach (Models.Difusiones a in dif) { Console.WriteLine("Estado:" + a.Descripcion + " Cantidad:" + a.Id_Estado); } /*Grafico Pie Difusiones */ int cantidadDifu = difu.ListarDifusines().Count(); if (cantidadDifu > 0) { List <DATA.Difusiones> listadifusiones = Mapper.Map <List <DATA.Difusiones> >(difu.ListarDifusines()); var difusiones = listadifusiones.Select(x => x.Id_Estado).Distinct(); List <dataChart> listaDifusion = new List <dataChart>(); foreach (var item in difusiones) { listaDifusion.Add(new dataChart(Int32.Parse(listadifusiones.Count(x => x.Id_Estado == item).ToString()), est.ListarEstados().Where(x => x.Id == item).Select(x => x.Descripcion).First().ToString())); } ViewBag.group = est.ListarEstados().Select(x => x.Descripcion).Distinct(); ViewBag.data = listaDifusion.ToList(); } else { ViewBag.cantidadDifu = 0; ViewBag.group = null; ViewBag.data = null; } /*Fin Grafico Pie Difusiones */ /*Sacando el estado de los mensajes de la última difusión de tipo texto (1)*/ try { int maximaDifusion = difu.ListarDifusines().Where(x => x.Id_Tipo_Mensaje == 1).Select(x => x.Id_Difusion).Max(); string nombreDifusion = difu.BuscarDifusiones(maximaDifusion).Descripcion; List <DATA.Historiales> listahistoriales = Mapper.Map <List <DATA.Historiales> >(his.ListarHistoriales().Where(x => x.Id_Difusion == maximaDifusion)); var historiales = listahistoriales.Select(x => x.Estado).Distinct(); List <dataChart> listaHistoriales = new List <dataChart>(); foreach (var item in historiales) { listaHistoriales.Add(new dataChart(Int32.Parse(listahistoriales.Count(x => x.Estado == item).ToString()), est.ListarEstados().Where(x => x.Id == item).Select(x => x.Descripcion).First().ToString())); } ViewBag.group1 = est.ListarEstados().Select(x => x.Descripcion).Distinct(); ViewBag.data1 = listaHistoriales.ToList(); ViewBag.nombre1 = nombreDifusion; } catch (Exception e) { ViewBag.group1 = null; ViewBag.data1 = null; ViewBag.nombre1 = null; } /*Termina el de tipo texto (1)*/ /*Sacando el estado de los mensajes de la última difusión de tipo voz (2)*/ try { int maximaDifusion = difu.ListarDifusines().Where(x => x.Id_Tipo_Mensaje == 2).Select(x => x.Id_Difusion).Max(); string nombreDifusion = difu.BuscarDifusiones(maximaDifusion).Descripcion; List <DATA.Historiales> listahistoriales = Mapper.Map <List <DATA.Historiales> >(his.ListarHistoriales().Where(x => x.Id_Difusion == maximaDifusion)); var historiales = listahistoriales.Select(x => x.Estado).Distinct(); List <dataChart> listaHistoriales = new List <dataChart>(); foreach (var item in historiales) { listaHistoriales.Add(new dataChart(Int32.Parse(listahistoriales.Count(x => x.Estado == item).ToString()), est.ListarEstados().Where(x => x.Id == item).Select(x => x.Descripcion).First().ToString())); } ViewBag.group2 = est.ListarEstados().Select(x => x.Descripcion).Distinct(); ViewBag.data2 = listaHistoriales.ToList(); ViewBag.nombre2 = nombreDifusion; } catch (Exception e) { ViewBag.group2 = null; ViewBag.data2 = null; ViewBag.nombre2 = null; } /*Termina el de tipo voz (2)*/ /*Sacando el estado de los mensajes de la última difusión de tipo correo (3)*/ try { int maximaDifusion = difu.ListarDifusines().Where(x => x.Id_Tipo_Mensaje == 3).Select(x => x.Id_Difusion).Max(); string nombreDifusion = difu.BuscarDifusiones(maximaDifusion).Descripcion; List <DATA.Historiales> listahistoriales = Mapper.Map <List <DATA.Historiales> >(his.ListarHistoriales().Where(x => x.Id_Difusion == maximaDifusion)); var historiales = listahistoriales.Select(x => x.Estado).Distinct(); List <dataChart> listaHistoriales = new List <dataChart>(); foreach (var item in historiales) { listaHistoriales.Add(new dataChart(Int32.Parse(listahistoriales.Count(x => x.Estado == item).ToString()), est.ListarEstados().Where(x => x.Id == item).Select(x => x.Descripcion).First().ToString())); } ViewBag.group3 = est.ListarEstados().Select(x => x.Descripcion).Distinct(); ViewBag.data3 = listaHistoriales.ToList(); ViewBag.nombre3 = nombreDifusion; } catch (Exception e) { ViewBag.group3 = null; ViewBag.data3 = null; ViewBag.nombre3 = null; } /*Termina el de tipo correo (3)*/ /*Grafico 4 - Reporte Clientes Activos*/ try { int cantidadActivos = rep.ListarReporteclientesactivos().Count(); var lista = rep.ListarReporteclientesactivos(); var reporte = Mapper.Map <List <Models.Reporteclientesactivos> >(lista); foreach (Models.Reporteclientesactivos a in reporte) { Console.WriteLine("Cliente:" + a.Nombre + " Cantidad:" + a.Cantidad); } List <DATA.Reporteclientesactivos> listareportes = rep.ListarReporteclientesactivos(); var reporteslistados = listareportes.Select(x => x.Id_Contacto).Distinct(); List <dataChart> listaReporte = new List <dataChart>(); foreach (var item in reporteslistados) { listaReporte.Add(new dataChart(rep.ListarReporteclientesactivos().Where(x => x.Id_Contacto == item).Select(x => x.Cantidad).First(), cont.ListarContactos().Where(x => x.Id_Contacto == item).Select(x => x.Nombre).First().ToString())); } ViewBag.group4 = cont.ListarContactos().Select(x => x.Nombre).Distinct(); ViewBag.data4 = listaReporte.ToList(); ViewBag.nombre4 = cantidadActivos; } catch (Exception e) { ViewBag.group4 = null; ViewBag.data4 = null; ViewBag.nombre4 = 0; } /*Fin de Grafico 4*/ /*Table Contactos*/ try { var lista2 = cont.ListarContactos(); var contactos2 = Mapper.Map <List <Models.Contactos> >(lista2); return(View(contactos2)); } catch (Exception) { ModelState.AddModelError("error", "No se ha podido mostrar la tabla"); } } else if (Session["Rol"].ToString() == "1") { contactos = cont.ListarContactos().Where(x => x.Username == Session["Username"].ToString()).Count(); ViewBag.totalContactos = contactos; sms = difu.ListarDifusines().Where(x => x.Username == Session["Username"].ToString() && x.Id_Tipo_Mensaje == 1).Count(); ViewBag.totalSMS = sms; llamadas = difu.ListarDifusines().Where(x => x.Username == Session["Username"].ToString() && x.Id_Tipo_Mensaje == 2).Count(); ViewBag.totalLlamadas = llamadas; correos = difu.ListarDifusines().Where(x => x.Username == Session["Username"].ToString() && x.Id_Tipo_Mensaje == 3).Count(); ViewBag.totalLCorreos = correos; var listaDifusiones = difu.CantidadDifusiones(); Console.WriteLine(listaDifusiones); var dif = Mapper.Map <List <Models.Difusiones> >(listaDifusiones); foreach (Models.Difusiones a in dif) { Console.WriteLine("Estado:" + a.Descripcion + " Cantidad:" + a.Id_Estado); } /*Grafico Pie Difusiones */ int cantidadDifu = difu.ListarDifusines().Where(x => x.Username == Session["Username"].ToString()).Count(); if (cantidadDifu > 0) { List <DATA.Difusiones> listadifusiones = Mapper.Map <List <DATA.Difusiones> >(difu.ListarDifusines().Where(x => x.Username == Session["Username"].ToString())); var difusiones = listadifusiones.Select(x => x.Id_Estado).Distinct(); List <dataChart> listaDifusion = new List <dataChart>(); foreach (var item in difusiones) { listaDifusion.Add(new dataChart(Int32.Parse(listadifusiones.Count(x => x.Id_Estado == item).ToString()), est.ListarEstados().Where(x => x.Id == item).Select(x => x.Descripcion).First().ToString())); } ViewBag.group = est.ListarEstados().Select(x => x.Descripcion).Distinct(); ViewBag.data = listaDifusion.ToList(); } else { ViewBag.cantidadDifu = 0; ViewBag.group = null; ViewBag.data = null; } /*Fin Grafico Pie Difusiones */ /*Sacando el estado de los mensajes de la última difusión de tipo texto (1)*/ try { int maximaDifusion = difu.ListarDifusines().Where(x => x.Id_Tipo_Mensaje == 1).Where(x => x.Username == Session["Username"].ToString()).Select(x => x.Id_Difusion).Max(); string nombreDifusion = difu.BuscarDifusiones(maximaDifusion).Descripcion; List <DATA.Historiales> listahistoriales = Mapper.Map <List <DATA.Historiales> >(his.ListarHistoriales().Where(x => x.Id_Difusion == maximaDifusion)); var historiales = listahistoriales.Select(x => x.Estado).Distinct(); List <dataChart> listaHistoriales = new List <dataChart>(); foreach (var item in historiales) { listaHistoriales.Add(new dataChart(Int32.Parse(listahistoriales.Count(x => x.Estado == item).ToString()), est.ListarEstados().Where(x => x.Id == item).Select(x => x.Descripcion).First().ToString())); } ViewBag.group1 = est.ListarEstados().Select(x => x.Descripcion).Distinct(); ViewBag.data1 = listaHistoriales.ToList(); ViewBag.nombre1 = nombreDifusion; } catch (Exception e) { ViewBag.group1 = null; ViewBag.data1 = null; ViewBag.nombre1 = null; } /*Termina el de tipo texto (1)*/ /*Sacando el estado de los mensajes de la última difusión de tipo voz (2)*/ try { int maximaDifusion = difu.ListarDifusines().Where(x => x.Id_Tipo_Mensaje == 2).Where(x => x.Username == Session["Username"].ToString()).Select(x => x.Id_Difusion).Max(); string nombreDifusion = difu.BuscarDifusiones(maximaDifusion).Descripcion; List <DATA.Historiales> listahistoriales = Mapper.Map <List <DATA.Historiales> >(his.ListarHistoriales().Where(x => x.Id_Difusion == maximaDifusion)); var historiales = listahistoriales.Select(x => x.Estado).Distinct(); List <dataChart> listaHistoriales = new List <dataChart>(); foreach (var item in historiales) { listaHistoriales.Add(new dataChart(Int32.Parse(listahistoriales.Count(x => x.Estado == item).ToString()), est.ListarEstados().Where(x => x.Id == item).Select(x => x.Descripcion).First().ToString())); } ViewBag.group2 = est.ListarEstados().Select(x => x.Descripcion).Distinct(); ViewBag.data2 = listaHistoriales.ToList(); ViewBag.nombre2 = nombreDifusion; } catch (Exception e) { ViewBag.group2 = null; ViewBag.data2 = null; ViewBag.nombre2 = null; } /*Termina el de tipo voz (2)*/ /*Sacando el estado de los mensajes de la última difusión de tipo correo (3)*/ try { int maximaDifusion = difu.ListarDifusines().Where(x => x.Id_Tipo_Mensaje == 3).Where(x => x.Username == Session["Username"].ToString()).Select(x => x.Id_Difusion).Max(); string nombreDifusion = difu.BuscarDifusiones(maximaDifusion).Descripcion; List <DATA.Historiales> listahistoriales = Mapper.Map <List <DATA.Historiales> >(his.ListarHistoriales().Where(x => x.Id_Difusion == maximaDifusion)); var historiales = listahistoriales.Select(x => x.Estado).Distinct(); List <dataChart> listaHistoriales = new List <dataChart>(); foreach (var item in historiales) { listaHistoriales.Add(new dataChart(Int32.Parse(listahistoriales.Count(x => x.Estado == item).ToString()), est.ListarEstados().Where(x => x.Id == item).Select(x => x.Descripcion).First().ToString())); } ViewBag.group3 = est.ListarEstados().Select(x => x.Descripcion).Distinct(); ViewBag.data3 = listaHistoriales.ToList(); ViewBag.nombre3 = nombreDifusion; } catch (Exception e) { ViewBag.group3 = null; ViewBag.data3 = null; ViewBag.nombre3 = null; } /*Termina el de tipo correo (3)*/ /*Grafico 4 - Reporte Clientes Activos*/ try { int cantidadActivos = rep.ListarReporteclientesactivos().Where(x => x.Username == Session["Username"].ToString()).Count(); var lista = rep.ListarReporteclientesactivos().Where(x => x.Username == Session["Username"].ToString()); var reporte = Mapper.Map <List <Models.Reporteclientesactivos> >(lista.Where(x => x.Username == Session["Username"].ToString())); foreach (Models.Reporteclientesactivos a in reporte) { Console.WriteLine("Cliente:" + a.Nombre + " Cantidad:" + a.Cantidad); } List <DATA.Reporteclientesactivos> listareportes = rep.ListarReporteclientesactivos(); var reporteslistados = listareportes.Select(x => x.Id_Contacto).Distinct(); List <dataChart> listaReporte = new List <dataChart>(); foreach (var item in reporteslistados) { listaReporte.Add(new dataChart(rep.ListarReporteclientesactivos().Where(x => x.Username == Session["Username"].ToString() && x.Id_Contacto == item).Select(x => x.Cantidad).First(), cont.ListarContactos().Where(x => x.Id_Contacto == item).Select(x => x.Nombre).First().ToString())); } ViewBag.group4 = cont.ListarContactos().Select(x => x.Nombre).Distinct(); ViewBag.data4 = listaReporte.ToList(); ViewBag.nombre4 = cantidadActivos; } catch (Exception e) { ViewBag.group4 = null; ViewBag.data4 = null; ViewBag.nombre4 = 0; } /*Fin de Grafico 4*/ /*Table Contactos*/ try { var lista2 = cont.ListarContactos().Where(x => x.Username == Session["Username"].ToString()); var contactos2 = Mapper.Map <List <Models.Contactos> >(lista2); return(View(contactos2)); } catch (Exception) { ModelState.AddModelError("error", "No se ha podido mostrar la tabla"); } } ViewBag.Rol = Session["Rol"].ToString(); return(View()); }