1
0
forked from Mapan/odoo17e
odoo17e-kedaikipas58/addons/approvals/models/approval_category_approver.py
2024-12-10 09:04:09 +07:00

28 lines
1.2 KiB
Python

# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
from odoo import api, fields, models
class ApprovalCategoryApprover(models.Model):
""" Intermediate model between approval.category and res.users
To know whether an approver for this category is required or not
"""
_name = 'approval.category.approver'
_description = 'Approval Type Approver'
_rec_name = 'user_id'
_order = 'sequence'
sequence = fields.Integer('Sequence', default=10)
category_id = fields.Many2one('approval.category', string='Approval Type', ondelete='cascade', required=True)
company_id = fields.Many2one('res.company', related='category_id.company_id')
user_id = fields.Many2one('res.users', string='User', ondelete='cascade', required=True,
check_company=True, domain="[('company_ids', 'in', company_id), ('id', 'not in', existing_user_ids)]")
required = fields.Boolean(default=False)
existing_user_ids = fields.Many2many('res.users', compute='_compute_existing_user_ids')
@api.depends('category_id')
def _compute_existing_user_ids(self):
for record in self:
record.existing_user_ids = record.category_id.approver_ids.user_id