diff --git a/soong_workflow/models/soong_workflow_mixin.py b/soong_workflow/models/soong_workflow_mixin.py index 85dd557bb..5b05f0fd2 100644 --- a/soong_workflow/models/soong_workflow_mixin.py +++ b/soong_workflow/models/soong_workflow_mixin.py @@ -114,6 +114,16 @@ class SoongWorkflowMixin(models.AbstractModel): ] has_done = record.log_ids.search(domain_hide_done) + has_user_approved = False + if record.log_ids: + approved_log = record.log_ids.filtered( + lambda l: l.done_by == self.env.user + and l.approval_state == '2' + and l.node_btn_name != '1' + ) + if approved_log: + has_user_approved = True + # 如果有日志,取【第一个节点】的经办人 == 当前登录人 → 隐藏 (归档待办的除外) has_first_user = False if record.log_ids: @@ -130,7 +140,7 @@ class SoongWorkflowMixin(models.AbstractModel): has_log_ids2_user = self.env.user.id in record.log_ids2.mapped('done_by.id') # 任意一个条件满足 → 隐藏 - if has_01 or has_done or has_first_user or has_log_ids2_user: + if has_01 or has_done or has_first_user or has_log_ids2_user or has_user_approved: record.is_show_add_sign = False def _compute_is_show_transfer(self):