mirror of
https://github.com/OCA/pms.git
synced 2025-01-29 00:17:45 +02:00
[WIP] Refactoring Groups
This commit is contained in:
@@ -3,6 +3,7 @@
|
||||
from . import hotel_node
|
||||
from . import hotel_node_user
|
||||
from . import hotel_node_group
|
||||
from . import hotel_node_group_remote
|
||||
from . import hotel_node_room
|
||||
from . import hotel_node_room_type
|
||||
from . import inherited_res_partner
|
||||
|
||||
@@ -42,8 +42,10 @@ class HotelNode(models.Model):
|
||||
user_ids = fields.One2many('hotel.node.user', 'node_id',
|
||||
'Users with access to this hotel')
|
||||
|
||||
group_ids = fields.Many2many('hotel.node.group', 'hotel_node_group_rel', 'node_id', 'group_id',
|
||||
string='Access Groups')
|
||||
# group_ids = fields.Many2many('hotel.node.group', 'hotel_node_group_rel', 'node_id', 'group_id',
|
||||
# string='Access Groups')
|
||||
group_ids = fields.One2many('hotel.node.group.remote', 'node_id',
|
||||
'Access Groups')
|
||||
|
||||
room_type_ids = fields.One2many('hotel.node.room.type', 'node_id',
|
||||
'Rooms Type in this hotel')
|
||||
|
||||
@@ -20,8 +20,10 @@ class HotelNodeGroup(models.Model):
|
||||
help="Gives the sequence order when displaying the list of Groups.")
|
||||
|
||||
name = fields.Char(required=True, translate=True)
|
||||
node_ids = fields.Many2many('project.project', 'hotel_node_group_rel', 'group_id', 'node_id',
|
||||
string='Hotels')
|
||||
# node_ids = fields.Many2many('project.project', 'hotel_node_group_rel', 'group_id', 'node_id',
|
||||
# string='Hotels')
|
||||
remote_group_ids = fields.One2many('hotel.node.group.remote', 'group_id',
|
||||
'Access Groups')
|
||||
user_ids = fields.Many2many('hotel.node.user', 'hotel_node_user_group_rel', 'group_id', 'user_id',
|
||||
string='Users')
|
||||
# xml_id represents the complete module.name, xml_id = ("%s.%s" % (data['module'], data['name']))
|
||||
@@ -32,5 +34,6 @@ class HotelNodeGroup(models.Model):
|
||||
|
||||
_sql_constraints = [
|
||||
('xml_id_uniq', 'unique (odoo_version, xml_id)',
|
||||
'_(The external identifier of the group must be unique within an Odoo version!')
|
||||
'The external identifier of the group must be unique within an Odoo version!')
|
||||
]
|
||||
|
||||
|
||||
25
hotel_node_master/models/hotel_node_group_remote.py
Normal file
25
hotel_node_master/models/hotel_node_group_remote.py
Normal file
@@ -0,0 +1,25 @@
|
||||
# Copyright 2018 Pablo Q. Barriuso
|
||||
# Copyright 2018 Alexandre Díaz
|
||||
# Copyright 2018 Dario Lodeiros
|
||||
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
||||
|
||||
import logging
|
||||
from odoo import models, fields, api, _
|
||||
|
||||
_logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
class HotelNodeGroupRemote(models.Model):
|
||||
_name = "hotel.node.group.remote"
|
||||
_description = "Remote Access Groups IDs"
|
||||
|
||||
node_id = fields.Many2one('project.project', 'Hotel', required=True)
|
||||
group_id = fields.Many2one('hotel.node.group', 'Group', require=True)
|
||||
name = fields.Char(related='group_id.name')
|
||||
remote_group_id = fields.Integer(require=True, copy=False, readonly=True,
|
||||
help="ID of the target record in the remote database")
|
||||
|
||||
_sql_constraints = [
|
||||
('node_remote_group_id_uniq', 'unique (node_id, remote_group_id)',
|
||||
'The remote identifier of the group must be unique within a Node!')
|
||||
]
|
||||
Reference in New Issue
Block a user