public string UpdateTotalizacion(TotalizacionContact contacto, CandidatoValueIncoming[] valores)
        {
            var db = new edayRoomEntities();

            TotalizacionTimeline oldTimeline = (from pt in db.TotalizacionTimelines
                                                where pt.id == contacto.TotalizacionTimelineId
                                                select pt).Single();
            oldTimeline.activa = false;
            db.SaveChanges();

            foreach (CandidatoValueIncoming v in valores)
            {
                var ep = new Totalizacion
                             {
                                 id_candidato = int.Parse(v.name.Replace("candidato-", "")),
                                 id_mesa = contacto.MesaId,
                                 valor = v.value
                             };
                db.Totalizacions.AddObject(ep);
                ep.TotalizacionTimelines.Add(oldTimeline);
            }

            IQueryable<TotalizacionAlerta> alertas = from a in db.TotalizacionAlertas
                                                     where a.activa && !a.Alerta.blocking
                                                           && a.id_mesa == contacto.MesaId
                                                     select a;
            foreach (TotalizacionAlerta a in alertas)
            {
                a.activa = false;
            }

            var centro = db.Centroes.Single(c => c.id == contacto.CentroId);
            centro.totalizado = true;

            db.SaveChanges();
            //MatrizDeSustitucion.UpdateMatriz(contacto.CentroId);

            return new JavaScriptSerializer().Serialize("");
        }
 /// <summary>
 /// Deprecated Method for adding a new object to the Totalizacions EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
 /// </summary>
 public void AddToTotalizacions(Totalizacion totalizacion)
 {
     base.AddObject("Totalizacions", totalizacion);
 }
 /// <summary>
 /// Create a new Totalizacion object.
 /// </summary>
 /// <param name="id_mesa">Initial value of the id_mesa property.</param>
 /// <param name="id_candidato">Initial value of the id_candidato property.</param>
 /// <param name="valor">Initial value of the valor property.</param>
 /// <param name="id">Initial value of the ID property.</param>
 public static Totalizacion CreateTotalizacion(global::System.Int32 id_mesa, global::System.Int32 id_candidato, global::System.Int32 valor, global::System.Int32 id)
 {
     Totalizacion totalizacion = new Totalizacion();
     totalizacion.id_mesa = id_mesa;
     totalizacion.id_candidato = id_candidato;
     totalizacion.valor = valor;
     totalizacion.ID = id;
     return totalizacion;
 }
Exemple #4
0
        public string UpdateQuickCount(TotalizacionContact contacto, CandidatoValueIncoming[] valores)
        {
            var db = new edayRoomEntities();
            var user = db.users.Single(u => u.username == User.Identity.Name);

            QuickCountTimeline oldTimeline = (from pt in db.QuickCountTimelines
                                              where pt.id == contacto.TotalizacionTimelineId
                                              select pt).Single();
            oldTimeline.activa = false;
            db.SaveChanges();

            IQueryable<Totalizacion> totalizaciones = db.Totalizacions.Where(t => t.id_mesa == contacto.MesaId);
            foreach (CandidatoValueIncoming v in valores)
            {
                int idCandidato = int.Parse(v.name.Replace("candidato-", ""));
                Totalizacion totalizacion = totalizaciones.SingleOrDefault(t => t.id_candidato == idCandidato);
                if (totalizacion == null)
                {
                    totalizacion = new Totalizacion
                                       {
                                           id_candidato = idCandidato,
                                           id_mesa = contacto.MesaId,
                                           valor = v.value,
                                           id_user = user.id
                                       };
                    db.Totalizacions.AddObject(totalizacion);
                }
                totalizacion.QuickCountTimelines.Add(oldTimeline);
            }

            var centro = db.Centroes.Single(c => c.id == contacto.CentroId);
            centro.totalizado = true;
            IQueryable<QuickCountAlerta> alertas = from a in db.QuickCountAlertas
                                                   where a.activa && !a.Alerta.blocking
                                                         && a.id_centro == contacto.CentroId
                                                   select a;
            foreach (QuickCountAlerta a in alertas)
            {
                a.activa = false;
            }

            //contacto.CentroId

            db.SaveChanges();
            MatrizDeSustitucion.UpdateMatriz(contacto.CentroId);
            return new JavaScriptSerializer().Serialize("");
        }