Пример #1
0
        private void frmAgregarNominaPension_Load(object sender, EventArgs e)
        {
            List <nominew> listanominew = new dbaseORM().queryForList <nominew>($"select * from nominas_catalogos.nominew where jpp = 'PEA' and numjpp={txtnumemp} and tipo_nomina = 'N' order by jpp,numjpp,clave,secuen");

            foreach (pension_alimenticia item in this.lista)
            {
                cmb1.Items.Add(item.jpp + item.numjpp.ToString());
            }

            if (this.listamodificar != null)
            {
                foreach (pension_alimenticia item in this.listamodificar)
                {
                    bool encontrado = listanominew.Any(o => o.id == item.id_enlacepea);
                    if (encontrado)
                    {
                        nominew actual   = listanominew.Where <nominew>(o => o.id == item.id_enlacepea).First();
                        int     posicion = dtgridp.Rows.Add("34", actual.secuen, "PENSION ALIM", item.total, item.id_enlace, item.id_enlacepea, item.id);
                        dtgridp.Rows[posicion].DefaultCellStyle.BackColor = Color.FromArgb(249, 199, 29);
                    }
                    else
                    {
                        int posicion = dtgridp.Rows.Add("34", dtgridp.Rows.Count + 1, "PENSION ALIM", item.total, item.id_enlace, item.id_enlacepea, item.id);
                        dtgridp.Rows[posicion].DefaultCellStyle.BackColor = Color.FromArgb(249, 199, 29);

                        //Parte de moficar
                        nominew percepcion = new nominew();
                        percepcion.jpp         = "PEA";
                        percepcion.numjpp      = globales.convertInt(this.txtnumemp);
                        percepcion.clave       = 34;
                        percepcion.descri      = "PENSION ALIM.";
                        percepcion.monto       = item.total;
                        percepcion.secuen      = dtgridp.Rows.Count + 1;
                        percepcion.tipopago    = "N";
                        percepcion.tipo_nomina = "N";
                        percepcion.leyen       = $"{item.jpp}{item.numjpp} {item.descuento}%";

                        listaEnviar.Add(percepcion);



                        int cantidad = 0;

                        nominew deduccion = new nominew();
                        deduccion.jpp         = item.jpp;
                        deduccion.numjpp      = item.numjpp;
                        deduccion.clave       = 217;
                        deduccion.descri      = "DESC.JUD.X POR.";
                        deduccion.monto       = item.total;
                        deduccion.secuen      = cantidad + 1;
                        deduccion.tipopago    = "N";
                        deduccion.tipo_nomina = "N";
                        deduccion.leyen       = $"PEA{this.txtnumemp} {item.descuento}%";

                        listaEnviar.Add(deduccion);
                    }
                }
            }

            if (this.listaeliminar != null)
            {
                foreach (pension_alimenticia item in listaeliminar)
                {
                    bool encontrado = listanominew.Any(o => o.id == item.id_enlacepea);
                    if (encontrado)
                    {
                        nominew actual   = listanominew.Where <nominew>(o => o.id == item.id_enlacepea).First();;
                        int     posicion = dtgridp.Rows.Add("34", actual.secuen, "PENSION ALIM", item.total, item.id_enlace, item.id_enlacepea, item.id, 1);
                        dtgridp.Rows[posicion].DefaultCellStyle.BackColor = Color.FromArgb(249, 59, 29);
                    }
                    else
                    {
                        int posicion = dtgridp.Rows.Add("34", "0", "PENSION ALIM", item.total, item.id_enlace, item.id_enlacepea, item.id, 1);
                        dtgridp.Rows[posicion].DefaultCellStyle.BackColor = Color.FromArgb(249, 59, 29);
                    }
                }
            }

            label1.Text = "Percepciones PEA" + this.txtnumemp;
        }
Пример #2
0
        private void btnguardar_Click(object sender, EventArgs e)
        {
            DialogResult dialogo = globales.MessageBoxQuestion("¿Deseas agregar y afectar nomina con estos cambios?", "Aviso", this);

            if (dialogo == DialogResult.Yes)
            {
                if (this.listaeliminar == null)
                {
                    List <nominew> res = new dbaseORM().insertAll <nominew>(listaEnviar, true);

                    string query = $"select * from nominas_catalogos.pension_alimenticia where numpea = {txtnumemp} and id_enlace = 0";
                    this.lista = new dbaseORM().queryForList <pension_alimenticia>(query);

                    foreach (pension_alimenticia item in this.lista)
                    {
                        nominew nomi = res.Where(o => o.jpp == item.jpp && o.numjpp == item.numjpp && o.clave == 217).First();
                        item.id_enlace    = nomi.id;
                        nomi              = res.Where(o => o.numjpp == globales.convertInt(txtnumemp) && o.clave == 34 && o.leyen.Contains($"{item.jpp}{item.numjpp}")).First();
                        item.id_enlacepea = nomi.id;
                    }

                    new dbaseORM().updateAll <pension_alimenticia>(this.lista);

                    globales.MessageBoxSuccess("Datos insertados en la nomina", "Aviso", this);
                }
                else
                {
                    string query = "";
                    foreach (pension_alimenticia item in this.listaeliminar)
                    {
                        query += $"delete from nominas_catalogos.nominew where id = {item.id_enlace};";
                        query += $"delete from nominas_catalogos.nominew where id = {item.id_enlacepea};";
                    }

                    globales.consulta(query);


                    List <nominew> res = new dbaseORM().insertAll <nominew>(this.listaEnviar, true);

                    query = string.Empty;
                    foreach (pension_alimenticia item in listamodificar)
                    {
                        query += $"update nominas_catalogos.nominew set monto = {item.total},leyen = 'PEA{txtnumemp} {item.descuento}%' where id = {item.id_enlace};";
                        query += $"update nominas_catalogos.nominew set monto = {item.total},leyen = '{item.jpp}{item.numjpp} {item.descuento}%' where id = {item.id_enlacepea};";
                    }
                    globales.consulta(query);


                    query      = $"select * from nominas_catalogos.pension_alimenticia where numpea = {txtnumemp} and id_enlace = 0";
                    this.lista = new dbaseORM().queryForList <pension_alimenticia>(query);

                    foreach (pension_alimenticia item in this.lista)
                    {
                        nominew nomi = res.Where(o => o.jpp == item.jpp && o.numjpp == item.numjpp && o.clave == 217).First();
                        item.id_enlace    = nomi.id;
                        nomi              = res.Where(o => o.numjpp == globales.convertInt(txtnumemp) && o.clave == 34 && o.leyen.Contains($"{item.jpp}{item.numjpp}")).First();
                        item.id_enlacepea = nomi.id;
                    }

                    new dbaseORM().updateAll <pension_alimenticia>(this.lista);
                }
                this.Owner.Close();
            }
        }