fix: Fetch valuation rate
(cherry picked from commit df71907be453a481a43d2c62a5c076602ab8af07)
This commit is contained in:
parent
bd80e04aa7
commit
3d6ed4ebde
@ -68,6 +68,23 @@ frappe.ui.form.on('Asset Repair', {
|
||||
});
|
||||
|
||||
frappe.ui.form.on('Asset Repair Consumed Item', {
|
||||
item_code: function(frm, cdt, cdn) {
|
||||
var row = locals[cdt][cdn];
|
||||
|
||||
frappe.call ({
|
||||
method: "erpnext.assets.doctype.asset_repair.asset_repair.get_valuation_rate",
|
||||
args: {
|
||||
"item_code": row.item_code,
|
||||
"warehouse": frm.doc.warehouse
|
||||
},
|
||||
callback: function(r) {
|
||||
if(r.message) {
|
||||
frappe.model.set_value(cdt, cdn, 'valuation_rate', r.message[0]);
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
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);
|
||||
|
@ -256,3 +256,36 @@ class AssetRepair(AccountsController):
|
||||
def get_downtime(failure_date, completion_date):
|
||||
downtime = time_diff_in_hours(completion_date, failure_date)
|
||||
return round(downtime, 2)
|
||||
|
||||
@frappe.whitelist()
|
||||
def get_valuation_rate(item_code, warehouse):
|
||||
last_valuation_rate = frappe.get_all(
|
||||
"Stock Ledger Entry",
|
||||
filters = {
|
||||
"item_code": item_code,
|
||||
"warehouse": warehouse,
|
||||
"valuation_rate": [">=", 0],
|
||||
"docstatus": ["<", 2]
|
||||
},
|
||||
pluck = "valuation_rate",
|
||||
order_by = "posting_date desc, posting_time desc, name desc"
|
||||
)
|
||||
|
||||
if last_valuation_rate:
|
||||
return last_valuation_rate
|
||||
else:
|
||||
valuation_rate = frappe.db.get_value("Item", item_code, "valuation_rate")
|
||||
|
||||
if not valuation_rate:
|
||||
# try Item Standard rate
|
||||
valuation_rate = frappe.db.get_value("Item", item_code, "standard_rate")
|
||||
|
||||
if not valuation_rate:
|
||||
# try in price list
|
||||
valuation_rate = frappe.db.get_value(
|
||||
"Item Price",
|
||||
dict(item_code=item_code, buying=1),
|
||||
"price_list_rate"
|
||||
)
|
||||
|
||||
return valuation_rate
|
||||
|
@ -13,7 +13,6 @@
|
||||
],
|
||||
"fields": [
|
||||
{
|
||||
"fetch_from": "item.valuation_rate",
|
||||
"fieldname": "valuation_rate",
|
||||
"fieldtype": "Currency",
|
||||
"in_list_view": 1,
|
||||
@ -49,7 +48,7 @@
|
||||
"index_web_pages_for_search": 1,
|
||||
"istable": 1,
|
||||
"links": [],
|
||||
"modified": "2021-11-11 18:23:00.492483",
|
||||
"modified": "2022-02-08 17:37:20.028290",
|
||||
"modified_by": "Administrator",
|
||||
"module": "Assets",
|
||||
"name": "Asset Repair Consumed Item",
|
||||
|
Loading…
x
Reference in New Issue
Block a user