Exemplo n.º 1
0
        private void btnAceptar_Click(object sender, EventArgs e)
        {//botom que modifica el periodo seleccionado y valida que solo exista un único periodo activo
            PeriodoCL oPeriodoCL = new PeriodoCL();
            int       edit       = 0;

            for (int i = 0; i < oPeriodoCL.ObtenerPeriodo().Count(); i++)
            {
                if ((oPeriodoCL.ObtenerPeriodo()[i].estado.Equals("a")) && (txtEstado.Text.Equals("a")) ||
                    (oPeriodoCL.ObtenerPeriodo()[i].estado.Equals("A")) && (txtEstado.Text.Equals("A")))
                {
                    edit = 1;
                }
            }
            if (edit == 0)
            {
                oPeriodoCL.EditarPeriodo(lblIDA.Text, dtpFecha.Text, dtpHoraInicio.Text, dtpHoraFinal.Text, txtEstado.Text);

                if (oPeriodoCL.IsError)
                {
                    MessageBox.Show(oPeriodoCL.ErrorDescripcion, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                else
                {
                    MessageBox.Show("Periodo modificado con éxito", "Información", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
                this.Close();
            }
            else
            {
                MessageBox.Show("Ya existe otro periodo activo", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
        private void btnBuscar_Click(object sender, EventArgs e)
        {//metodo que busca un string elegido por el usuario
            List <Periodo> Periodo = oPeriodoCL.ObtenerPeriodo();

            Periodo = Periodo.Where(x => x.fecha.Contains(txtfiltro.Text)).ToList();
            dtgPeriodo.DataSource = Periodo;

            if (oPeriodoCL.IsError)
            {
                MessageBox.Show(oPeriodoCL.ErrorDescripcion, "Error", MessageBoxButtons.OK, MessageBoxIcon.Stop);
            }
        }
        private void btbVotar_Clicked(object sender, EventArgs e)
        {                                                 //metodo que realiza el voto, valida que se encuentre en un periodo activo y que su computadora
            PeriodoCL      oPeriodoCl  = new PeriodoCL(); //tenga la hora entre el periodo de votacion
            DateTime       fechaActual = DateTime.Now;
            List <Periodo> periodo     = new List <Periodo> {
            };

            periodo = oPeriodoCl.ObtenerPeriodo();
            for (int x = 0; x < periodo.Count; x++)
            {
                if (periodo[x].estado.ToUpper() == "A")
                {
                    string[]      fecha  = periodo[x].fecha.Split(' ');
                    string        dia    = fecha[1];
                    string        mes2   = fecha[3];
                    string        año    = fecha[5];
                    string        Inicio = periodo[x].horaInicio;
                    string        Fin    = periodo[x].horaFinal;
                    int           mes    = 0;
                    List <string> meses  = new List <string> {
                        "enero", "febrero", "marzo", "abril", "mayo", "junio", "julio", "agosto", "septiembre", "octubre", "noviembre", "diciembre"
                    };
                    for (int y = 0; y < meses.Count; y++)
                    {
                        if (meses[y] == mes2.ToLower())
                        {
                            mes = y + 1;
                        }
                    }
                    if (mes < 10)
                    {
                        mes2 = "0" + mes;
                    }
                    else
                    {
                        mes2 = "" + mes;
                    }
                    CultureInfo    culture;
                    DateTimeStyles styles;
                    DateTime       FechaInicio;

                    // Parse a date and time with no styles.
                    culture = CultureInfo.CreateSpecificCulture("en-US");
                    styles  = DateTimeStyles.None;
                    string AMoPM = Inicio.Remove(0, 9);
                    AMoPM = AMoPM.Remove(1, 3);
                    if (AMoPM.ToLower() == "a")
                    {
                        AMoPM = "AM";
                    }
                    else
                    {
                        AMoPM = "PM";
                    }
                    string temp = mes2 + "/" + dia + "/" + año + " " + Inicio.Remove(8, 5) + " " + AMoPM;
                    if (DateTime.TryParse(temp, culture, styles, out FechaInicio))
                    {
                        Console.WriteLine("{0} converted to {1} {2}.", temp, FechaInicio, FechaInicio.Kind);
                    }
                    DateTime fechaFin;
                    // Parse a date and time with no styles.
                    culture = CultureInfo.CreateSpecificCulture("en-US");
                    styles  = DateTimeStyles.None;
                    AMoPM   = Fin.Remove(0, 9);
                    AMoPM   = AMoPM.Remove(1, 3);
                    if (AMoPM.ToLower() == "a")
                    {
                        AMoPM = "AM";
                    }
                    else
                    {
                        AMoPM = "PM";
                    }
                    temp = mes2 + "/" + dia + "/" + año + " " + Fin.Remove(8, 5) + " " + AMoPM;
                    if (DateTime.TryParse(temp, culture, styles, out fechaFin))
                    {
                        Console.WriteLine("{0} converted to {1} {2}.", temp, fechaFin, fechaFin.Kind);
                    }
                    if (fechaActual >= FechaInicio && fechaActual <= fechaFin)
                    {
                        int cont     = 0;
                        int posicion = 0;
                        for (int i = 0; i < partidos.Count(); i++)
                        {
                            if (valor[i] == 1)
                            {
                                cont++;
                                posicion = i;
                            }
                        }
                        if (cont == 1)
                        {
                            VotacionesCL oVotacionesCL = new VotacionesCL();
                            oVotacionesCL.AgregarVotaciones(partidos[posicion], Convert.ToString(valor[posicion]));

                            if (oVotacionesCL.IsError)
                            {
                                MessageBox.Show(oVotacionesCL.ErrorDescripcion, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            }
                            else
                            {
                                MessageBox.Show("Voto agregado con éxito", "Información", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            }
                            this.Close();
                        }
                        else
                        {
                            VotacionesCL oVotacionesCL = new VotacionesCL();
                            oVotacionesCL.AgregarVotaciones("Nulo", "1");

                            if (oVotacionesCL.IsError)
                            {
                                MessageBox.Show(oVotacionesCL.ErrorDescripcion, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            }
                            else
                            {
                                MessageBox.Show("Voto agregado con éxito", "Información", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                this.Close();
                            }
                            this.Close();
                        }
                    }
                    else
                    {
                        MessageBox.Show("No se encuentra en el periodo de votación", "Información", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        this.Close();
                    }
                }
                if (x == periodo.Count - 1)
                {
                    MessageBox.Show("No se encuentra ningún periodo de votacion activo", "Información", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    this.Close();
                }
            }
            frmLogin login = new frmLogin();

            login.Show();
        }