bemade-addons/bemade_document_versions/models/workflow.py

28 lines
1.1 KiB
Python

from odoo import models, fields, _
from odoo.exceptions import UserError
class WorkflowActionRuleRevision(models.Model):
_inherit = ['documents.workflow.rule']
create_model = fields.Selection(selection_add=[('documents.revision', "Revision")])
def create_record(self, documents=None):
rv = super().create_record(documents=documents)
if self.create_model == 'documents.revision':
if len(documents) != 1:
raise UserError(_('Document revisions must be added for one and '
'only one document at a time.'))
ctx = {'document_id': documents[0].id}
ctx.update(self._context)
return {
'type': 'ir.actions.act_window',
'res_model': 'documents.revision.wizard',
'name': 'New Revision',
'target': 'new',
'context': ctx,
'views': [(self.env.ref(
'bemade_document_versions.document_revision_wizard_view_form').id,
'form')],
'view_mode': 'form',
}