[IMP] resource: improve resources views

Improve the UX of the different resource.resource views.

closes odoo/odoo#73822

Taskid: 2566432
Related: odoo/enterprise#19695
Related: odoo/upgrade#2649
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
This commit is contained in:
Kevin Baptiste
2021-08-24 10:55:22 +00:00
parent c4ccee31c7
commit fe161c2105
3 changed files with 21 additions and 11 deletions
+2 -2
View File
@@ -872,7 +872,7 @@ class ResourceResource(models.Model):
company_id = fields.Many2one('res.company', string='Company', default=lambda self: self.env.company)
resource_type = fields.Selection([
('user', 'Human'),
('material', 'Material')], string='Resource Type',
('material', 'Material')], string='Type',
default='user', required=True)
user_id = fields.Many2one('res.users', string='User', help='Related user name for the resource to manage its access.')
time_efficiency = fields.Float(
@@ -881,7 +881,7 @@ class ResourceResource(models.Model):
calendar_id = fields.Many2one(
"resource.calendar", string='Working Time',
default=lambda self: self.env.company.resource_calendar_id,
required=True,
required=True, domain="[('company_id', '=', company_id)]",
help="Define the schedule of resource")
tz = fields.Selection(
_tz_get, string='Timezone', required=True,
@@ -27,4 +27,9 @@
<field name="perm_read" eval="False"/>
</record>
<record id="resource_resource_multi_company" model="ir.rule">
<field name="name">resource.resource multi-company</field>
<field name="model_id" ref="model_resource_resource"/>
<field name="domain_force">['|', ('company_id', '=', False), ('company_id', 'in', company_ids)]</field>
</record>
</odoo>
+14 -9
View File
@@ -7,17 +7,20 @@
<field name="model">resource.resource</field>
<field name="arch" type="xml">
<search string="Search Resource">
<field name="name" string="Resource"/>
<field name="name" />
<field name="resource_type"/>
<field name="user_id"/>
<field name="calendar_id"/>
<field name="company_id" groups="base.group_multi_company"/>
<filter string="Inactive" name="inactive" domain="[('active','=',False)]"/>
<filter string="Human" name="human" domain="[('resource_type','=', 'user')]"/>
<filter string="Material" name="material" domain="[('resource_type','=', 'material')]"/>
<separator />
<filter string="Archived" name="inactive" domain="[('active','=',False)]"/>
<group expand="0" string="Group By">
<filter string="User" name="user" domain="[]" context="{'group_by':'user_id'}"/>
<filter string="Type" name="type" domain="[]" context="{'group_by':'resource_type'}"/>
<filter string="Company" name="company" domain="[]" context="{'group_by':'company_id'}" groups="base.group_multi_company"/>
<filter string="Working Period" name="working_period" domain="[]" context="{'group_by':'calendar_id'}"/>
<filter string="Working Time" name="working_period" domain="[]" context="{'group_by':'calendar_id'}"/>
</group>
</search>
</field>
@@ -29,12 +32,13 @@
<field name="arch" type="xml">
<form string="Resource">
<sheet>
<field name="active" invisible="1" />
<widget name="web_ribbon" title="Archived" bg_color="bg-danger" attrs="{'invisible': [('active', '=', True)]}"/>
<group>
<group name="user_details">
<field name="name"/>
<field name="user_id" attrs="{'required':[('resource_type','=','user')], 'readonly':[('resource_type','=','material')]}"/>
<field name="user_id" attrs="{'required':[('resource_type','=','user')], 'invisible': [('resource_type','=','material')]}"/>
<field name="company_id" options="{'no_create': True}" groups="base.group_multi_company"/>
<field name="active" widget="boolean_toggle"/>
</group>
<group name="resource_details">
<field name="resource_type" />
@@ -52,12 +56,13 @@
<field name="name">resource.resource.tree</field>
<field name="model">resource.resource</field>
<field name="arch" type="xml">
<tree string="Resources">
<tree string="Resources" multi_edit="1" default_order="name">
<field name="name" />
<field name="user_id" />
<field name="company_id" groups="base.group_multi_company"/>
<field name="resource_type" />
<field name="calendar_id"/>
<field name="company_id" groups="base.group_multi_company" optional="show"/>
<field name="calendar_id" optional="show" />
<field name="tz" optional="hide" />
<field name="resource_type" optional="show" />
<field name="time_efficiency"/>
</tree>
</field>