# -*- coding: utf-8 -*- from odoo import models, fields, api, _ from odoo.exceptions import ValidationError, UserError import logging _logger = logging.getLogger(__name__) class SoongApprovalUsers(models.Model): _name = "soong.approval.users" _description = "Soong Approval Users" @api.model def default_get(self, fields): res = super().default_get(fields) if 'res_model_id' in fields and res.get('res_model'): res['res_model_id'] = self.env['ir.model']._get(res['res_model']).id return res # workflow_id = fields.Many2one("soong.workflow.mixin", string="Workflow Ref.", ondelete="cascade", required=True) res_model_id = fields.Many2one('ir.model', string='Model', index=True, ondelete='cascade') res_model = fields.Char('Workflow Ref Model', index=True, related='res_model_id.model', precompute=True, store=True, readonly=True) res_id = fields.Many2oneReference(string='Workflow Ref.', index=True, model_field='res_model') approval_user_id = fields.Many2one('res.users', string='审批人') approval_user = fields.Many2one('soong.user.role', string='审批角色') approval_user_datetime = fields.Datetime(string='审批时间') approval_user_notice = fields.Char(string='审批意见') approval_user_sign = fields.Binary(string='审批签署') approval_user_state = fields.Selection([('will', '待审批')], string='状态') @api.model_create_multi def create(self, vals_list): return super().create(vals_list)