diff --git a/Verify/Models/VerifyResponse.cs b/Verify/Models/VerifyResponse.cs index ba9bac2..d355cf0 100644 --- a/Verify/Models/VerifyResponse.cs +++ b/Verify/Models/VerifyResponse.cs @@ -14,6 +14,7 @@ * ============================================================================ */ +using Fiscalapi.XmlDownloader.Common.Enums; using Fiscalapi.XmlDownloader.Common.Http; namespace Fiscalapi.XmlDownloader.Verify.Models; @@ -42,4 +43,14 @@ public class VerifyResponse : BaseResponse /// Indicates if the request is ready for download /// public bool IsReadyToDownload => RequestStatus == RequestStatus.Terminada && InvoiceCount > 0; + + /// + /// Operation status code from the SAT verification service + /// + public SatStatus SatStatusDownload { get; set; } + + /// + /// Sat 'CodigoEstadoSolicitud' received from the service + /// + public string? SatStatusCodeDownload { get; set; } } \ No newline at end of file diff --git a/Verify/VerifyResponseService.cs b/Verify/VerifyResponseService.cs index 7412857..185f9c5 100644 --- a/Verify/VerifyResponseService.cs +++ b/Verify/VerifyResponseService.cs @@ -58,13 +58,22 @@ public static VerifyResponse Build(SatResponse satResponse, ILogger logger) */ //CodEstatus="5000" + // No refleja correctamente el estatus de la ejecución de la acción Verify var codEstatus = envelope?.Body.VerifyDownloadRequestResponse .VerifyDownloadRequestResult.CodEstatus; + // No refleja correctamente el estatus de la ejecución de la acción Verify var status = !string.IsNullOrWhiteSpace(codEstatus) ? codEstatus.ToEnumElement() : SatStatus.Unknown; + var codSatStatus = envelope?.Body.VerifyDownloadRequestResponse + .VerifyDownloadRequestResult.CodigoEstadoSolicitud; + + var satStatus = !string.IsNullOrWhiteSpace(codSatStatus) + ? codSatStatus.ToEnumElement() + : SatStatus.Unknown; + // EstadoSolicitud="3" var estadoSolicitud = envelope?.Body.VerifyDownloadRequestResponse .VerifyDownloadRequestResult.EstadoSolicitud; @@ -96,6 +105,8 @@ public static VerifyResponse Build(SatResponse satResponse, ILogger logger) Succeeded = true, SatStatus = status, SatStatusCode = status.ToEnumCode(), + SatStatusDownload = satStatus, + SatStatusCodeDownload = satStatus.ToEnumCode(), SatMessage = mensaje, RequestStatus = requestStatus, InvoiceCount = invoiceCount,