From 934c7d833ce2c9ffea045fe8ddf13d1b2f68247f Mon Sep 17 00:00:00 2001 From: "mergify[bot]" <37929162+mergify[bot]@users.noreply.github.com> Date: Fri, 4 Sep 2026 06:53:44 +0000 Subject: [PATCH] fix(setup): strict permissions for transaction deletion record (backport #58687) (#58722) Co-authored-by: Diptanil Saha --- erpnext/setup/doctype/company/company.py | 7 ++++++- .../transaction_deletion_record.json | 11 +++++------ 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/erpnext/setup/doctype/company/company.py b/erpnext/setup/doctype/company/company.py index 569d06349f4..fd4cbdbef34 100644 --- a/erpnext/setup/doctype/company/company.py +++ b/erpnext/setup/doctype/company/company.py @@ -986,8 +986,12 @@ def get_billing_shipping_address(name, billing_address=None, shipping_address=No return {"primary_address": primary_address, "shipping_address": shipping_address} -@frappe.whitelist() +@frappe.whitelist(methods=["POST"]) def create_transaction_deletion_request(company): + frappe.only_for("System Manager") + # User Permission check + frappe.has_permission("Company", ptype="delete", doc=company, throw=True) + from erpnext.setup.doctype.transaction_deletion_record.transaction_deletion_record import ( is_deletion_doc_running, ) @@ -995,6 +999,7 @@ def create_transaction_deletion_request(company): is_deletion_doc_running(company) tdr = frappe.get_doc({"doctype": "Transaction Deletion Record", "company": company}) + tdr.submit() tdr.start_deletion_tasks() diff --git a/erpnext/setup/doctype/transaction_deletion_record/transaction_deletion_record.json b/erpnext/setup/doctype/transaction_deletion_record/transaction_deletion_record.json index b9f911dbe8c..8df377aab00 100644 --- a/erpnext/setup/doctype/transaction_deletion_record/transaction_deletion_record.json +++ b/erpnext/setup/doctype/transaction_deletion_record/transaction_deletion_record.json @@ -1,5 +1,6 @@ { "actions": [], + "allow_bulk_edit": 1, "autoname": "TDL.####", "creation": "2021-04-06 20:17:18.404716", "doctype": "DocType", @@ -141,19 +142,18 @@ "read_only": 1 } ], + "in_create": 1, "index_web_pages_for_search": 1, "is_submittable": 1, "links": [], - "modified": "2024-03-21 10:29:19.456413", + "modified": "2026-09-02 20:32:19.679290", "modified_by": "Administrator", "module": "Setup", "name": "Transaction Deletion Record", - "naming_rule": "Expression (old style)", + "naming_rule": "Expression", "owner": "Administrator", "permissions": [ { - "create": 1, - "delete": 1, "email": 1, "export": 1, "print": 1, @@ -161,7 +161,6 @@ "report": 1, "role": "System Manager", "share": 1, - "submit": 1, "write": 1 } ], @@ -169,4 +168,4 @@ "sort_order": "DESC", "states": [], "track_changes": 1 -} \ No newline at end of file +}