--FIX cambio de motivo al verificar si la factura sustitucion ya fue cancelada

This commit is contained in:
2024-04-30 11:06:02 -07:00
parent 96c4ee7873
commit 75f4d6a3c6

View File

@@ -138,13 +138,30 @@ public partial class Ventas_RepCancelacionesPorRespuesta : ClsPaginas
string RFCReceptor = GvRow.DataKey("RFCReceptor"); string RFCReceptor = GvRow.DataKey("RFCReceptor");
string Folio = GvRow.DataKey("Folio"); string Folio = GvRow.DataKey("Folio");
string TipoDocto = GvRow.DataKey("TipoDocto"); string TipoDocto = GvRow.DataKey("TipoDocto");
string Nombre = GvRow.DataKey("Nombre"); string Nombre = GvRow.DataKey("Nombre");
string FolioSustitucion = GvRow.DataKey("FolioFiscalSustitucion");
int CveEstatusFactura = GvRow.DataKey("CveEstatusFactura").ToEntero(); int CveEstatusFactura = GvRow.DataKey("CveEstatusFactura").ToEntero();
string FolioSustitucion = GvRow.DataKey("FolioFiscalSustitucion");
int CveVentaSustitucion = GvRow.DataKey("CveVentaSustitucion").ToEntero();
string RFCReceptorSustitucion = GvRow.DataKey("RFCReceptorSustitucion");
int CveMotivoSustitucion = 0;
if (CveVentaSustitucion > 0)
{
//VERIFICA EL ESTATUS DE LA FACTURA NUEVA, SI ESTA ESTÁ CANCELADA, SE MANDA UNA CANCELACIÓN SIN FOLIO DE SUSTITUCIÓN Y CON EL CÓDIGO 02
Timbrado.AcuseCancelacionSAT VigenciaExtra = Timbrado.VerificarVigenciaSAT(FolioSustitucion, UsuarioActual.Empresa.RFC, RFCReceptorSustitucion, Total.ToString(), true);
if (VigenciaExtra.Estado.ToUpper() == "CANCELADO")
{
FolioSustitucion = "";
CveMotivoSustitucion = get_GlobalDTMotivosCancelacionEmpresa(UsuarioActual.CveEmpresa, CveSATMotivoCancelacion: 2).FiltroPrimeroValor("CveMotivoCancelacion").ToEntero();
}
}
if (CveVenta > 0 && Uuid != "") if (CveVenta > 0 && Uuid != "")
{ {
var respuesta = VerificarVigenciaSAT(CveVenta, CveCliente, Folio, TipoDocto, Uuid, UsuarioActual.Empresa.RFC, RFCReceptor, Total, EsRefacturacion: true, FolioSustitucion: FolioSustitucion, CveEstatusFactura: CveEstatusFactura); var respuesta = VerificarVigenciaSAT(CveVenta, CveCliente, Folio, TipoDocto, Uuid, UsuarioActual.Empresa.RFC, RFCReceptor, Total, EsRefacturacion: true, FolioSustitucion: FolioSustitucion, CveEstatusFactura: CveEstatusFactura, CveMotivoSustitucion: CveMotivoSustitucion);
CargaDatos(); CargaDatos();
if (respuesta.CveEstatus.Contiene(4, 5)) if (respuesta.CveEstatus.Contiene(4, 5))
{ {
@@ -302,7 +319,7 @@ public partial class Ventas_RepCancelacionesPorRespuesta : ClsPaginas
UPDatos.Update(); UPDatos.Update();
} }
private MRespuestaSAT VerificarVigenciaSAT(int CveVenta, int CveCliente, string Folio, string TipoDocto, string uuid, string emisor, string receptor, string total, bool EsRefacturacion = false, string FolioSustitucion = "", int CveEstatusFactura = -1) private MRespuestaSAT VerificarVigenciaSAT(int CveVenta, int CveCliente, string Folio, string TipoDocto, string uuid, string emisor, string receptor, string total, bool EsRefacturacion = false, string FolioSustitucion = "", int CveEstatusFactura = -1, int CveMotivoSustitucion = 0)
{ {
//HdnLigaRefacturar.Value = ""; //HdnLigaRefacturar.Value = "";
@@ -341,7 +358,7 @@ public partial class Ventas_RepCancelacionesPorRespuesta : ClsPaginas
if (!UsuarioActual.Empresa.FacturaProduccion && (string.IsNullOrEmpty(uuid) || uuid.Contains("test"))) if (!UsuarioActual.Empresa.FacturaProduccion && (string.IsNullOrEmpty(uuid) || uuid.Contains("test")))
{ {
var respCancelacion = CancelarDocumento(CveVenta, CveEstatus, CveCliente, Folio, uuid, CancelacionAcuse, CancelacionFecha, TipoDocto, total.ToDouble(), UsuarioActual.Empresa.CvePAC, EsRefacturacion: EsRefacturacion, FolioSustitucion: FolioSustitucion); var respCancelacion = CancelarDocumento(CveVenta, CveEstatus, CveCliente, Folio, uuid, CancelacionAcuse, CancelacionFecha, TipoDocto, total.ToDouble(), UsuarioActual.Empresa.CvePAC, EsRefacturacion: EsRefacturacion, FolioSustitucion: FolioSustitucion, CveMotivoCancelacion : CveMotivoSustitucion);
//sb.AppendFormat("{0} <br/>", respCancelacion.Mensaje); //sb.AppendFormat("{0} <br/>", respCancelacion.Mensaje);
if (!respCancelacion.HuboError) if (!respCancelacion.HuboError)
@@ -384,7 +401,7 @@ public partial class Ventas_RepCancelacionesPorRespuesta : ClsPaginas
{ {
CveEstatus = 5; CveEstatus = 5;
var respCancelacion = CancelarDocumento(CveVenta, CveEstatus, CveCliente, Folio, uuid, CancelacionAcuse, CancelacionFecha, TipoDocto, total.ToDouble(), UsuarioActual.Empresa.CvePAC, EsRefacturacion: EsRefacturacion, FolioSustitucion: FolioSustitucion); var respCancelacion = CancelarDocumento(CveVenta, CveEstatus, CveCliente, Folio, uuid, CancelacionAcuse, CancelacionFecha, TipoDocto, total.ToDouble(), UsuarioActual.Empresa.CvePAC, EsRefacturacion: EsRefacturacion, FolioSustitucion: FolioSustitucion, CveMotivoCancelacion: CveMotivoSustitucion);
//sb.AppendFormat("{0} <br/>", respCancelacion.Mensaje); //sb.AppendFormat("{0} <br/>", respCancelacion.Mensaje);
if (!respCancelacion.HuboError) if (!respCancelacion.HuboError)