[IMP]14.0-pms_housekeeping: new hr_employee inherit and housekeeping_task_type model

This commit is contained in:
braisab
2024-02-07 18:01:33 +01:00
committed by Darío Lodeiros
parent 3e14695c56
commit 9c5fbd03d8
21 changed files with 144 additions and 1246 deletions

View File

@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<record id="hr_housekeeping_employee_form" model="ir.ui.view">
<field name="model">hr.employee</field>
<field name="inherit_id" ref="hr.view_employee_form" />
<field name="arch" type="xml">
<xpath expr="//field[@name='work_location']" position="after">
<field name="pre_assigned_room_ids" widget="many2many_tags" />
</xpath>
</field>
</record>
</odoo>

View File

@@ -0,0 +1,41 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<data>
<record id="view_pms_housekeeping_task_type_tree" model="ir.ui.view">
<field name="name">pms.housekeeping.task.type.tree</field>
<field name="model">pms.housekeeping.task.type</field>
<field name="arch" type="xml">
<tree string="Housekeeping Task Type">
<field name="name" />
<field name="description" />
<field name="is_automated" />
<field name="clean_event" />
<field name="days_after_clean_event" />
<field name="housekeepers" />
<field name="parent_id" />
</tree>
</field>
</record>
<record id="view_pms_housekeeping_task_type_form" model="ir.ui.view">
<field name="name">pms.housekeeping.task.type.form</field>
<field name="model">pms.housekeeping.task.type</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Housekeeping Task Type">
<group>
<field name="name" />
<field name="description" />
<field name="is_automated" />
<field name="clean_event" />
<field
name="days_after_clean_event"
attrs="{'invisible': [('clean_event', '!=', 'overnight'), ('clean_event', '!=', 'empty')]}"
/>
<field name="housekeepers" widget="many2many_tags" />
<field name="parent_id" widget="many2many_tags" />
</group>
</form>
</field>
</record>
</data>
</odoo>

View File

@@ -1,34 +0,0 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<record id="view_pms_housekeeping_tasks_tree" model="ir.ui.view">
<field name="name">Housekeeping Tasks view</field>
<field name="model">pms.housekeeping.task</field>
<field name="type">tree</field>
<field name="mode">primary</field>
<field name="priority" eval="16" />
<field name="active" eval="True" />
<field name="arch" type="xml">
<tree name=" Property Ubications">
<field name="active" colspan="1" />
<field name="name" colspan="1" />
<field name="clean_type" colspan="1" />
</tree>
</field>
</record>
<record model="ir.actions.act_window" id="action_pms_house_keeping_tasks_view_form">
<field name="name">Housekeeping Tasks</field>
<field name="res_model">pms.housekeeping.task</field>
<field name="view_mode">tree,form</field>
</record>
<menuitem
name="House Keeping Tasks"
id="menu_action_pms_house_keeping_tasks_view_form"
action="action_pms_house_keeping_tasks_view_form"
sequence="90"
parent="pms.pms_configuration_menu"
/>
</odoo>

View File

