|
@@ -257,22 +257,28 @@ class Efactoauth(Anafoauth):
|
|
|
if path:
|
|
|
inv_zip = ZipFile(path, mode='r')
|
|
|
name = [name for name in inv_zip.namelist() if 'semnatura' not in name]
|
|
|
+ files_in_folder = os.listdir(dest_f)
|
|
|
+ xml_files = [file for file in files_in_folder if file.lower().endswith('.xml')]
|
|
|
# print(os.path.join(dest_f, name[0].replace('.xml', '') + '_booked.xml'))
|
|
|
- if not os.path.exists(os.path.join(dest_f, name[0].replace('.xml', '') + '_booked.xml')):
|
|
|
- self.xml_inv = self._extract_zipfile(inv_zip, dest_f=dest_f)
|
|
|
- # print(self.xml_inv)
|
|
|
- # if os.path.exists(self.xml_inv.replace('.xml', '') + '_booked.xml'):
|
|
|
- # os.remove(self.xml_inv)
|
|
|
- return self.xml_inv
|
|
|
+ if not xml_files:
|
|
|
+ if not os.path.exists(os.path.join(dest_f, name[0].replace('.xml', '') + '_booked.xml')):
|
|
|
+ self.xml_inv = self._extract_zipfile(inv_zip, dest_f=dest_f)
|
|
|
+ # print(self.xml_inv)
|
|
|
+ # if os.path.exists(self.xml_inv.replace('.xml', '') + '_booked.xml'):
|
|
|
+ # os.remove(self.xml_inv)
|
|
|
+ return self.xml_inv
|
|
|
else:
|
|
|
inv_zip = ZipFile(io.BytesIO(self.zip_inv), mode='r')
|
|
|
name = [name for name in inv_zip.namelist() if 'semnatura' not in name]
|
|
|
- if not os.path.exists(os.path.join(dest_f, name[0].replace('.xml', '') + '_booked.xml')):
|
|
|
- self.xml_inv = self._extract_zipfile(inv_zip, dest_f=dest_f)
|
|
|
- # print(self.xml_inv.replace('.xml', '') + '_booked.xml')
|
|
|
- # if os.path.exists(self.xml_inv.replace('.xml', '') + '_booked.xml'):
|
|
|
- # os.remove(self.xml_inv)
|
|
|
- return self.xml_inv
|
|
|
+ files_in_folder = os.listdir(dest_f)
|
|
|
+ xml_files = [file for file in files_in_folder if file.lower().endswith('.xml')]
|
|
|
+ if not xml_files:
|
|
|
+ if not os.path.exists(os.path.join(dest_f, name[0].replace('.xml', '') + '_booked.xml')):
|
|
|
+ self.xml_inv = self._extract_zipfile(inv_zip, dest_f=dest_f)
|
|
|
+ # print(self.xml_inv.replace('.xml', '') + '_booked.xml')
|
|
|
+ # if os.path.exists(self.xml_inv.replace('.xml', '') + '_booked.xml'):
|
|
|
+ # os.remove(self.xml_inv)
|
|
|
+ return self.xml_inv
|
|
|
|
|
|
def parse_inv(self, invoice: os.path=None) -> Invoice:
|
|
|
if invoice:
|