!12922 添加功能

Merge pull request !12922 from 李鹏宇/dev_zhou
This commit is contained in:
李鹏宇
2026-09-24 11:51:48 +00:00
committed by Gitee
2 changed files with 19 additions and 13 deletions
+18 -12
View File
@@ -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
@@ -307,7 +307,7 @@
<field name="create_uid" string="发起人"/>
<field name="create_date" string="发起时间"/>
<field name="display_end_time" string="办结时间"/>
<button name="open_record" type="object" string="详情" class="btn btn-primary"/>
<button name="action_open_workflow_record" type="object" string="详情" class="btn btn-primary"/>
</tree>
</field>
</page>