From e71f26e7a2c30835cc1b9dfbd718ce8c28b2afbd Mon Sep 17 00:00:00 2001 From: Nihantra Patel Date: Fri, 5 Apr 2024 12:27:34 +0530 Subject: [PATCH] fix: update the task status from timesheet --- erpnext/projects/doctype/task/task.py | 2 -- erpnext/projects/doctype/timesheet/timesheet.py | 6 ++++++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/erpnext/projects/doctype/task/task.py b/erpnext/projects/doctype/task/task.py index cfed33eab6..bf0a24381c 100755 --- a/erpnext/projects/doctype/task/task.py +++ b/erpnext/projects/doctype/task/task.py @@ -193,8 +193,6 @@ class Task(NestedSet): self.name, as_dict=1, )[0] - if self.status == "Open": - self.status = "Working" self.total_costing_amount = tl.total_costing_amount self.total_billing_amount = tl.total_billing_amount self.actual_time = tl.time diff --git a/erpnext/projects/doctype/timesheet/timesheet.py b/erpnext/projects/doctype/timesheet/timesheet.py index 7f90ef2304..e3e0d5224b 100644 --- a/erpnext/projects/doctype/timesheet/timesheet.py +++ b/erpnext/projects/doctype/timesheet/timesheet.py @@ -120,6 +120,12 @@ class Timesheet(Document): if data.task and data.task not in tasks: task = frappe.get_doc("Task", data.task) task.update_time_and_costing() + time_logs_completed = all(tl.completed for tl in self.time_logs if tl.task == task.name) + + if time_logs_completed: + task.status = "Completed" + else: + task.status = "Working" task.save() tasks.append(data.task) -- GitLab