Exemple #1
0
        public string GetTestigosParticipacion(int iDisplayStart, int iDisplayLength, int sEcho, int iSortCol_0,
            string sSortDir_0, string id_centro)
        {
            var dth = new DataTableHelper();
            var db = new edayRoomEntities();
            var centros =   from c in db.Centroes
                     from t in db.PadronElectoralParticipacions
                     where c.unique_id == t.id_centro &&
                            id_centro == c.unique_id
                     select new {c, t};

            dth.iTotalRecords = centros.Count();

            dth.iTotalDisplayRecords = centros.Count();

               dth.sEcho = sEcho;

            var centroList = centros.ToList();

            dth.aaData = centroList.Select(c => new List<string>
                                                 {
                                                     c.c.unique_id,
                                                     c.c.Nombre,
                                                     c.c.unidadGeografica1,
                                                     c.c.unidadGeografica2,
                                                     c.c.unidadGeografica3,
                                                     c.t.id_mesa,
                                                     c.t.nombre,
                                                     c.t.telefono
                                                }).Skip(iDisplayStart).Take(iDisplayLength).ToList();

            return
                new
                    JavaScriptSerializer().Serialize(dth);
        }
        public ActionResult AdminMesa(int idMesa)
        {
            var db = new edayRoomEntities();
            Mesa mesa = (from m in db.Mesas
                         where m.id == idMesa
                         select m).Single();
            IOrderedEnumerable<Participacion> participacion = from p in mesa.Participacions
                                                              where p.id_testigo != null
                                                              orderby p.fecha descending
                                                              select p;

            Participacion lastParticipacion = participacion.FirstOrDefault();

            Debug.Assert(lastParticipacion != null, "lastParticipacion != null");
            var contact = new ParticipacionContact
                              {
                                  Centro = mesa.Centro.Nombre,
                                  IdMesa = mesa.id,
                                  IdTestigo = mesa.Testigoes.First(t => t.activo).id,
                                  Mesa = mesa.numero,
                                  NombreTestigo = mesa.Testigoes.First(t => t.activo).nombre,
                                  Numero = mesa.Testigoes.First(t => t.activo).numero,
                                  Votantes = mesa.votantes,
                                  LastUpdate = mesa.lastContact,
                                  LastValue = mesa.participacion
                              };
            ViewData["mesa"] = mesa;
            ViewData["participacion"] = participacion.ToList();
            ViewData["contact"] = contact;
            return View("AdminMesa");
        }
Exemple #3
0
        public ActionResult CancelAlert(int idAlerta, string modulo)
        {
            var db = new edayRoomEntities();

            switch (modulo)
            {
                case "Participación":
                    db.ParticipacionAlertas.Single(pa => pa.id == idAlerta).activa = false;
                    break;
                case "Movilización":
                    db.MovilizacionAlertas.Single(pa => pa.id == idAlerta).activa = false;
                    break;
                case "Exit Poll":
                    db.ExitPollAlertas.Single(pa => pa.id == idAlerta).activa = false;
                    break;
                case "QuickCount":
                    db.QuickCountAlertas.Single(pa => pa.id == idAlerta).activa = false;
                    break;
                case "Totalización":
                    db.TotalizacionAlertas.Single(pa => pa.id == idAlerta).activa = false;
                    break;
            }
            db.SaveChanges();
            return RedirectToAction("ListAlertas");
        }
