Files
Odoo-Modules/fusion_claims/views/technician_task_views.xml
gsinghpal acd3fc455e changes
2026-03-09 15:21:22 -04:00

157 lines
7.1 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright 2024-2026 Nexa Systems Inc.
License OPL-1 (Odoo Proprietary License v1.0)
Claims-specific extensions to the base technician task views
defined in fusion_tasks. Adds SO/PO/facility/rental fields.
-->
<odoo>
<!-- ================================================================== -->
<!-- SEARCH VIEW EXTENSION -->
<!-- ================================================================== -->
<record id="view_technician_task_search_claims" model="ir.ui.view">
<field name="name">fusion.technician.task.search.claims</field>
<field name="model">fusion.technician.task</field>
<field name="inherit_id" ref="fusion_tasks.view_technician_task_search"/>
<field name="arch" type="xml">
<xpath expr="//filter[@name='filter_pod']" position="after">
<filter string="Has Purchase Order" name="has_po"
domain="[('purchase_order_id', '!=', False)]"/>
</xpath>
</field>
</record>
<!-- ================================================================== -->
<!-- FORM VIEW EXTENSION -->
<!-- ================================================================== -->
<record id="view_technician_task_form_claims" model="ir.ui.view">
<field name="name">fusion.technician.task.form.claims</field>
<field name="model">fusion.technician.task</field>
<field name="inherit_id" ref="fusion_tasks.view_technician_task_form"/>
<field name="arch" type="xml">
<!-- Stat buttons: View Case + Purchase Order -->
<xpath expr="//div[@name='button_box']" position="inside">
<button name="action_view_sale_order" type="object"
class="oe_stat_button" icon="fa-file-text-o"
invisible="not sale_order_id">
<div class="o_field_widget o_stat_info">
<span class="o_stat_text">View Case</span>
</div>
</button>
<button name="action_view_purchase_order" type="object"
class="oe_stat_button" icon="fa-shopping-cart"
invisible="not purchase_order_id">
<div class="o_field_widget o_stat_info">
<span class="o_stat_text">Purchase Order</span>
</div>
</button>
</xpath>
<!-- Add facility_id, sale_order_id, purchase_order_id after priority -->
<xpath expr="//field[@name='priority']" position="after">
<field name="facility_id"
invisible="task_type != 'ltc_visit'"/>
<field name="sale_order_id"
invisible="task_type == 'ltc_visit'"/>
<field name="purchase_order_id"
invisible="task_type == 'ltc_visit'"/>
</xpath>
<!-- Add Rental Inspection tab after Completion tab -->
<xpath expr="//page[@name='completion']" position="after">
<page string="Rental Inspection" name="rental_inspection"
invisible="task_type != 'pickup'">
<group>
<group string="Condition">
<field name="rental_inspection_condition"/>
<field name="rental_inspection_completed"/>
</group>
</group>
<group string="Inspection Notes">
<field name="rental_inspection_notes" nolabel="1"/>
</group>
<group string="Inspection Photos">
<field name="rental_inspection_photo_ids"
widget="many2many_binary" nolabel="1"/>
</group>
</page>
</xpath>
</field>
</record>
<!-- ================================================================== -->
<!-- LIST VIEW EXTENSION -->
<!-- ================================================================== -->
<record id="view_technician_task_list_claims" model="ir.ui.view">
<field name="name">fusion.technician.task.list.claims</field>
<field name="model">fusion.technician.task</field>
<field name="inherit_id" ref="fusion_tasks.view_technician_task_list"/>
<field name="arch" type="xml">
<xpath expr="//field[@name='pod_required']" position="after">
<field name="sale_order_id" optional="hide"/>
<field name="purchase_order_id" optional="hide"/>
</xpath>
</field>
</record>
<!-- ================================================================== -->
<!-- MENU ITEMS - Field Service under Claims app -->
<!-- ================================================================== -->
<!-- Field Service parent menu under Claims -->
<menuitem id="menu_technician_management"
name="Field Service"
parent="fusion_claims.menu_adp_claims_root"
sequence="3"
groups="fusion_claims.group_fusion_claims_user,fusion_tasks.group_field_technician"/>
<!-- Delivery Map - first item = default landing view -->
<menuitem id="menu_fc_delivery_map"
name="Delivery Map"
parent="menu_technician_management"
action="fusion_tasks.action_technician_map_view"
sequence="5"
groups="fusion_claims.group_fusion_claims_user,fusion_tasks.group_field_technician"/>
<menuitem id="menu_technician_tasks_today"
name="Today's Tasks"
parent="menu_technician_management"
action="fusion_tasks.action_technician_tasks_today"
sequence="10"/>
<menuitem id="menu_technician_schedule"
name="Schedule"
parent="menu_technician_management"
action="fusion_tasks.action_technician_schedule"
sequence="15"/>
<menuitem id="menu_technician_tasks_pending"
name="Pending Tasks"
parent="menu_technician_management"
action="fusion_tasks.action_technician_tasks_pending"
sequence="20"/>
<menuitem id="menu_technician_tasks"
name="All Tasks"
parent="menu_technician_management"
action="fusion_tasks.action_technician_tasks"
sequence="30"/>
<menuitem id="menu_technician_my_tasks"
name="My Tasks"
parent="menu_technician_management"
action="fusion_tasks.action_technician_my_tasks"
sequence="35"
groups="fusion_tasks.group_field_technician"/>
<!-- Task Sync under Field Service in Claims -->
<menuitem id="menu_task_sync_claims"
name="Task Sync"
parent="menu_technician_management"
action="fusion_tasks.action_task_sync_config"
sequence="99"/>
</odoo>