From 89592c51804b110462a73d5e6f851449062dfda3 Mon Sep 17 00:00:00 2001 From: Nabin Hait <nabinhait@gmail.com> Date: Fri, 12 Jun 2015 17:37:28 +0530 Subject: [PATCH] Load tasks in project for printing purpose --- erpnext/projects/doctype/project/project.py | 30 ++++++++++++--------- 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/erpnext/projects/doctype/project/project.py b/erpnext/projects/doctype/project/project.py index 37a8b1b967..05e40388bf 100644 --- a/erpnext/projects/doctype/project/project.py +++ b/erpnext/projects/doctype/project/project.py @@ -13,19 +13,25 @@ class Project(Document): def get_feed(self): return '{0}: {1}'.format(_(self.status), self.project_name) - def __setup__(self): + def onload(self): """Load project tasks for quick view""" - self.tasks = [] - for task in frappe.get_all("Task", "*", {"project": self.name}, order_by="exp_start_date asc"): - self.append("tasks", { - "title": task.subject, - "status": task.status, - "start_date": task.exp_start_date, - "end_date": task.exp_end_date, - "description": task.description, - "task_id": task.name - }) - + if not self.get("tasks"): + for task in self.get_tasks(): + self.append("tasks", { + "title": task.subject, + "status": task.status, + "start_date": task.exp_start_date, + "end_date": task.exp_end_date, + "description": task.description, + "task_id": task.name + }) + + def __setup__(self): + self.onload() + + def get_tasks(self): + return frappe.get_all("Task", "*", {"project": self.name}, order_by="exp_start_date asc") + def validate(self): self.validate_dates() self.sync_tasks()