@@ -299,18 +299,33 @@ def nueva_solicitud(self, values):
299299
300300 sat_service = SAT (signer = self .emisores [rfc ]['fiel' ])
301301 tipo_recuperar = values ["tipo_recuperar" ]
302+ fecha_final = datetime .strptime (values ["fecha_final" ], CALENDAR_FECHA_FMT )
303+ fecha_inicial = datetime .strptime (values ["fecha_inicial" ], CALENDAR_FECHA_FMT )
302304
303305 args = {
304- 'fecha_inicial' : datetime .strptime (values ["fecha_inicial" ], CALENDAR_FECHA_FMT ),
305- 'fecha_final' : datetime .strptime (values ["fecha_final" ], CALENDAR_FECHA_FMT ),
306- 'rfc_receptor' : sat_service .signer .rfc if tipo_recuperar == TipoRecuperar .Recibidas else None ,
307- 'rfc_emisor' : sat_service .signer .rfc if tipo_recuperar == TipoRecuperar .Emitidas else None ,
306+ 'fecha_inicial' : fecha_inicial ,
307+ 'fecha_final' : fecha_final ,
308308 'tipo_solicitud' : values ["tipo_solicitud" ],
309+ 'tipo_recuperar' : tipo_recuperar .value
309310 }
310311
311- response = sat_service .recover_comprobante_request (
312- ** args
313- )
312+ if tipo_recuperar == TipoRecuperar .Recibidas :
313+ response = sat_service .recover_comprobante_received_request (
314+ fecha_final = fecha_final ,
315+ fecha_inicial = fecha_inicial ,
316+ rfc_receptor = sat_service .signer .rfc ,
317+ tipo_solicitud = values ["tipo_solicitud" ],
318+ estado_comprobante = "Vigente" if values ['tipo_solicitud' ] == "CFDI" else None
319+ )
320+ elif tipo_recuperar == TipoRecuperar .Emitidas :
321+ response = sat_service .recover_comprobante_emited_request (
322+ fecha_final = fecha_final ,
323+ fecha_inicial = fecha_inicial ,
324+ rfc_emisor = sat_service .signer .rfc ,
325+ tipo_solicitud = values ["tipo_solicitud" ]
326+ )
327+ else :
328+ raise ValueError (f"Tipo de solicitud no soportado: { tipo_recuperar } " )
314329
315330 if "IdSolicitud" not in response :
316331 self .error_message ("Error al solicitar comprobantes" + to_yaml (response ))
0 commit comments