From 359778e2357997aaeac126c37bdcb34e8efa7ed3 Mon Sep 17 00:00:00 2001 From: marination Date: Fri, 16 Oct 2020 16:47:23 +0530 Subject: [PATCH] chore: Code cleanup, reduce redundancy --- .../request_for_quotation.js | 2 +- .../supplier_quotation/supplier_quotation.js | 2 +- erpnext/public/js/controllers/buying.js | 78 +++++++++---------- 3 files changed, 41 insertions(+), 41 deletions(-) diff --git a/erpnext/buying/doctype/request_for_quotation/request_for_quotation.js b/erpnext/buying/doctype/request_for_quotation/request_for_quotation.js index 660af96505..1ebd21a17b 100644 --- a/erpnext/buying/doctype/request_for_quotation/request_for_quotation.js +++ b/erpnext/buying/doctype/request_for_quotation/request_for_quotation.js @@ -326,7 +326,7 @@ erpnext.buying.RequestforQuotationController = erpnext.buying.BuyingController.e d.show(); }, __("Get items from")); - //Link Material Requests + // Link Material Requests this.frm.add_custom_button(__('Link to Material Requests'), function() { erpnext.buying.link_to_mrs(me.frm); diff --git a/erpnext/buying/doctype/supplier_quotation/supplier_quotation.js b/erpnext/buying/doctype/supplier_quotation/supplier_quotation.js index c146f13dfe..934d71c3b3 100644 --- a/erpnext/buying/doctype/supplier_quotation/supplier_quotation.js +++ b/erpnext/buying/doctype/supplier_quotation/supplier_quotation.js @@ -55,7 +55,7 @@ erpnext.buying.SupplierQuotationController = erpnext.buying.BuyingController.ext }) }, __("Get items from")); - //Link Material Requests + // Link Material Requests this.frm.add_custom_button(__('Link to Material Requests'), function() { erpnext.buying.link_to_mrs(me.frm); diff --git a/erpnext/public/js/controllers/buying.js b/erpnext/public/js/controllers/buying.js index 62da7f5c5b..8cae7a5b3d 100644 --- a/erpnext/public/js/controllers/buying.js +++ b/erpnext/public/js/controllers/buying.js @@ -363,54 +363,54 @@ erpnext.buying.link_to_mrs = function(frm) { frappe.call({ method: "erpnext.buying.utils.get_linked_material_requests", args:{ - items: frm.doc.items.map((item) => {return item.item_code;}) + items: frm.doc.items.map((item) => item.item_code) }, callback: function(r) { - if(!r.message || r.message.length == 0) { - frappe.throw({message: __("No pending Material Requests found to link for the given items."), title: __("Note")}); + if (!r.message || r.message.length == 0) { + frappe.throw({ + message: __("No pending Material Requests found to link for the given items."), + title: __("Note") + }); } - else { - var i = 0; - var item_length = frm.doc.items.length; - while (i < item_length) { - var qty = frm.doc.items[i].qty; - (r.message[0] || []).forEach(function(d) { - if (d.qty > 0 && qty > 0 && frm.doc.items[i].item_code == d.item_code && !frm.doc.items[i].material_request_item) + + var item_length = frm.doc.items.length; + for (let item of frm.doc.items) { + var qty = item.qty; + (r.message[0] || []).forEach(function(d) { + if (d.qty > 0 && qty > 0 && item.item_code == d.item_code && !item.material_request_item) + { + item.material_request = d.mr_name; + item.material_request_item = d.mr_item; + var my_qty = Math.min(qty, d.qty); + qty = qty - my_qty; + d.qty = d.qty - my_qty; + item.stock_qty = my_qty*item.conversion_factor; + item.qty = my_qty; + + frappe.msgprint("Assigning " + d.mr_name + " to " + d.item_code + " (row " + item.idx + ")"); + if (qty > 0) { - frm.doc.items[i].material_request = d.mr_name; - frm.doc.items[i].material_request_item = d.mr_item; - var my_qty = Math.min(qty, d.qty); - qty = qty - my_qty; - d.qty = d.qty - my_qty; - frm.doc.items[i].stock_qty = my_qty*frm.doc.items[i].conversion_factor; - frm.doc.items[i].qty = my_qty; + frappe.msgprint("Splitting " + qty + " units of " + d.item_code); + var newrow = frappe.model.add_child(frm.doc, item.doctype, "items"); + item_length++; - frappe.msgprint("Assigning " + d.mr_name + " to " + d.item_code + " (row " + frm.doc.items[i].idx + ")"); - if (qty > 0) + for (var key in item) { - frappe.msgprint("Splitting " + qty + " units of " + d.item_code); - var newrow = frappe.model.add_child(frm.doc, frm.doc.items[i].doctype, "items"); - item_length++; - - for (var key in frm.doc.items[i]) - { - newrow[key] = frm.doc.items[i][key]; - } - - newrow.idx = item_length; - newrow["stock_qty"] = newrow.conversion_factor*qty; - newrow["qty"] = qty; - - newrow["material_request"] = ""; - newrow["material_request_item"] = ""; - + newrow[key] = item[key]; } + + newrow.idx = item_length; + newrow["stock_qty"] = newrow.conversion_factor*qty; + newrow["qty"] = qty; + + newrow["material_request"] = ""; + newrow["material_request_item"] = ""; + } - }); - i++; - } - refresh_field("items"); + } + }); } + refresh_field("items"); } }); }