Exemple #4
0
        public ParticipacionStats(user user)
        {
            var db = new edayRoomEntities();
            int conteo = user.admin
                             ? db.Participacions.Where(p => p.active).Sum(p => p.conteo)
                             : (from p in db.Participacions
                                from ap in db.AsignacionParticipacions
                                where p.active && p.id_mesa == ap.id_mesa
                                      && ap.id_user == user.id
                                select p).Sum(p => p.conteo);

            /*    _centros =
                user.admin?
                db.Centroes.Count():
                (from m in db.Mesas
                    from ap in db.AsignacionParticipacions
                    where m.id == ap.id_mesa
                    select m.id_centro).Distinct().Count();
            _mesas = user.admin ?
                db.Mesas.Count() :
                (from m in db.Mesas
                 from ap in db.AsignacionParticipacions
                 where m.id == ap.id_mesa
                 select m).Count();*/

            _participacion = conteo;
            //_movilizacion = db.Movilizacions.Where(p => p.active).Sum(p => p.conteo);
        }
Exemple #5
0
        public string CrearCandidato(string nombre, string coalicion, string partido, string color, string colorpartido, string colorcoalicion)
        {
            var db = new edayRoomEntities();
            var rel = new RelacionCandidatoPartidoCoalicion();
            db.RelacionCandidatoPartidoCoalicions.AddObject(rel);
            Candidato candidato = db.Candidatoes.SingleOrDefault(c => c.nombre.ToLower() == nombre.ToLower());
            if (candidato == null)
            {
                candidato = new Candidato {nombre = nombre, color = color};
                db.Candidatoes.AddObject(candidato);
            }
            Partido partidoObj = db.Partidoes.SingleOrDefault(c => c.nombre.ToLower() == partido.ToLower());
            if (partidoObj == null)
            {
                partidoObj = new Partido {nombre = partido, color=colorpartido};
                db.Partidoes.AddObject(partidoObj);
            }

            Coalicion coalicionObj = db.Coalicions.SingleOrDefault(c => c.nombre.ToLower() == coalicion.ToLower());
            if (coalicionObj == null)
            {
                coalicionObj = new Coalicion {nombre = coalicion, color = colorcoalicion};
                db.Coalicions.AddObject(coalicionObj);
            }

            partidoObj.RelacionCandidatoPartidoCoalicions.Add(rel);
            coalicionObj.RelacionCandidatoPartidoCoalicions.Add(rel);
            candidato.RelacionCandidatoPartidoCoalicions.Add(rel);

            db.SaveChanges();
            return new JavaScriptSerializer().Serialize("");
        }
Exemple #6
0
 public ActionResult Index()
 {
     using (var db = new edayRoomEntities())
     {
         return View("Settings", db.Settings.First());
     }
 }
        public string ActualizarAlertaTotalizacion(TotalizacionContact contacto, string mensaje)
        {
            var db = new edayRoomEntities();
            var user = db.users.Single(u => u.username == User.Identity.Name);
            TotalizacionAlerta alerta = (from a in db.TotalizacionAlertas
                                         where a.id == contacto.BlockingAlert.Id
                                         select a).Single();

            if (!string.IsNullOrWhiteSpace(mensaje))
            {
                var alertMessage = new TotalizacionAlertaMessage { fecha = DateTime.Now, mensaje = mensaje, id_usuario=user.id };
                alerta.TotalizacionAlertaMessages.Add(alertMessage);
            }

            db.SaveChanges();
            IQueryable<TotalizacionContactAlertMessage> mensajesAlerta = (from a in alerta.TotalizacionAlertaMessages
                                                                          orderby a.fecha descending
                                                                          select new TotalizacionContactAlertMessage
                                                                                     {
                                                                                         Id = a.id,
                                                                                         Fecha = a.fecha,
                                                                                         Message = a.mensaje
                                                                                     }).AsQueryable();

            return new JavaScriptSerializer().Serialize("");
        }
