Files
tra_backend/gym/views/member_view.xml
2020-08-04 16:50:06 +05:30

610 lines
31 KiB
XML

<odoo>
<!-- Inherited view of res_partner -->
<record id="view_member_tree_inherit" model="ir.ui.view">
<field name="name">view.tree.tree.inherit</field>
<field name="model">res.partner</field>
<field name="inherit_id" ref="base.view_partner_tree"/>
<field name="arch" type="xml">
<field name="display_name" position="before">
<field name="is_member" invisible="1"/>
<field name="membership_number" attrs="{'invisible':[('is_member','=',False)]}"/>
</field>
<field name="phone" position="before">
<field name="gender"/>
<field name="account_manager_id"/>
<field name="analytic_id" attrs="{'invisible':[('is_member','=',False)]}"/>
<field name="occupation"/>
</field>
<field name="phone" position="after">
<field name="mobile"/>
</field>
<field name="email" position="after">
<field name="nationality_id"/>
<field name="lang" string="Preferred Language"/>
</field>
</field>
</record>
<record id="view_member_form_inherit" model="ir.ui.view">
<field name="name">view.member.form.inherit</field>
<field name="model">res.partner</field>
<field name="inherit_id" ref="base.view_partner_form"/>
<field name="arch" type="xml">
<field name="name" position="after">
<field name="is_member" invisible="1"/>
<group>
<label for="membership_number" attrs="{'invisible':[('is_member','=',False)]}"/>
<div>
<field name="membership_number" attrs="{'invisible':[('is_member','=',False)]}"/>
</div>
</group>
</field>
<xpath expr="/form/sheet/group/group[1]"
position="attributes">
<attribute name="invisible">1</attribute>
</xpath>
<xpath expr="/form/sheet/group" position="inside">
<group>
<field name="emirate_number"/>
<field name="passport_number"/>
<field name="nationality_id"/>
<field name="lang"/>
</group>
</xpath>
<field name="vat" position="attributes">
<attribute name="invisible">1</attribute>
</field>
<field name="website" position="attributes">
<attribute name="invisible">1</attribute>
</field>
<xpath expr="//group/field[@name='function']" position="attributes">
<attribute name="invisible">1</attribute>
</xpath>
<xpath expr="//div/field[@name='parent_id']" position="attributes">
<attribute name="invisible">1</attribute>
</xpath>
<field name="email" position="attributes">
<attribute name="required">1</attribute>
</field>
<xpath expr="//page[@name='sales_purchases']/group/group[@name='sale']/field[@name='user_id']"
position="after">
<field name="is_member" invisible="1"/>
</xpath>
<xpath expr="//group/field[@name='category_id']" position="before">
<field name="user_id" invisible="1"/>
</xpath>
<xpath expr="//group/field[@name='category_id']"
position="attributes">
<attribute name="invisible">1</attribute>
</xpath>
<xpath expr="//field[@name='lang']" position="after">
<field name="measurements" invisible="1"/>
<field name="membership" invisible="1"/>
</xpath>
<xpath expr="//field[@name='image_1920']" position="after">
<h1>
<field name="reg_no" readonly="1"
attrs="{'invisible':[('is_member','=',False)]}"/>
</h1>
</xpath>
<xpath expr="/form/sheet" position="before">
<header>
<button name="open_user"
type="object"
string="Open User"
groups='gym.group_gym_operator'
attrs="{'invisible':[('user_id','=',False)]}"/>
</header>
</xpath>
<xpath expr="//notebook/page[@name='sales_purchases']"
position="before">
<page string="Measurement History" attrs="{'invisible':[('is_member','=',False)]}">
<group cols='2' colspan='2'>
<field name="member_measurement_ids" nolabel='1'
context="{'member_invisible':1}">
<form>
<sheet>
<separator string="Member's Detail"
col="4"/>
<group>
<field name="date"/>
</group>
<separator string="Height - Weight"
col="4"/>
<group>
<label for="weight" string="Weight"/>
<div>
<field name="weight"
class="oe_inline"/>
&#x2063;
<field name="umo_weight_id"
class="oe_inline"
nolabel="1"
placeholder="e.g. kg"/>
</div>
<label for="height" string="Height"/>
<div>
<field name="height"
class="oe_inline"/>
&#x2063;
<field name="umo_height_id"
class="oe_inline"
nolabel="1"
placeholder="e.g. foot"/>
</div>
<field name="bmi"/>
<field name="bmr"/>
</group>
<separator string="Body Measurement"
col="4"/>
<group col="2">
<label for="neck" string="Neck"/>
<div>
<field name="neck"
class="oe_inline"/>
&#x2063;
<field name="umo_neck_id"
class="oe_inline"
nolabel="1"
placeholder="e.g. inch(s)"/>
</div>
<label for="chest"/>
<div>
<field name="chest"
class="oe_inline"/>
&#x2063;
<field name="umo_chest_id"
class="oe_inline"
nolabel="1"
placeholder="e.g. inch(s)"/>
</div>
<label for="biceps"/>
<div>
<field name="biceps"
class="oe_inline"/>
&#x2063;
<field name="umo_biceps_id"
class="oe_inline"
nolabel="1"
placeholder="e.g. inch(s)"/>
</div>
<label for="waist"/>
<div>
<field name="waist"
class="oe_inline"/>
&#x2063;
<field name="umo_waist_id"
class="oe_inline"
nolabel="1"
placeholder="e.g. inch(s)"/>
</div>
<label for="hips"/>
<div>
<field name="hips"
class="oe_inline"/>
&#x2063;
<field name="umo_hips_id"
class="oe_inline"
nolabel="1"
placeholder="e.g. inch(s)"/>
</div>
<label for="thigh"/>
<div>
<field name="thigh"
class="oe_inline"/>
&#x2063;
<field name="umo_thigh_id"
class="oe_inline"
nolabel="1"
placeholder="e.g. inch(s)"/>
</div>
<label for="calf"/>
<div>
<field name="calf"
class="oe_inline"/>
&#x2063;
<field name="umo_calf_id"
class="oe_inline"
nolabel="1"
placeholder="e.g. inch(s)"/>
</div>
</group>
</sheet>
</form>
</field>
</group>
</page>
</xpath>
<xpath expr="//button[@name='%(membership.action_membership_invoice_view)d']"
position="attributes">
<attribute name="invisible">1</attribute>
</xpath>
</field>
</record>
<record id="view_task_partner_info_form_inherit" model="ir.ui.view">
<field name="name">view.task.partner.info.form.inherit</field>
<field name="model">res.partner</field>
<field name="inherit_id" ref="project.view_task_partner_info_form"/>
<field name="arch" type="xml">
<field name="task_count" position="attributes">
<attribute name="string">Workouts</attribute>
</field>
</field>
</record>
<!-- Action of Measurement History -->
<record id="action_measurement_history" model="ir.actions.act_window">
<field name="name">Measurements</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">body.measurement</field>
<field name="binding_view_types">form</field>
<field name="view_mode">kanban,tree,form</field>
</record>
<!-- Action of Member Measurement History -->
<record id="action_member_measurement_history"
model="ir.actions.act_window">
<field name="name">Member Measurement History</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">body.measurement</field>
<field name="binding_view_types">form</field>
<field name="view_mode">tree,form</field>
<field name="domain">[('partner_id', '=', active_id)]</field>
</record>
<!--Kanban view of member -->
<record id="member_kanban_view_new" model="ir.ui.view">
<field name="name">member.kanban.view.new</field>
<field name="model">res.partner</field>
<field name="arch" type="xml">
<kanban class="o_res_partner_kanban">
<field name="id"/>
<field name="color"/>
<field name="display_name"/>
<field name="title"/>
<field name="email"/>
<field name="parent_id"/>
<field name="is_company"/>
<field name="function"/>
<field name="phone"/>
<field name="street"/>
<field name="street2"/>
<field name="zip"/>
<field name="city"/>
<field name="country_id"/>
<field name="mobile"/>
<field name="state_id"/>
<field name="category_id"/>
<field name="image_128"/>
<field name="type"/>
<field name="measurements"/>
<field name="membership"/>
<field name="task_count"/>
<templates>
<t t-name="kanban-box">
<div class="oe_kanban_global_click o_kanban_record_has_image_fill o_res_partner_kanban">
<t t-if="!record.is_company.raw_value">
<t t-if="record.type.raw_value === 'delivery'" t-set="placeholder" t-value="'/base/static/img/truck.png'"/>
<t t-elif="record.type.raw_value === 'invoice'" t-set="placeholder" t-value="'/base/static/img/money.png'"/>
<t t-else="" t-set="placeholder" t-value="'/base/static/img/avatar_grey.png'"/>
<div class="o_kanban_image_fill_left d-none d-md-block" t-attf-style="background-image:url('#{kanban_image('res.partner', 'image_128', record.id.raw_value, placeholder)}')">
<img class="o_kanban_image_inner_pic" t-if="record.parent_id.raw_value" t-att-alt="record.parent_id.value" t-att-src="kanban_image('res.partner', 'image_128', record.parent_id.raw_value)"/>
</div>
<div class="o_kanban_image rounded-circle d-md-none" t-attf-style="background-image:url('#{kanban_image('res.partner', 'image_128', record.id.raw_value, placeholder)}')">
<img class="o_kanban_image_inner_pic" t-if="record.parent_id.raw_value" t-att-alt="record.parent_id.value" t-att-src="kanban_image('res.partner', 'image_128', record.parent_id.raw_value)"/>
</div>
</t>
<t t-else="">
<t t-set="placeholder" t-value="'/base/static/img/company_image.png'"/>
<div class="o_kanban_image_fill_left o_kanban_image_full" t-attf-style="background-image: url(#{kanban_image('res.partner', 'image_128', record.id.raw_value, placeholder)})" role="img"/>
</t>
<div class="oe_kanban_details">
<strong class="oe_partner_heading">
<field name="display_name"/>
</strong>
<ul>
<li
t-if="record.parent_id.raw_value and !record.function.raw_value">
<field name="parent_id"/>
</li>
<li
t-if="!record.parent_id.raw_value and record.function.raw_value">
<field name="function"/>
</li>
<li
t-if="record.parent_id.raw_value and record.function.raw_value">
<field name="function"/>
at
<field name="parent_id"/>
</li>
<li t-if="record.city.raw_value and !record.country_id.raw_value">
<field name="city"/>
</li>
<li t-if="!record.city.raw_value and record.country_id.raw_value">
<field name="country_id"/>
</li>
<li t-if="record.city.raw_value and record.country_id.raw_value">
<field name="city"/>
,
<field name="country_id"/>
</li>
<li t-if="record.email.raw_value"
class="o_text_overflow">
<field name="email"/>
</li>
</ul>
<div class="oe_kanban_partner_links">
<div id="measurement"
style="float: left; padding-right: 3px;">
<a name="%(gym.action_member_measurement_history)d"
type="action"
id="measurement_div"
context="{'default_partner_id': active_id}">
<div>
<span t-esc="record.measurements.value"/> :
Measurements
</div>
</a>
</div>
<br/>
<div id="membership"
style="float: left; padding-right: 3px;">
<a name="%(gym.action_member_membership_plan)d"
context="{'default_partner': active_id}"
type="action">
<div>
<span t-esc="record.membership.value"/> :
Memberships
</div>
</a>
</div>
<br/>
<div id="task_count"
style="float: left; padding-right: 3px;">
<a name="%(gym.action_view_member_task)d"
type="action"
context="{'default_partner_id': active_id}">
<div>
<span t-esc="record.task_count.value"/> :
Workout
</div>
</a>
</div>
</div>
</div>
</div>
</t>
</templates>
</kanban>
</field>
</record>
<!--Action for members menu -->
<record id="action_member" model="ir.actions.act_window">
<field name="name">Members</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">res.partner</field>
<field name="binding_view_types">form</field>
<field name="view_mode">tree,form</field>
<field name="domain">[('is_member','=',True)]</field>
<field name="context">{"member_default":True}</field>
</record>
<!-- Binding the action of customer -->
<record id="view_member_kanban" model="ir.actions.act_window.view">
<field name="view_mode">kanban</field>
<field name="view_id" ref="member_kanban_view_new"/>
<field name="act_window_id" ref="action_member"/>
</record>
<!-- parent menu -->
<menuitem id="menu_gym" name="Gym Management"/>
<!-- Sub Menu as members -->
<menuitem id="menu_member" action="action_member"
parent="gym.menu_gym" sequence="1"/>
<!-- Form view of Measurement History -->
<record id="view_measurement_history_form" model="ir.ui.view">
<field name="name">view.measurement.history.form</field>
<field name="model">body.measurement</field>
<field name="arch" type="xml">
<form>
<sheet>
<separator string="Member's Detail" col="4"/>
<group>
<field name="partner_id" required="1"
invisible="context.get('member_invisible', False)"
domain="[('is_member','=',True)]"
context="{'default_is_member':True}"/>
<field name="date"/>
</group>
<separator string="Height - Weight" col="4"/>
<group>
<label for="weight" string="Weight"/>
<div>
<field name="weight" class="oe_inline"/>&#x2063;
<field name="umo_weight_id" class="oe_inline"
nolabel="1" placeholder="e.g. kg"/>
</div>
<label for="height" string="Height"/>
<div>
<field name="height" class="oe_inline"/>&#x2063;
<field name="umo_height_id" class="oe_inline"
nolabel="1" placeholder="e.g. foot"/>
</div>
<field name="bmi" readonly="1"/>
<field name="bmr"/>
</group>
<separator string="Body Measurement" col="4"/>
<group col="4">
<label for="neck" string="Neck"/>
<div>
<field name="neck" class="oe_inline"/>&#x2063;
<field name="umo_neck_id" class="oe_inline"
nolabel="1" placeholder="e.g. inch(s)"/>
</div>
<label for="chest"/>
<div>
<field name="chest" class="oe_inline"/>&#x2063;
<field name="umo_chest_id" class="oe_inline"
nolabel="1" placeholder="e.g. inch(s)"/>
</div>
<label for="biceps"/>
<div>
<field name="biceps" class="oe_inline"/>
&#x2063;
<field name="umo_biceps_id" class="oe_inline"
nolabel="1"
placeholder="e.g. inch(s)"/>
</div>
<label for="waist"/>
<div>
<field name="waist" class="oe_inline"/>
&#x2063;
<field name="umo_waist_id" class="oe_inline"
nolabel="1"
placeholder="e.g. inch(s)"/>
</div>
<label for="hips"/>
<div>
<field name="hips" class="oe_inline"/>
&#x2063;
<field name="umo_hips_id" class="oe_inline"
nolabel="1"
placeholder="e.g. inch(s)"/>
</div>
<label for="thigh"/>
<div>
<field name="thigh" class="oe_inline"/>
&#x2063;
<field name="umo_thigh_id" class="oe_inline"
nolabel="1" placeholder="e.g. inch(s)"/>
</div>
<label for="calf"/>
<div>
<field name="calf" class="oe_inline"/>
&#x2063;
<field name="umo_calf_id" class="oe_inline"
nolabel="1"
placeholder="e.g. inch(s)"/>
</div>
</group>
</sheet>
</form>
</field>
</record>
<!-- Tree view of Measurement History -->
<record id="view_measurement_history_tree" model="ir.ui.view">
<field name="name">view.measurement.history.tree</field>
<field name="model">body.measurement</field>
<field name="arch" type="xml">
<tree>
<field name="date"/>
<field name="weight"/>
<field name="height"/>
<field name="bmi"/>
<field name="bmr"/>
<field name="neck"/>
<field name="biceps"/>
<field name="hips"/>
<field name="calf"/>
<field name="chest"/>
<field name="waist"/>
<field name="thigh"/>
</tree>
</field>
</record>
<!-- Search view of Measurement History -->
<record id="view_measurement_search" model="ir.ui.view">
<field name="name">view.measurement.search</field>
<field name="model">body.measurement</field>
<field name="arch" type="xml">
<search>
<field name="partner_id"/>
<filter name="group_by_member" domain="[]" string="Member"
context="{'group_by':'partner_id'}"/>
<filter name="group_by_date_day" domain="[]" string="Day"
context="{'group_by':'date:day'}"/>
<filter name="group_by_date_month" domain="[]" string="Month"
context="{'group_by':'date:month'}"/>
<filter name="group_by_date_year" domain="[]" string="Year"
context="{'group_by':'date:year'}"/>
</search>
</field>
</record>
<!--Pivot view of Measurement History -->
<record id="measurement_view_pivot" model="ir.ui.view">
<field name="name">measurement.pivot</field>
<field name="model">body.measurement</field>
<field name="arch" type="xml">
<pivot string="Measurement">
<field name="partner_id" type="row"/>
<field name="date" type="col measure"/>
<field name="neck" type="measure"/>
<field name="chest" type="measure"/>
<field name="biceps" type="measure"/>
<field name="waist" type="measure"/>
<field name="hips" type="measure"/>
<field name="thigh" type="measure"/>
<field name="calf" type="measure"/>
<field name="weight" type="measure"/>
<field name="height" type="measure"/>
</pivot>
</field>
</record>
<!--Graph view of Measurement History -->
<record id="measurement_view_graph" model="ir.ui.view">
<field name="name">measurement.graph</field>
<field name="model">body.measurement</field>
<field name="arch" type="xml">
<graph string="Measurement">
<field name="partner_id"/>
<field name="date"/>
<field name="weight" type="measure"/>
</graph>
</field>
</record>
<!--Action for Measurement Analysis -->
<record id="measurement_graph_action" model="ir.actions.act_window">
<field name="name">Measurements Analysis</field>
<field name="res_model">body.measurement</field>
<field name="binding_view_types">form</field>
<field name="view_mode">pivot,graph</field>
<field name="view_id"></field> <!-- force empty -->
<field name="context">{'search_default_group_by_member': 1,
'search_default_group_by_date_day': 1}
</field>
</record>
<!--Main Menu of Measurement history -->
<menuitem
id="menu_measurement_history"
name="Measurements"
sequence="14"
web_icon="gym,static/description/icon2.png"
action="action_measurement_history"
/>
<!--Measurement history menu-->
<!-- <menuitem id="menu_measurement"
parent="gym.menu_measurement_history" sequence="1"/> -->
<!--Main Menu of Report -->
<menuitem id="menu_report" name="Report"
parent="gym.menu_measurement_history"/>
<!-- Measurement history analysis report -->
<menuitem id="menu_measurement_report" parent="gym.menu_report"
sequence="2" action="measurement_graph_action"/>
</odoo>