Skip to content

Commit

Permalink
Merge pull request #31380 from frappe/mergify/bp/version-13-hotfix/pr…
Browse files Browse the repository at this point in the history
…-31372

chore: Fix a potential variable misuse bug (backport #31372)
  • Loading branch information
marination authored Jun 16, 2022
2 parents f19ed0b + 0f3a02d commit 2d6e518
Showing 1 changed file with 9 additions and 4 deletions.
13 changes: 9 additions & 4 deletions erpnext/accounts/doctype/pricing_rule/pricing_rule.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,10 +36,15 @@ def validate(self):
self.margin_rate_or_amount = 0.0

def validate_duplicate_apply_on(self):
field = apply_on_dict.get(self.apply_on)
values = [d.get(frappe.scrub(self.apply_on)) for d in self.get(field) if field]
if len(values) != len(set(values)):
frappe.throw(_("Duplicate {0} found in the table").format(self.apply_on))
if self.apply_on != "Transaction":
apply_on_table = apply_on_dict.get(self.apply_on)
if not apply_on_table:
return

apply_on_field = frappe.scrub(self.apply_on)
values = [d.get(apply_on_field) for d in self.get(apply_on_table) if d.get(apply_on_field)]
if len(values) != len(set(values)):
frappe.throw(_("Duplicate {0} found in the table").format(self.apply_on))

def validate_mandatory(self):
for apply_on, field in apply_on_dict.items():
Expand Down

0 comments on commit 2d6e518

Please sign in to comment.