Exemple #8
0
        public static void UpdateMatriz(int idCentro)
        {
            var db = new edayRoomEntities();
            var centro = db.Centroes.Single(c => c.id == idCentro);
            var matriz = db.mudVsPsuvs.Single(c => c.id_centro == centro.unique_id);

            var mesas = (from m in db.Mesas
                         where m.id_centro == centro.id
                               && m.Totalizacions.Any()
                         select m);

            var votantesContados = mesas.Any()?mesas.Sum(m => m.votantes):0;
            var totales = (from m in db.Mesas
                          from t in db.Totalizacions
                          where m.id_centro == centro.id &&
                                t.id_mesa == m.id
                          select t).GroupBy(t=>t.RelacionCandidatoPartidoCoalicion.Candidato.nombre).
                          Select(k=>new{k.Key,valor = k.Sum(m=>m.valor)});
            int totalCapriles = totales.Any() ? totales.Single(t => t.Key.Contains("Capriles")).valor:0;
            int totalChavez = totales.Any() ? totales.Single(t => t.Key.Contains("Jaua")).valor:0;
            int abstencion = 0;
            totalCapriles = totalCapriles * (centro.votantes??0) / votantesContados;
            totalChavez = totalChavez*(centro.votantes??0)/votantesContados;
            abstencion = (centro.votantes ?? 0) - (totalCapriles + totalChavez);

            matriz.mud_actual = totalCapriles;
            matriz.psuv_actual = totalChavez;
            matriz.abstencion = abstencion;
            db.SaveChanges();
        }
Exemple #9
0
 public string GetAllUserFiles()
 {
     var db = new edayRoomEntities();
     IOrderedQueryable<UserFile> userFiles = from uf in db.UserFiles
                                             orderby uf.fileName descending
                                             select uf;
     return new JavaScriptSerializer().Serialize(userFiles);
 }
Exemple #10
0
 public ActionResult UpdateSettings(Setting setting)
 {
     using (var db = new edayRoomEntities())
     {
         db.Settings.Attach(setting);
         db.ObjectStateManager.ChangeObjectState(setting, EntityState.Modified);
         db.SaveChanges();
     }
     return RedirectToAction("Index");
 }
Exemple #11
0
        public string GetAlertasActivasPorTendencia(string tag1, string tag2, string estados, string municipios)
        {
            var db = new edayRoomEntities();

            var tag1Filter = string.IsNullOrWhiteSpace(tag1) ? null : tag1;
            var tag2Filter = string.IsNullOrWhiteSpace(tag2) ? null : tag2;
            var estadosFilter = string.IsNullOrWhiteSpace(estados) ? null : estados;
            var municipiosFilter = string.IsNullOrWhiteSpace(municipios) ? null : municipios;

            return JsonConvert.SerializeObject(db.GetAlertasActivasPorTendencia(tag1Filter, tag2Filter, estadosFilter, municipiosFilter));
        }
Exemple #12
0
        public string GetMatrizCalique(string tag1, string tag2, string estados, string municipios)
        {
            var db = new edayRoomEntities();

            var tag1Filter = string.IsNullOrWhiteSpace(tag1) ? null : tag1;
            var tag2Filter = string.IsNullOrWhiteSpace(tag2) ? null : tag2;
            var estadosFilter = string.IsNullOrWhiteSpace(estados) ? null : estados;
            var municipiosFilter = string.IsNullOrWhiteSpace(municipios) ? null : municipios;

            var matriz = db.GetMatrizCalique(tag1Filter, tag2Filter, estadosFilter, municipiosFilter);

            return JsonConvert.SerializeObject(new { matriz });
        }
Exemple #13
0
 public Mesa(int id)
 {
     var db = new edayRoomEntities();
     var mesa = db.Mesas.SingleOrDefault(m => m.id == id);
     if (mesa != null)
     {
         InitializeFromEntity(mesa);
     }
     else
     {
         throw new Exception("No hay una mesa con id = " + id);
     }
 }
Exemple #14
0
 public SettingsHandler()
 {
     using (var db = new edayRoomEntities())
     {
         Setting s = db.Settings.First();
         EnableDashboard = s.enableDashboard;
         EnableExitPolls = s.enableExitPoll;
         EnableMovilizacion = s.enableMovilizacion;
         EnableParticipacion = s.enableParticipacion;
         EnableQuickCount = s.enableQuickCount;
         EnableTotalizacion = s.enableTotalizacion;
     }
 }
