From 09a2472390902adc6c811b427abd59c5edca290f Mon Sep 17 00:00:00 2001 From: Pandiyan P Date: Thu, 27 Aug 2026 17:34:27 +0530 Subject: [PATCH] fix(selling): check quotation write permission before marking lost (#58493) (cherry picked from commit 5f99a3418df290344e00da58a2325404fdc6d5e1) # Conflicts: # erpnext/selling/doctype/quotation/quotation.py --- erpnext/selling/doctype/quotation/quotation.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/erpnext/selling/doctype/quotation/quotation.py b/erpnext/selling/doctype/quotation/quotation.py index 8366f61c6b3..f6987ee579c 100644 --- a/erpnext/selling/doctype/quotation/quotation.py +++ b/erpnext/selling/doctype/quotation/quotation.py @@ -257,7 +257,15 @@ class Quotation(SellingController): opp.set_status(status=status, update=True) @frappe.whitelist() +<<<<<<< HEAD def declare_enquiry_lost(self, lost_reasons_list, competitors, detailed_reason=None): +======= + def declare_enquiry_lost( + self, lost_reasons_list: list, competitors: list, detailed_reason: str | None = None + ): + self.check_permission("write") + +>>>>>>> 5f99a34 (fix(selling): check quotation write permission before marking lost (#58493)) if not (self.is_fully_ordered() or self.is_partially_ordered()): get_lost_reasons = frappe.get_list("Quotation Lost Reason", fields=["name"]) lost_reasons_lst = [reason.get("name") for reason in get_lost_reasons]