private void Mostrar()
        {
            if (IsNuevo)
            {
                this.dataListado.DataSource = NDescuentoTrabajador.Mostrar(Convert.ToInt32(cbTrabajador.SelectedValue), DateTime.Now.Month.ToString());
                cbTraba.SelectedValue       = cbTrabajador.SelectedValue;
            }
            else
            {
                this.dataListado.DataSource = NDescuentoTrabajador.Mostrar(Convert.ToInt32(cbTraba.SelectedValue), DateTime.Now.Month.ToString());
            }


            lblTotal.Text = "Total de Registros: " + Convert.ToString(dataListado.Rows.Count);

            if (this.dataListado.Rows.Count == 0)
            {
                this.dataListado.Visible = false;
            }
            else
            {
                this.dataListado.Visible = true;
                this.ocultarColumnas();
            }
        }
        private void button1_Click(object sender, EventArgs e)
        {
            int idTrabajador = 0;

            if (cbTrabajador.Checked == true && cbEmpleado.SelectedIndex == -1)
            {
                MessageBox.Show("Seleccione un trabajador");
                return;
            }
            else if (cbTrabajador.Checked == true)
            {
                idTrabajador = Convert.ToInt32(cbEmpleado.SelectedValue);
            }
            else if (cbTrabajador.Checked == false)
            {
                idTrabajador = 0;
            }

            if (cbEstado.SelectedIndex == -1)
            {
                MessageBox.Show("Seleccione un estado");
                return;
            }
            else
            {
                string  fechaInicio = "";
                string  fechaFin    = "";
                decimal totalAd     = 00.00m;
                fechaInicio = dtpFechaInicio.Value.ToString("yyyy-MM-dd" + " 00:00:00");
                fechaFin    = dtpFechaFin.Value.ToString("yyyy-MM-dd" + " 23:59:59");
                this.dataListado.DataSource = NDescuentoTrabajador.reporteDctos(Convert.ToDateTime(fechaInicio), Convert.ToDateTime(fechaFin), cbEstado.Text, idTrabajador);

                //lblCant.Text = totalCan.ToString();
                lblTotal.Text = "Total de Registros: " + Convert.ToString(dataListado.Rows.Count);

                if (this.dataListado.Rows.Count == 0)
                {
                    this.dataListado.Visible = false;

                    btnImprimir.Enabled = false;
                    //ocultarColumnas();
                }
                else
                {
                    decimal montoTotal = 00.00m;
                    for (int i = 0; i < dataListado.Rows.Count; i++)
                    {
                        montoTotal = montoTotal + Convert.ToDecimal(dataListado.Rows[i].Cells[3].Value);
                    }
                    lblSumaTotal.Text        = montoTotal.ToString();
                    this.dataListado.Visible = true;
                    btnImprimir.Enabled      = true;
                    ocultarColumnas();
                }
            }
        }
 public void mostrarDctos()
 {
     this.dataListadoDcto.DataSource = NDescuentoTrabajador.Mostrar(Convert.ToInt32(lblIdTrabajador.Text));
     if (dataListadoDcto.Rows.Count > 0)
     {
         ocultarColumnasDcto();
         dataListadoDcto.Visible = true;
     }
     else
     {
         txtDctos.Text = "00.00";
     }
 }
        private void btnEliminar_Click(object sender, EventArgs e)
        {
            try
            {
                DialogResult opcion;
                opcion = MessageBox.Show("Está seguro de eliminar los registros?", "Sistema de Ventas", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);

                if (opcion == DialogResult.OK)
                {
                    string codigo;
                    string rpta = "";

                    foreach (DataGridViewRow row in dataListado.Rows)
                    {
                        if (Convert.ToBoolean(row.Cells[0].Value))
                        {
                            codigo = Convert.ToString(row.Cells[1].Value);
                            rpta   = NDescuentoTrabajador.Eliminar(Convert.ToInt32(codigo));
                        }
                    }

                    if (rpta.Equals("OK"))
                    {
                        Mostrar();
                    }
                    else
                    {
                        this.MensajeError(rpta);
                    }

                    this.Limpiar();
                    this.btnEliminar.Enabled = false;
                    this.btnCancelar.Enabled = false;
                    cbEliminar.Checked       = false;
                    btnNuevo.Enabled         = true;
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message + ex.StackTrace);
            }
        }
        private void btnGuardar_Click(object sender, EventArgs e)
        {
            if (txtMontoPagado.Text.Trim().Length != 0)
            {
                decimal dctos = Convert.ToDecimal(txtDctos.Text);
                decimal adelanto = Convert.ToDecimal(txtAdelantos.Text);
                decimal diasTrabajados = Convert.ToDecimal(txtDiasTrabajados.Text);
                decimal montoPagado = Convert.ToDecimal(txtMontoPagado.Text);
                int     factorDias = Convert.ToInt32(cbFactor.SelectedItem.ToString());
                decimal montoOtrosDctos = 00.00m, pagosExtras = 00.00m;
                string  caja = "";
                if (cbCaja.Checked == true)
                {
                    caja = "SI";
                }
                else
                {
                    caja = "NO";
                }
                if (txtOtrosDctos.Text.Trim().Length == 0)
                {
                    montoOtrosDctos = 00.00m;
                }
                else
                {
                    montoOtrosDctos = Convert.ToDecimal(txtOtrosDctos.Text);
                }

                if (txtPagosExtras.Text.Trim().Length == 0)
                {
                    pagosExtras = 00.00m;
                }
                else
                {
                    pagosExtras = Convert.ToDecimal(txtPagosExtras.Text);
                }

                string rpta = "";
                rpta = NPagoTrabajador.Insertar(Convert.ToInt32(lblIdTrabajador.Text), montoPagado, dctos, adelanto, pagosExtras, montoOtrosDctos, DateTime.Now, txtObs.Text.Trim(),
                                                "PAGADO", diasTrabajados, factorDias, caja);
                if (rpta == "OK")
                {
                    if (caja == "SI")
                    {
                        NCaja.Insertar(Convert.ToInt32(frmPrincipal.f1.lblIdUsuario.Text), "1", "EGRESO", montoPagado, "PAGO A TRABAJADOR " + txtTrabajador.Text, "EFECTIVO");
                    }


                    if (dataListadoAdelanto.Rows.Count > 0)
                    {
                        for (int a = 0; a < dataListadoAdelanto.Rows.Count; a++)
                        {
                            NAdelanto.EditarEstado("PAGADO", Convert.ToInt32(dataListadoAdelanto.Rows[a].Cells[0].Value));
                        }
                    }
                    if (dataListadoDcto.Rows.Count > 0)
                    {
                        for (int a = 0; a < dataListadoDcto.Rows.Count; a++)
                        {
                            NDescuentoTrabajador.EditarEstado("PAGADO", Convert.ToInt32(dataListadoDcto.Rows[a].Cells[0].Value));
                        }
                    }
                    NImprimirRecibos.imprimirPagoTrabajador(txtTrabajador.Text, txtSueldo.Text, txtDiasTrabajados.Text, txtMontoBruto.Text, pagosExtras.ToString(), txtDctos.Text,
                                                            txtAdelantos.Text, montoOtrosDctos.ToString(), txtMontoPagado.Text);
                    Limpiar();
                }
            }
        }
        private void Guardar()
        {
            try
            {
                string rpta = "";
                if (this.txtMonto.Text.Trim() == string.Empty)
                {
                    MensajeError("Ingrese el motivo del descuento");
                    errorIcono.SetError(txtMotivo, "Ingrese el motivo");
                }
                else if (this.txtMonto.Text.Trim() == string.Empty)
                {
                    MensajeError("Ingrese el monto del descuento");
                    errorIcono.SetError(txtMonto, "Ingrese el monto");
                }
                else if (cbTrabajador.SelectedIndex == -1)
                {
                    MensajeError("Seleccione un trabajador");
                    errorIcono.SetError(cbTrabajador, "Seleccione un trabajador");
                }
                else
                {
                    if (this.IsNuevo)
                    {
                        rpta = NDescuentoTrabajador.Insertar(Convert.ToInt32(cbTrabajador.SelectedValue.ToString()), Convert.ToDecimal(txtMonto.Text),
                                                             txtMotivo.Text.Trim(), DateTime.Now, "PENDIENTE", "");
                    }
                    else
                    {
                        rpta = NDescuentoTrabajador.Editar(Convert.ToInt32(txtIdDescuentoTrab.Text), Convert.ToInt32(cbTrabajador.SelectedValue.ToString()), Convert.ToDecimal(txtMonto.Text),
                                                           txtMotivo.Text.Trim(), DateTime.Now, "PENDIENTE");
                    }

                    if (rpta.Equals("OK"))
                    {
                        if (this.IsNuevo)
                        {
                            this.MensajeOK("Se insertó correctamente");
                            Mostrar();
                        }
                        else
                        {
                            this.MensajeOK("Se actualizó correctamente");
                            Mostrar();
                        }
                    }
                    else
                    {
                        this.MensajeError(rpta);
                    }

                    this.IsNuevo  = false;
                    this.IsEditar = false;
                    this.Botones();
                    this.Limpiar();
                    // this.Mostrar();
                    this.tbInfo.SelectedIndex = 0;
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message + ex.StackTrace);
            }
        }