Exemple #15
0
 public string DeleteCandidato(int id)
 {
     var db = new edayRoomEntities();
     Candidato candidato = (from c in db.Candidatoes
                            where c.id == id
                            select c).SingleOrDefault();
     if (candidato != null)
     {
         db.Candidatoes.DeleteObject(candidato);
     }
     db.SaveChanges();
     return "Deleted";
 }
Exemple #16
0
 public string EditTestigoMovilizacion(int tid, string name, string number)
 {
     var db = new edayRoomEntities();
     var testigo = db.Movilizadors.SingleOrDefault(m => m.id == tid);
     if(testigo != null)
     {
         testigo.nombre = name;
         testigo.numero = number;
         db.SaveChanges();
         return "Testigo editado";
     }
     return "Error";
 }
Exemple #17
0
        public ExitPollStats()
        {
            var randomizer = new Random();
            var db = new edayRoomEntities();

            IQueryable<IGrouping<int, Participacion>> participacion = db.Participacions.GroupBy(p => p.id_mesa);
            int ExitPoll = 0;
            int conteo = Enumerable.Sum(participacion, p => p.OrderByDescending(g => g.fecha).First().conteo);

            _centros = db.Centroes.Count();
            _mesas = db.Mesas.Count();
            _participacion = conteo;
            _ExitPoll = ExitPoll;
        }
Exemple #18
0
        public string EditTestigoParticipacion(int tid, string name, string number)
        {
            var db = new edayRoomEntities();
            var testigo = db.Testigoes.SingleOrDefault(t => t.id == tid);

            if (testigo != null)
            {
                testigo.numero = number;
                testigo.nombre = name;
                db.SaveChanges();
                return "Testigo Editado";
            }
            return "Falla editando";
        }
Exemple #19
0
 public MovilizacionStats(user user)
 {
     var db = new edayRoomEntities();
     _centros = db.AsignacionMovilizacions.Count(am=>am.id_user == user.id);
     _mesas = (from m in db.Mesas
                  from c in db.Centroes
                  from am in db.AsignacionMovilizacions
                  where m.id_centro == c.id
                  && am.id_centro == c.id
                  && am.id_user == user.id
                  select m
                   ).Count();
     _movilizacion = db.AsignacionMovilizacions.Where(m => m.id_user == user.id).Sum(c => c.Centro.Movilizacions.Max(m=>m.conteo));
 }
Exemple #20
0
        public string GetAlertas(string tag1, string tag2, string estados, string municipios)
        {
            var db = new edayRoomEntities();

            var tag1Filter = string.IsNullOrWhiteSpace(tag1) ? null : tag1;
            var tag2Filter = string.IsNullOrWhiteSpace(tag2) ? null : tag2;
            var estadosFilter = string.IsNullOrWhiteSpace(estados) ? null : estados;
            var municipiosFilter = string.IsNullOrWhiteSpace(municipios) ? null : municipios;

            var totales = db.GetAlertasTotales(tag1Filter, tag2Filter, estadosFilter, municipiosFilter);
            var activas = db.GetAlertasActivas(tag1Filter, tag2Filter, estadosFilter, municipiosFilter);
            var estadosl = db.GetAlertasPorEstados();
            return JsonConvert.SerializeObject(
                new { totales, activas, estadosl });
        }
