opt chart

This commit is contained in:
ivan deng
2019-04-14 20:35:19 +08:00
parent c68c11ae1b
commit 3a4ce339e0
29 changed files with 543 additions and 21 deletions

View File

@@ -0,0 +1,26 @@
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
from odoo import api, fields, models, tools, _
class Users(models.Model):
_inherit = "res.users"
# 注意res.partner 有 parent_id 和 child_ids
_parent_name = "user_parent_id"
_parent_store = True
parent_path = fields.Char(index=True)
user_parent_id = fields.Many2one('res.users', string='Parent User', index=True)
user_child_ids = fields.One2many('res.users', 'user_parent_id', string='Sub Users', domain=[('active', '=', True)])
user_child_all_count = fields.Integer(
'Indirect Surbordinates Count',
compute='_compute_user_child_all_count', store=False)
@api.depends('user_child_ids.user_child_all_count')
def _compute_user_child_all_count(self):
for rec in self:
rec.user_child_all_count = len(rec.user_child_ids) + sum(child.user_child_all_count for child in rec.user_child_ids)