my tasks issue fix
This commit is contained in:
parent
c9746456b8
commit
f6bfd46f2c
|
|
@ -460,16 +460,44 @@ class projectTask(models.Model):
|
||||||
task.suggested_deadline.strftime('%Y-%m-%d %H:%M') if task.suggested_deadline else _('Not available')
|
task.suggested_deadline.strftime('%Y-%m-%d %H:%M') if task.suggested_deadline else _('Not available')
|
||||||
))
|
))
|
||||||
|
|
||||||
@api.depends("project_id")
|
@api.depends("project_id", "stage_id")
|
||||||
def _compute_has_supervisor_access(self):
|
def _compute_has_supervisor_access(self):
|
||||||
for task in self:
|
administrative_users = self.env['project.role'].search([
|
||||||
current_user = self.env.user
|
('role_level', '=', 'administrative')
|
||||||
task.has_supervisor_access = False
|
]).user_ids
|
||||||
administrative_users = self.env['project.role'].search([('role_level', '=', 'administrative')])
|
|
||||||
first_stage = self.project_id.type_ids.sorted(key=lambda r: r.sequence)[0]
|
|
||||||
create_access_users = first_stage.team_id.team_lead + first_stage.involved_user_ids + administrative_users.user_ids
|
|
||||||
|
|
||||||
if current_user.has_group("project.group_project_manager") or current_user == task.project_id.user_id or current_user == task.project_id.project_lead or (current_user.id in list(set(create_access_users.ids)) and task.stage_id.id == first_stage.id):
|
current_user = self.env.user
|
||||||
|
|
||||||
|
for task in self:
|
||||||
|
task.has_supervisor_access = False
|
||||||
|
|
||||||
|
project = task.project_id
|
||||||
|
|
||||||
|
if not project:
|
||||||
|
continue
|
||||||
|
|
||||||
|
stages = project.type_ids.sorted("sequence")
|
||||||
|
|
||||||
|
if not stages:
|
||||||
|
continue
|
||||||
|
|
||||||
|
first_stage = stages[0]
|
||||||
|
|
||||||
|
create_access_users = (
|
||||||
|
first_stage.team_id.team_lead
|
||||||
|
+ first_stage.involved_user_ids
|
||||||
|
+ administrative_users
|
||||||
|
)
|
||||||
|
|
||||||
|
if (
|
||||||
|
current_user.has_group("project.group_project_manager")
|
||||||
|
or current_user == project.user_id
|
||||||
|
or current_user == project.project_lead
|
||||||
|
or (
|
||||||
|
current_user in create_access_users
|
||||||
|
and task.stage_id == first_stage
|
||||||
|
)
|
||||||
|
):
|
||||||
task.has_supervisor_access = True
|
task.has_supervisor_access = True
|
||||||
|
|
||||||
@api.depends('assignees_timelines.estimated_time', 'show_approval_flow')
|
@api.depends('assignees_timelines.estimated_time', 'show_approval_flow')
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue