diff --git a/hotel_l10n_es/views/report_viajero_document.xml b/hotel_l10n_es/views/report_viajero_document.xml index e66c18ce7..f73f112dc 100755 --- a/hotel_l10n_es/views/report_viajero_document.xml +++ b/hotel_l10n_es/views/report_viajero_document.xml @@ -56,6 +56,7 @@ Asimismo hemos solicitado que confirme esta autorización para ofrecerle nuestros servicios y poder fidelizarle como cliente.

+

diff --git a/hotel_roommatik/data/res_users_data.xml b/hotel_roommatik/data/res_users_data.xml new file mode 100644 index 000000000..7733dfa9d --- /dev/null +++ b/hotel_roommatik/data/res_users_data.xml @@ -0,0 +1,23 @@ + + + + + + Roommatik + + + + + + roommatik@roommatik.com + + + + + + --
+Roommatik]]>
+ +
+
+
diff --git a/hotel_roommatik/models/inherited_hotel_checkin_partner.py b/hotel_roommatik/models/inherited_hotel_checkin_partner.py index 99b07e1f0..6938762e0 100644 --- a/hotel_roommatik/models/inherited_hotel_checkin_partner.py +++ b/hotel_roommatik/models/inherited_hotel_checkin_partner.py @@ -3,6 +3,9 @@ import json from odoo import api, models +from odoo.addons.hotel_roommatik.models.roommatik import ( + DEFAULT_ROOMMATIK_DATE_FORMAT, + DEFAULT_ROOMMATIK_DATETIME_FORMAT from datetime import datetime import logging @@ -13,9 +16,20 @@ class HotelFolio(models.Model): @api.model def rm_checkin_partner(self, stay): _logger = logging.getLogger(__name__) - # CHECK-IN - reservation_rm = self.env['hotel.reservation'].browse(stay['ReservationCode']) - # Need checkin? + if not stay.get('ReservationCode'): + reservation_obj = self.env['hotel.reservation'] + vals = { + checkin: datetime.strptime(stay["Arrival"], + DEFAULT_ROOMMATIK_DATE_FORMAT).date(), + checkout: datetime.strptime(stay["Departure"], + DEFAULT_ROOMMATIK_DATE_FORMAT).date(), + adults: stay['Adults'], + room_type_id: stay['RoomType'], + partner_id: stay["Customers"][0]["Id"] + } + reservation_rm = reservation_obj.create(vals) + else: + reservation_rm = self.env['hotel.reservation'].browse(stay['ReservationCode']) total_chekins = reservation_rm.checkin_partner_pending_count if total_chekins > 0 and len(stay["Customers"]) <= total_chekins: _logger.info('ROOMMATIK checkin %s customer in %s Reservation.', diff --git a/hotel_roommatik/models/inherited_hotel_reservation.py b/hotel_roommatik/models/inherited_hotel_reservation.py index 8c5e4a553..35f724fc8 100644 --- a/hotel_roommatik/models/inherited_hotel_reservation.py +++ b/hotel_roommatik/models/inherited_hotel_reservation.py @@ -2,9 +2,9 @@ # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). from odoo import api, models, fields -from odoo.tools import ( - DEFAULT_SERVER_DATE_FORMAT, - DEFAULT_SERVER_DATETIME_FORMAT) +from odoo.addons.hotel_roommatik.models.roommatik import ( + DEFAULT_ROOMMATIK_DATE_FORMAT, + DEFAULT_ROOMMATIK_DATETIME_FORMAT from datetime import datetime, timedelta from dateutil import tz import json diff --git a/hotel_roommatik/models/inherited_hotel_room_type.py b/hotel_roommatik/models/inherited_hotel_room_type.py index a43041662..af4e8631a 100644 --- a/hotel_roommatik/models/inherited_hotel_room_type.py +++ b/hotel_roommatik/models/inherited_hotel_room_type.py @@ -3,9 +3,9 @@ from odoo import api, models, fields from datetime import datetime, timedelta -from odoo.tools import ( - DEFAULT_SERVER_DATE_FORMAT, - DEFAULT_SERVER_DATETIME_FORMAT) +from odoo.addons.hotel_roommatik.models.roommatik import ( + DEFAULT_ROOMMATIK_DATE_FORMAT, + DEFAULT_ROOMMATIK_DATE_FORMAT) import logging _logger = logging.getLogger(__name__) @@ -22,7 +22,7 @@ class HotelRoomType(models.Model): dfrom = fields.Date.context_today(self.with_context( tz=tz_hotel)) dto = (fields.Date.from_string(dfrom) + timedelta(days=1)).strftime( - DEFAULT_SERVER_DATE_FORMAT) + DEFAULT_ROOMMATIK_DATE_FORMAT) room_type_rates = [] for room_type in room_types: free_rooms = self.check_availability_room_type(dfrom, dto, @@ -53,9 +53,9 @@ class HotelRoomType(models.Model): start_date = fields.Datetime.from_string(start_date) end_date = start_date + timedelta(days=number_intervals) dfrom = start_date.strftime( - DEFAULT_SERVER_DATE_FORMAT) + DEFAULT_ROOMMATIK_DATE_FORMAT) dto = end_date.strftime( - DEFAULT_SERVER_DATE_FORMAT) + DEFAULT_ROOMMATIK_DATE_FORMAT) free_rooms = self.check_availability_room_type(dfrom, dto, room_type.id) if free_rooms: diff --git a/hotel_roommatik/models/roommatik.py b/hotel_roommatik/models/roommatik.py index c9767be14..c5c5927c2 100755 --- a/hotel_roommatik/models/roommatik.py +++ b/hotel_roommatik/models/roommatik.py @@ -10,6 +10,11 @@ from odoo.tools import ( import logging _logger = logging.getLogger(__name__) +DEFAULT_ROOMMATIK_DATE_FORMAT = "%Y-%m-%d" +DEFAULT_ROOMMATIK_TIME_FORMAT = "%H:%M:%S" +DEFAULT_ROOMMATIK_DATETIME_FORMAT = "%s %s" % ( + DEFAULT_ROOMMATIK_DATE_FORMAT, + DEFAULT_ROOMMATIK_TIME_FORMAT) class RoomMatik(models.Model): _name = 'roommatik.api' @@ -21,7 +26,7 @@ class RoomMatik(models.Model): 'res.config.settings', 'tz_hotel') self_tz = self.with_context(tz=tz_hotel) mynow = fields.Datetime.context_timestamp(self_tz, datetime.now()).\ - strftime(DEFAULT_SERVER_DATETIME_FORMAT) + strftime(DEFAULT_ROOMMATIK_DATETIME_FORMAT) json_response = { 'dateTime': mynow } @@ -33,7 +38,7 @@ class RoomMatik(models.Model): # RoomMatik Gets a reservation ready for check-in # through the provided code. (MANDATORY) apidata = self.env['hotel.reservation'] - return apidata.rm_get_reservation(reservation_code) + return apidata.sudo().rm_get_reservation(reservation_code) @api.model def rm_add_customer(self, customer): diff --git a/hotel_roommatik/static/img/avatar.png b/hotel_roommatik/static/img/avatar.png new file mode 100644 index 000000000..2f06baf55 Binary files /dev/null and b/hotel_roommatik/static/img/avatar.png differ