Esempio n. 1
0
        public string UpdateSingleExitPoll(int exitpollId, CandidatoValueIncoming[] valores)
        {
            var db = new edayRoomEntities();

            ExitPollTimeline oldTimeline = (from pt in db.ExitPollTimelines
                                            where pt.id == exitpollId
                                            select pt).Single();

            db.SaveChanges();


            foreach (CandidatoValueIncoming v in valores)
            {
                int idCandidato = int.Parse(v.name.Replace("candidato-", ""));
                int valor       = v.value;
                ExitPoll
                    ep = oldTimeline.ExitPolls.Single(e => e.id_candidato == idCandidato);
                ep.valor = valor;
            }

            db.SaveChanges();


            return(new JavaScriptSerializer().Serialize(""));
        }
Esempio n. 2
0
        public string UpdateExitPoll(ExitPollContact contacto, CandidatoValueIncoming[] valores)
        {
            var db   = new edayRoomEntities();
            var user = db.users.Single(u => u.username == User.Identity.Name);

            ExitPollTimeline oldTimeline = (from pt in db.ExitPollTimelines
                                            where pt.id == contacto.ExitPollTimelineId
                                            select pt).Single();

            oldTimeline.activa = false;
            db.SaveChanges();

            DateTime newDate     = contacto.QuickCountActive ? DateTime.Now.AddMinutes(45) : DateTime.Now.AddMinutes(60);
            var      newTimeline = new ExitPollTimeline
            {
                id_centro          = contacto.CentroId,
                fecha              = newDate,
                id_testigoExitPoll = contacto.IdTestigo,
                activa             = true,
                id_parent          = oldTimeline.id
            };

            db.ExitPollTimelines.AddObject(newTimeline);
            db.SaveChanges();

            foreach (CandidatoValueIncoming v in valores)
            {
                var ep = new ExitPoll
                {
                    id_candidato       = int.Parse(v.name.Replace("candidato-", "")),
                    id_centro          = contacto.CentroId,
                    id_testigoExitPoll = contacto.IdTestigo,
                    id_timeline        = newTimeline.id,
                    valor   = v.value,
                    fecha   = DateTime.Now,
                    id_user = user.id
                };
                db.ExitPolls.AddObject(ep);
            }

            IQueryable <ExitPollAlerta> alertas = from a in db.ExitPollAlertas
                                                  where a.activa && !a.Alerta.blocking &&
                                                  a.id_centro == contacto.CentroId
                                                  select a;

            foreach (ExitPollAlerta a in alertas)
            {
                a.activa = false;
            }

            db.SaveChanges();
            //var newContacto = ExitPollsContact.GetExitPollsContact(contacto.IdTestigo);


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