Optionally rename the file.
"""
if os.path.isfile(filepath) and os.path.isdir(target_dir):
- dst = shutil.copy(filepath, target_dir)
- logging.debug(f"saved {str(filepath)} to {str(dst)}")
- if newname:
- dst_new = os.path.join(target_dir, newname)
- logger.debug(f"moving {str(dst)} to {str(dst_new)}")
- os.rename(dst, dst_new)
+ dest = target_dir
+ if newname is not None:
+ dest = os.path.join(dest, newname)
+ shutil.copy(filepath, dest)
+ logging.debug(f"saved {str(filepath)} to {str(dest)}")
else:
logger.warning(f"{str(filepath)} or {str(target_dir)} don't exist.")
)
if document_list:
+
+ # If the file is an upload, it's in the scratch directory
+ # Move it to consume directory to be picked up
+ # Otherwise, use the current parent to keep possible tags
+ # from subdirectories
+ try:
+ # is_relative_to would be nicer, but new in 3.9
+ _ = path.relative_to(settings.SCRATCH_DIR)
+ save_to_dir = settings.CONSUMPTION_DIR
+ except ValueError:
+ save_to_dir = path.parent
+
for n, document in enumerate(document_list):
# save to consumption dir
# rename it to the original filename with number prefix
else:
newname = None
- # If the file is an upload, it's in the scratch directory
- # Move it to consume directory to be picked up
- # Otherwise, use the current parent to keep possible tags
- # from subdirectories
- try:
- # is_relative_to would be nicer, but new in 3.9
- _ = path.relative_to(settings.SCRATCH_DIR)
- save_to_dir = settings.CONSUMPTION_DIR
- except ValueError:
- save_to_dir = path.parent
-
barcodes.save_to_dir(
document,
newname=newname,
target_dir=save_to_dir,
)
+ # Split file has been copied safely, remove it
+ os.remove(document)
+
+ # And clean up the directory as well, now it's empty
+ shutil.rmtree(os.path.dirname(document_list[0]))
+
# Delete the PDF file which was split
os.remove(doc_barcode_info.pdf_path)