timbre method
Implementation
String timbre({required String portal, required String xmlSigned}) {
// generando timbrez
var rncEmisor = 'RncEmisor=${Encabezado.Emisor.RNCEmisor.value}';
var rncComprador = Encabezado.Comprador.RNCComprador.value;
var eNcf = '&ENCF=${Encabezado.IdDoc.eNCF.value}';
var fechahoraFirma = FechaHoraFirma.value;
var fechaEmision = '&fechaemision=${Encabezado.Emisor.FechaEmision.value}'
.replaceAll(' ', '%20');
var montoTotal = '&MontoTotal=${Encabezado.Totales.MontoTotal.value}';
if (rncComprador.isNotEmpty) {
rncComprador = '&rnccomprador=$rncComprador';
}
var fechahoraFirmaTimbre = '';
if (fechahoraFirma.isNotEmpty) {
fechahoraFirmaTimbre =
'&fechafirma=$fechahoraFirma'.replaceAll(' ', '%20');
}
var dominio = 'https://ecf.dgii.gov.do/$portal';
if (isRFCE) {
dominio = 'https://fc.dgii.gov.do/$portal';
}
var path = 'ConsultaTimbre';
var codigoSeguridad = isRFCE
? Encabezado.CodigoSeguridadeCF.value
: this.codigoSeguridad(xmlSigned: xmlSigned);
if (isRFCE) {
path = 'ConsultaTimbreFC';
fechaEmision = '';
codigoSeguridad = Encabezado.CodigoSeguridadeCF.value;
}
var codigoSeguridadTimbre = codigoSeguridad
.replaceAll('/', '%2F')
.replaceAll('=', '%3D')
.replaceAll('@', '%40')
.replaceAll('+', '%2B');
codigoSeguridadTimbre = '&CodigoSeguridad=$codigoSeguridadTimbre';
var args =
'$rncEmisor$rncComprador$eNcf$fechaEmision$montoTotal$fechahoraFirmaTimbre$codigoSeguridadTimbre'
.replaceAll(' ', '%20');
return '$dominio/$path?$args';
}