Exemple #21
0
        public ActionResult AdminCentro(int idCentro)
        {
            var db = new edayRoomEntities();
            var user = db.users.Single(u => u.username == User.Identity.Name);
            Centro centro = (from c in db.Centroes
                             where c.id == idCentro
                             select c).Single();
            List<Mesa> mesas = (from m in centro.Mesas1
                                where user.admin || m.AsignacionTotalizacions.Any(at => at.id_user == user.id)

                                select m).ToList();

            ViewData["centro"] = centro;
            ViewData["mesas"] = mesas;
            return View("AdminCentro");
        }
        public ActionResult AdminCentro(int idCentro)
        {
            var db = new edayRoomEntities();
            user user = db.users.Single(u => u.username == User.Identity.Name);
            Centro centro = (from c in db.Centroes
                             where c.id == idCentro
                             select c).Single();
            List<Mesa> mesas = (from m in centro.Mesas1
                                where (user.admin ||
                                      (user.leader && m.Centro.grupo == user.grupo) ||
                                    m.AsignacionParticipacions.Any(ap => ap.id_user == user.id))
                                select m).ToList();

            ViewData["centro"] = centro;
            ViewData["mesas"] = mesas;
            return View("AdminCentro");
        }
        public string ActualizarAlertaParticipacion(ParticipacionContact contacto, string mensaje)
        {
            var db = new edayRoomEntities();
            var user = db.users.Single(u => u.username == User.Identity.Name);
            ParticipacionAlerta alerta = (from a in db.ParticipacionAlertas
                                          where a.id == contacto.BlockingAlert.Id
                                          select a).Single();

            if (!string.IsNullOrWhiteSpace(mensaje))
            {
                var alertMessage = new ParticipacionAlertaMessage { fecha = DateTime.Now, mensaje = mensaje, id_usuario = user.id };
                alerta.ParticipacionAlertaMessages.Add(alertMessage);
            }

            db.SaveChanges();

            return new JavaScriptSerializer().Serialize("success");
        }
Exemple #24
0
        public ActionResult AdminMesa(int idMesa)
        {
            var db = new edayRoomEntities();

            Mesa mesa = (from m in db.Mesas
                         where m.id == idMesa
                         select m).Single();
            Centro centro = (from c in db.Centroes
                             where c.id == mesa.id_centro
                             select c).Single();
            bool totalizacionDone = mesa.Totalizacions.Any();
            Testigo testigo = mesa.Testigoes.FirstOrDefault(t => t.activo);

            ViewData["centro"] = centro;
            ViewData["mesa"] = mesa;
            ViewData["totalizacionDone"] = totalizacionDone;
            ViewData["contact"] = (from pt in db.TotalizacionTimelines
                                   where mesa.id == pt.id_mesa &&
                                         pt.activa
                                   select new TotalizacionContact
                                              {
                                                  Centro = mesa.Centro.Nombre,
                                                  CentroId = mesa.Centro.id,
                                                  LastUpdate = pt.fecha,
                                                  NextUpdate = pt.fecha,
                                                  Votantes = mesa.votantes,
                                                  IdTestigo = testigo.id,
                                                  Mesa = mesa.numero,
                                                  MesaId = mesa.id,
                                                  TotalizacionTimelineId = pt.id,
                                                  NombreTestigo = testigo.nombre,
                                                  Numero = testigo.numero
                                              }).SingleOrDefault();
            if (totalizacionDone)
            {
                ViewData["totales"] =
                    mesa.Totalizacions.OrderBy(t => t.RelacionCandidatoPartidoCoalicion.Candidato.nombre).ThenBy(
                        t => t.RelacionCandidatoPartidoCoalicion.Partido.nombre).ToList();
            }

            return View();
        }
