fix(defaults): apply discount and provisonal defaults from item group and brand if available (backport #37466) (#37703)

fix(defaults): apply discount and provisonal defaults from item group and brand if available (#37466)

(cherry picked from commit 1612d7ba3f)

Co-authored-by: David Arnold <dgx.arnold@gmail.com>
This commit is contained in:
mergify[bot]
2023-10-26 18:14:23 +05:30
committed by GitHub
parent 556095daaa
commit a0893ddf96

View File

@@ -364,8 +364,12 @@ def get_basic_details(args, item, overwrite_warehouse=True):
), ),
"expense_account": expense_account "expense_account": expense_account
or get_default_expense_account(args, item_defaults, item_group_defaults, brand_defaults), or get_default_expense_account(args, item_defaults, item_group_defaults, brand_defaults),
"discount_account": get_default_discount_account(args, item_defaults), "discount_account": get_default_discount_account(
"provisional_expense_account": get_provisional_account(args, item_defaults), args, item_defaults, item_group_defaults, brand_defaults
),
"provisional_expense_account": get_provisional_account(
args, item_defaults, item_group_defaults, brand_defaults
),
"cost_center": get_default_cost_center( "cost_center": get_default_cost_center(
args, item_defaults, item_group_defaults, brand_defaults args, item_defaults, item_group_defaults, brand_defaults
), ),
@@ -719,12 +723,22 @@ def get_default_expense_account(args, item, item_group, brand):
) )
def get_provisional_account(args, item): def get_provisional_account(args, item, item_group, brand):
return item.get("default_provisional_account") or args.default_provisional_account return (
item.get("default_provisional_account")
or item_group.get("default_provisional_account")
or brand.get("default_provisional_account")
or args.default_provisional_account
)
def get_default_discount_account(args, item): def get_default_discount_account(args, item, item_group, brand):
return item.get("default_discount_account") or args.discount_account return (
item.get("default_discount_account")
or item_group.get("default_discount_account")
or brand.get("default_discount_account")
or args.discount_account
)
def get_default_deferred_account(args, item, fieldname=None): def get_default_deferred_account(args, item, fieldname=None):