diff --git a/hotel_door_codes/__manifest__.py b/hotel_door_codes/__manifest__.py index 299e75b83..b08654307 100644 --- a/hotel_door_codes/__manifest__.py +++ b/hotel_door_codes/__manifest__.py @@ -21,21 +21,22 @@ { 'name': 'Hotel Door Codes', - 'version': '2.1', + 'version': '3.0', 'author': "Jose Luis Algara Toledo ", 'website': 'https://www.aldahotels.com', 'category': 'hotel code', 'summary': "Generate Hotel door codes, in Pseudo random system", - 'description': "Hotel Door Codes", + 'description': "Hotel Door Codes. Now multihotel", 'depends': [ - 'hotel', 'hotel_l10n_es' + 'hotel', + # 'hotel_l10n_es' ], 'data': [ 'wizard/door_code.xml', 'data/menus.xml', - 'views/inherit_res_company.xml', + 'views/inherit_hotel_property.xml', 'views/inherit_hotel_reservation.xml', - 'views/inherit_report_viajero.xml', + # 'views/inherit_report_viajero.xml', ], 'qweb': [], 'test': [ diff --git a/hotel_door_codes/data/menus.xml b/hotel_door_codes/data/menus.xml index ce3b25d84..ca4aa8714 100644 --- a/hotel_door_codes/data/menus.xml +++ b/hotel_door_codes/data/menus.xml @@ -3,7 +3,7 @@ \n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: \n" +"Language: es\n" +"X-Generator: Poedit 2.0.6\n" + +#. module: hotel_door_codes +#: code:addons/hotel_door_codes/wizard/door_code.py:66 +#, python-format +msgid " to:" +msgstr " a:" + +#. module: hotel_door_codes +#: code:addons/hotel_door_codes/models/inherit_hotel_reservation.py:51 +#, python-format +msgid " to: " +msgstr " a: " + +#. module: hotel_door_codes +#: model:ir.model.fields,field_description:hotel_door_codes.field_hotel_reservation_box_number +msgid "Box Number" +msgstr "Numero de caja" + +#. module: hotel_door_codes +#: model:ir.model.fields,field_description:hotel_door_codes.field_hotel_reservation_box_code +msgid "Box code" +msgstr "Código de caja" + +#. module: hotel_door_codes +#: model:ir.model.fields,field_description:hotel_door_codes.field_hotel_property_postcode +msgid "Characters after the code" +msgstr "Caracteres después del código" + +#. module: hotel_door_codes +#: model:ir.model.fields,field_description:hotel_door_codes.field_hotel_property_precode +msgid "Characters before the door code" +msgstr "Caracteres antes del código de la puerta" + +#. module: hotel_door_codes +#: model:ir.ui.menu,name:hotel_door_codes.menu_hotel_door_code +msgid "Check door codes" +msgstr "Ver códigos de puertas" + +#. module: hotel_door_codes +#: model:ir.model,name:hotel_door_codes.model_res_company +msgid "Companies" +msgstr "Empresas" + +#. module: hotel_door_codes +#: model:ir.model.fields,field_description:hotel_door_codes.field_door_code_create_uid +msgid "Created by" +msgstr "Creado por" + +#. module: hotel_door_codes +#: model:ir.model.fields,field_description:hotel_door_codes.field_door_code_create_date +msgid "Created on" +msgstr "Creado en" + +#. module: hotel_door_codes +#: model:ir.model.fields,field_description:hotel_door_codes.field_door_code_display_name +msgid "Display Name" +msgstr "Nombre para mostrar" + +#. module: hotel_door_codes +#: model:ir.actions.act_window,name:hotel_door_codes.door_code_act +#: model:ir.model,name:hotel_door_codes.model_door_code +#: model:ir.ui.view,arch_db:hotel_door_codes.hotel_door_code_view +msgid "Door Code Generator" +msgstr "Generador de códigos de puerta" + +#. module: hotel_door_codes +#: model:ir.model.fields,field_description:hotel_door_codes.field_hotel_reservation_door_codes +#: model:ir.ui.view,arch_db:hotel_door_codes.door_code_view_property_form +msgid "Door Codes" +msgstr "Códigos de puerta" + +#. module: hotel_door_codes +#: model:ir.model.fields,field_description:hotel_door_codes.field_door_code_door_code +msgid "Door code" +msgstr "Código de puerta" + +#. module: hotel_door_codes +#: model:ir.model.fields,field_description:hotel_door_codes.field_door_code_date_end +msgid "End of period" +msgstr "Fin del periodo" + +#. module: hotel_door_codes +#: code:addons/hotel_door_codes/models/inherit_hotel_reservation.py:42 +#: code:addons/hotel_door_codes/wizard/door_code.py:57 +#, python-format +msgid "Entry Code: " +msgstr "Código de entrada: " + +#. module: hotel_door_codes +#: model:ir.ui.view,arch_db:hotel_door_codes.door_code_reservation_form +msgid "Entry Codes" +msgstr "Códigos de entrada" + +#. module: hotel_door_codes +#: model:ir.ui.view,arch_db:hotel_door_codes.hotel_door_code_view +msgid "Generate Code" +msgstr "Generar códigos" + +#. module: hotel_door_codes +#: model:ir.model,name:hotel_door_codes.model_hotel_property +msgid "Hotel" +msgstr "Hotel" + +#. module: hotel_door_codes +#: model:ir.model,name:hotel_door_codes.model_hotel_reservation +msgid "Hotel Reservation" +msgstr "Hotel Reservation" + +#. module: hotel_door_codes +#: model:ir.model.fields,field_description:hotel_door_codes.field_door_code_id +msgid "ID" +msgstr "ID" + +#. module: hotel_door_codes +#: code:addons/hotel_door_codes/wizard/door_code.py:64 +#, python-format +msgid "It will change on " +msgstr "Cambiará el " + +#. module: hotel_door_codes +#: code:addons/hotel_door_codes/models/inherit_hotel_reservation.py:49 +#, python-format +msgid "It will change on Monday " +msgstr "Cambiará el lunes " + +#. module: hotel_door_codes +#: model:ir.model.fields,field_description:hotel_door_codes.field_door_code___last_update +msgid "Last Modified on" +msgstr "Última modificación el" + +#. module: hotel_door_codes +#: model:ir.model.fields,field_description:hotel_door_codes.field_door_code_write_uid +msgid "Last Updated by" +msgstr "Última actualización por" + +#. module: hotel_door_codes +#: model:ir.model.fields,field_description:hotel_door_codes.field_door_code_write_date +msgid "Last Updated on" +msgstr "Ultima actualización en" + +#. module: hotel_door_codes +#: model:ir.model.fields,field_description:hotel_door_codes.field_door_code_date_start +msgid "Start of the period" +msgstr "Comienzo del periodo" diff --git a/hotel_door_codes/models/__init__.py b/hotel_door_codes/models/__init__.py index 71658e650..6ec88ba49 100644 --- a/hotel_door_codes/models/__init__.py +++ b/hotel_door_codes/models/__init__.py @@ -19,5 +19,5 @@ # along with this program. If not, see . # ############################################################################## -from . import inherit_res_company +from . import inherit_hotel_property from . import inherit_hotel_reservation diff --git a/hotel_door_codes/models/inherit_res_company.py b/hotel_door_codes/models/inherit_hotel_property.py similarity index 88% rename from hotel_door_codes/models/inherit_res_company.py rename to hotel_door_codes/models/inherit_hotel_property.py index 181d6424c..adad5943b 100644 --- a/hotel_door_codes/models/inherit_res_company.py +++ b/hotel_door_codes/models/inherit_hotel_property.py @@ -19,11 +19,11 @@ # along with this program. If not, see . # ############################################################################## -from openerp import models, fields, api +from openerp import models, fields -class Inherit_res_company(models.Model): - _inherit = 'res.company' +class InheritHotelProperty(models.Model): + _inherit = 'hotel.property' - precode = fields.Char('Characters before the door code', default='') - postcode = fields.Char('Characters after the code', default='') + precode = fields.Char('Characters before the door code', default=' ') + postcode = fields.Char('Characters after the code', default=' ') diff --git a/hotel_door_codes/models/inherit_hotel_reservation.py b/hotel_door_codes/models/inherit_hotel_reservation.py index 76f88b8ce..7527030b8 100644 --- a/hotel_door_codes/models/inherit_hotel_reservation.py +++ b/hotel_door_codes/models/inherit_hotel_reservation.py @@ -19,29 +19,15 @@ # along with this program. If not, see . # ############################################################################## -from openerp import models, fields, api -from datetime import datetime, date, time, timedelta +from openerp import models, fields, api, _ +from datetime import datetime, timedelta from openerp.tools import DEFAULT_SERVER_DATE_FORMAT class Inherit_hotel_reservation(models.Model): _inherit = 'hotel.reservation' - @api.multi - def doorcode4(self, fecha): - # Calculate de Door Code... need a date in String format "%Y-%m-%d" - compan = self.env.user.company_id - if not compan.precode: - compan.precode = "" - if not compan.postcode: - compan.postcode = "" - d = datetime.strptime(fecha, DEFAULT_SERVER_DATE_FORMAT) - dia_semana = datetime.weekday(d) # Dias a restar y ponerlo en lunes - d = d - timedelta(days=dia_semana) - dtxt = d.strftime('%s.%%06d') % d.microsecond - dtxt = compan.precode + dtxt[4:8] + compan.postcode - return dtxt - + # Default methods @api.multi def _compute_door_codes(self): for res in self: @@ -53,23 +39,41 @@ class Inherit_hotel_reservation(models.Model): res.checkout[:10], DEFAULT_SERVER_DATE_FORMAT) if datetime.weekday(salida) == 0: salida = salida - timedelta(days=1) - codes = (u'Código de entrada: ' + + codes = (_('Entry Code: ') + '' + res.doorcode4(datetime.strftime(entrada, "%Y-%m-%d")) + '') while entrada <= salida: if datetime.weekday(entrada) == 0: codes += ("
" + - u'Cambiará el Lunes ' + + _('It will change on Monday ') + datetime.strftime(entrada, "%d-%m-%Y") + - ' a: ' + + _(' to: ') + + '' + res.doorcode4(datetime.strftime( entrada, "%Y-%m-%d")) + '') entrada = entrada + timedelta(days=1) res.door_codes = codes - door_codes = fields.Html(u'Códigos de entrada', - compute='_compute_door_codes') - box_number = fields.Integer ('Numero de Caja') - box_code = fields.Char ('Cod. Caja') + # Fields declaration + door_codes = fields.Html( + 'Door Codes', + compute='_compute_door_codes') + box_number = fields.Integer('Box Number') + box_code = fields.Char('Box code') + + @api.multi + def doorcode4(self, fecha): + # Calculate de Door Code... need a date in String format "%Y-%m-%d" + compan = self.env.user.hotel_id + if not compan.precode: + compan.precode = " " + if not compan.postcode: + compan.postcode = " " + d = datetime.strptime(fecha, DEFAULT_SERVER_DATE_FORMAT) + dia_semana = datetime.weekday(d) # Dias a restar y ponerlo en lunes + d = d - timedelta(days=dia_semana) + dtxt = d.strftime('%s.%%06d') % d.microsecond + dtxt = compan.precode + dtxt[4:8] + compan.postcode + return dtxt diff --git a/hotel_door_codes/views/inherit_hotel_property.xml b/hotel_door_codes/views/inherit_hotel_property.xml new file mode 100644 index 000000000..602a1c46e --- /dev/null +++ b/hotel_door_codes/views/inherit_hotel_property.xml @@ -0,0 +1,20 @@ + + + + + + + door_code.config.view_property_form + hotel.property + + + + + + + + + + + + diff --git a/hotel_door_codes/views/inherit_hotel_reservation.xml b/hotel_door_codes/views/inherit_hotel_reservation.xml index 3c236a4e4..cc66dfea7 100644 --- a/hotel_door_codes/views/inherit_hotel_reservation.xml +++ b/hotel_door_codes/views/inherit_hotel_reservation.xml @@ -9,7 +9,7 @@ - + diff --git a/hotel_door_codes/views/inherit_report_viajero.xml b/hotel_door_codes/views/inherit_report_viajero.xml deleted file mode 100644 index 0e1257ddf..000000000 --- a/hotel_door_codes/views/inherit_report_viajero.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - diff --git a/hotel_door_codes/views/inherit_res_company.xml b/hotel_door_codes/views/inherit_res_company.xml deleted file mode 100644 index 5c367bdd6..000000000 --- a/hotel_door_codes/views/inherit_res_company.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - door_code.config.view_company_form - res.company - - - - - - - - - - - - diff --git a/hotel_door_codes/wizard/door_code.py b/hotel_door_codes/wizard/door_code.py index 334be679a..c2f0c33e4 100644 --- a/hotel_door_codes/wizard/door_code.py +++ b/hotel_door_codes/wizard/door_code.py @@ -18,38 +18,33 @@ # along with this program. If not, see . # ############################################################################## -import datetime -from datetime import datetime, date, time, timedelta +from datetime import datetime, timedelta from odoo import api, fields, models, _ -from openerp.tools import DEFAULT_SERVER_DATE_FORMAT +from odoo.tools import DEFAULT_SERVER_DATE_FORMAT class DoorCodeWizard(models.TransientModel): _name = 'door_code' + _description = 'Door Code Generator' - @api.model + # Default methods + @api.multi def _get_default_date_start(self): return datetime.now().strftime(DEFAULT_SERVER_DATE_FORMAT) - date_start = fields.Date("Inicio periodo", - default=_get_default_date_start) - date_end = fields.Date("Fin del periodo", - default=_get_default_date_start) - door_code = fields.Html(u'Código para la puerta') - - @api.multi - def doorcode4(self, fecha): - # Calculate de Door Code... need a date in String format "%Y-%m-%d" - compan = self.env.user.company_id - d = datetime.strptime(fecha, DEFAULT_SERVER_DATE_FORMAT) - dia_semana = datetime.weekday(d) # Dias a restar y ponerlo en lunes - d = d - timedelta(days=dia_semana) - dtxt = d.strftime('%s.%%06d') % d.microsecond - dtxt = compan.precode + dtxt[4:8] + compan.postcode - return dtxt + # Fields declaration + date_start = fields.Date( + "Start of the period", + default=_get_default_date_start) + date_end = fields.Date( + "End of period", + default=_get_default_date_start) + door_code = fields.Html("Door code") @api.multi def check_code(self): + reservation = self.env['hotel.reservation'] + entrada = datetime.strptime( self.date_start, DEFAULT_SERVER_DATE_FORMAT) if datetime.weekday(entrada) == 0: @@ -58,21 +53,25 @@ class DoorCodeWizard(models.TransientModel): self.date_end, DEFAULT_SERVER_DATE_FORMAT) if datetime.weekday(salida) == 0: salida = salida - timedelta(days=1) - codes = (u'Código de entrada: ' + + codes = (_('Entry Code: ') + '' + - self.doorcode4(self.date_start) + + reservation.doorcode4(self.date_start) + '') while entrada <= salida: if datetime.weekday(entrada) == 0: codes += ("
" + - u'Cambiará el Lunes ' + + _('It will change on ') + datetime.strftime(entrada, "%d-%m-%Y") + - ' a: ' + - self.doorcode4(datetime.strftime( + _(' to:') + + '' + + reservation.doorcode4(datetime.strftime( entrada, "%Y-%m-%d")) + '') entrada = entrada + timedelta(days=1) return self.write({ - 'door_code': codes + 'door_code': codes, + 'name': 'Ya te digo', + 'clear_breadcrumb': True, + 'target': 'current', }) diff --git a/hotel_door_codes/wizard/door_code.xml b/hotel_door_codes/wizard/door_code.xml index f0506a79c..ea1fc061c 100644 --- a/hotel_door_codes/wizard/door_code.xml +++ b/hotel_door_codes/wizard/door_code.xml @@ -2,7 +2,7 @@ - door_code.view + Door codes door_code