Exemple #25
0
        public ActionResult AdminCentro(int idCentro)
        {
            var db = new edayRoomEntities();
            Centro centro = (from c in db.Centroes
                             where c.id == idCentro
                             select c).Single();

            ViewData["centro"] = centro;
            bool quickCountDone = centro.Mesas1.Any(m => m.Totalizacions.Any());
            ViewData["quickCountDone"] = quickCountDone;
            if (quickCountDone)
            {
                Mesa mesa = centro.Mesas1.FirstOrDefault(m => m.Totalizacions.Any(t => t.QuickCountTimelines.Any())) ??
                            centro.Mesas1.FirstOrDefault(m => m.Totalizacions.Any());
                ViewData["mesa"] = mesa;
                ViewData["totales"] =
                    mesa.Totalizacions.OrderBy(t => t.RelacionCandidatoPartidoCoalicion.Candidato.nombre).ThenBy(
                        t => t.RelacionCandidatoPartidoCoalicion.Partido.nombre).ToList();
            }
            else
            {
                ViewData["contact"] = (from c in db.Centroes
                                       from pt in db.QuickCountTimelines
                                       where
                                           c.id == idCentro &&
                                           c.id == pt.id_centro &&
                                           pt.activa && (c.quickCountActive ?? false)
                                       select new TotalizacionContact
                                                  {
                                                      Centro = c.Nombre,
                                                      CentroId = c.id,
                                                      LastUpdate = pt.fecha,
                                                      NextUpdate = pt.fecha,
                                                      Votantes = c.votantes ?? 0,
                                                      TotalizacionTimelineId = pt.id
                                                  }).SingleOrDefault();
            }

            return View();
        }
Exemple #26
0
        public string GetMatrizSustitucion(string tag1, string tag2, string estados, string municipios)
        {
            var db = new edayRoomEntities();

            var tag1Filter = string.IsNullOrWhiteSpace(tag1) ? null : tag1;
            var tag2Filter = string.IsNullOrWhiteSpace(tag2) ? null : tag2;
            var estadosFilter = string.IsNullOrWhiteSpace(estados) ? null : estados;
            var municipiosFilter = string.IsNullOrWhiteSpace(municipios) ? null : municipios;

            var matriz = from m in db.mudVsPsuvs
                         from c in db.Centroes
                         where m.id_centro == c.unique_id
                               && (tag1Filter == null || tag1Filter.Contains(c.tag1))
                               && (tag2Filter == null || tag2Filter.Contains(c.tag2))
                               && (estadosFilter == null || estadosFilter.Contains(c.unidadGeografica1))
                               && (municipiosFilter == null || municipiosFilter.Contains(c.unidadGeografica2))
                         select m;

            var totalMud2012 = matriz.Sum(m => m.mud2012);
            var totalPsuv2012 = matriz.Sum(m => m.psuv2012);
            var totalAbstencion2012 = matriz.Sum(m => m.abstencion2012);
            var total2012 = totalMud2012 + totalPsuv2012 + totalAbstencion2012;

            var totalMud = matriz.Sum(m => m.mud_actual ?? m.mud2012);
            var totalPsuv = matriz.Sum(m => m.psuv_actual ?? m.psuv2012);
            var totalAbstencion = matriz.Sum(m => m.abstencion ?? m.abstencion2012);
            var total = totalMud + totalPsuv + totalAbstencion;

            return JsonConvert.SerializeObject(new
            {
                totalMud2012 = totalMud2012 * 100.0 / total2012,
                totalPsuv2012 = totalPsuv2012 * 100.0 / total2012,
                totalAbstencion2012 = totalAbstencion2012 * 100.0 / total2012,
                totalMud = totalMud * 100.0 / total,
                totalPsuv = totalPsuv * 100.0 / total,
                totalAbstencion = totalAbstencion * 100.0 / total
            });
        }
