diff --git a/soong_workflow/models/soong_workflow_record.py b/soong_workflow/models/soong_workflow_record.py index 017640877..525673b07 100644 --- a/soong_workflow/models/soong_workflow_record.py +++ b/soong_workflow/models/soong_workflow_record.py @@ -981,23 +981,29 @@ class SoongWorkflowRecord(models.Model): }) def open_record(self): - """按「模型 + 记录 id」跳转到对应业务单据的表单""" - self.ensure_one() - if not self.res_model or not self.res_id: - raise UserError(_('该审批记录未关联业务单据,无法跳转')) - if self.res_model not in self.env: - raise UserError(_('系统中已不存在模型「%s」,无法跳转') % self.res_model) - if not self.env[self.res_model].sudo().browse(self.res_id).exists(): - raise UserError(_('对应的业务单据已不存在(%s #%s),无法跳转') - % (self.res_model, self.res_id)) return { "type": "ir.actions.act_window", - "name": self.name or self.res_model, "res_model": self.res_model, "res_id": self.res_id, + "name": self.name, "view_mode": "form", - "views": [(False, "form")], - "target": "current", + } + + def action_open_workflow_record(self): + """跳转到**本审批记录**(soong.workflow.record)的表单 + + 用「本模型 + 本记录 id」打开,用于查看该条审批的完整流转信息。 + (区别于 open_record:那个是跳到审批对应的**业务单据**。) + """ + self.ensure_one() + return { + 'type': 'ir.actions.act_window', + 'name': self.name or self.code or '审批记录', + 'res_model': 'soong.workflow.record', + 'res_id': self.id, + 'view_mode': 'form', + 'views': [(False, 'form')], + 'target': 'current', } @api.model diff --git a/yuthon_property/views/yuthon_property_views.xml b/yuthon_property/views/yuthon_property_views.xml index 8a9a1bd9b..a29047569 100644 --- a/yuthon_property/views/yuthon_property_views.xml +++ b/yuthon_property/views/yuthon_property_views.xml @@ -307,7 +307,7 @@ -