fix(item_defaults): handle multiple item defaults for a company (#15634)
This commit is contained in:
parent
64b6421fce
commit
a16f0f4423
@ -122,6 +122,7 @@ class Item(WebsiteGenerator):
|
|||||||
self.validate_fixed_asset()
|
self.validate_fixed_asset()
|
||||||
self.validate_retain_sample()
|
self.validate_retain_sample()
|
||||||
self.validate_uom_conversion_factor()
|
self.validate_uom_conversion_factor()
|
||||||
|
self.validate_item_defaults()
|
||||||
self.update_defaults_from_item_group()
|
self.update_defaults_from_item_group()
|
||||||
|
|
||||||
if not self.get("__islocal"):
|
if not self.get("__islocal"):
|
||||||
@ -663,6 +664,12 @@ class Item(WebsiteGenerator):
|
|||||||
template_item.flags.ignore_permissions = True
|
template_item.flags.ignore_permissions = True
|
||||||
template_item.save()
|
template_item.save()
|
||||||
|
|
||||||
|
def validate_item_defaults(self):
|
||||||
|
companies = list(set([row.company for row in self.item_defaults]))
|
||||||
|
|
||||||
|
if len(companies) != len(self.item_defaults):
|
||||||
|
frappe.throw(_("Cannot set multiple Item Defaults for a company."))
|
||||||
|
|
||||||
def update_defaults_from_item_group(self):
|
def update_defaults_from_item_group(self):
|
||||||
"""Get defaults from Item Group"""
|
"""Get defaults from Item Group"""
|
||||||
if self.item_group and not self.item_defaults:
|
if self.item_group and not self.item_defaults:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user