Example #1
0
        private void GuardarActualJson()
        {
            string consultaActual = FrmResultadosEncuestaSueldosIT.consultaActual;

            if (string.IsNullOrEmpty(consultaActual))
            {
                MessageBox.Show("Aun no realizó ninguna consulta.");
            }
            else
            {
                Xml json = new Xml();
                json.GuardarDatos(ConexionDB.TraeResultadoEncuestas(ConsultasDB.DevuelveStringConsultaBasicaADB(consultaActual)));

                Task.Run(() =>
                {
                    if (this.pgbXmlConsultaActual.InvokeRequired)
                    {
                        this.pgbXmlConsultaActual.BeginInvoke((MethodInvoker) delegate()
                        {
                            CargarProgresBarJsonConsultaActual();
                        });
                    }
                });
            }
        }
        private void button1_Click(object sender, EventArgs e)
        {
            string aux = DevuelveStringConsultaDBSegunCheckedBoxesSeleccionados();

            dgDatos.DataSource = null;
            dgDatos.DataSource = ConexionDB.TraeResultadoEncuestas(ConsultasDB.DevuelveStringConsultaBasicaADB(aux));

            int cantegistrosUltimaConsulta = ConsultasDB.CuentaRegistrosDeUnaConsulta(aux);
            int cantRegistrosTotal         = ConsultasDB.CuentaRegistrosDeUnaConsulta();

            float porcentaje = Encuesta.CalculoPorcentaje(cantegistrosUltimaConsulta, cantRegistrosTotal);

            lblTotal.Text = $"{cantRegistrosTotal}";
            int promedioSueldoTotal = (int)ConsultasDB.PromedioSueldoDeLaConsulta();

            lblPromedioTotal.Text = promedioSueldoTotal.ToString();

            lblTotalConsulta.Text = cantegistrosUltimaConsulta.ToString();
            int promedioSueldoConsulta = (int)ConsultasDB.PromedioSueldoDeLaConsulta(aux);

            lblPromedioConsulta.Text = promedioSueldoConsulta.ToString();
            lblPorcentaje.Text       = $"{porcentaje}%";

            consultaActual = aux;
        }
        private void btnFiltrar_Click(object sender, EventArgs e)
        {
            //Consulta que se hará a la DB
            string aux = DevuelveStringConsultaDBSegunCheckedBoxesSeleccionados();

            //variables auxiliares
            int   cantegistrosUltimaConsulta = ConsultasDB.CuentaRegistrosDeUnaConsulta(aux);
            int   cantRegistrosTotal         = ConsultasDB.CuentaRegistrosDeUnaConsulta();
            float porcentaje = Encuesta.CalculoPorcentaje(cantegistrosUltimaConsulta, cantRegistrosTotal);

            //carga chart pie
            CargaChartPie(cantegistrosUltimaConsulta, cantRegistrosTotal);

            //Completa datagrid
            dgDatos.DataSource = null;
            dgDatos.DataSource = ConexionDB.TraeResultadoEncuestas(ConsultasDB.DevuelveStringConsultaBasicaADB(aux));


            //Calculo total de encuestas
            lblTotal.Text = $"{cantRegistrosTotal}";
            int promedioSueldoTotal = (int)ConsultasDB.PromedioSueldoDeLaConsulta();

            lblPromedioTotal.Text = $"${promedioSueldoTotal.ToString()}";

            //Calculo total por consulta
            lblTotalConsulta.Text = cantegistrosUltimaConsulta.ToString();
            int promedioSueldoConsulta = (int)ConsultasDB.PromedioSueldoDeLaConsulta(aux);

            lblPromedioConsulta.Text = $"${promedioSueldoConsulta.ToString()}";
            lblPorcentaje.Text       = $"{porcentaje}%";

            //Calculo cantidad por genero
            lblCantidadMujeresConsulta.Text = ConsultasDB.CuentaRegistrosDeUnaConsulta(aux, " and SE_IDENTIFICA LIKE 'Mujer'").ToString();
            lblCantidadVaronesConsulta.Text = ConsultasDB.CuentaRegistrosDeUnaConsulta(aux, "and SE_IDENTIFICA LIKE 'Hombre'").ToString();
            lblCantidadOtroConsulta.Text    = ConsultasDB.CuentaRegistrosDeUnaConsulta(aux, "and SE_IDENTIFICA LIKE 'Otro'").ToString();

            //Calculo porcentaje por genero
            lblPorcentajeMujeres.Text = $"{Encuesta.CalculoPorcentaje(ConsultasDB.CuentaRegistrosDeUnaConsulta(aux, " and SE_IDENTIFICA LIKE 'Mujer'"), cantRegistrosTotal).ToString()} %";
            lblPorcentajeVarones.Text = $"{Encuesta.CalculoPorcentaje(ConsultasDB.CuentaRegistrosDeUnaConsulta(aux, " and SE_IDENTIFICA LIKE 'Hombre'"), cantRegistrosTotal).ToString()} %";
            lblPorcentajeOtros.Text   = $"{Encuesta.CalculoPorcentaje(ConsultasDB.CuentaRegistrosDeUnaConsulta(aux, " and SE_IDENTIFICA LIKE 'Otro'"), cantRegistrosTotal).ToString()} %";

            //Calculo sueldo promedio por genero
            mujeres = (int)ConsultasDB.PromedioSueldoDeLaConsulta(aux + " and SE_IDENTIFICA LIKE 'Mujer'");
            lblSueldoPromedioMujeres.Text = $"$ {mujeres}";
            hombres = (int)ConsultasDB.PromedioSueldoDeLaConsulta(aux + " and SE_IDENTIFICA LIKE 'Hombre'");
            lblSueldoPromedioVarones.Text = $"$ {hombres}";
            otros = (int)ConsultasDB.PromedioSueldoDeLaConsulta(aux + " and SE_IDENTIFICA LIKE 'Otro'");
            lblSueldoPromedioOtros.Text = $"$ {otros}";

            //Calculo brecha salarial
            string quienGanaMas = CalculoEstadistica.MayorSueldo(hombres, mujeres, otros);
            int    diferencia1  = 0;
            int    diferencia2  = 0;

            if (quienGanaMas == "Hombres")
            {
                diferencia1            = CalculoEstadistica.CalculoDiferenciaDeMontos(hombres, mujeres);
                diferencia2            = CalculoEstadistica.CalculoDiferenciaDeMontos(hombres, otros);
                lblBrechaSalarial.Text = $"En este caso los varones ganan en promedio  $ {diferencia1} más que las mujeres y $ {diferencia2} más que quienes se identifican con otro género.";
            }

            else if (quienGanaMas == "Mujeres")
            {
                diferencia1            = CalculoEstadistica.CalculoDiferenciaDeMontos(mujeres, hombres);
                diferencia2            = CalculoEstadistica.CalculoDiferenciaDeMontos(mujeres, otros);
                lblBrechaSalarial.Text = $"En este caso las mujeres ganan en promedio  $ {diferencia1} más que los varones y $ {diferencia2} más que quienes se identifican con otro género.";
            }

            else if (quienGanaMas == "Otros")
            {
                diferencia1            = CalculoEstadistica.CalculoDiferenciaDeMontos(otros, hombres);
                diferencia2            = CalculoEstadistica.CalculoDiferenciaDeMontos(otros, mujeres);
                lblBrechaSalarial.Text = $"En este caso quienes se identifican con otro genero ganan $ {diferencia1} más que los varones y $ {diferencia2} que las mujeres.";
            }
            CargarChartBarras(hombres, mujeres, otros);

            consultaActual = aux;
        }