Exemple #27
0
        public string GetIndicadores(string tag1, string tag2, string estados, string municipios)
        {
            var db = new edayRoomEntities();

            var tag1Filter = string.IsNullOrWhiteSpace(tag1) ? null : tag1;
            var tag2Filter = string.IsNullOrWhiteSpace(tag2) ? null : tag2;
            var estadosFilter = string.IsNullOrWhiteSpace(estados) ? null : estados;
            var municipiosFilter = string.IsNullOrWhiteSpace(municipios) ? null : municipios;

            var muestra = db.GetMetricasMuestra(tag1Filter, tag2Filter, estadosFilter, municipiosFilter).First();
            var generales = db.GetMetricasGenerales(tag1Filter, tag2Filter, estadosFilter, municipiosFilter).First();
            var alarmas = db.GetMetricasAlarmas(tag1Filter, tag2Filter, estadosFilter, municipiosFilter).First();

            var participacion = db.GetMetricasParticipacion(tag1Filter, tag2Filter, estadosFilter, municipiosFilter).First();
            var movilizacion = db.GetMetricasMovilizacion(tag1Filter, tag2Filter, estadosFilter, municipiosFilter).First();
            var totalizacion = db.GetMetricasTotalizacion(tag1Filter, tag2Filter, estadosFilter, municipiosFilter).First();
            return JsonConvert.SerializeObject(
                new
                    {
                       muestra,generales,alarmas, participacion, movilizacion, totalizacion

                    });
        }
Exemple #28
0
        public ActionResult Index()
        {
            var db = new edayRoomEntities();

            user user = db.users.SingleOrDefault(u => u.username == User.Identity.Name);

            if (user.dashboard)
            {
                return RedirectToAction("Index", "Dashboard");
            }
            if (user.participacion)
            {
                return RedirectToAction("Index", "Participacion");
            }

            if (user.movilizacion)
            {
                return RedirectToAction("Index", "Movilizacion");
            }
            if (user.exitpolls)
            {
                return RedirectToAction("Index", "ExitPolls");
            }
            if (user.quickcount)
            {
                return RedirectToAction("Index", "QuickCount");
            }
            if (user.totalizacion)
            {
                return RedirectToAction("Index", "Totalizacion");
            }
            if (user.alertas)
            {
                return RedirectToAction("ListAlertas", "Alertas");
            }
            throw new Exception("No actions available for this user");
        }
Exemple #29
0
        public ActionResult AdminCentro(int idCentro)
        {
            var db = new edayRoomEntities();
            var centro = (from c in db.Centroes
                          where c.id == idCentro
                          select c).Single();
            var movilizacion = from p in centro.Movilizacions
                               orderby p.fecha descending
                               select p;

            MovilizacionTimeline timelineMovilizacion = (from tp in db.MovilizacionTimelines
                                                           where tp.activa &&
                                                                 tp.id_centro== idCentro
                                                           select tp).Single();

            Movilizacion lastMovilizacion= movilizacion.FirstOrDefault();

            Debug.Assert(lastMovilizacion != null, "lastMovilizacion != null");
            var contact = new MovilizacionContact
            {
                Centro = centro.Nombre,
                IdCentro= centro.id,
                IdTestigo = centro.Movilizadors.First(t => t.activo).id,
                NombreTestigo = centro.Movilizadors.First(t => t.activo).nombre,
                Numero = centro.Movilizadors.First(t => t.activo).numero,
                Votantes = centro.votantes??0,
                LastUpdate = lastMovilizacion.fecha,
                LastValue = lastMovilizacion.conteo,
                LastMovilizacionId = lastMovilizacion.id,
                MovilizacionTimelineId = timelineMovilizacion.id
            };
            ViewData["centro"] = centro;
            ViewData["movilizacion"] = movilizacion.ToList();
            ViewData["contact"] = contact;
            return View("AdminCentro");
        }
