议题和流程

This commit is contained in:
李鹏宇
2026-06-10 20:40:14 +08:00
parent 224c7cc7a6
commit 37d9fc43b5
@@ -5,6 +5,7 @@ from email.policy import default
from odoo import fields, models, api
from odoo.exceptions import UserError, ValidationError
from datetime import datetime, date, time, timedelta
from lxml import etree
import logging
_logger = logging.getLogger(__name__)
@@ -48,9 +49,17 @@ class SoongWorkflowCommentWizard(models.TransientModel):
if not self.is_avoid:
self.avoid_issue_ids = [(5, 0, 0)]
self.avoid_comment = False
else:
domain = [('id', 'in', self.allowed_issue_ids.ids)] if self.allowed_issue_ids else [('id', '=', False)]
return {'domain': {'avoid_issue_ids': domain}}
@api.model
def fields_view_get(self, view_id=None, view_type='form', toolbar=False, submenu=False):
res = super(SoongWorkflowCommentWizard, self).fields_view_get(
view_id=view_id, view_type=view_type, toolbar=toolbar, submenu=submenu)
if view_type == 'form':
doc = etree.fromstring(res['arch'])
for node in doc.xpath("//field[@name='avoid_issue_ids']"):
node.set('domain', "[('id', 'in', allowed_issue_ids)]")
res['arch'] = etree.tostring(doc, encoding='unicode')
return res
def _handle_avoidance(self):
"""回避处理:勾选回避且选了议题时,在对应议题中记录回避"""