From 8ea0cc90df2413f39b775c84cbd5ea1aee2012b7 Mon Sep 17 00:00:00 2001 From: diptanilsaha Date: Mon, 23 Mar 2026 15:43:33 +0530 Subject: [PATCH] fix: check for `submit` permissions instead of `write` permissions when updating status (#53697) --- erpnext/buying/doctype/purchase_order/purchase_order.py | 2 +- erpnext/selling/doctype/sales_order/sales_order.py | 2 +- erpnext/stock/doctype/purchase_receipt/purchase_receipt.py | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/erpnext/buying/doctype/purchase_order/purchase_order.py b/erpnext/buying/doctype/purchase_order/purchase_order.py index 38411bca451..227221b36c0 100644 --- a/erpnext/buying/doctype/purchase_order/purchase_order.py +++ b/erpnext/buying/doctype/purchase_order/purchase_order.py @@ -894,7 +894,7 @@ def get_list_context(context=None): @frappe.whitelist() def update_status(status: str, name: str): - po = frappe.get_lazy_doc("Purchase Order", name, check_permission="write") + po = frappe.get_lazy_doc("Purchase Order", name, check_permission="submit") po.update_status(status) po.update_delivered_qty_in_sales_order() diff --git a/erpnext/selling/doctype/sales_order/sales_order.py b/erpnext/selling/doctype/sales_order/sales_order.py index 670ba74ba53..492cf9bff07 100755 --- a/erpnext/selling/doctype/sales_order/sales_order.py +++ b/erpnext/selling/doctype/sales_order/sales_order.py @@ -1815,7 +1815,7 @@ def make_work_orders(items: str, sales_order: str, company: str, project: str | @frappe.whitelist() def update_status(status: str, name: str): - so = frappe.get_doc("Sales Order", name, check_permission="write") + so = frappe.get_doc("Sales Order", name, check_permission="submit") so.update_status(status) diff --git a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py index 8390e230cf9..685d37c8019 100644 --- a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py +++ b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py @@ -1585,7 +1585,7 @@ def make_purchase_return(source_name: str, target_doc: str | Document | None = N @frappe.whitelist() def update_purchase_receipt_status(docname: str, status: str): - pr = frappe.get_lazy_doc("Purchase Receipt", docname, check_permission="write") + pr = frappe.get_lazy_doc("Purchase Receipt", docname, check_permission="submit") pr.update_status(status)