Dre4m Shell
Server IP : 127.0.0.2  /  Your IP : 52.15.143.11
Web Server : Apache/2.4.18 (Ubuntu)
System :
User : www-data ( )
PHP Version : 7.0.33-0ubuntu0.16.04.16
Disable Function : disk_free_space,disk_total_space,diskfreespace,dl,exec,fpaththru,getmyuid,getmypid,highlight_file,ignore_user_abord,leak,listen,link,opcache_get_configuration,opcache_get_status,passthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,php_uname,phpinfo,posix_ctermid,posix_getcwd,posix_getegid,posix_geteuid,posix_getgid,posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid,posix,_getppid,posix_getpwnam,posix_getpwuid,posix_getrlimit,posix_getsid,posix_getuid,posix_isatty,posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid,posix_setpgid,posix_setsid,posix_setuid,posix_times,posix_ttyname,posix_uname,pclose,popen,proc_open,proc_close,proc_get_status,proc_nice,proc_terminate,shell_exec,source,show_source,system,virtual
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /opt/odoo/addons/fleet/views/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME SHELL ]     

Current File : /opt/odoo/addons/fleet/views/fleet_view.xml
<?xml version="1.0" encoding="UTF-8"?>
<odoo>
        <record id='fleet_vehicle_model_view_form' model='ir.ui.view'>
            <field name="name">fleet.vehicle.model.form</field>
            <field name="model">fleet.vehicle.model</field>
            <field name="arch" type="xml">
                <form string="Model">
                    <field name="image_medium" widget='image' class="oe_avatar"/>
                    <div class="oe_title">
                        <label for="modelname" class="oe_edit_only"/>
                        <h1>
                            <field name="name" placeholder="e.g. Model S"/>
                        </h1>
                        <label for="brand_id" class="oe_edit_only"/>
                        <h2>
                            <field name="brand_id" placeholder="e.g. Tesla"/>
                        </h2>
                    </div>
                    <notebook>
                        <page string="Vendors">
                            <field name="vendors" widget="many2many_kanban">
                                <kanban quick_create="false" create="true">
                                    <field name="name"/>
                                    <templates>
                                        <t t-name="kanban-box">
                                            <div style="position: relative">
                                                <a t-if="! read_only_mode" type="delete" style="position: absolute; right: 0; padding: 4px; diplay: inline-block">X</a>
                                                <div class="oe_module_vignette">
                                                    <div class="oe_module_desc">
                                                        <field name="name"/>
                                                    </div>
                                                </div>
                                            </div>
                                        </t>
                                    </templates>
                                </kanban>
                            </field>
                        </page>
                    </notebook>
                </form>
            </field>
        </record>

        <record id='fleet_vehicle_model_view_tree' model='ir.ui.view'>
            <field name="name">fleet.vehicle.model.tree</field>
            <field name="model">fleet.vehicle.model</field>
            <field name="arch" type="xml">
                <tree string="Models">
                    <field name="brand_id" />
                    <field name="name" />
                </tree>
            </field>
        </record>

        <record id='fleet_vehicle_model_view_search' model='ir.ui.view'>
            <field name="name">fleet.vehicle.model.search</field>
            <field name="model">fleet.vehicle.model</field>
            <field name="arch" type="xml">
                <search string="Vehicles costs" >
                    <field name="brand_id" />
                    <group expand="1" string="Group By">
                        <filter name="groupby_brand" context="{'group_by' : 'brand_id'}" string="Make"/>
                    </group>
                </search>
            </field>
        </record>

        <record id='fleet_vehicle_model_action' model='ir.actions.act_window'>
            <field name="name">Vehicle Model</field>
            <field name="res_model">fleet.vehicle.model</field>
            <field name="view_type">form</field>
            <field name="view_mode">tree,form</field>
            <field name="context">{"search_default_groupby_brand" : True,}</field>
            <field name="help" type="html">
              <p class="oe_view_nocontent_create">
                Click to create a new model.
              </p><p>
                You can define several models (e.g. A3, A4) for each make (Audi).
              </p>
            </field>
        </record>

        <record id='fleet_vehicle_model_brand_view_tree' model='ir.ui.view'>
            <field name="name">fleet.vehicle.model.brand.tree</field>
            <field name="model">fleet.vehicle.model.brand</field>
            <field name="arch" type="xml">
                <tree string="Model Make">
                    <field name="name" />
                </tree>
            </field>
        </record>

        <record id='fleet_vehicle_model_brand_view_form' model='ir.ui.view'>
            <field name="name">fleet.vehicle.model.brand.form</field>
            <field name="model">fleet.vehicle.model.brand</field>
            <field name="arch" type="xml">
                <form string="Model Make">
                    <group>
                        <div>
                            <field name="image_medium" widget="image" class="oe_avatar"/>
                            <label for="name" class="oe_edit_only"/>
                            <h1>
                                <field name="name"/>
                            </h1>
                        </div>
                    </group>
                </form>
            </field>
        </record>

        <record id='fleet_vehicle_model_brand_view_kanban' model='ir.ui.view'>
            <field name="name">fleet.vehicle.model.brandkanban</field>
            <field name="model">fleet.vehicle.model.brand</field>
            <field name="arch" type="xml">
                <kanban>
                    <field name="name" />
                    <field name="image" />
                    <templates>
                        <t t-name="kanban-box">
                            <div class="oe_kanban_vignette oe_semantic_html_override">
                                <a type="open" href="#" class="oe_kanban_action">
                                    <img t-att-src="kanban_image('fleet.vehicle.model.brand', 'image_small', record.id.value)" class="img-responsive" style="width:100px;"/>
                                </a>
                                <div class="text-center">
                                    <h4 class="oe_partner_heading">
                                        <a type="open">
                                            <field name="name"/>
                                        </a>
                                    </h4>
                                </div>
                            </div>
                        </t>
                    </templates>
                </kanban>
            </field>
        </record>

        <record id='fleet_vehicle_model_brand_action' model='ir.actions.act_window'>
            <field name="name">Model make of Vehicle</field>
            <field name="res_model">fleet.vehicle.model.brand</field>
            <field name="view_type">form</field>
            <field name="view_mode">kanban,tree,form</field>
            <field name="help" type="html">
              <p class="oe_view_nocontent_create">
                Click to create a new make.
              </p>
            </field>
        </record>

        <record id='fleet_vehicle_state_view_tree' model='ir.ui.view'>
            <field name="name">fleet.vehicle.state.tree</field>
            <field name="model">fleet.vehicle.state</field>
            <field name="arch" type="xml">
                <tree string="State" editable="bottom">
                    <field name="sequence" widget="handler" invisible="1"/>
                    <field name="name" />

                </tree>
            </field>
        </record>

        <record id='fleet_vehicle_state_action' model='ir.actions.act_window'>
            <field name="name">Vehicle Status</field>
            <field name="res_model">fleet.vehicle.state</field>
            <field name="view_type">form</field>
            <field name="view_mode">tree,form</field>
            <field name="help" type="html">
              <p class="oe_view_nocontent_create">
                Click to create a vehicle status.
              </p><p>
                You can customize available status to track the evolution of
                each vehicle. Example: Active, Being Repaired, Sold.
              </p>
            </field>
        </record>

        <menuitem name="Fleet" id="menu_root" sequence="115" groups="fleet_group_user" web_icon="fleet,static/description/icon.png"/>
        <menuitem name="Configuration" parent="menu_root" id="fleet_configuration" sequence="100" groups="fleet_group_manager"/>
        <menuitem action="fleet_vehicle_model_action" parent="fleet_configuration" id="fleet_vehicle_model_menu" groups="base.group_no_one"/>
        <menuitem action="fleet_vehicle_model_brand_action" parent="fleet_configuration" id="fleet_vehicle_model_brand_menu" groups="base.group_no_one"/>
        <menuitem action="fleet_vehicle_state_action" parent="fleet_configuration" id="fleet_vehicle_state_menu" groups="fleet_group_manager"/>

        <record id='fleet_vehicle_view_form' model='ir.ui.view'>
            <field name="name">fleet.vehicle.form</field>
            <field name="model">fleet.vehicle</field>
            <field name="arch" type="xml">
                <form string="Vehicle">
                    <header>
                        <field name="state_id"  widget="statusbar" clickable="True" />
                    </header>
                    <sheet>
                        <div class="oe_button_box" name="button_box">
                            <button name="toggle_active" type="object" class="oe_stat_button" icon="fa-archive">
                                <field name="active" widget="boolean_button" options='{"terminology": "archive"}'/>
                            </button>
                            <button name="return_action_to_open"
                                type="object"
                                class="oe_stat_button"
                                icon="fa-book"
                                context="{'xml_id':'fleet_vehicle_log_contract_action'}"
                                help="show the contract for this vehicle">
                                <field name="contract_count" widget="statinfo" string="Contracts"/>
                            </button>
                            <button name="act_show_log_cost"
                                type="object"
                                class="oe_stat_button"
                                icon="fa-usd"
                                help="show all the costs for this vehicle"
                                groups="fleet.fleet_group_manager">
                                <field name="cost_count" widget="statinfo" string="Costs"/>
                            </button>
                            <button name="return_action_to_open"
                                type="object"
                                class="oe_stat_button"
                                icon="fa-wrench"
                                context="{'xml_id':'fleet_vehicle_log_services_action'}"
                                help="show the services logs for this vehicle" >
                                <field name="service_count" widget="statinfo" string="Services"/>
                            </button>
                            <button name="return_action_to_open"
                                type="object"
                                class="oe_stat_button"
                                icon="fa-flask"
                                context="{'xml_id':'fleet_vehicle_log_fuel_action'}"
                                help="show the fuel logs for this vehicle" >
                                <field name="fuel_logs_count" widget="statinfo" string="Fuel"/>
                            </button>
                            <button name="return_action_to_open"
                                type="object"
                                class="oe_stat_button"
                                icon="fa-tachometer"
                                context="{'xml_id':'fleet_vehicle_odometer_action'}"
                                help="show the odometer logs for this vehicle" >
                                <field name="odometer_count" widget="statinfo" string="Odometer"/>
                            </button>
                        </div>
                        <field name="image_medium" widget='image' class="oe_avatar"/>
                        <div class="oe_title">
                            <label for="model_id" class="oe_edit_only"/>
                            <h1>
                                <field name="model_id" placeholder="e.g. Model S"/>
                            </h1>
                            <label for="license_plate" class="oe_edit_only"/>
                            <h2>
                                <field name="license_plate" class="oe_inline" placeholder="e.g. PAE 326"/>
                            </h2>
                            <label for="tag_ids" class="oe_edit_only"/>
                            <field name="tag_ids" widget="many2many_tags" options="{'no_create_edit': True}"/>
                        </div>
                        <group col="2" string="General Properties">
                            <group >
                                <field name="driver_id" />
                                <field name="location" />
                                <field name="vin_sn" />
                                <field name="company_id" groups="base.group_multi_company"/>
                            </group>
                            <group >
                                <label for="odometer"/>
                                <div class="o_row">
                                    <field name="odometer"/>
                                    <field name="odometer_unit"/>
                                </div>
                                <field name="acquisition_date" />
                                <field name="car_value" />
                            </group>
                        </group>
                        <group col="2">
                            <group string="Additional Properties">
                                <field name="seats" />
                                <field name="doors" />
                                <field name="color" />
                            </group>
                            <group string="Engine Options">
                                <field name="transmission" />
                                <field name="fuel_type" />
                                <label for="co2"/>
                                <div class="o_row">
                                    <field name="co2"/><span>g/km</span>
                                </div>
                                <field name="horsepower" />
                                <field name="horsepower_tax" />
                                <label for="power"/>
                                <div class="o_row">
                                    <field name="power"/><span>kW</span>
                                </div>
                            </group>
                        </group>
                    </sheet>
                    <div class="oe_chatter">
                        <field name="message_follower_ids" widget="mail_followers"/>
                        <field name="message_ids" widget="mail_thread" options='{"thread_level": 1}'/>
                    </div>
                </form>
            </field>
        </record>
        <record id='fleet_vehicle_view_tree' model='ir.ui.view'>
            <field name="name">fleet.vehicle.tree</field>
            <field name="model">fleet.vehicle</field>
            <field name="arch" type="xml">
                <tree string="Vehicle" decoration-warning="contract_renewal_due_soon and not contract_renewal_overdue" decoration-danger="contract_renewal_overdue">
                    <field name="active" invisible="1"/>
                    <field name="license_plate" />
                    <field name="model_id" />
                    <field name="driver_id" />
                    <field name="vin_sn" />
                    <field name="acquisition_date" />
                    <field name="state_id"/>
                    <field name="odometer"/>
                    <field name="odometer_unit" />
                    <field name="contract_renewal_due_soon" invisible="1"/>
                    <field name="contract_renewal_overdue" invisible="1" />
                    <field name="contract_renewal_total" invisible="1"/>
                </tree>
            </field>
        </record>

        <record id="fleet_vehicle_view_search" model="ir.ui.view">
            <field name="name">fleet.vehicle.search</field>
            <field name="model">fleet.vehicle</field>
            <field name="arch" type="xml">
                <search string="All vehicles">
                    <field name="name" filter_domain="['|', ('name','ilike',self), ('license_plate','ilike',self)]" string="Vehicle"/>
                    <field name="driver_id"/>
                    <field name="tag_ids"/>
                    <field name="location"/>
                    <field name="state_id" />
                    <filter name="alert_true" domain="['|',('contract_renewal_due_soon','=',True),('contract_renewal_overdue','=',True)]" string="Has Alert(s)"/>
                    <separator/>
                    <filter string="Archived" name="inactive" domain="[('active','=',False)]"/>
                    <group expand="1" string="Group By">
                        <filter name="groupby_status" context="{'group_by' : 'state_id'}" string="Status"/>
                        <filter name="groupby_model" context="{'group_by' : 'model_id'}" string="Model"/>
                    </group>
               </search>
            </field>
        </record>


        <record id='fleet_vehicle_view_kanban' model='ir.ui.view'>
            <field name="name">fleet.vehicle.kanban</field>
            <field name="model">fleet.vehicle</field>
            <field name="arch" type="xml">
                <kanban>
                    <field name="license_plate" />
                    <field name="model_id" />
                    <field name="driver_id" />
                    <field name="location" />
                    <field name="state_id" />

                    <field name="image" />
                    <field name="tag_ids" />
                    <field name="contract_renewal_due_soon" />
                    <field name="contract_renewal_overdue" />
                    <field name="contract_renewal_name" />
                    <field name="contract_renewal_total" />

                    <templates>
                        <t t-name="kanban-box">
                            <div class="oe_kanban_global_click">
                                <div class="o_kanban_tags_section">
                                    <field name="tag_ids"/>
                                </div>
                                <div class="o_kanban_image">
                                    <img t-att-src="kanban_image('fleet.vehicle', 'image_small', record.id.value)"/>
                                </div>
                                <div class="oe_kanban_details">
                                    <strong>
                                        <field name="license_plate"/> : <field name="model_id"/>
                                    </strong>
                                    <ul>
                                        <li>
                                            <t t-if="record.driver_id.raw_value"><field name="driver_id"/></t>
                                        </li>
                                        <li>
                                            <t t-if="record.location.raw_value"><field name="location"/></t>
                                        </li>
                                    </ul>
                                    <div class="o_kanban_button">
                                        <a t-if="record.contract_renewal_due_soon.raw_value and !record.contract_renewal_overdue.raw_value" data-type="object" data-name="return_action_to_open" href="#" class="oe_kanban_action btn btn-sm btn-warning" data-context='{"xml_id":"fleet_vehicle_log_contract_action"}'>
                                            <field name="contract_renewal_name"/> <t t-if="record.contract_renewal_total.raw_value > 0"> and <field name="contract_renewal_total" /> other(s)</t>
                                        </a>
                                        <a t-if="record.contract_renewal_overdue.raw_value" data-type="object" data-name="return_action_to_open" href="#" class="oe_kanban_action btn btn-sm btn-danger" data-context='{"xml_id":"fleet_vehicle_log_contract_action"}'>
                                            <field name="contract_renewal_name"/> <t t-if="record.contract_renewal_total.raw_value > 0"> and <field name="contract_renewal_total" /> other(s)</t>
                                        </a>
                                    </div>
                                </div>
                            </div>
                        </t>
                    </templates>
                </kanban>
            </field>
        </record>


        <record id='fleet_vehicle_action' model='ir.actions.act_window'>
            <field name="name">Vehicles</field>
            <field name="res_model">fleet.vehicle</field>
            <field name="view_type">form</field>
            <field name="view_mode">kanban,tree,form</field>
            <field name="help" type="html">
              <p class="oe_view_nocontent_create">
                Click to create a new vehicle.
              </p><p>
                You will be able to manage your fleet by keeping track of the
                contracts, services, fixed and recurring costs, odometers and
                fuel logs associated to each vehicle.
            </p><p>
                Odoo will warn you when services or contract have to be
                renewed.
              </p>
            </field>
        </record>

        <menuitem name="Vehicles" parent="menu_root" id="fleet_vehicles" sequence="2" groups="fleet_group_user"/>
        <menuitem action="fleet_vehicle_action" parent="fleet_vehicles" id="fleet_vehicle_menu" groups="fleet_group_user"/>



        <record id='fleet_vehicle_log_contract_view_form' model='ir.ui.view'>
            <field name="name">fleet.vehicle.log_contract.form</field>
            <field name="model">fleet.vehicle.log.contract</field>
            <field name="arch" type="xml">
                <form string="Contract logs">
                    <header>
                        <button modifiers="{'invisible': [['state', '=', 'closed']]}" name="contract_close" states="open" type="object" class="oe_highlight" string="Terminate Contract" groups="fleet.fleet_group_manager"/>
                        <button modifiers="{'invisible': [['state', '=', 'closed']]}" name="contract_close" states="toclose" type="object" class="oe_highlight" string="Terminate Contract" groups="fleet.fleet_group_manager"/>
                        <button modifiers="{'invisible': [['state', 'not in', ['closed']]]}" name="contract_open" states="closed" type="object" class="oe_highlight" string="Set Contract In Progress" groups="fleet.fleet_group_manager"/>
                        <button class="oe_highlight" name="act_renew_contract" type="object" string="Renew Contract" help="Create a new contract automatically with all the same informations except for the date that will start at the end of current contract" groups="fleet.fleet_group_manager"/>
                        <field name="state" widget="statusbar" />
                    </header>
                    <sheet>
                        <div class="oe_button_box" name="button_box">
                            <button name="toggle_active" type="object" class="oe_stat_button" icon="fa-archive">
                                <field name="active" widget="boolean_button" options='{"terminology": "archive"}'/>
                            </button>
                        </div>
                        <group col="2">
                            <group string="Contract details">
                                <field name="vehicle_id"/>
                                <field name="cost_subtype_id" required="1" domain="['|',('category','=','contract'),('category','=','both')]"/>
                                <field name="amount" string="Activation Cost" help="Cost that is paid only once at the creation of the contract"/>
                                <label for="cost_generated"/>
                                <div>
                                    <field name="cost_generated" class="oe_inline" attrs="{'invisible': [('cost_frequency','=','no')]}" />
                                    <field name="cost_frequency" class="oe_inline"  />
                                </div>
                            </group>
                            <group string="Odometer details">
                                <label for="odometer"/>
                                <div class="o_row">
                                    <field name="odometer"/>
                                    <field name="odometer_unit"/>
                                </div>
                            </group>
                        </group>
                        <group col="2">
                            <group>
                                <field name="date" string="Invoice Date"/>
                                <field name="start_date"/>
                                <field name="expiration_date" />
                            </group>
                            <group>
                                <field name="insurer_id" context="{'default_supplier': True}"/>
                                <field name="purchaser_id" />
                                <field name="ins_ref" />
                            </group>
                        </group>
                        <notebook>
                            <page string="Included Services">
                                <group>
                                    <field name="cost_ids" context="{'vehicle_id': vehicle_id}" nolabel="1">
                                        <tree editable="bottom">
                                            <field name="cost_subtype_id" string="Service" domain="[('category','=','service')]"/>
                                            <field name="amount" sum="Price" string="Indicative Cost" />
                                        </tree>
                                    </field>

                                </group>
                                <div class="oe_right"><group><field name="sum_cost" string="Indicative Costs Total"/></group></div>
                            </page>
                            <page string="Generated Recurring Costs">
                                <group>
                                    <field name="generated_cost_ids" context="{'vehicle_id': vehicle_id}" nolabel="1" sum="amount">
                                        <tree editable="bottom" >
                                            <field name="date" />
                                            <field name="amount" sum="amount"/>
                                        </tree>

                                    </field>
                                </group>
                            </page>
                        </notebook>
                        <group string="Terms and Conditions">
                            <field name="notes" nolabel="1" placeholder="Write here all other information relative to this contract" />
                        </group>
                    </sheet>
                </form>
            </field>
        </record>

        <act_window
            id="act_renew_contract"
            name="Renew Contract"
            res_model="fleet.vehicle.log.contract"
            src_model="fleet.vehicle.log.contract"
            view_mode="form"
            view_type="form"
            />


        <record id='fleet_vehicle_log_contract_view_tree' model='ir.ui.view'>
            <field name="name">fleet.vehicle.log.contract.tree</field>
            <field name="model">fleet.vehicle.log.contract</field>
            <field name="arch" type="xml">
                <tree string="Contract logs" decoration-warning="days_left>0 and days_left&lt;15" decoration-danger="days_left==0" decoration-muted="state=='closed'">
                    <field name="active" invisible="1"/>
                    <field name="start_date" />
                    <field name="expiration_date" />
                    <field name="days_left" invisible="1"/>
                    <field name="vehicle_id" />
                    <field name="cost_subtype_id"/>
                    <field name="insurer_id" />
                    <field name="amount" string="Activation Cost"/>
                    <field name="cost_generated"/>
                    <field name="cost_frequency"/>
                    <field name="state" />
                </tree>
            </field>
        </record>

        <record id="fleet_vehicle_log_contract_view_graph" model="ir.ui.view">
           <field name="name">fleet.vehicle.log.contract.graph</field>
           <field name="model">fleet.vehicle.log.contract</field>
           <field name="arch" type="xml">
                <graph string="Contract Costs Per Month" type="bar" stacked="True">
                    <field name="date" type="row"/>
                    <field name="vehicle_id" type="row"/>
                    <field name="cost_amount" type="measure"/>
                </graph>
            </field>
        </record>

        <record id="fleet_vehicle_log_contract_view_search" model="ir.ui.view">
            <field name="name">fleet.vehicle.log.contract.search</field>
            <field name="model">fleet.vehicle.log.contract</field>
            <field name="arch" type="xml">
                <search string="Vehicles Contracts">
                    <filter string="Archived" name="inactive" domain="[('active','=',False)]"/>
                </search>
            </field>
        </record>

        <record id='fleet_vehicle_log_contract_action' model='ir.actions.act_window'>
            <field name="name">Vehicles Contracts</field>
            <field name="res_model">fleet.vehicle.log.contract</field>
            <field name="view_type">form</field>
            <field name="view_mode">tree,form,graph</field>
            <field name="help" type="html">
              <p class="oe_view_nocontent_create">
                Click to create a new contract.
              </p><p>
                Manage all your contracts (leasing, insurances, etc.) with
                their related services, costs. Odoo will automatically warn
                you when some contracts have to be renewed.
              </p><p>
                Each contract (e.g.: leasing) may include several services
                (reparation, insurances, periodic maintenance).
              </p>
            </field>
        </record>

        <menuitem action="fleet_vehicle_log_contract_action" parent="fleet_vehicles" id="fleet_vehicle_log_contract_menu" groups="fleet_group_user"/>

       <record id='fleet_vehicle_odometer_view_form' model='ir.ui.view'>
            <field name="name">fleet.vehicle.odometer.form</field>
            <field name="model">fleet.vehicle.odometer</field>
            <field name="arch" type="xml">
                <form string="Odometer Logs">
                    <sheet>
                        <group>
                            <field name="vehicle_id"/>
                                <div>
                                    <field name="value" class="oe_inline"/>
                                    <field name="unit" class="oe_inline"/>
                                </div>
                            <field name="date" />
                        </group>
                    </sheet>
                </form>
            </field>
        </record>

        <record id='fleet_vehicle_odometer_view_tree' model='ir.ui.view'>
            <field name="name">fleet.vehicle.odometer.tree</field>
            <field name="model">fleet.vehicle.odometer</field>
            <field name="arch" type="xml">
                <tree string="Odometer Logs" editable="top">
                    <field name="date" />
                    <field name="vehicle_id"/>
                    <field name="value" />
                    <field name="unit" />
                </tree>
            </field>
        </record>

        <record id='fleet_vehicle_odometer_view_search' model='ir.ui.view'>
            <field name="name">fleet.vehicle.odometer.search</field>
            <field name="model">fleet.vehicle.odometer</field>
            <field name="arch" type="xml">
                <search string="Vehicles odometers" >
                    <field name="vehicle_id" />
                    <field name="value"/>
                    <field name="unit"/>
                    <field name="date"/>
                    <group expand="0" string="Group By">
                        <filter name="groupby_vehicle" context="{'group_by' : 'vehicle_id'}" string="Vehicle"/>
                    </group>
                </search>
            </field>
        </record>

        <record id="fleet_vehicle_odometer_view_graph" model="ir.ui.view">
           <field name="name">fleet.vehicle.odometer.graph</field>
           <field name="model">fleet.vehicle.odometer</field>
           <field name="arch" type="xml">
                <graph string="Odometer Values Per Vehicle">
                    <field name="vehicle_id" type="row"/>
                    <field name="value" type="measure"/>
                </graph>
            </field>
        </record>

        <record id='fleet_vehicle_odometer_action' model='ir.actions.act_window'>
            <field name="name">Vehicles Odometer</field>
            <field name="res_model">fleet.vehicle.odometer</field>
            <field name="view_type">form</field>
            <field name="view_mode">tree,graph</field>
            <field name="context">{"search_default_groupby_vehicle" : True}</field>
            <field name="help" type="html">
              <p class="oe_view_nocontent_create">
                Click to create a new odometer log.
              </p>
              <p>
                Here you can add various odometer entries for all vehicles.
                You can also show odometer value for a particular vehicle using
                the search field.
              </p>
            </field>
        </record>

        <menuitem action="fleet_vehicle_odometer_action" parent="fleet_vehicles" id="fleet_vehicle_odometer_menu" groups="fleet_group_user"/>

        <record id='fleet_vehicle_log_fuel_view_form' model='ir.ui.view'>
            <field name="name">fleet.vehicle.log.fuel.form</field>
            <field name="model">fleet.vehicle.log.fuel</field>
            <field name="arch" type="xml">
                <form string="Fuel Logs">
                    <sheet>
                        <group>
                            <group string="Vehicle Details">
                                <field name="vehicle_id"/>
                            </group>
                            <group string="Refueling Details">
                                <field name="liter"/>
                                <field name="price_per_liter"/>
                                <field name="amount"/>
                            </group>
                        </group>
                        <group>
                            <group string="Odometer Details">
                                <label for="odometer"/>
                                <div class="o_row">
                                    <field name="odometer"/>
                                    <field name="odometer_unit"/>
                                </div>
                            </group>
                            <group string="Additional Details">
                                <field name="date" />
                                <field name="purchaser_id" />
                                <field name="inv_ref" />
                                <field name="vendor_id" context="{'default_supplier': True}"/>
                            </group>
                        </group>
                        <field name="notes" placeholder="Write here any other information"/>
                    </sheet>
                </form>
            </field>
        </record>

        <record id='fleet_vehicle_log_fuel_view_tree' model='ir.ui.view'>
            <field name="name">fleet.vehicle.log.fuel.tree</field>
            <field name="model">fleet.vehicle.log.fuel</field>
            <field name="arch" type="xml">
                <tree string="Fuel Logs">
                    <field name="date" />
                    <field name="vehicle_id" />
                    <field name="odometer" invisible="1"/>
                    <field name="odometer_unit" invisible="1"/>
                    <field name="purchaser_id" />
                    <field name="inv_ref" invisible="1"/>
                    <field name="vendor_id" invisible="1"/>
                    <field name="liter" />
                    <field name="price_per_liter" invisible="1"/>
                    <field name="amount" sum="Price"/>
                </tree>
            </field>
        </record>

        <record id='fleet_vehicle_log_fuel_view_search' model='ir.ui.view'>
            <field name="name">fleet.vehicle.log.fuel.search</field>
            <field name="model">fleet.vehicle.log.fuel</field>
            <field name="arch" type="xml">
                <search string="Vehicles Fuel Logs" >
                    <field name="vehicle_id" />
                    <field name="date"/>
                    <field name="purchaser_id" />
                    <field name="liter" />
                    <field name="amount" sum="Price"/>
                    <group expand="0" string="Group By">
                        <filter name="groupby_vehicle" context="{'group_by' : 'vehicle_id'}" string="Vehicle"/>
                    </group>
                </search>
            </field>
        </record>

        <record id="fleet_vehicle_log_fuel_view_graph" model="ir.ui.view">
           <field name="name">fleet.vehicle.log.fuel.graph</field>
           <field name="model">fleet.vehicle.log.fuel</field>
           <field name="arch" type="xml">
                <graph string="Fuel Costs Per Month">
                    <field name="vehicle_id" type="row"/>
                    <field name="cost_amount" type="measure"/>
                </graph>
            </field>
        </record>

        <record id='fleet_vehicle_log_fuel_action' model='ir.actions.act_window'>
            <field name="name">Vehicles Fuel Logs</field>
            <field name="res_model">fleet.vehicle.log.fuel</field>
            <field name="view_type">form</field>
            <field name="view_mode">tree,form,graph</field>
            <field name="context">{"search_default_groupby_vehicle" : True}</field>
            <field name="help" type="html">
              <p class="oe_view_nocontent_create">
                Click to create a new fuel log.
              </p><p>
                Here you can add refuelling entries for all vehicles.  You can
                also filter logs of a particular vehicle using the search
                field.
              </p>
            </field>
        </record>

        <menuitem action="fleet_vehicle_log_fuel_action" parent="fleet_vehicles" id="fleet_vehicle_log_fuel_menu" groups="fleet_group_user"/>


        <record id='fleet_vehicle_log_services_view_form' model='ir.ui.view'>
            <field name="name">fleet.vehicle.log.services.form</field>
            <field name="model">fleet.vehicle.log.services</field>
            <field name="arch" type="xml">
                <form string="Services Logs">
                    <sheet>
                        <group col="2">
                            <group string="Services Details">
                                <field name="vehicle_id"/>
                                <field name="cost_subtype_id" string="Service Type" domain="['|',('category','=','service'),('category','=','both')]" required="1"/>
                                <field name="amount"/>
                            </group>
                            <group string="Odometer Details">
                                <label for="odometer"/>
                                <div class="o_row">
                                    <field name="odometer"/>
                                    <field name="odometer_unit"/>
                                </div>
                            </group>
                        </group>
                        <group col="2">
                            <group string="Additional Details">
                                <field name="date" />
                                <field name="purchaser_id" />
                                <field name="vendor_id" context="{'default_supplier': True}"/>
                                <field name="inv_ref" />
                            </group>
                        </group>
                        <group string="Included Services">
                            <field name="cost_ids" nolabel="1">
                                <tree string="Included Services" editable="bottom">
                                    <field name="cost_subtype_id" string="Service" domain="[('category','=','service')]"/>
                                    <field name="amount" sum="Price" string="Indicative Cost"/>
                                </tree>
                            </field>
                        </group>
                        <group string="Notes">
                            <field nolabel="1" name="notes" placeholder="Write here any other information related to the service completed."/>
                        </group>
                    </sheet>
                </form>
            </field>
        </record>

        <record id='fleet_vehicle_log_services_view_tree' model='ir.ui.view'>
            <field name="name">fleet.vehicle.log.services.tree</field>
            <field name="model">fleet.vehicle.log.services</field>
            <field name="arch" type="xml">
                <tree string="Services Logs">
                    <field name="date" />
                    <field name="vehicle_id" />
                    <field name="cost_subtype_id"/>
                    <field name="purchaser_id"/>
                    <field name="vendor_id" />
                    <field name="inv_ref" />
                    <field name="notes" />
                    <field name="amount" sum="Total"/>
                </tree>
            </field>
        </record>

        <record id="fleet_vehicle_log_services_view_graph" model="ir.ui.view">
           <field name="name">fleet.vehicle.log.services.graph</field>
           <field name="model">fleet.vehicle.log.services</field>
           <field name="arch" type="xml">
                <graph string="Services Costs Per Month" stacked="True">
                    <field name="date" type="row"/>
                    <field name="vehicle_id" type="row"/>
                    <field name="cost_amount" type="measure"/>
                </graph>
            </field>
        </record>

        <record id='fleet_vehicle_log_services_view_search' model='ir.ui.view'>
            <field name="name">fleet.vehicle.log.services.search</field>
            <field name="model">fleet.vehicle.log.services</field>
            <field name="arch" type="xml">
                <search string="Services Logs" >
                    <field name="vehicle_id"/>
                    <field name="cost_subtype_id"/>
                </search>
            </field>
        </record>

        <record id='fleet_vehicle_log_services_action' model='ir.actions.act_window'>
            <field name="name">Vehicles Services Logs</field>
            <field name="res_model">fleet.vehicle.log.services</field>
            <field name="view_type">form</field>
            <field name="view_mode">tree,form,graph</field>
            <field name="help" type="html">
              <p class="oe_view_nocontent_create">
                Click to create a new service entry.
              </p><p>
                Odoo helps you keeping track of all the services done
                on your vehicle. Services can be of many type: occasional
                repair, fixed maintenance, etc.
              </p>
            </field>
        </record>

        <menuitem action="fleet_vehicle_log_services_action" parent="fleet_vehicles" id="fleet_vehicle_log_services_menu" groups="fleet_group_user"/>

        <record id="fleet_vehicle_tag_view_view_form" model="ir.ui.view">
            <field name="name">fleet.vehicle.tag.form</field>
            <field name="model">fleet.vehicle.tag</field>
            <field name="arch" type="xml">
                <form string="Vehicle Tags">
                    <group>
                        <field name="name"/>
                    </group>
                </form>
            </field>
        </record>

        <record id="fleet_vehicle_tag_action" model="ir.actions.act_window">
            <field name="name">Vehicle Tags</field>
            <field name="res_model">fleet.vehicle.tag</field>
            <field name="view_type">form</field>
            <field name="help" type="html">
                <p class="oe_view_nocontent_create">
                    Click to add a new tag.
                </p>
            </field>
        </record>

        <menuitem id="fleet_vehicle_tag_menu" parent="fleet_configuration" action="fleet_vehicle_tag_action" sequence="112" groups="base.group_no_one"/>

        <record id='fleet_vehicle_service_types_view_tree' model='ir.ui.view'>
            <field name="name">fleet.service.type.tree</field>
            <field name="model">fleet.service.type</field>
            <field name="arch" type="xml">
                <tree string="Service types" editable="top">
                    <field name="name" />
                    <field name="category"/>
                </tree>
            </field>
        </record>

        <!--
            fleet.vehicle.cost
            -->
        <record id='fleet_vehicle_service_types_action' model='ir.actions.act_window'>
            <field name="name">Service Types</field>
            <field name="res_model">fleet.service.type</field>
            <field name="view_type">form</field>
            <field name="view_mode">tree,form</field>
            <field name="help" type="html">
              <p class="oe_view_nocontent_create">
                Click to create a new type of service.
              </p><p>
                Each service can used in contracts, as a standalone service or both.
              </p>
            </field>
        </record>

        <menuitem action="fleet_vehicle_service_types_action" parent="fleet_configuration" id="fleet_vehicle_service_types_menu" groups="base.group_no_one"/>

        <record id='fleet_vehicle_cost_view_tree' model='ir.ui.view'>
            <field name="name">fleet.vehicle.cost.tree</field>
            <field name="model">fleet.vehicle.cost</field>
            <field name="arch" type="xml">
                <tree string="Vehicle Costs">
                    <field name="vehicle_id"/>
                    <field name="cost_subtype_id"/>
                    <field name="date"/>
                </tree>
            </field>
        </record>

        <record id='fleet_vehicle_cost_view_pivot' model='ir.ui.view'>
            <field name="name">fleet.vehicle.cost.pivot</field>
            <field name="model">fleet.vehicle.cost</field>
            <field name="arch" type="xml">
                <pivot string="Vehicles costs">
                    <field name="vehicle_id" type="row"/>
                    <field name="cost_type" type="row"/>
                    <field name="date" interval="year" type="col"/>
                    <field name="amount" type="measure"/>
                </pivot>
            </field>
        </record>

        <record id='fleet_vehicle_cost_view_graph' model='ir.ui.view'>
            <field name="name">fleet.vehicle.cost.graph</field>
            <field name="model">fleet.vehicle.cost</field>
            <field name="arch" type="xml">
                <graph string="Vehicles costs">
                    <field name="vehicle_id"/>
                    <field name="date" interval="year"/>
                    <field name="amount" type="measure"/>
                </graph>
            </field>
        </record>

        <record id='fleet_vehicle_cost_indicative_view_pivot' model='ir.ui.view'>
            <field name="name">fleet.vehicle.cost.pivot</field>
            <field name="model">fleet.vehicle.cost</field>
            <field name="arch" type="xml">
                <pivot string="Vehicles costs" >
                    <field name="vehicle_id" type="row"/>
                    <field name="cost_type" type="col"/>
                    <field name="amount" type="measure"/>
                </pivot>
            </field>
        </record>

        <record id='fleet_vehicle_cost_indicative_view_graph' model='ir.ui.view'>
            <field name="name">fleet.vehicle.cost.graph</field>
            <field name="model">fleet.vehicle.cost</field>
            <field name="arch" type="xml">
                <graph string="Vehicles costs">
                    <field name="parent_id" type="row"/>
                    <field name="cost_type" type="col"/>
                    <field name="amount" type="measure"/>
                </graph>
            </field>
        </record>

        <record id='fleet_vehicle_costs_view_search' model='ir.ui.view'>
            <field name="name">fleet.vehicle.cost.search</field>
            <field name="model">fleet.vehicle.cost</field>
            <field name="arch" type="xml">
                <search string="Vehicles costs" >
                    <field name="vehicle_id" />
                    <field name="cost_subtype_id"/>
                    <field name="date"/>
                    <field name="parent_id"/>
                    <filter name="parent_false" domain="[('parent_id','=',False)]" string="Effective Costs"/>
                    <filter name="parent_true" domain="[('parent_id','!=',False)]" string="Indicative Costs"/>
                    <group expand="1" string="Group By">
                        <filter name="groupby_cost_type" context="{'group_by': 'cost_type'}" string="Cost Type"/>
                        <filter name="groupby_cost_subtype_id" context="{'group_by': 'cost_subtype_id'}" string="Cost Subtype"/>
                        <filter name="groupby_vehicle_id" context="{'group_by': 'vehicle_id'}" string="Vehicle"/>
                        <filter name="groupby_parent_id" context="{'group_by': 'parent_id'}" string="Parent"/>
                        <separator/>
                        <filter name="groupby_date" context="{'group_by': 'date:month'}" string="Month" help="Vehicle Costs by Month"/>
                        <filter name="groupby_year" context="{'group_by': 'date:year'}" string="Year"/>
                    </group>
                </search>
            </field>
        </record>

        <record id='fleet_vehicle_costs_view_form' model='ir.ui.view'>
            <field name="name">fleet.vehicle.cost.form</field>
            <field name="model">fleet.vehicle.cost</field>
            <field name="arch" type="xml">
                <form string="Vehicle costs">
                    <sheet>
                        <group col="2" string="Cost Details">
                            <group>
                                <field name="vehicle_id" />
                                <field name="cost_subtype_id"/>
                                <field name="amount"/>
                            </group>
                            <group>
                                <field name="date"/>
                                <field name="parent_id" groups="base.group_no_one"/>
                            </group>
                        </group>
                    </sheet>
                </form>
            </field>
        </record>

        <record id="fleet_vehicle_costs_view_graph" model="ir.ui.view">
           <field name="name">fleet.vehicle.cost.graph</field>
           <field name="model">fleet.vehicle.cost</field>
           <field name="arch" type="xml">
                <graph string="Costs Per Month" stacked="True">
                    <field name="date" type="row"/>
                    <field name="vehicle_id" type="col"/>
                    <field name="amount" type="measure"/>
                </graph>
            </field>
        </record>

        <record id='fleet_vehicle_costs_action' model='ir.actions.act_window'>
            <field name="name">Vehicle Costs</field>
            <field name="res_model">fleet.vehicle.cost</field>
            <field name="view_type">form</field>
            <field name="view_mode">tree,form,graph</field>
            <field name="context">{"search_default_parent_false" : True, "search_default_groupby_vehicle_id" : True,}</field>
            <field name="help" type="html">
              <p class="oe_view_nocontent_create">
                Click to create a new cost.
              </p><p>
                Odoo helps you managing the costs for your different
                vehicles. Costs are created automatically from services,
                contracts (fixed or recurring) and fuel logs.
              </p>
            </field>
        </record>

        <menuitem action="fleet_vehicle_costs_action" parent="fleet_vehicles" id="fleet_vehicle_costs_menu" groups="fleet_group_manager"/>
</odoo>

Anon7 - 2022
AnonSec Team