mirror of
https://github.com/OCA/pms.git
synced 2025-01-29 00:17:45 +02:00
[IMP] Views Reservation and folio
This commit is contained in:
@@ -180,6 +180,7 @@ class HotelReservation(models.Model):
|
||||
reservation_type = fields.Selection(related='folio_id.reservation_type',
|
||||
default=lambda *a: 'normal')
|
||||
invoice_count = fields.Integer(related='folio_id.invoice_count')
|
||||
credit_card_details = fields.Text(related='folio_id.credit_card_details')
|
||||
board_service_room_id = fields.Many2one('hotel.board.service.room.type',
|
||||
string='Board Service')
|
||||
cancelled_reason = fields.Selection([
|
||||
@@ -219,9 +220,9 @@ class HotelReservation(models.Model):
|
||||
partner_invoice_state_id = fields.Many2one(related="partner_invoice_id.state_id")
|
||||
partner_invoice_country_id = fields.Many2one(related="partner_invoice_id.country_id")
|
||||
partner_invoice_email = fields.Char(related="partner_invoice_id.email")
|
||||
partner_invoice_lang = fields.Selection(related="partner_invoice_id.lang")
|
||||
partner_invoice_type = fields.Selection(related="partner_invoice_id.type")
|
||||
partner_invoice_parent_id = fields.Many2one(related="partner_invoice_id.parent_id")
|
||||
partner_invoice_lang = fields.Selection(related="partner_invoice_id.lang")
|
||||
partner_invoice_type = fields.Selection(related="partner_invoice_id.type")
|
||||
partner_invoice_parent_id = fields.Many2one(related="partner_invoice_id.parent_id")
|
||||
closure_reason_id = fields.Many2one(related='folio_id.closure_reason_id')
|
||||
partner_diff_invoicing = fields.Boolean('Bill to another Address', default='_default_diff_invoicing')
|
||||
company_id = fields.Many2one(related='folio_id.company_id', string='Company', store=True, readonly=True)
|
||||
|
||||
@@ -145,8 +145,12 @@
|
||||
</group>
|
||||
<group>
|
||||
<group>
|
||||
<field name="partner_invoice_vat" />
|
||||
<field name="partner_invoice_email" />
|
||||
<field name="partner_invoice_vat"
|
||||
attrs="{'readonly': [('partner_invoice_id', '!=', False),
|
||||
('partner_invoice_vat','!=', False)]}" />
|
||||
<field name="partner_invoice_email"
|
||||
attrs="{'readonly': [('partner_invoice_id', '!=', False),
|
||||
('partner_invoice_email','!=', False)]}" />
|
||||
</group>
|
||||
<group>
|
||||
<field name="partner_invoice_parent_id" />
|
||||
@@ -155,12 +159,24 @@
|
||||
<group>
|
||||
<label for="partner_invoice_street" string="Address"/>
|
||||
<div class="o_address_format">
|
||||
<field name="partner_invoice_street" placeholder="Street..." class="o_address_street"/>
|
||||
<field name="partner_invoice_street2" placeholder="Street 2..." class="o_address_street"/>
|
||||
<field name="partner_invoice_city" placeholder="City" class="o_address_city"/>
|
||||
<field name="partner_invoice_state_id" class="o_address_state" placeholder="State" options='{"no_open": True}'/>
|
||||
<field name="partner_invoice_zip" placeholder="ZIP" class="o_address_zip"/>
|
||||
<field name="partner_invoice_country_id" placeholder="Country" class="o_address_country" options='{"no_open": True, "no_create": True}'/>
|
||||
<field name="partner_invoice_street" placeholder="Street..." class="o_address_street"
|
||||
attrs="{'readonly': [('partner_invoice_id', '!=', False),
|
||||
('partner_invoice_street','!=', False)]}"/>
|
||||
<field name="partner_invoice_street2" placeholder="Street 2..." class="o_address_street"
|
||||
attrs="{'readonly': [('partner_invoice_id', '!=', False),
|
||||
('partner_invoice_street2','!=', False)]}"/>
|
||||
<field name="partner_invoice_city" placeholder="City" class="o_address_city"
|
||||
attrs="{'readonly': [('partner_invoice_id', '!=', False),
|
||||
('partner_invoice_city','!=', False)]}"/>
|
||||
<field name="partner_invoice_state_id" class="o_address_state" placeholder="State" options='{"no_open": True}'
|
||||
attrs="{'readonly': [('partner_invoice_id', '!=', False),
|
||||
('partner_invoice_state_id','!=', False)]}"/>
|
||||
<field name="partner_invoice_zip" placeholder="ZIP" class="o_address_zip"
|
||||
attrs="{'readonly': [('partner_invoice_id', '!=', False),
|
||||
('partner_invoice_zip','!=', False)]}"/>
|
||||
<field name="partner_invoice_country_id" placeholder="Country" class="o_address_country" options='{"no_open": True, "no_create": True}'
|
||||
attrs="{'readonly': [('partner_invoice_id', '!=', False),
|
||||
('partner_invoice_country_id','!=', False)]}"/>
|
||||
</div>
|
||||
</group>
|
||||
<group>
|
||||
|
||||
@@ -63,7 +63,7 @@
|
||||
attrs="{'invisible':[('splitted', '=', False)]}"
|
||||
/>
|
||||
<button name="open_master" string="Open Master" type="object" class="oe_highlight" icon="fa-file" attrs="{'invisible':['|',['parent_reservation', '=', False]]}" />
|
||||
<field name="state" select="2" widget="statusbar" statusbar_visible="draft,confirm,booking,done" />
|
||||
<field name="state" widget="statusbar" statusbar_visible="draft,confirm,booking,done" />
|
||||
</header>
|
||||
|
||||
<sheet>
|
||||
@@ -143,13 +143,6 @@
|
||||
<span class="label label-danger" attrs="{'invisible': [('state', 'not in', ('cancelled'))]}">Cancelled Reservation!</span>
|
||||
<span class="label label-warning" attrs="{'invisible': [('overbooking', '=', False)]}">OverBooking!</span>
|
||||
<h1>
|
||||
<label for="preconfirm"
|
||||
string="Autoconfirm"
|
||||
attrs="{'invisible':[('folio_id', '!=', False)]}"
|
||||
/>
|
||||
<span name="preconfirm" attrs="{'invisible':[('folio_id', '!=', False)]}">
|
||||
<field name="preconfirm" />
|
||||
</span>
|
||||
<field name="room_id" select="1"
|
||||
nolabel="1" options="{'no_create': True,'no_open': True}" placeholder="Room"
|
||||
style="margin-right: 30px;" required='1'/>
|
||||
@@ -178,26 +171,33 @@
|
||||
</h3>
|
||||
<field name="out_service_description" placeholder="Out service description"
|
||||
attrs="{'invisible':[('reservation_type','not in',('out'))]}"/>
|
||||
<group col="12">
|
||||
<group colspan="5" string="General Info" name="contact_details" >
|
||||
<field name="email" placeholder="email" widget="email"
|
||||
attrs="{'invisible': [('reservation_type','in',('out'))]}"/>
|
||||
<field name="mobile" placeholder="mobile" widget="phone"
|
||||
attrs="{'invisible': [('reservation_type','in',('out'))]}"/>
|
||||
<field name="phone" placeholder="phone" widget="phone"
|
||||
<group col="8">
|
||||
<group colspan="2" col="3" string="General Info" name="contact_details" >
|
||||
<field name="email" colspan="2" nolabel="1" placeholder="email" widget="email"
|
||||
attrs="{'invisible': [('reservation_type','in',('out'))],
|
||||
'readonly': [('partner_id', '!=', False),
|
||||
('email','!=', False)]}"/>
|
||||
<field name="mobile" colspan="2" nolabel="1" placeholder="mobile" widget="phone"
|
||||
attrs="{'invisible': [('reservation_type','in',('out'))],
|
||||
'readonly': [('partner_id', '!=', False),
|
||||
('mobile','!=', False)]}"/>
|
||||
<field name="phone" colspan="2" nolabel="1" placeholder="phone" widget="phone"
|
||||
attrs="{'invisible': [('reservation_type','in',('out'))],
|
||||
'required': [('channel_type','in',('door','mail','phone')),
|
||||
('mobile','=','')]}"
|
||||
('mobile','=','')],
|
||||
'readonly': [('partner_id', '!=', False),
|
||||
('phone','!=', False)]}"
|
||||
/>
|
||||
<field name="pricelist_id"
|
||||
<field placeholder="Partner Notes" colspan="2" nolabel="1" name="partner_internal_comment" string="Partner Note"
|
||||
attrs="{'invisible': [('reservation_type','in',('out'))]}"/>
|
||||
<field name="partner_internal_comment" string="Partner Note"
|
||||
attrs="{'invisible': [('reservation_type','in',('out'))]}"/>
|
||||
<field name="cancelled_reason" attrs="{'invisible':[('state','not in',('cancelled'))]}"/>
|
||||
<field name="arrival_hour"/>
|
||||
<field name="departure_hour"/>
|
||||
<field nolabel="1" placeholder="Cancel Reason" name="cancelled_reason" attrs="{'invisible':[('state','not in',('cancelled'))]}"/>
|
||||
<field nolabel="1" colspan="2" placeholder="Description in Guest Documents" name="name"/>
|
||||
<field placeholder="Arriva Hour" name="arrival_hour"/>
|
||||
<field placeholder="Departure our" name="departure_hour"/>
|
||||
</group>
|
||||
<group colspan="4" string="Reservation Details" name="reservation_details">
|
||||
<group colspan="2" col="3" string="Reservation Details" name="reservation_details">
|
||||
<field name="pricelist_id"
|
||||
attrs="{'invisible': [('reservation_type','in',('out'))]}"/>
|
||||
<field name="cancelled_reason" attrs="{'invisible': [('state', 'not in', ('cancelled'))]}"/>
|
||||
<field name="nights"/>
|
||||
<!-- TODO: How to filter to avoid show False (generic) pricelist board when exist a specific pricelist board¿? -->
|
||||
@@ -206,19 +206,19 @@
|
||||
('pricelist_id', 'in', [pricelist_id, False])]"
|
||||
options="{'no_create': True,'no_open': True}"
|
||||
attrs="{'invisible': ['|',('reservation_type','in',('out')),('parent_reservation','!=',False)]}" />
|
||||
<field name="name"/>
|
||||
<field name="adults" attrs="{'invisible': [('reservation_type','in',('out'))]}"/>
|
||||
<field name="children" attrs="{'invisible': [('reservation_type','in',('out'))]}"/>
|
||||
<field name="qty_invoiced" invisible="1"/>
|
||||
<field name="qty_to_invoice" invisible="1"/>
|
||||
<field name="room_type_id" on_change="1" options="{'no_create': True,'no_open': True}"
|
||||
attrs="{'readonly':[('state','not in',('draft'))]}"/>
|
||||
<field name="folio_internal_comment" colspan="2" nolabel="1" placeholder="Reservation Notes"/>
|
||||
</group>
|
||||
<group class="oe_subtotal_footer" style="margin-right: 20px; !important" colspan="2" name="reservation_total" string="Amounts">
|
||||
<group colspan="2" col="3" class="oe_subtotal_footer" style="margin-right: 20px; !important" name="reservation_total" string="Amounts">
|
||||
<div class="oe_subtotal_footer_separator oe_inline o_td_label">
|
||||
<label for="price_room_services_set" string="Reservation Total"/>
|
||||
</div>
|
||||
<field name="price_room_services_set" nolabel="1" class="oe_subtotal_footer_separator" widget="monetary"/>
|
||||
<field name="price_room_services_set" nolabel="1" class="oe_subtotal_footer_separator" widget="monetary"/>
|
||||
<field name="discount" string="Discount Room" widget="monetary"/>
|
||||
<field name="price_subtotal" invisible="1"/>
|
||||
<field name="price_services" string="Only Services" widget="monetary"/>
|
||||
@@ -226,9 +226,10 @@
|
||||
<field name="state" invisible="1"/>
|
||||
<field name="invoice_status" invisible="1"/>
|
||||
<field name="currency_id" invisible="1"/>
|
||||
<field name="preconfirm" attrs="{'invisible':[('folio_id', '!=', False)]}" />
|
||||
<field name="credit_card_details" nolabel="1" placeholder="Credit Card Details" colspan="2" attrs="{'invisible':[('folio_id','!=',False),('folio_pending_amount','<=',0)]}"/>
|
||||
</group>
|
||||
</group>
|
||||
<field name="folio_internal_comment" nolabel="1" placeholder="Reservation Notes"/>
|
||||
</group>
|
||||
<group invisible="1">
|
||||
<field name="company_id" options="{'no_create': True}" groups="base.group_multi_company"/>
|
||||
<!-- <field name="check_rooms" invisible="1"/> -->
|
||||
|
||||
Reference in New Issue
Block a user