From eb17d717dde15cf7a5f004c4b3b69544380771ba Mon Sep 17 00:00:00 2001 From: pranaysaidurga Date: Wed, 3 Jun 2026 10:55:50 +0530 Subject: [PATCH] Project Changes --- .../models/project_task.py | 18 +-- .../view/project_by_module.xml | 78 +++++----- .../view/project_task.xml | 141 +++++++++--------- .../wizards/task_reject_reason_wizard.py | 18 ++- .../wizards/task_reject_reason_wizard.xml | 7 +- 5 files changed, 130 insertions(+), 132 deletions(-) diff --git a/addons_extensions/project_task_timesheet_extended/models/project_task.py b/addons_extensions/project_task_timesheet_extended/models/project_task.py index 28c173e88..ae3b79e44 100644 --- a/addons_extensions/project_task_timesheet_extended/models/project_task.py +++ b/addons_extensions/project_task_timesheet_extended/models/project_task.py @@ -46,7 +46,7 @@ class projectTask(models.Model): ('normal', 'Normal'), ], compute='_compute_deadline_status') - model_id = fields.Many2one('project.module.source', string="Module", related='project_id.module_id', store=True, readonly=True) + model_id = fields.Many2one('project.module.source', string="Module", store=True, readonly=True) task_display_id = fields.Char(string="Task ID", compute="_compute_kanban_display_fields", compute_sudo=True) module_display_name = fields.Char(string="Module", compute="_compute_kanban_display_fields", compute_sudo=True) allocation_start_date = fields.Date(string="Allocation Start Date") @@ -54,11 +54,11 @@ class projectTask(models.Model): reassignment_history = fields.Html(string="Reassignment History", readonly=True) - @api.depends('sequence_name', 'project_id', 'project_id.module_id', 'project_id.module_id.name', 'model_id', 'model_id.name') + @api.depends('sequence_name', 'project_id', 'model_id', 'model_id.name') def _compute_kanban_display_fields(self): for task in self: task.task_display_id = task.sequence_name or ("TASK-%03d" % task.id if task.id else "New Task") - module = task.model_id or task.project_id.module_id + module = task.model_id task.module_display_name = module.name if module else "No Module" @api.depends('date_deadline') @@ -841,7 +841,7 @@ class projectTask(models.Model): task.stage_id = n_stage task.approval_status = "approved" - activity_log = "%s: ✅ approved by %s and moved to %s" % ( + activity_log = "%s: approved by %s and moved to %s" % ( current_stage.name, self.env.user.employee_id.name, n_stage.name) @@ -849,7 +849,7 @@ class projectTask(models.Model): # Use the helper method to add activity log task._add_activity_log(activity_log) - user_notes = "%s: ✅ moved to %s and awaiting your completion" % ( + user_notes = "%s: moved to %s and awaiting your completion" % ( task.sequence_name, n_stage.name ) @@ -882,9 +882,9 @@ class projectTask(models.Model): ) else: task.approval_status = "approved" - notes = "%s: ✅ Task approved and completed by %s" % (task.sequence_name, self.env.user.employee_id.name) + notes = "%s: Task approved and completed by %s" % (task.sequence_name, self.env.user.employee_id.name) - activity_log = "%s: ✅ approved by %s" % ( + activity_log = "%s: approved by %s" % ( current_stage.name, self.env.user.employee_id.name) @@ -920,9 +920,9 @@ class projectTask(models.Model): # Optional: find previous stage if you want to send back stage = task.assignees_timelines.filtered(lambda s: s.stage_id == task.stage_id) - notes = "%s: ❌ %s rejected by %s" % (task.sequence_name, current_stage.name, self.env.user.employee_id.name) + notes = "%s: %s rejected by %s" % (task.sequence_name, current_stage.name, self.env.user.employee_id.name) - activity_log = "%s: ❌ rejected by %s: %s" % ( + activity_log = "%s: rejected by %s: %s" % ( current_stage.name, self.env.user.employee_id.name, reason) diff --git a/addons_extensions/project_task_timesheet_extended/view/project_by_module.xml b/addons_extensions/project_task_timesheet_extended/view/project_by_module.xml index c2183fdd4..cdd953ecd 100644 --- a/addons_extensions/project_task_timesheet_extended/view/project_by_module.xml +++ b/addons_extensions/project_task_timesheet_extended/view/project_by_module.xml @@ -1,49 +1,6 @@ - - project.project.form.module.inherit - project.project - - - - - - - - - - project.project.search.project.by.module - project.project - - - - - - - - - - Project by Module - project.project - kanban,list,form,calendar,activity - - {'search_default_group_by_module': 1} - -

- No projects found. -

-

- Create projects and set their Module to review projects module-wise. -

-
-
- - project.project.kanban.portfolio.inherit @@ -79,6 +36,41 @@ + + + project.task.search.project.by.module + project.task + + + + + + + + + + + + Project by Module + project.task + kanban,list,form,calendar,activity + + {'search_default_group_by_module': 1} + +

+ No projects found. +

+

+ Create projects and set their Module to review projects module-wise. +

+
+
+ +
diff --git a/addons_extensions/project_task_timesheet_extended/view/project_task.xml b/addons_extensions/project_task_timesheet_extended/view/project_task.xml index c56a36292..3cb84e356 100644 --- a/addons_extensions/project_task_timesheet_extended/view/project_task.xml +++ b/addons_extensions/project_task_timesheet_extended/view/project_task.xml @@ -24,13 +24,13 @@ THIS TASK IS CURRENTLY PAUSED - -