Beispiel #1
0
        public object GenerarResultados_BL(int anyo)
        {
            object result  = null;
            string mensaje = "";

            BDetalleProceso oBDetalleProceso = new BDetalleProceso();
            var             proceso          = oBDetalleProceso.ObtenerProcesoVigente_BL("Realizar Votaciones");

            if (proceso == null)
            {
                BPartidoPostulante oBPartidoPostulante = new BPartidoPostulante();

                var resultados = ListarResultadosVotos_BL(anyo);
                var conteo     = ListarConteoVotos_BL(anyo);

                //Maxima cantidad de votos
                int maxVotacion = resultados.Max(x => x.Votos);
                var ganadores   = resultados.Where(x => x.Votos == maxVotacion).ToList();

                object dataPartido = null;

                //Si existe un unico ganador
                if (ganadores.Count == 1)
                {
                    var ganador = ganadores.FirstOrDefault();

                    var p = oBPartidoPostulante.ListarPartidoPostulante_BL(ganador.idPartido);

                    string foto = "";
                    if (p.Logo != null)
                    {
                        foto   = string.Format("data:image/png;base64,{0}", System.Convert.ToBase64String(p.Logo));
                        p.Logo = null;
                    }

                    dataPartido = new
                    {
                        Partido     = p,
                        Logo        = foto,
                        Integrantes = oBPartidoPostulante.ListarIntegrantesPartido_BL(ganador.idPartido)
                    };
                }

                result = new
                {
                    Votos   = resultados,
                    Conteo  = conteo,
                    Ganador = dataPartido ?? ganadores
                };
            }
            else
            {
                mensaje = "El proceso de votación no ha concluido";
            }

            return(result ?? new { Mensaje = mensaje });
        }
Beispiel #2
0
        public EEmailStatus EnviarObservaciones(int idPartido, int idPlan)
        {
            List <EObservacion> observaciones = SP_VerTodasObservacionesPlan_BL(idPlan);
            EEmailStatus        status        = new EEmailStatus()
            {
                Estado = false, Mensaje = "No se envio el email ya que no hay observaciones para enviar"
            };

            if (observaciones.Count > 0)
            {
                BPartidoPostulante oBPartidoPostulante = new BPartidoPostulante();
                List <SP_GE_ListarIntegrantesPartido_Result> integrantes = oBPartidoPostulante.ListarIntegrantesPartido_BL(idPartido);

                if (integrantes.Count > 0)
                {
                    List <EEmail> Destinatarios = new List <EEmail>();

                    EEmail Emisor = new EEmail("*****@*****.**", "Innova School");

                    foreach (var item in integrantes)
                    {
                        Destinatarios.Add(new EEmail(item.Correo, item.Nombre));
                    }

                    string html = "";
                    html += "<h2>Observaciones del Plan de Gobierno</h2>";
                    var obsActividades  = observaciones.Where(x => x.idActividadPropuesta != null).ToList();
                    var obsInstrumentos = observaciones.Where(x => x.idInstrumento != null).ToList();

                    if (obsActividades.Count > 0)
                    {
                        html += "<h3>Observaciones de actividades:</h3>";
                        html += "<ul>";
                        foreach (var item in obsActividades)
                        {
                            html += string.Format("<li>{0}</li>", item.Descripcion);
                        }

                        html += "</ul>";
                    }

                    if (obsInstrumentos.Count > 0)
                    {
                        html += "<br/>";
                        html += "<h3>Observaciones de instrumentos:</h3>";
                        html += "<ul>";
                        foreach (var item in obsInstrumentos)
                        {
                            html += string.Format("<li>{0}</li>", item.Descripcion);
                        }

                        html += "</ul>";
                    }

                    status = BEmail.EnviarEmail(Emisor, Destinatarios, "Observaciones", html);
                }
                else
                {
                    status.Mensaje = "No hay integrantes registrados del partido";
                }
            }

            return(status);
        }