private void buttonAnular_Click(object sender, EventArgs e) { if (checkForErrors()) { objetoFactura.cancel(factura); if (!checkBoxRefacturar.Checked) { objetoEgreso.cancel(egreso); detalleDeEgreso.ID_EGRESO = egreso.ID; objetoDetalleDeEgreso.cancel(detalleDeEgreso); if (objetoEgreso.isClosed(egreso)) { DevolucionBss objetoDevolucion = new DevolucionBss(); DevolucionEnt devolucion = new DevolucionEnt(); devolucion.ID_USUARIO = SesionEnt.idUsuario; devolucion.ID_CAJA = SesionEnt.idCaja; devolucion.ID_APERTURA_DE_CAJA = aperturaDeCaja.ID; devolucion.ID_EGRESO = egreso.ID; devolucion.HORA = DateTime.Now.ToString("T"); devolucion.MONTO = 0 - egreso.MONTO; objetoDevolucion.add(devolucion); } } else { Venta.Modificar formModificarVenta = new Venta.Modificar(egreso.ID); formModificarVenta.MdiParent = this.MdiParent; this.Close(); formModificarVenta.Show(); } } }
private void buttonGuardar_Click(object sender, EventArgs e) { if (checkForErrors()) { if (Convert.ToDecimal(textBoxMontoTotal.Text) < 5) { egreso.TIPO = "VENTA MENOR"; egreso.FACTURADO = false; } else if (checkBoxFacturaManual.Checked) { egreso.TIPO = "FACTURA MANUAL"; egreso.FACTURADO = true; } else { egreso.TIPO = "FACTURA SISTEMA"; egreso.FACTURADO = true; } egreso.METODO_DE_PAGO = "CONTADO"; egreso.MONTO = Convert.ToDecimal(textBoxMontoTotal.Text); egreso.MONTO_PAGADO = Convert.ToDecimal(textBoxMontoPagado.Text); egreso.CAMBIO = Convert.ToDecimal(textBoxCambio.Text); egreso.OBSERVACIONES = ""; egreso.ESTADO = "VIGENTE"; objetoEgreso.update(egreso); foreach(DetalleDeEgresoEnt invoiceLine in invoiceLinesDeleted) { objetoDetalleDeEgreso.delete(invoiceLine); } for (int rowIndex = 0; rowIndex < dataGridViewDetalleDeVenta.Rows.Count; rowIndex++) { detalleDeEgreso = new DetalleDeEgresoEnt(); detalleDeEgreso.ID = Convert.ToInt32(dataGridViewDetalleDeVenta["Id", rowIndex].Value); detalleDeEgreso.ID_EGRESO = egreso.ID; detalleDeEgreso.ID_PRODUCTO = Convert.ToInt32(dataGridViewDetalleDeVenta["Id_Producto", rowIndex].Value); detalleDeEgreso.CANTIDAD = Convert.ToDecimal(dataGridViewDetalleDeVenta["Cantidad", rowIndex].Value); detalleDeEgreso.PRECIO_UNITARIO = Convert.ToDecimal(dataGridViewDetalleDeVenta["Precio_Unitario", rowIndex].Value); detalleDeEgreso.MONTO_TOTAL = Convert.ToDecimal(dataGridViewDetalleDeVenta["Monto_Total", rowIndex].Value); detalleDeEgreso.ESTADO = "VIGENTE"; if (detalleDeEgreso.ID == 0) { objetoDetalleDeEgreso.add(detalleDeEgreso); } else { objetoDetalleDeEgreso.update(detalleDeEgreso); } } if (objetoEgreso.isClosed(egreso) && egreso.MONTO != originalAmount) { DevolucionBss objetoDevolucion = new DevolucionBss(); DevolucionEnt devolucion = new DevolucionEnt(); devolucion.ID_USUARIO = SesionEnt.idUsuario; devolucion.ID_CAJA = SesionEnt.idCaja; devolucion.ID_APERTURA_DE_CAJA = aperturaDeCaja.ID; devolucion.ID_EGRESO = egreso.ID; devolucion.HORA = DateTime.Now.ToString("T"); devolucion.MONTO = originalAmount - egreso.MONTO; objetoDevolucion.add(devolucion); } MessageBox.Show("Los datos fueron guardados correctamente", "OperaciĆ³n Exitosa", MessageBoxButtons.OK, MessageBoxIcon.Information); if (egreso.TIPO == "FACTURA SISTEMA") { dosificacion.ID_SUCURSAL = 1; DataTable dataTableDosificacion = objetoDosificacion.select(dosificacion); dosificacion.ID = Convert.ToInt32(dataTableDosificacion.Rows[0]["Id"]); dosificacion.NUMERO_DE_AUTORIZACION = dataTableDosificacion.Rows[0]["Numero_De_Autorizacion"].ToString(); factura.LLAVE = @dataTableDosificacion.Rows[0]["Llave"].ToString(); factura.ID_USUARIO = SesionEnt.idUsuario; factura.ID_CAJA = SesionEnt.idCaja; factura.ID_APERTURA_DE_CAJA = aperturaDeCaja.ID; factura.ID_EGRESO = egreso.ID; factura.ID_CLIENTE = egreso.ID_CLIENTE; factura.ID_DOSIFICACION = dosificacion.ID; factura.NUMERO_DE_AUTORIZACION = dosificacion.NUMERO_DE_AUTORIZACION; factura.NUMERO_DE_AUTORIZACION_AUXILIAR = dosificacion.NUMERO_DE_AUTORIZACION; factura.CI_O_NIT = textBoxCiONit.Text.Trim(); factura.CI_O_NIT_AUXILIAR = factura.CI_O_NIT; factura.CLIENTE = textBoxCliente.Text.Trim().ToUpper(); factura.FECHA = DateTime.Today.ToShortDateString(); factura.FECHA_AUXILIAR = DateTime.Today.ToString("yyyyMMdd"); factura.HORA = DateTime.Now.ToLongTimeString(); factura.MONTO = egreso.MONTO; factura.MONTO_AUXILIAR = decimal.Round(factura.MONTO, 0).ToString(); factura.MONTO_PAGADO = egreso.MONTO_PAGADO; factura.CAMBIO = egreso.CAMBIO; for (int rowIndex = 0; rowIndex < dataGridViewDetalleDeVenta.Rows.Count; rowIndex++) { detalleDeFactura = new DetalleDeFacturaEnt(); detalleDeFactura.ID_PRODUCTO = Convert.ToInt32(dataGridViewDetalleDeVenta["Id_Producto", rowIndex].Value); detalleDeFactura.DETALLE = dataGridViewDetalleDeVenta["Alias", rowIndex].Value.ToString(); detalleDeFactura.CANTIDAD = Convert.ToDecimal(dataGridViewDetalleDeVenta["Cantidad", rowIndex].Value); detalleDeFactura.IMPORTE = Convert.ToDecimal(dataGridViewDetalleDeVenta["Monto_Total", rowIndex].Value); objetoFactura.addDetalle(detalleDeFactura); } factura.ID = objetoFactura.add(factura); factura.NUMERO = objetoFactura.getNumber(factura); factura.NUMERO_AUXILIAR = factura.NUMERO.ToString(); factura.CODIGO_DE_CONTROL = objetoFactura.getControlCode(factura); objetoFactura.updateControlCode(factura); objetoEgreso.updateFacturadoById(egreso); detalleDeFactura.ID_FACTURA = factura.ID; if (SesionEnt.printerEnabled) { printInvoice(objetoFactura.getById(factura), objetoDetalleDeFactura.obtainById(detalleDeFactura)); } else { MessageBox.Show("La impresora se halla deshabilidada. No se imprimiĆ³ la factura.", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } this.Close(); } }