[IMP] fleet, hr_fleet: improve assignment logs view

Assignment logs list view can be accessed both from fleet and from hr_fleet,
however they show many repeating fields and, for this reason, this commit
improves these views by leaving the repeating fields as optional="hide".

task-2742923

Part-of: odoo/odoo#83755
This commit is contained in:
Leonardo Pavan Rocha
2022-05-24 15:59:56 +02:00
parent c3030c3a7c
commit 5dba452227
5 changed files with 34 additions and 17 deletions
@@ -13,13 +13,3 @@ class FleetVehicleAssignationLog(models.Model):
driver_id = fields.Many2one('res.partner', string="Driver", required=True)
date_start = fields.Date(string="Start Date")
date_end = fields.Date(string="End Date")
def action_open_vehicle(self):
self.ensure_one()
return {
'type': 'ir.actions.act_window',
'res_model': 'fleet.vehicle',
'res_id': self.vehicle_id.id,
'view_mode': 'form',
'context': dict(self.env.context, create=False),
}
+1 -2
View File
@@ -536,10 +536,9 @@
<field name="arch" type="xml">
<tree string="Assignment Logs" editable="bottom">
<field name="vehicle_id" />
<field name="driver_id" widget="many2one_avatar" string="Current Driver" />
<field name="date_start"/>
<field name="date_end"/>
<field name="driver_id" widget="many2one_avatar" string="Current Driver" />
<button name="action_open_vehicle" type="object" string="Vehicle Details" class="btn-primary" />
</tree>
</field>
</record>
+1 -1
View File
@@ -21,7 +21,7 @@ class Employee(models.Model):
return {
"type": "ir.actions.act_window",
"res_model": "fleet.vehicle.assignation.log",
"views": [[False, "tree"], [False, "form"]],
"views": [[self.env.ref("hr_fleet.fleet_vehicle_assignation_log_employee_view_list").id, "tree"], [False, "form"]],
"domain": [("driver_employee_id", "in", self.ids)],
"context": dict(self._context, default_driver_id=self.user_id.partner_id.id, default_driver_employee_id=self.id),
"name": "History Employee Cars",
+5
View File
@@ -117,3 +117,8 @@ class FleetVehicle(models.Model):
'view_mode': 'form',
'res_id': self.driver_employee_id.id,
}
def open_assignation_logs(self):
action = super().open_assignation_logs()
action['views'] = [[self.env.ref('hr_fleet.fleet_vehicle_assignation_log_view_list').id, 'tree']]
return action
+27 -4
View File
@@ -11,16 +11,39 @@
</field>
</record>
<!-- main view for fleet-->
<record id="fleet_vehicle_assignation_log_view_list" model="ir.ui.view">
<field name="name">fleet.vehicle.assignation.log.view.tree.inherit.hr.fleet</field>
<field name="model">fleet.vehicle.assignation.log</field>
<field name="mode">primary</field>
<field name="inherit_id" ref="fleet.fleet_vehicle_assignation_log_view_list" />
<field name="arch" type="xml">
<xpath expr="//field[@name='driver_id']" position="after">
<field name="driver_employee_id" widget="many2one_avatar" optional="hide"/>
<field name="attachment_number" string=" "/>
<field name="vehicle_id" position="attributes">
<attribute name="optional">hide</attribute>
</field>
<field name="driver_id" position="after">
<field name="driver_employee_id" widget="many2one_avatar"/>
</field>
<field name="date_end" position="after">
<field name="attachment_number" optional="show" />
<button name="action_get_attachment_view" string="Attachments" type="object" icon="fa-paperclip"/>
</xpath>
</field>
</field>
</record>
<!-- for employee cars -->
<record id="fleet_vehicle_assignation_log_employee_view_list" model="ir.ui.view">
<field name="name">fleet.vehicle.assignation.log.view.tree.inherit.hr.fleet</field>
<field name="model">fleet.vehicle.assignation.log</field>
<field name="mode">primary</field>
<field name="inherit_id" ref="fleet.fleet_vehicle_assignation_log_view_list" />
<field name="arch" type="xml">
<field name="driver_id" position="replace" />
<field name="date_end" position="after">
<field name="driver_id" string="Current Driver" optional="hide"/>
<field name="attachment_number" optional="show" />
<button name="action_get_attachment_view" string="Attachments" type="object" icon="fa-paperclip" />
</field>
</field>
</record>