Example #1
0
        void da_OnCantidad(decimal cantidad)
        {
            cnx = new SqlConnection(cdn);
            cmd = new SqlCommand();
            cmd.Connection = cnx;

            CalculoNomina.Core.NominaHelper nh = new CalculoNomina.Core.NominaHelper();
            nh.Command = cmd;

            Conceptos.Core.ConceptosHelper ch = new Conceptos.Core.ConceptosHelper();
            ch.Command = cmd;

            Conceptos.Core.Conceptos concepto = new Conceptos.Core.Conceptos();
            concepto.noconcepto = 2; //HORAS EXTRAS DOBLES
            concepto.idempresa = GLOBALES.IDEMPRESA;

            cnx.Open();
            string formulaexento = ch.obtenerFormulaExento(concepto).ToString();
            cnx.Close();

            CalculoFormula cf = new CalculoFormula(idTrabajador, _inicioPeriodo, _finPeriodo, formulaexento);
            decimal exento = decimal.Parse(cf.calcularFormula().ToString());

            decimal gravado = 0;
            if (cantidad <= exento)
            {
                exento = cantidad;
                gravado = 0;
            }
            else
            {
                gravado = cantidad - exento;
            }

            CalculoNomina.Core.tmpPagoNomina hora = new CalculoNomina.Core.tmpPagoNomina();
            hora.idempresa = GLOBALES.IDEMPRESA;
            hora.idtrabajador = idTrabajador;
            hora.noconcepto = 2; //CONCEPTO HORAS EXTRAS DOBLES
            hora.fechainicio = _inicioPeriodo.Date;
            hora.fechafin = _finPeriodo.Date;
            hora.cantidad = cantidad;
            hora.exento = exento;
            hora.gravado = gravado;
            hora.modificado = true;
            try
            {
                cnx.Open();
                nh.actualizaHorasExtrasDespensa(hora);
                cnx.Close();
                cnx.Dispose();

                muestraDatos();
            }
            catch (Exception error)
            {
                MessageBox.Show("Error: \r\n \r\n" + error.Message, "Error");
            }
        }
