From b07b0a9e54630b94ddf7d8a6e701861907bffff3 Mon Sep 17 00:00:00 2001 From: Anand Doshi Date: Wed, 23 Sep 2015 15:52:11 +0530 Subject: [PATCH] [fix] Sales Order indicators for Maintenance --- .../doctype/sales_order/sales_order_list.js | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/erpnext/selling/doctype/sales_order/sales_order_list.js b/erpnext/selling/doctype/sales_order/sales_order_list.js index f51b7dc0b7..aab168eb98 100644 --- a/erpnext/selling/doctype/sales_order/sales_order_list.js +++ b/erpnext/selling/doctype/sales_order/sales_order_list.js @@ -1,14 +1,17 @@ frappe.listview_settings['Sales Order'] = { add_fields: ["base_grand_total", "customer_name", "currency", "delivery_date", "per_delivered", "per_billed", - "status"], + "status", "order_type"], get_indicator: function(doc) { if(doc.status==="Stopped") { return [__("Stopped"), "darkgrey", "status,=,Stopped"]; - } else if(flt(doc.per_delivered, 2) < 100 && frappe.datetime.get_diff(doc.delivery_date) < 0) { + + } else if (doc.order_type !== "Maintenance" + && flt(doc.per_delivered, 2) < 100 && frappe.datetime.get_diff(doc.delivery_date) < 0) { // to bill & overdue return [__("Overdue"), "red", "per_delivered,<,100|delivery_date,<,Today|status,!=,Stopped"]; - } else if(flt(doc.per_delivered, 2) < 100 && doc.status!=="Stopped") { + } else if (doc.order_type !== "Maintenance" + && flt(doc.per_delivered, 2) < 100 && doc.status!=="Stopped") { // not delivered if(flt(doc.per_billed, 2) < 100) { @@ -23,11 +26,14 @@ frappe.listview_settings['Sales Order'] = { "per_delivered,<,100|per_billed,=,100|status,!=,Stopped"]; } - } else if(flt(doc.per_delivered, 2) == 100 && flt(doc.per_billed, 2) < 100 && doc.status!=="Stopped") { + } else if ((doc.order_type === "Maintenance" || flt(doc.per_delivered, 2) == 100) + && flt(doc.per_billed, 2) < 100 && doc.status!=="Stopped") { + // to bill return [__("To Bill"), "orange", "per_delivered,=,100|per_billed,<,100|status,!=,Stopped"]; - } else if(flt(doc.per_delivered, 2) == 100 && flt(doc.per_billed, 2) == 100 && doc.status!=="Stopped") { + } else if((doc.order_type === "Maintenance" || flt(doc.per_delivered, 2) == 100) + && flt(doc.per_billed, 2) == 100 && doc.status!=="Stopped") { return [__("Completed"), "green", "per_delivered,=,100|per_billed,=,100|status,!=,Stopped"]; }