Merge pull request #39764 from rohitwaghchaure/fixed-remove-file-from-disk-9515

fix: remove file from the disk after the completion of reposting
This commit is contained in:
rohitwaghchaure 2024-02-06 21:26:28 +05:30 committed by GitHub
commit d6d91257b6
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 43 additions and 0 deletions

View File

@ -281,6 +281,7 @@ def repost(doc):
repost_gl_entries(doc)
doc.set_status("Completed")
remove_attached_file(doc.name)
except Exception as e:
if frappe.flags.in_test:
@ -309,6 +310,13 @@ def repost(doc):
frappe.db.commit()
def remove_attached_file(docname):
if file_name := frappe.db.get_value(
"File", {"attached_to_name": docname, "attached_to_doctype": "Repost Item Valuation"}, "name"
):
frappe.delete_doc("File", file_name, delete_permanently=True)
def repost_sl_entries(doc):
if doc.based_on == "Transaction":
repost_future_sle(

View File

@ -420,3 +420,38 @@ class TestRepostItemValuation(FrappeTestCase, StockTestMixin):
self.assertRaises(frappe.ValidationError, riv.save)
doc.cancel()
def test_remove_attached_file(self):
item_code = make_item("_Test Remove Attached File Item", properties={"is_stock_item": 1})
make_purchase_receipt(
item_code=item_code,
qty=1,
rate=100,
)
pr1 = make_purchase_receipt(
item_code=item_code,
qty=1,
rate=100,
posting_date=add_days(today(), days=-1),
)
if docname := frappe.db.exists("Repost Item Valuation", {"voucher_no": pr1.name}):
self.assertFalse(
frappe.db.get_value(
"File",
{"attached_to_doctype": "Repost Item Valuation", "attached_to_name": docname},
"name",
)
)
else:
repost_entries = create_item_wise_repost_entries(pr1.doctype, pr1.name)
for entry in repost_entries:
self.assertFalse(
frappe.db.get_value(
"File",
{"attached_to_doctype": "Repost Item Valuation", "attached_to_name": entry.name},
"name",
)
)