@@ -1,257 +1,23 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<record id="view_pms_housekeeping_tree" model="ir.ui.view">
<field name="name">Housekeeping tree view</field>
<field name="model">pms.housekeeping</field>
<field name="type">tree</field>
<field name="mode">primary</field>
<field name="priority" eval="16" />
<field name="active" eval="True" />
<field name="arch" type="xml">
<tree name="Housekeeping tasks">
<field name="task_date" colspan="1" />
<field name="state" colspan="1" />
<field name="room_id" colspan="1" />
<field name="employee_id" colspan="1" />
<field name="task_id" colspan="1" />
<field name="task_start" />
<field name="task_end" />
<field name="notes" colspan="1" />
<field name="lostfound" />
</tree>
</field>
</record>
<record id="view_pms_housekeeping_form" model="ir.ui.view">
<field name="name">Housekeeping form view</field>
<field name="model">pms.housekeeping</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Housekeeping">
<sheet>
<group>
<group col="2" colspan="2">
<field name="task_id" />
</group>
<group col="4" colspan="2">
<field name="task_date" />
<field name="task_start" />
<field name="state" />
<field name="task_end" />
</group>
<group col="4" colspan="2">
<field name="room_id" />
<field name="employee_id" />
</group>
<group col="4" colspan="2">
<field name="notes" />
<field name="lostfound" />
</group>
</group>
</sheet>
</form>
</field>
</record>
<record id="view_pms_housekeeping_rack_kanban" model="ir.ui.view">
<field name="name">Housekeeping today tasks kanban view</field>
<field name="model">pms.housekeeping</field>
<field name="type">kanban</field>
<field name="mode">primary</field>
<field name="priority" eval="16" />
<field name="active" eval="True" />
<field name="arch" type="xml">
<kanban
default_group_by="employee_id"
default_order="room_id"
class="o_res_partner_kanban"
sample="1"
group_create="false"
create="false"
>
<field name="color" />
<field name="state" />
<field name="employee_id" />
<templates>
<t t-name="kanban-box">
<div
t-attf-class="oe_kanban_global_click
oe_kanban_color_#{kanban_getcolor(record.color.raw_value)}"
>
<div class="o_dropdown_kanban dropdown">
<!-- Top-right drop down menu here... -->
<a
class="dropdown-toggle btn"
data-toggle="dropdown"
role="button"
href="#"
>
<span class="fa fa-ellipsis-v" title="menu" />
</a>
<div class="dropdown-menu" role="menu">
<!-- Edit and Delete actions, if available: -->
<t t-if="widget.editable">
<a
role="menuitem"
type="edit"
class="dropdown-item"
>Edit</a>
</t>
<t t-if="widget.deletable">
<a
role="menuitem"
type="delete"
class="dropdown-item"
>Delete</a>
</t>
<!-- Color picker option: -->
<!-- <ul class="oe_kanban_colorpicker" data-field="color"/>-->
</div>
</div>
<div class="oe_kanban_body">
<!-- Content elements and fields go here... -->
<div style="font-size: 1.5em;">
<field name="task_id" />
</div>
<div style="font-size: 1.1em;">
<field name="room_id" />
</div>
<div class="o_kanban_image float-right">
<t t-if="record.employee_id.raw_value">
<img
alt="Employee image"
t-att-title="record.employee_id.value"
t-att-alt="record.employee_id.value"
t-att-src="kanban_image('hr.employee', 'image_128', record.employee_id.raw_value)"
width="40"
height="40"
class="oe_kanban_avatar"
/>
</t>
</div>
</div>
<div class="oe_kanban_footer">
<div class="oe_kanban_footer_left">
<!-- Left hand footer... -->
<!-- <div style="font-size: 0.8em;">-->
<!-- <field name="state"/>-->
<!-- </div>-->
<div style="font-size: 0.8em;">
<field name="notes" />
</div>
<div>
<!-- <field name="clean_type" /> -->
</div>
</div>
<div class="oe_kanban_footer_right">
<field name="state" widget="state_selection" />
</div>
</div>
<div class="oe_clear" />
<div>
</div>
</div>
</t>
</templates>
</kanban>
</field>
</record>
<record id="view_filter_housekeeping_rack" model="ir.ui.view">
<field name="model">pms.housekeeping</field>
<field name="arch" type="xml">
<search string="Housekeeping filters">
<field name="employee_id" />
<!-- <field name="room_id.floor_id" />-->
<field name="task_id" />
<!-- <filter name="filter_occupied" string="Occupied" domain="[('clean_status','=','occupied')]"/> -->
<searchpanel>
<!-- <field-->
<!-- name="room_id.floor_id"-->
<!-- string="Floor"-->
<!-- enable_counters="1"-->
<!-- select="multi"-->
<!-- icon="fa-hospital-o"-->
<!-- />-->
<field
name="task_id"
string="Task type"
enable_counters="1"
select="multi"
icon="fa-bath"
/>
<field
name="employee_id"
string="Employee"
enable_counters="1"
select="multi"
icon="fa-user"
/>
<field
name="room_id"
string="Room"
enable_counters="1"
select="multi"
icon="fa-bed"
/>
<!-- <field name="clean_status" string="Clean Type" enable_counters="1" select="multi"/> -->
</searchpanel>
</search>
</field>
</record>
<record model="ir.actions.act_window" id="action_pms_house_keeping_view_form">
<field name="name">Housekeeping</field>
<field name="res_model">pms.housekeeping</field>
<field name="view_mode">tree,form</field>
</record>
<record model="ir.actions.act_window" id="action_pms_house_keeping_view_today_form">
<field name="name">Housekeeping</field>
<field name="res_model">pms.housekeeping</field>
<field name="domain">[('task_date', '=',(context_today().strftime('%Y-%m-%d')))]
</field>
<field name="view_mode">kanban,tree,form</field>
</record>
<menuitem
name="Housekeeping"
id="menu_action_pms_house_keeping"
sequence="17"
parent="pms.pms_management_menu"
/>
<menuitem
name="Room Rack"
id="menu_action_pms_house_keeping_view_rack"
action="pms_housekeeping.action_pms_room_rack_kanban"
sequence="10"
parent="pms_housekeeping.menu_action_pms_house_keeping"
/>
<menuitem
name="Today Tasks"
id="menu_action_pms_house_keeping_view_today_form"
action="action_pms_house_keeping_view_today_form"
sequence="20"
parent="pms_housekeeping.menu_action_pms_house_keeping"
/>
<menuitem
name="Tasks History"
id="menu_action_pms_house_keeping_view_form"
action="action_pms_house_keeping_view_form"
sequence="30"
parent="pms_housekeeping.menu_action_pms_house_keeping"
/>
<data>
<record model="ir.actions.act_window" id="action_pms_housekeeping_task_type">
<field name="name">Housekeeping Task Type</field>
<field name="res_model">pms.housekeeping.task.type</field>
<field name="view_mode">tree,form</field>
</record>
<menuitem
name="Housekeeping"
id="menu_action_pms_housekeeping"
sequence="17"
parent="pms.pms_management_menu"
/>
<menuitem
name="Task Type"
id="menu_action_pms_housekeeping_view_task_type"
action="pms_housekeeping.action_pms_housekeeping_task_type"
sequence="10"
parent="pms_housekeeping.menu_action_pms_housekeeping"
/>
</data>
</odoo>

