public CAERespuestaFe ReprocesarComprobantes( FeCabecera cabFe, Autorizacion feAut ) { ConversorConsultaCaeARespuestaCae conversor = new ConversorConsultaCaeARespuestaCae(); CAERespuestaFe retorno = new CAERespuestaFe(); WrapperCabeceraFe wrapperFe = new WrapperCabeceraFe(); List<Observacion> diferencias; retorno.Cabecera = conversor.ConvertirCabecera( cabFe, feAut ); ConsultasWSMTXCA consultas = new ConsultasWSMTXCA( this.wsfe, this.logueador ); CAEDetalleRespuesta respuestaReproceso; retorno.Detalle = new List<CAEDetalleRespuesta>(); foreach ( FeDetalle lote in cabFe.DetalleComprobantes ) { respuestaReproceso = consultas.DatosDeComprobante( feAut, cabFe.TipoComprobante, (int) lote.ComprobanteDesde, cabFe.PuntoDeVenta ); diferencias = wrapperFe.Comparar( respuestaReproceso, lote ); if ( diferencias.Count > 0 ) { respuestaReproceso.Resultado = "R"; respuestaReproceso.Cae = ""; respuestaReproceso.Observaciones = diferencias; } retorno.Detalle.Add( respuestaReproceso ); } this.logueador.LoguearObservaciones( retorno.Detalle, cabFe ); return retorno; }
private FECAERequest ObtenerCaeRequest( FeCabecera cabFe ) { WrapperCabeceraFe wc = new WrapperCabeceraFe(); return wc.Convertir( cabFe ); }