diff --git a/erpnext/buying/doctype/purchase_order/purchase_order.js b/erpnext/buying/doctype/purchase_order/purchase_order.js index 6a3f3166a4f01c5db6bce8255e47f66d879a44af..eb0c230f6595c181f64113234225d7a0ecfdc181 100644 --- a/erpnext/buying/doctype/purchase_order/purchase_order.js +++ b/erpnext/buying/doctype/purchase_order/purchase_order.js @@ -66,8 +66,11 @@ frappe.ui.form.on("Purchase Order", { get_materials_from_supplier: function(frm) { let po_details = []; - if (frm.doc.supplied_items && (flt(frm.doc.per_received, 2) == 100 || frm.doc.status === 'Closed')) { - frm.doc.supplied_items.forEach(d => { + if ( + frm.doc.supplied_items && + (flt(frm.doc.per_received, precision("per_received")) == 100 || frm.doc.status === "Closed") + ) { + frm.doc.supplied_items.forEach((d) => { if (d.total_supplied_qty && d.total_supplied_qty != d.consumed_qty) { po_details.push(d.name) } @@ -273,8 +276,8 @@ erpnext.buying.PurchaseOrderController = class PurchaseOrderController extends e if (!["Closed", "Delivered"].includes(doc.status)) { if ( this.frm.doc.status !== "Closed" && - flt(this.frm.doc.per_received, 2) < 100 && - flt(this.frm.doc.per_billed, 2) < 100 + flt(this.frm.doc.per_received, precision("per_received")) < 100 && + flt(this.frm.doc.per_billed, precision("per_billed")) < 100 ) { if (!this.frm.doc.__onload || this.frm.doc.__onload.can_update_items) { this.frm.add_custom_button(__('Update Items'), () => { @@ -288,7 +291,10 @@ erpnext.buying.PurchaseOrderController = class PurchaseOrderController extends e } } if (this.frm.has_perm("submit")) { - if(flt(doc.per_billed, 2) < 100 || flt(doc.per_received, 2) < 100) { + if ( + flt(doc.per_billed, precision("per_billed")) < 100 || + flt(doc.per_received, precision("per_received")) < 100 + ) { if (doc.status != "On Hold") { this.frm.add_custom_button(__('Hold'), () => this.hold_purchase_order(), __("Status")); } else{ @@ -311,7 +317,7 @@ erpnext.buying.PurchaseOrderController = class PurchaseOrderController extends e } if(doc.status != "Closed") { if (doc.status != "On Hold") { - if (flt(doc.per_received) < 100 && allow_receipt) { + if (flt(doc.per_received, precision("per_received")) < 100 && allow_receipt) { this.frm.add_custom_button( __("Purchase Receipt"), () => { @@ -336,7 +342,7 @@ erpnext.buying.PurchaseOrderController = class PurchaseOrderController extends e } } // Please do not add precision in the below flt function - if (flt(doc.per_billed) < 100) + if (flt(doc.per_billed, precision("per_billed")) < 100) this.frm.add_custom_button( __("Purchase Invoice"), () => { @@ -345,7 +351,7 @@ erpnext.buying.PurchaseOrderController = class PurchaseOrderController extends e __("Create") ); - if(flt(doc.per_billed, 2) < 100 && doc.status != "Delivered") { + if (flt(doc.per_billed, precision("per_billed")) < 100 && doc.status != "Delivered") { this.frm.add_custom_button( __('Payment'), () => this.make_payment_entry(), @@ -353,9 +359,14 @@ erpnext.buying.PurchaseOrderController = class PurchaseOrderController extends e ); } - if(flt(doc.per_billed, 2) < 100) { - this.frm.add_custom_button(__('Payment Request'), - function() { me.make_payment_request() }, __('Create')); + if (flt(doc.per_billed, precision("per_billed")) < 100) { + this.frm.add_custom_button( + __("Payment Request"), + function () { + me.make_payment_request(); + }, + __("Create") + ); } if (doc.docstatus === 1 && !doc.inter_company_order_reference) { diff --git a/erpnext/selling/doctype/sales_order/sales_order.js b/erpnext/selling/doctype/sales_order/sales_order.js index 26f75ec7a68fab3ee29d0151613c64221043c8a4..24e4b4afd02f60181f23902225c5a22e3d1fd3db 100644 --- a/erpnext/selling/doctype/sales_order/sales_order.js +++ b/erpnext/selling/doctype/sales_order/sales_order.js @@ -68,8 +68,8 @@ frappe.ui.form.on("Sales Order", { if (frm.doc.docstatus === 1) { if ( frm.doc.status !== "Closed" && - flt(frm.doc.per_delivered, 2) < 100 && - flt(frm.doc.per_billed, 2) < 100 && + flt(frm.doc.per_delivered, precision("per_delivered")) < 100 && + flt(frm.doc.per_billed, precision("per_billed")) < 100 && frm.has_perm("write") ) { frm.add_custom_button(__("Update Items"), () => { @@ -86,7 +86,7 @@ frappe.ui.form.on("Sales Order", { if ( frm.doc.__onload && frm.doc.__onload.has_unreserved_stock && - flt(frm.doc.per_picked) === 0 + flt(frm.doc.per_picked, precision("per_picked")) === 0 ) { frm.add_custom_button( __("Reserve"), @@ -659,7 +659,10 @@ erpnext.selling.SalesOrderController = class SalesOrderController extends erpnex __("Status") ); - if (flt(doc.per_delivered, 2) < 100 || flt(doc.per_billed, 2) < 100) { + if ( + flt(doc.per_delivered, precision("per_delivered")) < 100 || + flt(doc.per_billed, precision("per_billed")) < 100 + ) { // close this.frm.add_custom_button(__("Close"), () => this.close_sales_order(), __("Status")); } @@ -682,7 +685,10 @@ erpnext.selling.SalesOrderController = class SalesOrderController extends erpnex ) && !this.frm.doc.skip_delivery_note; if (this.frm.has_perm("submit")) { - if (flt(doc.per_delivered, 2) < 100 || flt(doc.per_billed, 2) < 100) { + if ( + flt(doc.per_delivered, precision("per_delivered")) < 100 || + flt(doc.per_billed, precision("per_billed")) < 100 + ) { // hold this.frm.add_custom_button( __("Hold"), @@ -700,8 +706,8 @@ erpnext.selling.SalesOrderController = class SalesOrderController extends erpnex if ( (!doc.__onload || !doc.__onload.has_reserved_stock) && - flt(doc.per_picked, 2) < 100 && - flt(doc.per_delivered, 2) < 100 && + flt(doc.per_picked, precision("per_picked")) < 100 && + flt(doc.per_delivered, precision("per_delivered")) < 100 && frappe.model.can_create("Pick List") ) { this.frm.add_custom_button( @@ -719,7 +725,7 @@ erpnext.selling.SalesOrderController = class SalesOrderController extends erpnex // delivery note if ( - flt(doc.per_delivered, 2) < 100 && + flt(doc.per_delivered, precision("per_delivered")) < 100 && (order_is_a_sale || order_is_a_custom_sale) && allow_delivery ) { @@ -741,7 +747,10 @@ erpnext.selling.SalesOrderController = class SalesOrderController extends erpnex } // sales invoice - if (flt(doc.per_billed, 2) < 100 && frappe.model.can_create("Sales Invoice")) { + if ( + flt(doc.per_billed, precision("per_billed")) < 100 && + frappe.model.can_create("Sales Invoice") + ) { this.frm.add_custom_button( __("Sales Invoice"), () => me.make_sales_invoice(), @@ -753,7 +762,7 @@ erpnext.selling.SalesOrderController = class SalesOrderController extends erpnex if ( (!doc.order_type || ((order_is_a_sale || order_is_a_custom_sale) && - flt(doc.per_delivered, 2) < 100)) && + flt(doc.per_delivered, precision("per_delivered")) < 100)) && frappe.model.can_create("Material Request") ) { this.frm.add_custom_button( @@ -778,7 +787,10 @@ erpnext.selling.SalesOrderController = class SalesOrderController extends erpnex } // maintenance - if (flt(doc.per_delivered, 2) < 100 && (order_is_maintenance || order_is_a_custom_sale)) { + if ( + flt(doc.per_delivered, precision("per_delivered")) < 100 && + (order_is_maintenance || order_is_a_custom_sale) + ) { if (frappe.model.can_create("Maintenance Visit")) { this.frm.add_custom_button( __("Maintenance Visit"), @@ -796,7 +808,10 @@ erpnext.selling.SalesOrderController = class SalesOrderController extends erpnex } // project - if (flt(doc.per_delivered, 2) < 100 && frappe.model.can_create("Project")) { + if ( + flt(doc.per_delivered, precision("per_delivered")) < 100 && + frappe.model.can_create("Project") + ) { this.frm.add_custom_button(__("Project"), () => this.make_project(), __("Create")); }