From d5f30202b431621177fb3e671220c513fe5c59b4 Mon Sep 17 00:00:00 2001 From: ruthra kumar Date: Fri, 27 Dec 2024 12:48:25 +0530 Subject: [PATCH] refactor: early return is always better validate_advance_entries() has a heavy IO bound operation. Early return on unwanted cases is always better. (cherry picked from commit 0589fa7f3efcc826d856be71c20c7ad684f1c822) # Conflicts: # erpnext/controllers/accounts_controller.py --- erpnext/controllers/accounts_controller.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/erpnext/controllers/accounts_controller.py b/erpnext/controllers/accounts_controller.py index 58e9b86e24b..27b656ef51e 100644 --- a/erpnext/controllers/accounts_controller.py +++ b/erpnext/controllers/accounts_controller.py @@ -424,6 +424,9 @@ class AccountsController(TransactionBase): self.payment_terms_template = "" self.payment_schedule = [] + if self.is_return: + return + self.validate_payment_schedule_dates() self.set_due_date() self.set_payment_schedule() @@ -2181,6 +2184,9 @@ class AccountsController(TransactionBase): dates = [] li = [] + if self.doctype == "Sales Invoice" and self.is_pos: + return + for d in self.get("payment_schedule"): if self.doctype == "Sales Order" and getdate(d.due_date) < getdate(self.transaction_date): frappe.throw( @@ -2197,12 +2203,18 @@ class AccountsController(TransactionBase): frappe.throw(_("Rows with duplicate due dates in other rows were found: {0}").format(duplicates)) def validate_payment_schedule_amount(self): +<<<<<<< HEAD <<<<<<< HEAD if self.doctype == "Sales Invoice" and self.is_pos: return ======= >>>>>>> e1fc239f3d (fix: clear payment schedule in purchase invoice for is_paid) +======= + if (self.doctype == "Sales Invoice" and self.is_pos) or self.get("is_opening") == "Yes": + return + +>>>>>>> 0589fa7f3e (refactor: early return is always better) party_account_currency = self.get("party_account_currency") if not party_account_currency: party_type, party = self.get_party()