Fix
This commit is contained in:
parent
ee25c6aa56
commit
8e98f84431
14
booking.py
14
booking.py
|
@ -778,20 +778,6 @@ class Booking(Workflow, ModelSQL, ModelView):
|
|||
Folio = Pool().get('hotel.folio')
|
||||
Folio.write(list(self.lines), {'registration_state': state})
|
||||
|
||||
def check_rooms(self):
|
||||
Housekeeping = Pool().get('hotel.housekeeping')
|
||||
rooms_ids = []
|
||||
for folio in self.lines:
|
||||
if folio.registration_state == 'check_out':
|
||||
continue
|
||||
rooms_ids.append(folio.room.id)
|
||||
housekeepings = Housekeeping.search([
|
||||
('state', '!=', 'clean')
|
||||
])
|
||||
for hk in housekeepings:
|
||||
if hk.room.id in rooms_ids:
|
||||
raise UserError(gettext('hotel.msg_room_no_clean', s=hk.room.name))
|
||||
|
||||
@classmethod
|
||||
def get_context_price(cls,
|
||||
product, party=None, currency=None, _date=None, price_list=None,
|
||||
|
|
|
@ -189,6 +189,14 @@ this repository contains the full copyright notices and license terms. -->
|
|||
<field name="perm_create" eval="False"/>
|
||||
<field name="perm_delete" eval="True"/>
|
||||
</record>
|
||||
<record model="ir.model.access" id="access_booking_group_hotel_frontdesk">
|
||||
<field name="model" search="[('model', '=', 'hotel.booking')]"/>
|
||||
<field name="group" ref="group_hotel_frontdesk"/>
|
||||
<field name="perm_read" eval="True"/>
|
||||
<field name="perm_write" eval="True"/>
|
||||
<field name="perm_create" eval="True"/>
|
||||
<field name="perm_delete" eval="False"/>
|
||||
</record>
|
||||
<record model="ir.model.access" id="access_booking_group_hotel_admin">
|
||||
<field name="model" search="[('model', '=', 'hotel.booking')]"/>
|
||||
<field name="group" ref="group_hotel_admin"/>
|
||||
|
|
10
folio.py
10
folio.py
|
@ -214,11 +214,19 @@ class Folio(ModelSQL, ModelView):
|
|||
if rec.room is None:
|
||||
raise UserError(gettext('hotel.msg_missing_select_room'))
|
||||
rec.set_registration_number()
|
||||
rec.booking.check_rooms()
|
||||
rec.check_room()
|
||||
rec.add_main_guest()
|
||||
cls.update_room(rec.room, 'dirty')
|
||||
cls.write(records, {'registration_state': 'check_in'})
|
||||
|
||||
def check_room(self):
|
||||
Housekeeping = Pool().get('hotel.housekeeping')
|
||||
housekeeping, _ = Housekeeping.search([
|
||||
('room', '=', rec.room.id)
|
||||
])
|
||||
if housekeeping.state != 'clean':
|
||||
raise UserError(gettext('hotel.msg_room_no_clean', s=hk.room.name))
|
||||
|
||||
@classmethod
|
||||
@ModelView.button
|
||||
def check_out(cls, records):
|
||||
|
|
32
folio.xml
32
folio.xml
|
@ -165,6 +165,38 @@ this repository contains the full copyright notices and license terms. -->
|
|||
<menuitem parent="menu_hotel" sequence="20" icon="hotel-guests"
|
||||
action="act_board_folio_guest_view" id="menu_hotel_board_guest_folio"/>
|
||||
|
||||
<record model="ir.model.access" id="access_hotel_folio">
|
||||
<field name="model" search="[('model', '=', 'hotel.folio')]"/>
|
||||
<field name="perm_read" eval="False"/>
|
||||
<field name="perm_write" eval="False"/>
|
||||
<field name="perm_create" eval="False"/>
|
||||
<field name="perm_delete" eval="False"/>
|
||||
</record>
|
||||
<record model="ir.model.access" id="access_hotel_folio_group_hotel">
|
||||
<field name="model" search="[('model', '=', 'hotel.folio')]"/>
|
||||
<field name="group" ref="group_hotel"/>
|
||||
<field name="perm_read" eval="True"/>
|
||||
<field name="perm_write" eval="False"/>
|
||||
<field name="perm_create" eval="False"/>
|
||||
<field name="perm_delete" eval="False"/>
|
||||
</record>
|
||||
<record model="ir.model.access" id="access_hotel_folio_group_hotel_frontdesk">
|
||||
<field name="model" search="[('model', '=', 'hotel.folio')]"/>
|
||||
<field name="group" ref="group_hotel_frontdesk"/>
|
||||
<field name="perm_read" eval="True"/>
|
||||
<field name="perm_write" eval="True"/>
|
||||
<field name="perm_create" eval="True"/>
|
||||
<field name="perm_delete" eval="True"/>
|
||||
</record>
|
||||
<record model="ir.model.access" id="access_hotel_folio_group_hotel_admin">
|
||||
<field name="model" search="[('model', '=', 'hotel.folio')]"/>
|
||||
<field name="group" ref="group_hotel_admin"/>
|
||||
<field name="perm_read" eval="True"/>
|
||||
<field name="perm_write" eval="True"/>
|
||||
<field name="perm_create" eval="True"/>
|
||||
<field name="perm_delete" eval="True"/>
|
||||
</record>
|
||||
|
||||
<!-- <record model="ir.ui.view" id="operation_maintenance_view_tree">
|
||||
<field name="model">hotel.operation.maintenance</field>
|
||||
<field name="type">tree</field>
|
||||
|
|
11
hotel.xml
11
hotel.xml
|
@ -6,6 +6,9 @@ this repository contains the full copyright notices and license terms. -->
|
|||
<record model="res.group" id="group_hotel">
|
||||
<field name="name">Hotel</field>
|
||||
</record>
|
||||
<record model="res.group" id="group_hotel_frontdesk">
|
||||
<field name="name">Hotel Front-Desk</field>
|
||||
</record>
|
||||
<record model="res.group" id="group_hotel_admin">
|
||||
<field name="name">Hotel Administration</field>
|
||||
</record>
|
||||
|
@ -14,6 +17,10 @@ this repository contains the full copyright notices and license terms. -->
|
|||
<field name="user" ref="res.user_admin"/>
|
||||
<field name="group" ref="group_hotel"/>
|
||||
</record>
|
||||
<record model="res.user-res.group" id="user_admin_group_hotel_frontdesk">
|
||||
<field name="user" ref="res.user_admin"/>
|
||||
<field name="group" ref="group_hotel_frontdesk"/>
|
||||
</record>
|
||||
<record model="res.user-res.group" id="user_admin_group_hotel_admin">
|
||||
<field name="user" ref="res.user_admin"/>
|
||||
<field name="group" ref="group_hotel_admin"/>
|
||||
|
@ -40,8 +47,8 @@ this repository contains the full copyright notices and license terms. -->
|
|||
<field name="path">icons/guests.svg</field>
|
||||
</record>
|
||||
|
||||
<menuitem name="Hotel" sequence="10" id="menu_hotel"
|
||||
icon="tryton-hotel" />
|
||||
<menuitem name="Hotel" sequence="10" id="menu_hotel"
|
||||
icon="tryton-hotel"/>
|
||||
|
||||
<record model="ir.ui.menu-res.group" id="menu_hotel_group_hotel">
|
||||
<field name="menu" ref="menu_hotel"/>
|
||||
|
|
|
@ -47,6 +47,14 @@ this repository contains the full copyright notices and license terms. -->
|
|||
<field name="perm_create" eval="False"/>
|
||||
<field name="perm_delete" eval="False"/>
|
||||
</record>
|
||||
<record model="ir.model.access" id="access_housekeeping_group_hotel_frontdesk">
|
||||
<field name="model" search="[('model', '=', 'hotel.housekeeping')]"/>
|
||||
<field name="group" ref="group_hotel_frontdesk"/>
|
||||
<field name="perm_read" eval="True"/>
|
||||
<field name="perm_write" eval="True"/>
|
||||
<field name="perm_create" eval="False"/>
|
||||
<field name="perm_delete" eval="False"/>
|
||||
</record>
|
||||
<record model="ir.model.access" id="access_housekeeping_group_hotel_admin">
|
||||
<field name="model" search="[('model', '=', 'hotel.housekeeping')]"/>
|
||||
<field name="group" ref="group_hotel_admin"/>
|
||||
|
|
Binary file not shown.
8
room.xml
8
room.xml
|
@ -123,6 +123,14 @@ this repository contains the full copyright notices and license terms. -->
|
|||
<field name="perm_create" eval="False"/>
|
||||
<field name="perm_delete" eval="False"/>
|
||||
</record>
|
||||
<record model="ir.model.access" id="access_room_group_hotel_frontdesk">
|
||||
<field name="model" search="[('model', '=', 'hotel.room')]"/>
|
||||
<field name="group" ref="group_hotel_frontdesk"/>
|
||||
<field name="perm_read" eval="True"/>
|
||||
<field name="perm_write" eval="False"/>
|
||||
<field name="perm_create" eval="False"/>
|
||||
<field name="perm_delete" eval="False"/>
|
||||
</record>
|
||||
<record model="ir.model.access" id="access_room_group_hotel_admin">
|
||||
<field name="model" search="[('model', '=', 'hotel.room')]"/>
|
||||
<field name="group" ref="group_hotel_admin"/>
|
||||
|
|
|
@ -86,6 +86,14 @@ this repository contains the full copyright notices and license terms. -->
|
|||
<field name="perm_create" eval="True"/>
|
||||
<field name="perm_delete" eval="False"/>
|
||||
</record>
|
||||
<record model="ir.model.access" id="access_service_group_hotel_frontdesk">
|
||||
<field name="model" search="[('model', '=', 'hotel.service')]"/>
|
||||
<field name="group" ref="group_hotel_frontdesk"/>
|
||||
<field name="perm_read" eval="True"/>
|
||||
<field name="perm_write" eval="True"/>
|
||||
<field name="perm_create" eval="True"/>
|
||||
<field name="perm_delete" eval="False"/>
|
||||
</record>
|
||||
<record model="ir.model.access" id="access_service_group_hotel_admin">
|
||||
<field name="model" search="[('model', '=', 'hotel.service')]"/>
|
||||
<field name="group" ref="group_hotel_admin"/>
|
||||
|
|
Loading…
Reference in New Issue