From e3a7c68d4fd87bb64f71f3b745c840f6f8ebf5b7 Mon Sep 17 00:00:00 2001 From: Shreya Date: Wed, 31 Oct 2018 16:00:27 +0530 Subject: [PATCH] fix(portal): Add overdue status for sales order --- erpnext/selling/doctype/sales_order/sales_order.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/erpnext/selling/doctype/sales_order/sales_order.py b/erpnext/selling/doctype/sales_order/sales_order.py index db39545c57..a7b4a3e2c9 100755 --- a/erpnext/selling/doctype/sales_order/sales_order.py +++ b/erpnext/selling/doctype/sales_order/sales_order.py @@ -5,7 +5,7 @@ from __future__ import unicode_literals import frappe import json import frappe.utils -from frappe.utils import cstr, flt, getdate, comma_and, cint +from frappe.utils import cstr, flt, getdate, comma_and, cint, nowdate from frappe import _ from frappe.model.utils import get_fetch_values from frappe.model.mapper import get_mapped_doc @@ -346,7 +346,15 @@ class SalesOrder(SellingController): def set_indicator(self): """Set indicator for portal""" - if self.per_billed < 100 and self.per_delivered < 100: + if self.status == 'Closed': + self.indicator_color = "green" + self.indicator_title = _("Closed") + + elif self.per_delivered < 100 and getdate(self.delivery_date) < getdate(nowdate()): + self.indicator_color = "red" + self.indicator_title = _("Overdue") + + elif self.per_billed < 100 and self.per_delivered < 100: self.indicator_color = "orange" self.indicator_title = _("Not Paid and Not Delivered")