Example #1
0
        private void btnEnviar_Click(object sender, EventArgs e)
        {
            try
            {
                string  rpta   = "";
                decimal vuelto = Convert.ToDecimal(this.lblVuelto.Text);
                if (vuelto > 0)
                {
                    rpta = NCaja.Insertar(Convert.ToInt32(frmPrincipal.f1.lblIdUsuario.Text), "1", "EGRESO", vuelto, "Vuelto Delivery", "EFECTIVO");
                    if (rpta == "OK")
                    {
                        decimal total    = Convert.ToDecimal(this.lblTotal.Text);
                        decimal subTotal = Decimal.Round(total / 1.18m, 2);
                        decimal igv      = total - subTotal;
                        rpta = NComprobante.Insertar(this.lblTipoComprobante.Text, 1, igv, DateTime.Now, Convert.ToInt32(this.lblIdVenta.Text), "EMITIDA", Convert.ToInt32(this.lblIdCliente.Text),
                                                     total, total, 00.00m, 00.00m, "EFECTIVO", vuelto);
                        if (rpta == "OK")
                        {
                            rpta = NDelivery.Editar(Convert.ToInt32(this.lblIdVenta.Text), "Enviado");
                            if (rpta == "OK")
                            {
                                this.dataDetalle.DataSource = NVenta.mostrarDetalleVenta(Convert.ToInt32(this.lblIdVenta.Text));
                                this.dtDetalleVenta         = NVenta.mostrarDetalleVenta(Convert.ToInt32(this.lblIdVenta.Text));
                                NImprimir_Comprobante.imprimirCom(Convert.ToInt32(this.lblIdVenta.Text), this.lblTipoComprobante.Text, this.lblCliente.Text, this.lblDireccion.Text,
                                                                  this.lblNroDoc.Text, this.lblRepartidos.Text, "D", "DELIVERY", dataDetalle, this.lblDctoInd.Text, "00.00", subTotal.ToString(), igv.ToString(), total.ToString(),
                                                                  total.ToString(), this.lblVuelto.Text, "00.00", "EFECTIVO", "Detallado", "00.00", this.lblTelefono.Text, NAliento.MensajeAliento());
                                this.Facturador(Convert.ToInt32(this.lblIdVenta.Text), dtDetalleVenta);
                                MessageBox.Show("Se registró correctamente");

                                this.Hide();
                            }
                        }
                    }
                }
                else
                {
                    decimal total    = Convert.ToDecimal(this.lblTotal.Text);
                    decimal subTotal = Decimal.Round(total / 1.18m, 2);
                    decimal igv      = total - subTotal;
                    rpta = NComprobante.Insertar(this.lblTipoComprobante.Text, 1, igv, DateTime.Now, Convert.ToInt32(this.lblIdVenta.Text), "EMITIDA", Convert.ToInt32(this.lblIdCliente.Text),
                                                 total, total, 00.00m, 00.00m, "EFECTIVO", vuelto);
                    if (rpta == "OK")
                    {
                        rpta = NDelivery.Editar(Convert.ToInt32(this.lblIdVenta.Text), "Enviado");
                        if (rpta == "OK")
                        {
                            this.dataDetalle.DataSource = NVenta.mostrarDetalleVenta(Convert.ToInt32(this.lblIdVenta.Text));
                            this.dtDetalleVenta         = NVenta.mostrarDetalleVenta(Convert.ToInt32(this.lblIdVenta.Text));
                            NImprimir_Comprobante.imprimirCom(Convert.ToInt32(this.lblIdVenta.Text), this.lblTipoComprobante.Text, this.lblCliente.Text, this.lblDireccion.Text,
                                                              this.lblNroDoc.Text, this.lblRepartidos.Text, "D", "DELIVERY", dataDetalle, this.lblDctoInd.Text, "00.00", subTotal.ToString(), igv.ToString(), total.ToString(),
                                                              total.ToString(), this.lblVuelto.Text, "00.00", "EFECTIVO", "Detallado", "00.00", this.lblTelefono.Text, NAliento.MensajeAliento());
                            this.Facturador(Convert.ToInt32(this.lblIdVenta.Text), dtDetalleVenta);
                            MessageBox.Show("Se registró correctamente");

                            this.Hide();
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("No se completó la operación");
            }
        }
        private void Cobrar()
        {
            decimal efectivo, total, vuelto;

            if (this.txtEfectivo.Text.Trim() == "")
            {
                efectivo = 0;
            }
            else
            {
                efectivo = Convert.ToDecimal(this.txtEfectivo.Text.Trim());
            }
            total = Convert.ToDecimal(this.lblTotal.Text);

            if ((efectivo < total) && (rbEfectivo.Checked == true))
            {
                MessageBox.Show("El efectivo es insuficiente");
                this.txtEfectivo.Focus();
            }
            else
            {
                int?idCliente = null;
                if (this.txtIdCliente.Text != string.Empty)
                {
                    idCliente = Convert.ToInt32(this.txtIdCliente.Text);
                }
                else
                {
                    idCliente = null;
                }

                if (this.txtEfectivo.Text == "" && (this.rbEfectivo.Checked == true || this.rbMixto.Checked == true))
                {
                    MessageBox.Show("El campo efectivo es obligatorio");
                }
                else
                {
                    if (txtVuelto.Text == string.Empty)
                    {
                        vuelto = 00.00m;
                    }
                    else
                    {
                        vuelto = Convert.ToDecimal(this.txtVuelto.Text);
                    }
                    if (verMontosPago() == true)
                    {
                        string rpta = "";
                        this.verFormaPago();
                        if (this.lblBanderaComprobante.Text == "0" || this.lblBanderaComprobante.Text == "1")
                        {
                            string  formaPago = "";
                            decimal pagoEfectivo = 00.00m, pagoTarjeta = 00.00m;
                            if (rbEfectivo.Checked == true)
                            {
                                formaPago    = "EFECTIVO";
                                pagoEfectivo = Convert.ToDecimal(this.lblTotal.Text);
                                pagoTarjeta  = 00.00m;
                            }
                            else if (rbTarjeta.Checked == true)
                            {
                                formaPago    = "TARJETA";
                                pagoEfectivo = 00.00m;
                                pagoTarjeta  = Convert.ToDecimal(this.lblTotal.Text);
                            }
                            else if (rbMixto.Checked == true)
                            {
                                formaPago    = "MIXTO";
                                pagoEfectivo = Convert.ToDecimal(this.txtEfectivo.Text);
                                pagoTarjeta  = Convert.ToDecimal(this.txtTarjeta.Text);
                            }
                            string tipoCompr = "";
                            if (this.lblBanderaComprobante.Text == "0")
                            {
                                tipoCompr = "TICKET";
                            }
                            else if (this.lblBanderaComprobante.Text == "1")
                            {
                                tipoCompr = "BOLETA";
                            }
                            else
                            {
                                tipoCompr = "FACTURA";
                            }
                            rpta = NComprobante.Insertar(tipoCompr, 1, Convert.ToDecimal(this.lblIgv.Text), DateTime.Now, Convert.ToInt32(this.lblIdVenta.Text), "EMITIDA", idCliente,
                                                         Convert.ToDecimal(this.lblTotal.Text), pagoEfectivo, pagoTarjeta, Convert.ToDecimal(this.lblRedondeo.Text), formaPago, vuelto);

                            if (rpta == "OK")
                            {
                                NVenta.EditarVentaD(Convert.ToInt32(this.lblIdVenta.Text));
                                if (insertarCaja() == true)
                                {
                                    MessageBox.Show("Se registró correctamente");
                                    enviarFormaPago();


                                    NImprimir_Comprobante.imprimirCom(Convert.ToInt32(this.lblIdVenta.Text), tipoCompr, this.txtNombre.Text.Trim(), this.txtDireccion.Text.Trim(),
                                                                      this.txtDocumento.Text.Trim(), frmDividirCuenta.f1.lblTrabajador.Text, frmDividirCuenta.f1.lblSalon.Text,
                                                                      frmDividirCuenta.f1.lblMesa.Text, frmDividirCuenta.f1.dgSepara1, this.lblDescuento.Text, this.lblDctoGeneral.Text,
                                                                      this.lblSubTotal.Text, this.lblIgv.Text, this.lblTotal.Text, efectivo1, vuelto1, tarjeta1, formaPago1, modoProd, this.lblRedondeo.Text, "");



                                    this.Facturador(Convert.ToInt32(this.lblIdVenta.Text), frmDividirCuenta.f1.dgSepara1);

                                    this.Limpiar();
                                }
                                this.DeshabilitarCuentas();

                                if (btn1.Enabled == false && btn2.Enabled == false && btn3.Enabled == false && btn4.Enabled == false && btn5.Enabled == false && btn6.Enabled == false)
                                {
                                    NMesa.EditarEstadoMesa(Convert.ToInt32(this.lblIdMesa.Text), "Libre");


                                    frmModuloSalon.f3.limpiarMesas();
                                    frmModuloSalon.f3.mostrarSalones();

                                    this.Hide();
                                    frmDividirCuenta.f1.Hide();
                                    frmVenta.f1.Hide();
                                    frmModuloSalon.f3.tEstado.Enabled = true;
                                }
                            }
                            else
                            {
                                MessageBox.Show(rpta);
                            }
                        }
                        else if (this.lblBanderaComprobante.Text == "2")
                        {
                            if (this.txtIdCliente.Text.Trim() == string.Empty || this.txtDocumento.Text.Trim().Length != 11)
                            {
                                MessageBox.Show("Seleccione un cliente o ingrese un número de RUC válido");
                                return;
                            }
                            else
                            {
                                string  formaPago = "";
                                decimal pagoEfectivo = 00.00m, pagoTarjeta = 00.00m;
                                if (rbEfectivo.Checked == true)
                                {
                                    formaPago    = "EFECTIVO";
                                    pagoEfectivo = Convert.ToDecimal(this.lblTotal.Text);
                                    pagoTarjeta  = 00.00m;
                                }
                                else if (rbTarjeta.Checked == true)
                                {
                                    formaPago    = "TARJETA";
                                    pagoEfectivo = 00.00m;
                                    pagoTarjeta  = Convert.ToDecimal(this.lblTotal.Text);
                                }
                                else if (rbMixto.Checked == true)
                                {
                                    formaPago    = "MIXTO";
                                    pagoEfectivo = Convert.ToDecimal(this.txtEfectivo.Text);
                                    pagoTarjeta  = Convert.ToDecimal(this.txtTarjeta.Text);
                                }
                                rpta = NComprobante.Insertar("FACTURA", 1, Convert.ToDecimal(this.lblIgv.Text), DateTime.Now, Convert.ToInt32(this.lblIdVenta.Text), "EMITIDA", idCliente,
                                                             Convert.ToDecimal(this.lblTotal.Text), efectivo, tarjeta, Convert.ToDecimal(this.lblRedondeo.Text), formaPago, vuelto);

                                if (rpta == "OK")
                                {
                                    NVenta.EditarVentaD(Convert.ToInt32(this.lblIdVenta.Text));
                                    if (insertarCaja() == true)
                                    {
                                        MessageBox.Show("Se registró correctamente");
                                        enviarFormaPago();


                                        NImprimir_Comprobante.imprimirCom(Convert.ToInt32(this.lblIdVenta.Text), "FACTURA", this.txtNombre.Text.Trim(), this.txtDireccion.Text.Trim(),
                                                                          this.txtDocumento.Text.Trim(), frmDividirCuenta.f1.lblTrabajador.Text, frmDividirCuenta.f1.lblSalon.Text,
                                                                          frmDividirCuenta.f1.lblMesa.Text, frmDividirCuenta.f1.dgSepara1, this.lblDescuento.Text, this.lblDctoGeneral.Text,
                                                                          this.lblSubTotal.Text, this.lblIgv.Text, this.lblTotal.Text, efectivo1, vuelto1, tarjeta1, formaPago1, modoProd, this.lblRedondeo.Text, "");


                                        this.Facturador(Convert.ToInt32(this.lblIdVenta.Text), frmDividirCuenta.f1.dgSepara1);

                                        this.Limpiar();
                                    }
                                    this.DeshabilitarCuentas();

                                    if (btn1.Enabled == false && btn2.Enabled == false && btn3.Enabled == false && btn4.Enabled == false && btn5.Enabled == false && btn6.Enabled == false)
                                    {
                                        NMesa.EditarEstadoMesa(Convert.ToInt32(this.lblIdMesa.Text), "Libre");


                                        frmModuloSalon.f3.limpiarMesas();
                                        frmModuloSalon.f3.mostrarSalones();


                                        this.Hide();
                                        frmDividirCuenta.f1.Hide();
                                        frmVenta.f1.Hide();
                                        frmModuloSalon.f3.tEstado.Enabled = true;
                                    }
                                }
                                else
                                {
                                    MessageBox.Show(rpta);
                                }
                            }
                        }
                    }
                }
            }
        }
        private void btnGuardar_Click(object sender, EventArgs e)
        {
            if (cbFormaPago.SelectedIndex == -1)
            {
                MessageBox.Show("Seleccione una forma de pago");
                return;
            }
            else if (txtIdCliente.Text == "")
            {
                MessageBox.Show("Ingrese un cliente");
                return;
            }
            else
            {
                string rpta = NCredito.Insertar(Convert.ToInt32(lblIdVenta.Text), cbFormaPago.SelectedItem.ToString(), txtDetalle.Text.Trim(), "PAGADO");
                if (rpta == "OK")
                {
                    decimal igv = 00.00m, total = 00.00m, subtotal = 00.00m, efectivo = 00.00m;
                    int     idCliente       = Convert.ToInt32(txtIdCliente.Text);
                    string  tipoComprobante = "";

                    total    = Convert.ToDecimal(lblMonto.Text);
                    subtotal = (total) / 1.18m;

                    this.lblSubTotal.Text = string.Format(" {0:#,##0.00}", Convert.ToDouble(subtotal));
                    igv = total - subtotal;
                    this.lblIgv.Text = string.Format(" {0:#,##0.00}", Convert.ToDouble(igv));

                    if (lblBanderaComprobante.Text == "1")
                    {
                        tipoComprobante = "BOLETA";
                    }
                    else
                    {
                        tipoComprobante = "FACTURA";
                    }
                    if (cbFormaPago.SelectedIndex == 0)
                    {
                        efectivo = Convert.ToDecimal(lblMonto.Text);
                    }
                    else
                    {
                        efectivo = 00.00m;
                    }



                    if (lblEstado.Text == "CREDITO-PENDIENTE_NE")
                    {
                        rpta = NComprobante.Insertar(tipoComprobante, 1, Convert.ToDecimal(lblIgv.Text), DateTime.Now, Convert.ToInt32(lblIdVenta.Text), "EMITIDA", idCliente,
                                                     Convert.ToDecimal(lblMonto.Text), efectivo, 00.00m, 00.00m, cbFormaPago.SelectedItem.ToString(), 00.00m);
                        dataDetalle.DataSource = NVenta.reporteDetalleVenta(Convert.ToInt32(this.lblIdVenta.Text));
                        DataTable dtdatos = NVenta.reporteDetalleVenta(Convert.ToInt32(this.lblIdVenta.Text));

                        //DataTable dtdatos= NVenta.reporteDetalleVenta(Convert.ToInt32(this.lblIdVenta.Text));
                        decimal dctoInd = 00.00m;
                        for (int i = 0; i < dataDetalle.Rows.Count; i++)
                        {
                            dctoInd = dctoInd + Convert.ToDecimal(dataDetalle.Rows[i].Cells[4].Value);
                        }
                        NImprimir_Comprobante.imprimirCom(Convert.ToInt32(this.lblIdVenta.Text), tipoComprobante, this.txtNombre.Text.Trim(), this.txtDireccion.Text.Trim(),
                                                          this.txtDocumento.Text.Trim(), "", "", "",
                                                          dataDetalle, dctoInd.ToString(), lblDctoGral.Text, this.lblSubTotal.Text,
                                                          this.lblIgv.Text, lblMonto.Text, efectivo.ToString(), "00.00", "00.00", cbFormaPago.SelectedItem.ToString(),
                                                          "Detallado_Cr", "00.00", "",
                                                          NAliento.MensajeAliento());
                        Facturador(Convert.ToInt32(lblIdVenta.Text), dtdatos);
                    }


                    if (cbFormaPago.SelectedIndex == 0 && cbCaja.Checked == true)
                    {
                        NCaja.Insertar(Convert.ToInt32(frmPrincipal.f1.lblIdUsuario.Text), "1", "Ingreso", Convert.ToDecimal(lblMonto.Text), "VENTA", "EFECTIVO");
                    }
                    else if (cbFormaPago.SelectedIndex == 1)
                    {
                        NCaja.Insertar(Convert.ToInt32(frmPrincipal.f1.lblIdUsuario.Text), "1", "Ingreso", Convert.ToDecimal(lblMonto.Text), "VENTA", "TARJETA");
                    }
                    else
                    {
                        NCaja.Insertar(Convert.ToInt32(frmPrincipal.f1.lblIdUsuario.Text), "1", "Ingreso", Convert.ToDecimal(lblMonto.Text), "VENTA", "TRANSFERENCIA");
                    }
                    MessageBox.Show("Se registró correctamente");
                    NVenta.EditarEstadoVentaCredito_Cortesia("PAGADO-CREDITO", Convert.ToInt32(lblIdVenta.Text));
                    frmCreditosPendientes.f1.Mostrar();
                    frmCreditosPendientes.f1.btnAnular.Enabled = false;
                    frmCreditosPendientes.f1.btnCobrar.Enabled = false;
                    this.Close();
                }
            }
        }