Exemple #30
0
        public string GetAllUsuariosPaginate(int iDisplayStart, int iDisplayLength, int sEcho, int iSortCol_0,
            string sSortDir_0, string sSearch)
        {
            var dth = new DataTableHelper();
            var db = new edayRoomEntities();
            IQueryable<user> usuarios = from u in db.users
                                        select u;

            dth.iTotalRecords = usuarios.Count();

            #region Filtros

            sSearch = sSearch.ToLower();
            if (!string.IsNullOrWhiteSpace(sSearch))
            {
                usuarios = usuarios.Where(u =>
                                          u.username.ToLower().Contains(sSearch) ||
                                          u.nombre.ToLower().Contains(sSearch) ||
                                          u.apellido.ToLower().Contains(sSearch));
            }

            #endregion

            dth.iTotalDisplayRecords = usuarios.Count();
            usuarios = usuarios.OrderBy(u => u.username);

            #region Sorting de registros

            switch (sSortDir_0)
            {
                case "asc":
                    switch (iSortCol_0)
                    {
                        case 0:
                            usuarios = usuarios.OrderBy(u => u.username);
                            break;
                        case 1:
                            usuarios = usuarios.OrderBy(u => u.nombre);
                            break;
                        case 2:
                            usuarios = usuarios.OrderBy(u => u.apellido);
                            break;
                        case 3:
                            usuarios = usuarios.OrderBy(u => u.grupo);
                            break;
                        case 4:
                            usuarios = usuarios.OrderBy(u => u.admin);
                            break;
                        case 5:
                            usuarios = usuarios.OrderBy(u => u.participacion);
                            break;
                        case 6:
                            usuarios = usuarios.OrderBy(u => u.movilizacion);
                            break;
                        case 7:
                            usuarios = usuarios.OrderBy(u => u.exitpolls);
                            break;
                        case 8:
                            usuarios = usuarios.OrderBy(u => u.quickcount);
                            break;
                        case 9:
                            usuarios = usuarios.OrderBy(u => u.totalizacion);
                            break;
                    }
                    break;
                case "desc":
                    switch (iSortCol_0)
                    {
                        case 0:
                            usuarios = usuarios.OrderByDescending(u => u.username);
                            break;
                        case 1:
                            usuarios = usuarios.OrderByDescending(u => u.nombre);
                            break;
                        case 2:
                            usuarios = usuarios.OrderByDescending(u => u.apellido);
                            break;
                        case 3:
                            usuarios = usuarios.OrderByDescending(u => u.grupo);
                            break;
                        case 4:
                            usuarios = usuarios.OrderByDescending(u => u.admin);
                            break;
                        case 5:
                            usuarios = usuarios.OrderByDescending(u => u.participacion);
                            break;
                        case 6:
                            usuarios = usuarios.OrderByDescending(u => u.movilizacion);
                            break;
                        case 7:
                            usuarios = usuarios.OrderByDescending(u => u.exitpolls);
                            break;
                        case 8:
                            usuarios = usuarios.OrderByDescending(u => u.quickcount);
                            break;
                        case 9:
                            usuarios = usuarios.OrderByDescending(u => u.totalizacion);
                            break;
                    }
                    break;
            }

            #endregion

            dth.sEcho = sEcho;

            var ulist = usuarios.Select(u => new
                                                 {
                                                     u.username,
                                                     u.nombre,
                                                     u.apellido,
                                                     u.grupo,
                                                     admin = u.admin ? "si" : "no",
                                                     leader = u.leader ? "si" : "no",
                                                     participacion = u.participacion ? "si" : "no",
                                                     movilizacion = u.movilizacion ? "si" : "no",
                                                     exitpolls = u.exitpolls ? "si" : "no",
                                                     quickcount = u.quickcount ? "si" : "no",
                                                     totalizacion = u.totalizacion ? "si" : "no",
                                                     dashboard = u.dashboard ? "si" : "no"
                                                 }).ToList();
            List<List<string>> users = ulist.Select(u => new List<string>
                                                             {
                                                                 u.username,
                                                                 u.nombre,
                                                                 u.apellido,
                                                                 u.grupo,
                                                                 u.admin,
                                                                 u.leader,
                                                                 u.participacion,
                                                                 u.movilizacion,
                                                                 u.exitpolls,
                                                                 u.quickcount,
                                                                 u.totalizacion,
                                                                 u.dashboard
                                                             }).ToList();
            dth.aaData = users.Skip(iDisplayStart).Take(iDisplayLength).ToList();

            return new JavaScriptSerializer().Serialize(dth);
        }