View File

@@ -1,15 +0,0 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<record id="inheit_pms_reservation_view_form" model="ir.ui.view">
<field name="name">view.model.form</field>
<field name="model">pms.reservation</field>
<field name="inherit_id" ref="pms.pms_reservation_view_form" />
<field name="arch" type="xml">
<xpath expr="//field[@name='departure_hour']" position="after">
<field name="dont_disturb" />
</xpath>
</field>
</record>
</odoo>

View File

@@ -1,212 +0,0 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<record id="inherit_pms_room_view_form" model="ir.ui.view">
<field name="name">view.model.form</field>
<field name="model">pms.room</field>
<field name="inherit_id" ref="pms.pms_room_view_form" />
<field name="arch" type="xml">
<xpath expr="//page[@name='information_pms_room']" position="inside">
<group colspan="4" col="4">
<field name="clean_status" string="Clean Status" />
<!-- <field name="clean_type" string="Clean Type" attrs="{'readonly': True}" /> -->
</group>
</xpath>
</field>
</record>
<record id="view_pms_room_rack_form" model="ir.ui.view">
<field name="name">Room rack form view</field>
<field name="model">pms.room</field>
<field name="type">form</field>
<field name="priority" eval="40" />
<field name="active" eval="True" />
<field name="arch" type="xml">
<form string="Property Room">
<group col="4" colspan="4" name="header">
<field
name="name"
readonly="1"
nolabel="1"
style="font-size: 2em;"
/>
<group col="1">
<field name="clean_employee_id" />
</group>
<group col="1">
<field
name="employee_picture"
widget="image"
class="oe_left oe_avatar"
nolabel="1"
readonly="1"
/>
</group>
</group>
<group col="4" colspan="4" name="status" string="Clean type and status">
<field
name="clean_status"
readonly="1"
nolabel="1"
style="font-size: 2em;"
/>
<!-- <group col="1">
<field name="clean_status" />
</group> -->
</group>
<separator string="Task Lines" colspan="4" />
<field
name="housekeeping_ids"
readonly="0"
context="{'default_state': 'to_do',
'default_employee_id': clean_employee_id,
'tree_view_ref':'view_pms_room_rack_tree',
'form_view_ref':'view_pms_room_rack_form',
'default_room_id': id}"
/>
</form>
</field>
</record>
<record id="view_pms_room_rack_tree" model="ir.ui.view">
<field name="name">Room rack tree view</field>
<field name="model">pms.room</field>
<field name="type">tree</field>
<field name="priority" eval="20" />
<field name="active" eval="True" />
<field name="arch" type="xml">
<tree name="Property Room">
<field name="sequence" widget="handle" />
<field name="name" />
<field name="capacity" />
<field name="clean_status" />
<field name="clean_employee_id" />
</tree>
</field>
</record>
<record id="view_filter_room_rack" model="ir.ui.view">
<field name="model">pms.room</field>
<field name="arch" type="xml">
<search string="Housekeeping filters">
<field name="clean_employee_id" />
<field name="ubication_id" />
<field name="room_type_id" />
<!-- <filter name="filter_occupied" string="Occupied" domain="[('clean_status','=','occupied')]"/> -->
<searchpanel>
<field
name="room_type_id"
string="Room type"
enable_counters="1"
select="multi"
icon="fa-bed"
/>
<field
name="clean_employee_id"
string="Employee"
enable_counters="1"
select="multi"
icon="fa-user"
/>
<field
name="ubication_id"
string="Ubication"
enable_counters="1"
select="multi"
icon="fa-hospital-o"
/>
<!-- <field name="clean_status" string="Clean Type" enable_counters="1" select="multi"/> -->
</searchpanel>
</search>
</field>
</record>
<record id="view_pms_room_rack_kanban" model="ir.ui.view">
<field name="name">Room rack kanban view</field>
<field name="model">pms.room</field>
<field name="type">kanban</field>
<field name="mode">primary</field>
<field name="priority" eval="16" />
<field name="active" eval="True" />
<field name="arch" type="xml">
<kanban
default_group_by="ubication_id"
default_order="ubication_id"
class="o_res_partner_kanban"
sample="1"
group_create="false"
create="false"
>
<field name="name" />
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_global_click_edit">
<div class="o_dropdown_kanban dropdown">
<!-- Top-right drop down menu here... -->
</div>
<div class="oe_kanban_body">
<!-- Content elements and fields go here... -->
<div style="font-size: 1.5em;">
<field name="name" />
<!-- class="oe_stat_button" -->
</div><div style="font-size: 1.1em;">
<field name="clean_status" />
</div>
</div>
<div class="oe_kanban_footer">
<div class="oe_kanban_footer_left">
<!-- Left hand footer... -->
<field
name="housekeeping_ids"
widget="many2many_tags"
domain="[('state', '=', 'draft')]"
/>
Default: <field name="clean_employee_id" />
<div>
<!-- <field name="clean_type" /> -->
</div>
</div>
<div class="oe_kanban_footer_right">
<!-- Right hand footer... -->
<a
type="object"
name="add_today_tasks"
help="Add the housekeeping tasks"
>
<span
class="fa fa-plus-square"
title="Add all today tasks"
/>
</a>
</div>
</div>
<div class="oe_clear" />
<div>
</div>
</div>
</t>
</templates>
</kanban>
</field>
</record>
<record model="ir.actions.act_window" id="action_pms_room_rack_kanban">
<field name="name">Housekeeping</field>
<field name="res_model">pms.room</field>
<field name="view_mode">kanban,tree,form</field>
<field
name="view_ids"
eval="[(5, 0, 0),
(0, 0, {'view_mode': 'kanban', 'view_id': ref('view_pms_room_rack_kanban')}),
(0, 0, {'view_mode': 'tree', 'view_id': ref('view_pms_room_rack_tree')}),
(0, 0, {'view_mode': 'form', 'view_id': ref('view_pms_room_rack_form')})]"
/>
</record>
</odoo>