diff --git a/yuthon_issue/models/issue_library.py b/yuthon_issue/models/issue_library.py index c493f82ed..b91fa324a 100644 --- a/yuthon_issue/models/issue_library.py +++ b/yuthon_issue/models/issue_library.py @@ -828,6 +828,16 @@ class IssueLibrary(models.Model): raise UserError('议题已上会,不能删除') return super().unlink() + def my_unlink(self): + is_admin = self.env.user.has_group('base.group_system') + current_user = self.env.user + for i in self: + if i.issue_state == 'on_meet': + raise UserError('议题已上会,不能删除') + if not is_admin: + if i.employee_id.user_id != current_user: + raise UserError('只能删除自己的记录,无权删除他人数据') + @api.depends('name') def _compute_name(self): for record in self: diff --git a/yuthon_issue/views/issue_library_views.xml b/yuthon_issue/views/issue_library_views.xml index d77ac0eb5..39b686e8d 100644 --- a/yuthon_issue/views/issue_library_views.xml +++ b/yuthon_issue/views/issue_library_views.xml @@ -4,7 +4,7 @@ issue.library.tree issue.library - @@ -39,7 +39,7 @@ invisible="issue_state == 'draft'" groups="soong_workflow.group_soong_workflow_manager"/>