fix(Asset Repair): Compute total_value instantly
diff --git a/erpnext/assets/doctype/asset_repair/asset_repair.js b/erpnext/assets/doctype/asset_repair/asset_repair.js
index ced3dad..91bed4f 100644
--- a/erpnext/assets/doctype/asset_repair/asset_repair.js
+++ b/erpnext/assets/doctype/asset_repair/asset_repair.js
@@ -35,6 +35,13 @@
}
});
+frappe.ui.form.on('Asset Repair Consumed Item', {
+ consumed_quantity: function(frm, cdt, cdn) {
+ var row = locals[cdt][cdn];
+ frappe.model.set_value(cdt, cdn, 'total_value', row.consumed_quantity * row.valuation_rate);
+ },
+});
+
cur_frm.fields_dict.cost_center.get_query = function(doc) {
return {
filters: {
diff --git a/erpnext/assets/doctype/asset_repair/asset_repair.py b/erpnext/assets/doctype/asset_repair/asset_repair.py
index 5fccfb7..79b9a6a 100644
--- a/erpnext/assets/doctype/asset_repair/asset_repair.py
+++ b/erpnext/assets/doctype/asset_repair/asset_repair.py
@@ -14,8 +14,6 @@
def validate(self):
self.asset_doc = frappe.get_doc('Asset', self.asset)
self.update_status()
- if self.get('stock_items'):
- self.set_total_value() # change later
self.calculate_total_repair_cost()
def update_status(self):
@@ -24,10 +22,6 @@
else:
self.asset_doc.set_status()
- def set_total_value(self):
- for item in self.get('stock_items'):
- item.total_value = flt(item.valuation_rate) * flt(item.consumed_quantity)
-
def calculate_total_repair_cost(self):
self.total_repair_cost = self.repair_cost
if self.get('stock_items'):