diff --git a/hotel/models/hotel_service_line.py b/hotel/models/hotel_service_line.py
index 7391fdb43..68d4fe446 100644
--- a/hotel/models/hotel_service_line.py
+++ b/hotel/models/hotel_service_line.py
@@ -1,7 +1,7 @@
# Copyright 2017-2018 Alexandre Díaz
# Copyright 2017 Dario Lodeiros
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
-from odoo import models, fields
+from odoo import models, fields, api
from odoo.addons import decimal_precision as dp
class HotelServiceLine(models.Model):
diff --git a/hotel/views/inherit_res_partner.xml b/hotel/views/inherit_res_partner.xml
index 80d3cc1e8..ef9fef94e 100644
--- a/hotel/views/inherit_res_partner.xml
+++ b/hotel/views/inherit_res_partner.xml
@@ -32,9 +32,6 @@
-
-
-
diff --git a/hotel_node_helper/models/inherited_hotel_room_type.py b/hotel_node_helper/models/inherited_hotel_room_type.py
index f0e9bd96b..0887b49c1 100644
--- a/hotel_node_helper/models/inherited_hotel_room_type.py
+++ b/hotel_node_helper/models/inherited_hotel_room_type.py
@@ -32,10 +32,34 @@ class HotelRoomType(models.Model):
('date', '>=', dfrom),
('date', '<', dto),
('room_type_id', '=', room_type_id),
+ ], ['avail']) or [{'avail': availability_real}]
- ], ['avail']) or float('inf')
-
- if isinstance(availability_plan, list):
- availability_plan = min([r['avail'] for r in availability_plan])
+ availability_plan = min([r['avail'] for r in availability_plan])
return min(availability_real, availability_plan)
+
+ @api.model
+ def get_room_type_price_unit(self, dfrom, dto, room_type_id):
+ # TODO review how to get the prices
+ reservation_line_ids = self.env['hotel.reservation'].prepare_reservation_lines(
+ dfrom,
+ (fields.Date.from_string(dto) - fields.Date.from_string(dfrom)).days,
+ {'room_type_id': room_type_id}
+ )
+ reservation_line_ids = reservation_line_ids['reservation_line_ids']
+ # QUESTION Why add [[5, 0, 0], ¿?
+ del reservation_line_ids[0]
+
+ return reservation_line_ids
+
+ @api.model
+ def get_room_type_restrictions(self, dfrom, dto, room_type_id):
+ restrictions_plan = self.env['hotel.room.type.restriction.item'].search_read([
+ ('date', '>=', dfrom),
+ ('date', '<', dto),
+ ('room_type_id', '=', room_type_id),
+ ], ['min_stay']) or [{'min_stay': 0}]
+
+ min_stay = max([r['min_stay'] for r in restrictions_plan])
+
+ return min_stay
diff --git a/hotel_node_master/__manifest__.py b/hotel_node_master/__manifest__.py
index fb227bb0c..ab8d8f1b7 100644
--- a/hotel_node_master/__manifest__.py
+++ b/hotel_node_master/__manifest__.py
@@ -14,12 +14,12 @@
{'python' : ['odoorpc']},
'license': "AGPL-3",
'data': [
+ 'wizards/wizard_hotel_node_reservation.xml',
'views/hotel_node.xml',
'views/hotel_node_user.xml',
'views/hotel_node_group.xml',
'views/hotel_node_room_type.xml',
'views/inherited_res_partner_views.xml',
- 'wizards/wizard_hotel_node_reservation.xml',
'security/hotel_node_security.xml',
'security/ir.model.access.csv'
],
diff --git a/hotel_node_master/models/hotel_node.py b/hotel_node_master/models/hotel_node.py
index 7f1575236..f6863cbb4 100644
--- a/hotel_node_master/models/hotel_node.py
+++ b/hotel_node_master/models/hotel_node.py
@@ -145,6 +145,13 @@ class HotelNode(models.Model):
master_ids = [r['id'] for r in master_users]
remote_ids = [r['remote_user_id'] for r in master_users]
+ # For the first hotel, gui_ids and xml_ids is empty. You must recover the previously written groups
+ master_groups = self.env["hotel.node.group"].search_read(
+ [('odoo_version', '=', self.odoo_version)], ['xml_id'])
+
+ gui_ids = [r['id'] for r in master_groups]
+ xml_ids = [r['xml_id'] for r in master_groups]
+
user_ids = []
for user in remote_users:
group_ids = []
diff --git a/hotel_node_master/views/hotel_node.xml b/hotel_node_master/views/hotel_node.xml
index f30470568..b7db33479 100644
--- a/hotel_node_master/views/hotel_node.xml
+++ b/hotel_node_master/views/hotel_node.xml
@@ -8,11 +8,16 @@
+
+
+ hotel.node.reservation.wizard.search
+ node.search.wizard
+
+
+
+
+
+
+ hotel.node.reservation.wizard.edit
+ node.folio.wizard
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Hotel Reservation Wizard
+ ir.actions.act_window
+ hotel.node.reservation.wizard
+ form
+ form
+ new
+
+
+
+ Hotel Reservation Wizard Search
+ ir.actions.act_window
+ node.search.wizard
+ form
+ form
+ new
+
+