fix: set asset's valuation_rate according to asset quantity (backport #38254) (#38256)

fix: set asset's valuation_rate according to asset quantity (#38254)

(cherry picked from commit e2bb4e2baa9059afb27f685beb88172a615097a4)

Co-authored-by: Anand Baburajan <anandbaburajan@gmail.com>
This commit is contained in:
mergify[bot] 2023-11-21 22:57:34 +05:30 committed by GitHub
parent 07c0ed127a
commit c60aaa799a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -731,12 +731,18 @@ class PurchaseReceipt(BuyingController):
def update_assets(self, item, valuation_rate):
assets = frappe.db.get_all(
"Asset", filters={"purchase_receipt": self.name, "item_code": item.item_code}
"Asset",
filters={"purchase_receipt": self.name, "item_code": item.item_code},
fields=["name", "asset_quantity"],
)
for asset in assets:
frappe.db.set_value("Asset", asset.name, "gross_purchase_amount", flt(valuation_rate))
frappe.db.set_value("Asset", asset.name, "purchase_receipt_amount", flt(valuation_rate))
frappe.db.set_value(
"Asset", asset.name, "gross_purchase_amount", flt(valuation_rate) * asset.asset_quantity
)
frappe.db.set_value(
"Asset", asset.name, "purchase_receipt_amount", flt(valuation_rate) * asset.asset_quantity
)
def update_status(self, status):
self.set_status(update=True, status=status)