Example #2
0
        void da_OnDespensa(decimal cantidad)
        {
            cnx = new SqlConnection(cdn);
            cmd = new SqlCommand();
            cmd.Connection = cnx;

            CalculoNomina.Core.NominaHelper nh = new CalculoNomina.Core.NominaHelper();
            nh.Command = cmd;

            CalculoNomina.Core.tmpPagoNomina despensa = new CalculoNomina.Core.tmpPagoNomina();
            despensa.idempresa = GLOBALES.IDEMPRESA;
            despensa.idtrabajador = idTrabajador;
            despensa.noconcepto = 6; //CONCEPTO DESPENSA
            despensa.fechainicio = _inicioPeriodo.Date;
            despensa.fechafin = _finPeriodo.Date;
            despensa.cantidad = cantidad;
            despensa.exento = 0;
            despensa.gravado = cantidad;
            despensa.modificado = true;
            try
            {
                cnx.Open();
                nh.actualizaHorasExtrasDespensa(despensa);
                cnx.Close();
                cnx.Dispose();

                muestraDatos();
            }
            catch (Exception error)
            {
                MessageBox.Show("Error: \r\n \r\n" + error.Message, "Error");
            }
        }
        private void dgvEmpleados_CellValueChanged(object sender, DataGridViewCellEventArgs e)
        {
            if (lstValoresNomina == null)
                return;

            cnx = new SqlConnection(cdn);
            cmd.Connection = cnx;

            if (dgvEmpleados.Columns[e.ColumnIndex].Name == "horas")
            {
                for (int i = 0; i < lstValoresNomina.Count(); i++)
                {
                    if (int.Parse(dgvEmpleados.Rows[e.RowIndex].Cells["idtrabajador"].Value.ToString()) == lstValoresNomina[i].idtrabajador && lstValoresNomina[i].noconcepto == 2)
                    {
                        nh = new CalculoNomina.Core.NominaHelper();
                        nh.Command = cmd;

                        Conceptos.Core.ConceptosHelper ch = new Conceptos.Core.ConceptosHelper();
                        ch.Command = cmd;

                        Conceptos.Core.Conceptos concepto = new Conceptos.Core.Conceptos();
                        concepto.noconcepto = 2;
                        concepto.idempresa = GLOBALES.IDEMPRESA;

                        cnx.Open();
                        string formulaexento = ch.obtenerFormulaExento(concepto).ToString();
                        cnx.Close();

                        CalculoFormula cf = new CalculoFormula(lstValoresNomina[i].idtrabajador, periodoInicio.Date, periodoFin.Date, formulaexento);
                        decimal exento = decimal.Parse(cf.calcularFormula().ToString());
                        decimal cantidad = decimal.Parse(dgvEmpleados.Rows[e.RowIndex].Cells["horas"].Value.ToString());
                        decimal gravado = 0;

                        if (cantidad <= exento)
                        {
                            exento = cantidad;
                            gravado = 0;
                        }
                        else
                        {
                            gravado = cantidad - exento;
                        }

                        CalculoNomina.Core.tmpPagoNomina hora = new CalculoNomina.Core.tmpPagoNomina();
                        hora.idempresa = GLOBALES.IDEMPRESA;
                        hora.idtrabajador = int.Parse(dgvEmpleados.Rows[e.RowIndex].Cells["idtrabajador"].Value.ToString());
                        hora.noconcepto = 2; //CONCEPTO HORAS EXTRAS DOBLES
                        hora.fechainicio = periodoInicio.Date;
                        hora.fechafin = periodoFin.Date;
                        hora.cantidad = cantidad;
                        hora.exento = exento;
                        hora.gravado = gravado;
                        hora.modificado = true;
                        try
                        {
                            cnx.Open();
                            nh.actualizaHorasExtrasDespensa(hora);
                            cnx.Close();
                        }
                        catch (Exception error)
                        {
                            MessageBox.Show("Error: \r\n \r\n" + error.Message, "Error");
                        }
                    }
                }
            }

            if (dgvEmpleados.Columns[e.ColumnIndex].Name == "despensa")
            {
                for (int i = 0; i < lstValoresNomina.Count(); i++)
                {
                    if (int.Parse(dgvEmpleados.Rows[e.RowIndex].Cells["idtrabajador"].Value.ToString()) == lstValoresNomina[i].idtrabajador && lstValoresNomina[i].noconcepto == 6)
                    {
                        nh = new CalculoNomina.Core.NominaHelper();
                        nh.Command = cmd;
                        lstValoresNomina[i].cantidad = decimal.Parse(dgvEmpleados.Rows[e.RowIndex].Cells["despensa"].Value.ToString());
                        lstValoresNomina[i].gravado = decimal.Parse(dgvEmpleados.Rows[e.RowIndex].Cells["despensa"].Value.ToString());
                        CalculoNomina.Core.tmpPagoNomina despensa = new CalculoNomina.Core.tmpPagoNomina();
                        despensa.idempresa = GLOBALES.IDEMPRESA;
                        despensa.idtrabajador = int.Parse(dgvEmpleados.Rows[e.RowIndex].Cells["idtrabajador"].Value.ToString());
                        despensa.noconcepto = 6; //CONCEPTO DESPENSA
                        despensa.fechainicio = periodoInicio.Date;
                        despensa.fechafin = periodoFin.Date;
                        despensa.cantidad = lstValoresNomina[i].cantidad;
                        despensa.gravado = lstValoresNomina[i].gravado;
                        despensa.modificado = true;
                        try
                        {
                            cnx.Open();
                            nh.actualizaHorasExtrasDespensa(despensa);
                            cnx.Close();
                        }
                        catch (Exception error)
                        {
                            MessageBox.Show("Error: \r\n \r\n" + error.Message, "Error");
                        }
                    }
                }
            }
        }