From 0ad55b15c5321ed3a0bbcbbaaaa0ca75552d0901 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E9=B9=8F=E5=AE=87?= <9664676+pengyuthon@user.noreply.gitee.com> Date: Mon, 22 Dec 2025 16:08:32 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- soong_workflow/wizard/soong_bounced_wizard.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/soong_workflow/wizard/soong_bounced_wizard.py b/soong_workflow/wizard/soong_bounced_wizard.py index 39df9fe8a..7ce7217d5 100644 --- a/soong_workflow/wizard/soong_bounced_wizard.py +++ b/soong_workflow/wizard/soong_bounced_wizard.py @@ -12,10 +12,13 @@ class SoongBouncedWizard(models.Model): res_model = fields.Char() def action_bounced(self): + current_user = self.env.user record = self.env[self.res_model].search([('id', '=', self.res_id)]) + is_admin = current_user.has_group('base.group_system') or current_user.has_group('base.group_admin') log_ids = record.log_ids.sorted('sequence') - if log_ids[-1].approval_state in ['1', '2']: - raise UserError('当前状态不可以收回') + if not is_admin: + if log_ids[-1].approval_state in ['1', '2']: + raise UserError('当前状态不可以收回') related_record = self.env[self.res_model].browse(self.res_id) if hasattr(related_record, 'self_users_ids'): related_record.self_users_ids = [(6, 0, [log_ids[-2].done_by.id])]