private void BtnAceptar_Click(object sender, EventArgs e) { if (!Ambiente.LoggedUser.Facturar) { Ambiente.Mensaje("Operacion denegada. No tienes permiso para operar esta vista."); return; } if (venta == null) { Ambiente.Mensaje("Proceso abortado, no se encontró ninguna ticket seleccionado"); return; } //Si no seleccionó otro cliente, se recupera el de la venta if (cliente == null) { cliente = clienteController.SelectOne(venta.ClienteId); } //verificar que no sea pago con puntos if (venta.PuntosAplicados || venta.DescXpuntos > 0) { Ambiente.Mensaje("Proceso abortado, el documento se cobró con puntos."); return; } //valida rfc if (Ambiente.RFCvalido(cliente.Rfc)) { //Anula el ticket y crea la venta factura (sin timbrar) if (ClonarVenta()) { var oCFDI = new CFDI(); oCFDI.Venta = venta; //Timbra la venta if (oCFDI.Facturar()) { // Ambiente.SaveAndPrintFactura(venta, true, false); Ambiente.SaveAndPrintFactura(venta, true, false); Close(); } else { Ambiente.Mensaje("Algo salió mal al facturar la venta"); } } else { Ambiente.Mensaje("No se clonó la venta"); } } else { Ambiente.Mensaje("El rfc del cliente está mal formado"); } }
private void InsertOrUpdate() { bool success = false; if (Ambiente.RFCvalido(TxtRFC.Text.Trim())) { if (objeto == null && TxtClienteId.Text.Trim().Length > 0) { objeto = new Cliente(); objeto.ClienteId = TxtClienteId.Text.Trim(); objeto.Rfc = TxtRFC.Text.Trim().Length == 0 ? "XAXX010101000" : TxtRFC.Text.Trim(); objeto.Negocio = TxtNegocio.Text.Trim().Length == 0 ? "" : TxtNegocio.Text.Trim(); objeto.RazonSocial = TxtRazonSocial.Text.Trim().Length == 0 ? "" : TxtRazonSocial.Text.Trim(); objeto.Contancto = TxtContacto.Text.Trim().Length == 0 ? "" : TxtContacto.Text.Trim(); objeto.Direccion = TxtDireccion.Text.Trim().Length == 0 ? "" : TxtDireccion.Text.Trim(); objeto.Cp = TxtCp.Text.Trim().Length == 0 ? "" : TxtCp.Text.Trim(); objeto.Colonia = TxtColonia.Text.Trim().Length == 0 ? "" : TxtColonia.Text.Trim(); objeto.Municipio = TxtMunicipio.Text.Trim().Length == 0 ? "" : TxtMunicipio.Text.Trim(); objeto.Localidad = TxtLocalidad.Text.Trim().Length == 0 ? "" : TxtLocalidad.Text.Trim(); objeto.Estado = TxtEstado.Text.Trim().Length == 0 ? "" : TxtEstado.Text.Trim(); objeto.Pais = TxtPais.Text.Trim().Length == 0 ? "" : TxtPais.Text.Trim(); objeto.Correo = TxtCorreo.Text.Trim().Length == 0 ? "" : TxtCorreo.Text.Trim(); objeto.Telefono = TxtTelefono.Text.Trim().Length == 0 ? "" : TxtTelefono.Text.Trim(); objeto.Celular = TxtCelular.Text.Trim().Length == 0 ? "" : TxtCelular.Text.Trim(); objeto.MetodoPagoId = TxtMetodoPago.Text.Trim().Length == 0 ? "01" : TxtMetodoPago.Text.Trim(); objeto.FormaPagoId = TxtFormaPago.Text.Trim().Length == 0 ? "PUE" : TxtFormaPago.Text.Trim(); objeto.PrecioDefault = CboPrecioDefault.Text.Trim().Length == 0 ? 1 : Convert.ToInt32(CboPrecioDefault.Text.Trim()); objeto.UsoCfdiid = TxtUsoCFDI.Text.Trim().Length == 0 ? "G01" : TxtUsoCFDI.Text.Trim(); objeto.NoTarjetaPuntos = TxtNoTarjetaPuntos.Text.Trim().Length == 0 ? null : TxtNoTarjetaPuntos.Text.Trim(); success = decimal.TryParse(TxtLimiteCredito.Text.Trim(), out decimal nLimite); success = int.TryParse(TxtDiasCredito.Text.Trim(), out int nDias); if (success) { objeto.LimiteCredito = nLimite; objeto.DiasCredito = nDias; } else { objeto.LimiteCredito = 0M; objeto.DiasCredito = 0; } if (clienteController.InsertOne(objeto)) { Ambiente.Mensaje(Ambiente.CatalgoMensajes[3]); } else { Ambiente.Mensaje(Ambiente.CatalgoMensajes[-1] + "@" + GetType().Name); } } else { if (objeto == null) { return; } objeto.Rfc = TxtRFC.Text.Trim().Length == 0 ? "XAXX010101000" : TxtRFC.Text.Trim(); objeto.Negocio = TxtNegocio.Text.Trim().Length == 0 ? "" : TxtNegocio.Text.Trim(); objeto.RazonSocial = TxtRazonSocial.Text.Trim().Length == 0 ? "" : TxtRazonSocial.Text.Trim(); objeto.Contancto = TxtContacto.Text.Trim().Length == 0 ? "" : TxtContacto.Text.Trim(); objeto.Direccion = TxtDireccion.Text.Trim().Length == 0 ? "" : TxtDireccion.Text.Trim(); objeto.Cp = TxtCp.Text.Trim().Length == 0 ? "" : TxtCp.Text.Trim(); objeto.Colonia = TxtColonia.Text.Trim().Length == 0 ? "" : TxtColonia.Text.Trim(); objeto.Municipio = TxtMunicipio.Text.Trim().Length == 0 ? "" : TxtMunicipio.Text.Trim(); objeto.Localidad = TxtLocalidad.Text.Trim().Length == 0 ? "" : TxtLocalidad.Text.Trim(); objeto.Estado = TxtEstado.Text.Trim().Length == 0 ? "" : TxtEstado.Text.Trim(); objeto.Pais = TxtPais.Text.Trim().Length == 0 ? "" : TxtPais.Text.Trim(); objeto.Correo = TxtCorreo.Text.Trim().Length == 0 ? "" : TxtCorreo.Text.Trim(); objeto.Telefono = TxtTelefono.Text.Trim().Length == 0 ? "" : TxtTelefono.Text.Trim(); objeto.Celular = TxtCelular.Text.Trim().Length == 0 ? "" : TxtCelular.Text.Trim(); objeto.MetodoPagoId = TxtMetodoPago.Text.Trim().Length == 0 ? "01" : TxtMetodoPago.Text.Trim(); objeto.FormaPagoId = TxtFormaPago.Text.Trim().Length == 0 ? "PUE" : TxtFormaPago.Text.Trim(); objeto.PrecioDefault = CboPrecioDefault.Text.Trim().Length == 0 ? 1 : Convert.ToInt32(CboPrecioDefault.Text.Trim()); objeto.UsoCfdiid = TxtUsoCFDI.Text.Trim().Length == 0 ? "G01" : TxtUsoCFDI.Text.Trim(); objeto.NoTarjetaPuntos = TxtNoTarjetaPuntos.Text.Trim().Length == 0 ? null : TxtNoTarjetaPuntos.Text.Trim(); objeto.TieneMonedero = ChkMonedero.Checked; success = decimal.TryParse(TxtLimiteCredito.Text.Trim(), out decimal nLimite); success = int.TryParse(TxtDiasCredito.Text.Trim(), out int nDias); if (success) { objeto.LimiteCredito = nLimite; objeto.DiasCredito = nDias; } else { objeto.LimiteCredito = 0M; objeto.DiasCredito = 0; } if (clienteController.Update(objeto)) { Ambiente.Mensaje(Ambiente.CatalgoMensajes[3]); } else { Ambiente.Mensaje(Ambiente.CatalgoMensajes[-1] + "@" + GetType().Name); } } } else { if (Ambiente.Pregunta("El rfc podría estar mal formado, quiere continuar")) { if (objeto == null && TxtClienteId.Text.Trim().Length > 0) { objeto = new Cliente(); objeto.ClienteId = TxtClienteId.Text.Trim(); objeto.Rfc = TxtRFC.Text.Trim().Length == 0 ? "XAXX010101000" : TxtRFC.Text.Trim(); objeto.Negocio = TxtNegocio.Text.Trim().Length == 0 ? "" : TxtNegocio.Text.Trim(); objeto.RazonSocial = TxtRazonSocial.Text.Trim().Length == 0 ? "" : TxtRazonSocial.Text.Trim(); objeto.Contancto = TxtContacto.Text.Trim().Length == 0 ? "" : TxtContacto.Text.Trim(); objeto.Direccion = TxtDireccion.Text.Trim().Length == 0 ? "" : TxtDireccion.Text.Trim(); objeto.Cp = TxtCp.Text.Trim().Length == 0 ? "" : TxtCp.Text.Trim(); objeto.Colonia = TxtColonia.Text.Trim().Length == 0 ? "" : TxtColonia.Text.Trim(); objeto.Municipio = TxtMunicipio.Text.Trim().Length == 0 ? "" : TxtMunicipio.Text.Trim(); objeto.Localidad = TxtLocalidad.Text.Trim().Length == 0 ? "" : TxtLocalidad.Text.Trim(); objeto.Estado = TxtEstado.Text.Trim().Length == 0 ? "" : TxtEstado.Text.Trim(); objeto.Pais = TxtPais.Text.Trim().Length == 0 ? "" : TxtPais.Text.Trim(); objeto.Correo = TxtCorreo.Text.Trim().Length == 0 ? "" : TxtCorreo.Text.Trim(); objeto.Telefono = TxtTelefono.Text.Trim().Length == 0 ? "" : TxtTelefono.Text.Trim(); objeto.Celular = TxtCelular.Text.Trim().Length == 0 ? "" : TxtCelular.Text.Trim(); objeto.MetodoPagoId = TxtMetodoPago.Text.Trim().Length == 0 ? "PUE" : TxtMetodoPago.Text.Trim(); objeto.FormaPagoId = TxtFormaPago.Text.Trim().Length == 0 ? "01" : TxtFormaPago.Text.Trim(); objeto.PrecioDefault = CboPrecioDefault.Text.Trim().Length == 0 ? 1 : Convert.ToInt32(CboPrecioDefault.Text.Trim()); objeto.UsoCfdiid = TxtUsoCFDI.Text.Trim().Length == 0 ? "G01" : TxtUsoCFDI.Text.Trim(); objeto.NoTarjetaPuntos = TxtNoTarjetaPuntos.Text.Trim().Length == 0 ? null : TxtNoTarjetaPuntos.Text.Trim(); objeto.DineroElectronico = 0; objeto.TieneMonedero = ChkMonedero.Checked; success = decimal.TryParse(TxtLimiteCredito.Text.Trim(), out decimal nLimite); success = int.TryParse(TxtDiasCredito.Text.Trim(), out int nDias); if (success) { objeto.LimiteCredito = nLimite; objeto.DiasCredito = nDias; } else { objeto.LimiteCredito = 0M; objeto.DiasCredito = 0; } if (clienteController.InsertOne(objeto)) { Ambiente.Mensaje(Ambiente.CatalgoMensajes[3]); } else { Ambiente.Mensaje(Ambiente.CatalgoMensajes[-1] + "@" + GetType().Name); } } else { if (objeto == null) { return; } objeto.Rfc = TxtRFC.Text.Trim().Length == 0 ? "XAXX010101000" : TxtRFC.Text.Trim(); objeto.Negocio = TxtNegocio.Text.Trim().Length == 0 ? "" : TxtNegocio.Text.Trim(); objeto.RazonSocial = TxtRazonSocial.Text.Trim().Length == 0 ? "" : TxtRazonSocial.Text.Trim(); objeto.Contancto = TxtContacto.Text.Trim().Length == 0 ? "" : TxtContacto.Text.Trim(); objeto.Direccion = TxtDireccion.Text.Trim().Length == 0 ? "" : TxtDireccion.Text.Trim(); objeto.Cp = TxtCp.Text.Trim().Length == 0 ? "" : TxtCp.Text.Trim(); objeto.Colonia = TxtColonia.Text.Trim().Length == 0 ? "" : TxtColonia.Text.Trim(); objeto.Municipio = TxtMunicipio.Text.Trim().Length == 0 ? "" : TxtMunicipio.Text.Trim(); objeto.Localidad = TxtLocalidad.Text.Trim().Length == 0 ? "" : TxtLocalidad.Text.Trim(); objeto.Estado = TxtEstado.Text.Trim().Length == 0 ? "" : TxtEstado.Text.Trim(); objeto.Pais = TxtPais.Text.Trim().Length == 0 ? "" : TxtPais.Text.Trim(); objeto.Correo = TxtCorreo.Text.Trim().Length == 0 ? "" : TxtCorreo.Text.Trim(); objeto.Telefono = TxtTelefono.Text.Trim().Length == 0 ? "" : TxtTelefono.Text.Trim(); objeto.Celular = TxtCelular.Text.Trim().Length == 0 ? "" : TxtCelular.Text.Trim(); objeto.MetodoPagoId = TxtMetodoPago.Text.Trim().Length == 0 ? "01" : TxtMetodoPago.Text.Trim(); objeto.FormaPagoId = TxtFormaPago.Text.Trim().Length == 0 ? "PUE" : TxtFormaPago.Text.Trim(); objeto.PrecioDefault = CboPrecioDefault.Text.Trim().Length == 0 ? 1 : Convert.ToInt32(CboPrecioDefault.Text.Trim()); objeto.UsoCfdiid = TxtUsoCFDI.Text.Trim().Length == 0 ? "G01" : TxtUsoCFDI.Text.Trim(); objeto.NoTarjetaPuntos = TxtNoTarjetaPuntos.Text.Trim().Length == 0 ? null : TxtNoTarjetaPuntos.Text.Trim(); objeto.TieneMonedero = ChkMonedero.Checked; success = decimal.TryParse(TxtLimiteCredito.Text.Trim(), out decimal nLimite); success = int.TryParse(TxtDiasCredito.Text.Trim(), out int nDias); if (success) { objeto.LimiteCredito = nLimite; objeto.DiasCredito = nDias; } else { objeto.LimiteCredito = 0M; objeto.DiasCredito = 0; } if (clienteController.Update(objeto)) { Ambiente.Mensaje(Ambiente.CatalgoMensajes[3]); } else { Ambiente.Mensaje(Ambiente.CatalgoMensajes[-1] + "@" + GetType().Name); } } } else { return; } } }
private void BtnFacturar_Click(object sender, EventArgs e) { if (Malla.RowCount > 0) { int index = Malla.CurrentCell.RowIndex; int i = 0; foreach (var f in facturas) { if (index == i && f.EsFacturaGlobal) { oCFDI.Venta = f; } i++; } } if (oCFDI.Venta == null) { Ambiente.Mensaje("Primero actualice los datos del cliente"); return; } if (oCFDI.Venta.UuId != null) { Ambiente.Mensaje("Este documento ya es un CDFI"); return; } if (!Ambiente.LoggedUser.Facturar) { Ambiente.Mensaje("Operacion denegada. No tienes permiso para operar esta vista."); return; } if (oCFDI.Venta == null) { Ambiente.Mensaje("Proceso abortado, no se encontró ninguna venta seleccionada"); return; } //Si no seleccionó otro cliente, se recupera el de la venta if (cliente == null) { cliente = clienteController.SelectOne(oCFDI.Venta.ClienteId); } //verificar que no sea pago con puntos if (oCFDI.Venta.PuntosAplicados || oCFDI.Venta.DescXpuntos > 0) { Ambiente.Mensaje("Proceso abortado, el documento se cobró con puntos."); return; } //valida rfc if (Ambiente.RFCvalido(cliente.Rfc)) { //Timbra la venta if (oCFDI.Facturar()) { // Ambiente.SaveAndPrintFactura(venta, true, false); Ambiente.SaveAndPrintFactura(oCFDI.Venta, true, false); Close(); } else { Ambiente.Mensaje("Algo salió mal al facturar la venta"); Close(); } } else { Ambiente.Mensaje("El rfc del cliente está mal formado"); } /////******************************************************** }