82 lines
3.6 KiB
XML
82 lines
3.6 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<odoo>
|
|
<record id="view_transport_attendance_list" model="ir.ui.view">
|
|
<field name="name">education.transport.attendance.list</field>
|
|
<field name="model">education.transport.attendance</field>
|
|
<field name="arch" type="xml">
|
|
<list string="Attendance" editable="bottom">
|
|
<field name="trip_id"/>
|
|
<field name="student_id"/>
|
|
<field name="stop_id"/>
|
|
<field name="boarding_time"/>
|
|
<field name="drop_time"/>
|
|
<field name="status" widget="badge"
|
|
decoration-success="status == 'boarded'"
|
|
decoration-danger="status == 'absent'"
|
|
decoration-info="status == 'dropped'"
|
|
decoration-warning="status == 'missed'"/>
|
|
<field name="notes"/>
|
|
</list>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="view_transport_attendance_form" model="ir.ui.view">
|
|
<field name="name">education.transport.attendance.form</field>
|
|
<field name="model">education.transport.attendance</field>
|
|
<field name="arch" type="xml">
|
|
<form string="Attendance">
|
|
<header>
|
|
<field name="status" widget="statusbar" options="{'clickable': '1'}"/>
|
|
</header>
|
|
<sheet>
|
|
<group>
|
|
<group>
|
|
<field name="trip_id"/>
|
|
<field name="student_id"/>
|
|
<field name="stop_id"/>
|
|
</group>
|
|
<group>
|
|
<field name="boarding_time"/>
|
|
<field name="drop_time"/>
|
|
</group>
|
|
</group>
|
|
<notebook>
|
|
<page string="Notes">
|
|
<field name="notes" placeholder="Additional notes..."/>
|
|
</page>
|
|
</notebook>
|
|
</sheet>
|
|
<chatter/>
|
|
</form>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="view_transport_attendance_search" model="ir.ui.view">
|
|
<field name="name">education.transport.attendance.search</field>
|
|
<field name="model">education.transport.attendance</field>
|
|
<field name="arch" type="xml">
|
|
<search string="Search Attendance">
|
|
<field name="trip_id"/>
|
|
<field name="student_id"/>
|
|
<field name="stop_id"/>
|
|
<filter string="Boarded" name="boarded" domain="[('status', '=', 'boarded')]"/>
|
|
<filter string="Absent" name="absent" domain="[('status', '=', 'absent')]"/>
|
|
<filter string="Dropped" name="dropped" domain="[('status', '=', 'dropped')]"/>
|
|
<filter string="Missed" name="missed" domain="[('status', '=', 'missed')]"/>
|
|
<group>
|
|
<filter string="Trip" name="group_trip" context="{'group_by':'trip_id'}"/>
|
|
<filter string="Student" name="group_student" context="{'group_by':'student_id'}"/>
|
|
<filter string="Status" name="group_status" context="{'group_by':'status'}"/>
|
|
</group>
|
|
</search>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="action_transport_attendance_list" model="ir.actions.act_window">
|
|
<field name="name">Attendance</field>
|
|
<field name="res_model">education.transport.attendance</field>
|
|
<field name="view_mode">list,form</field>
|
|
<field name="search_view_id" ref="view_transport_attendance_search"/>
|
|
</record>
|
|
</odoo>
|