mirror of
https://github.com/bringout/oca-ocb-vertical-industry.git
synced 2026-04-22 13:12:09 +02:00
19.0 vanilla
This commit is contained in:
parent
4607ccbd2e
commit
825ff6514e
487 changed files with 184979 additions and 195262 deletions
|
|
@ -5,7 +5,7 @@
|
|||
<record id="goal_list_action" model="ir.actions.act_window">
|
||||
<field name="name">Goals</field>
|
||||
<field name="res_model">gamification.goal</field>
|
||||
<field name="view_mode">tree,form,kanban</field>
|
||||
<field name="view_mode">list,form,kanban</field>
|
||||
<field name="context">{'search_default_group_by_user': True, 'search_default_group_by_definition': True}</field>
|
||||
<field name="help" type="html">
|
||||
<p class="o_view_nocontent_smiling_face">
|
||||
|
|
@ -20,7 +20,7 @@
|
|||
<record id="goals_from_challenge_act" model="ir.actions.act_window">
|
||||
<field name="res_model">gamification.goal</field>
|
||||
<field name="name">Related Goals</field>
|
||||
<field name="view_mode">kanban,tree,form</field>
|
||||
<field name="view_mode">kanban,list,form</field>
|
||||
<field name="context">{'search_default_group_by_definition': True, 'search_default_inprogress': True, 'search_default_challenge_id': active_id, 'default_challenge_id': active_id}</field>
|
||||
<field name="help" type="html">
|
||||
<p class="o_view_nocontent_empty_folder">
|
||||
|
|
@ -36,17 +36,17 @@
|
|||
<field name="name">Goal List</field>
|
||||
<field name="model">gamification.goal</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Goal List" decoration-danger="state == 'failed'" decoration-success="state == 'reached'" decoration-muted="state == 'canceled'" create="false">
|
||||
<field name="definition_id" invisible="1" />
|
||||
<field name="user_id" invisible="1" />
|
||||
<list string="Goal List" decoration-danger="state == 'failed'" decoration-success="state == 'reached'" decoration-muted="state == 'canceled'" create="false">
|
||||
<field name="definition_id" column_invisible="True" />
|
||||
<field name="user_id" column_invisible="True" />
|
||||
<field name="start_date"/>
|
||||
<field name="end_date"/>
|
||||
<field name="current"/>
|
||||
<field name="target_goal"/>
|
||||
<field name="completeness" widget="progressbar"/>
|
||||
<field name="state" invisible="1"/>
|
||||
<field name="line_id" invisible="1"/>
|
||||
</tree>
|
||||
<field name="state" column_invisible="True"/>
|
||||
<field name="line_id" column_invisible="True"/>
|
||||
</list>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
|
@ -56,27 +56,27 @@
|
|||
<field name="arch" type="xml">
|
||||
<form string="Goal" create="false">
|
||||
<header>
|
||||
<button string="Start goal" type="object" name="action_start" states="draft" class="oe_highlight"/>
|
||||
<button string="Start goal" type="object" name="action_start" invisible="state != 'draft'" class="oe_highlight"/>
|
||||
|
||||
<button string="Goal Reached" type="object" name="action_reach" states="inprogress" />
|
||||
<button string="Goal Failed" type="object" name="action_fail" states="inprogress"/>
|
||||
<button string="Reset Completion" type="object" name="action_cancel" states="failed,reached" groups="base.group_no_one" />
|
||||
<button string="Goal Reached" type="object" name="action_reach" invisible="state != 'inprogress'" />
|
||||
<button string="Goal Failed" type="object" name="action_fail" invisible="state != 'inprogress'"/>
|
||||
<button string="Reset Completion" type="object" name="action_cancel" invisible="state not in ('failed', 'reached')" groups="base.group_no_one" />
|
||||
<field name="state" widget="statusbar" statusbar_visible="draft,inprogress,reached" />
|
||||
</header>
|
||||
<sheet>
|
||||
<group>
|
||||
<group string="Reference">
|
||||
<field name="definition_id" attrs="{'readonly':[('state','!=','draft')]}"/>
|
||||
<field name="user_id" attrs="{'readonly':[('state','!=','draft')]}"/>
|
||||
<field name="definition_id" readonly="state != 'draft'"/>
|
||||
<field name="user_id" readonly="state != 'draft'"/>
|
||||
<field name="challenge_id" />
|
||||
</group>
|
||||
<group string="Schedule">
|
||||
<field name="start_date" attrs="{'readonly':[('state','!=','draft')]}"/>
|
||||
<field name="start_date" readonly="state != 'draft'"/>
|
||||
<field name="end_date" />
|
||||
<field name="computation_mode" invisible="1"/>
|
||||
|
||||
<label for="remind_update_delay" attrs="{'invisible':[('computation_mode','!=', 'manually')]}"/>
|
||||
<div attrs="{'invisible':[('computation_mode','!=', 'manually')]}">
|
||||
<label for="remind_update_delay" invisible="computation_mode != 'manually'"/>
|
||||
<div invisible="computation_mode != 'manually'">
|
||||
<field name="remind_update_delay" class="oe_inline"/>
|
||||
days
|
||||
</div>
|
||||
|
|
@ -85,14 +85,14 @@
|
|||
<group string="Data" colspan="4">
|
||||
<label for="target_goal" />
|
||||
<div>
|
||||
<field name="target_goal" attrs="{'readonly':[('state','!=','draft')]}" class="oe_inline"/>
|
||||
<field name="target_goal" readonly="state != 'draft'" class="oe_inline"/>
|
||||
<field name="definition_suffix" class="oe_inline"/>
|
||||
</div>
|
||||
<label for="current" />
|
||||
<div>
|
||||
<field name="current" class="oe_inline"/>
|
||||
<button string="refresh" type="object" name="update_goal" class="oe_link" attrs="{'invisible':['|',('computation_mode', '=', 'manually'),('state', '=', 'draft')]}" />
|
||||
<div class="oe_grey" attrs="{'invisible':[('definition_id', '=', False)]}">
|
||||
<button string="refresh" type="object" name="update_goal" class="oe_link" invisible="computation_mode == 'manually' or state == 'draft'" />
|
||||
<div class="opacity-50" invisible="not definition_id">
|
||||
Reached when current value is <strong><field name="definition_condition" class="oe_inline"/></strong> than the target.
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -117,21 +117,21 @@
|
|||
('state', '=', 'inprogress'),
|
||||
'&',
|
||||
('state', 'in', ('done', 'failed')),
|
||||
('end_date', '>=', context_today().strftime('%Y-%m-%d'))
|
||||
('end_date', '>=', 'today')
|
||||
]"/>
|
||||
<filter name="closed" string="Done"
|
||||
domain="[
|
||||
('state', 'in', ('reached', 'failed')),
|
||||
'|',
|
||||
('end_date', '=', False),
|
||||
('end_date', '<', context_today().strftime('%Y-%m-%d'))
|
||||
('end_date', '<', 'today')
|
||||
]"/>
|
||||
<separator/>
|
||||
|
||||
<field name="user_id"/>
|
||||
<field name="definition_id"/>
|
||||
<field name="challenge_id"/>
|
||||
<group expand="0" string="Group By">
|
||||
<group>
|
||||
<filter name="group_by_user" string="User" domain="[]" context="{'group_by':'user_id'}"/>
|
||||
<filter name="group_by_definition" string="Goal Definition" domain="[]" context="{'group_by':'definition_id'}"/>
|
||||
<filter string="State" name="state" domain="[]" context="{'group_by':'state'}"/>
|
||||
|
|
@ -145,63 +145,44 @@
|
|||
<field name="name">Goal Kanban View</field>
|
||||
<field name="model">gamification.goal</field>
|
||||
<field name="arch" type="xml">
|
||||
<kanban class="oe_background_grey" create="false">
|
||||
<field name="definition_id"/>
|
||||
<field name="user_id"/>
|
||||
<field name="current"/>
|
||||
<field name="completeness"/>
|
||||
<kanban highlight_color="color" create="false">
|
||||
<field name="state"/>
|
||||
<field name="target_goal"/>
|
||||
<field name="definition_description"/>
|
||||
<field name="color"/>
|
||||
<field name="definition_condition"/>
|
||||
<field name="definition_suffix"/>
|
||||
<field name="definition_display"/>
|
||||
<field name="start_date"/>
|
||||
<field name="end_date"/>
|
||||
<field name="last_update"/>
|
||||
<templates>
|
||||
<t t-name="kanban-tooltip">
|
||||
<ul class="oe_kanban_tooltip">
|
||||
<li><t t-esc="record.definition_description.value" /></li>
|
||||
</ul>
|
||||
</t>
|
||||
<t t-name="kanban-box">
|
||||
<div t-attf-class="oe_kanban_card oe_kanban_global_click o_kanban_gamification #{record.end_date.raw_value < record.last_update.raw_value and record.state.raw_value == 'failed' ? 'oe_kanban_color_2' : ''} #{record.end_date.raw_value < record.last_update.raw_value and record.state.raw_value == 'reached' ? 'oe_kanban_color_5' : ''}">
|
||||
<div class="o_kanban_content text-center">
|
||||
<p><strong><h4 class="oe_goal_name" tooltip="kanban-tooltip"><field name="definition_id" /></h4></strong></p>
|
||||
<img class="o_image_24_cover me-1 rounded-circle" t-att-src="kanban_image('res.users', 'avatar_128', record.user_id.raw_value)" t-att-title="record.user_id.value" t-att-alt="record.user_id.value"/>
|
||||
<field name="user_id" class="fw-bold"/>
|
||||
<div class="o_goal_state_block pt-3 fs-1 fw-bolder">
|
||||
<t t-if="record.definition_display.raw_value == 'boolean'">
|
||||
<div class="o_goal_state">
|
||||
<t t-if="record.state.raw_value=='reached'"><i role="img" class="text-success fa fa-check fa-3x" title="Goal Reached" aria-label="Goal Reached"/></t>
|
||||
<t t-if="record.state.raw_value=='inprogress'"><i role="img" class="fa fa-clock-o fa-3x" title="Goal in Progress" aria-label="Goal in Progress"/></t>
|
||||
<t t-if="record.state.raw_value=='failed'"><i role="img" class="text-danger fa fa-times fa-3x" title="Goal Failed" aria-label="Goal Failed"/></t>
|
||||
</div>
|
||||
</t>
|
||||
<t t-if="record.definition_display.raw_value == 'progress'">
|
||||
<t t-if="record.definition_condition.raw_value =='higher'">
|
||||
<field name="current" widget="gauge" options="{'max_field': 'target_goal', 'label_field': 'definition_suffix', 'style': 'width:160px; height: 120px;'}" />
|
||||
</t>
|
||||
<t t-if="record.definition_condition.raw_value != 'higher'">
|
||||
<div t-attf-class="o_goal_state #{record.current.raw_value == record.target_goal.raw_value+1 ? 'text-warning' : record.current.raw_value > record.target_goal.raw_value ? 'text-danger' : 'text-success'}">
|
||||
<t t-esc="record.current.raw_value" />
|
||||
</div>
|
||||
<em>Target: less than <t t-esc="record.target_goal.raw_value" /></em>
|
||||
</t>
|
||||
</t>
|
||||
|
||||
</div>
|
||||
<p>
|
||||
<t t-if="record.start_date.value">
|
||||
From <t t-esc="record.start_date.value" />
|
||||
</t>
|
||||
<t t-if="record.end_date.value">
|
||||
To <t t-esc="record.end_date.value" />
|
||||
</t>
|
||||
</p>
|
||||
</div>
|
||||
<t t-name="card" class="text-center">
|
||||
<field class="fw-bold fs-4" name="definition_id" />
|
||||
<div class="d-flex justify-content-center mt-3">
|
||||
<field class="o_image_24_cover me-1 rounded" name="user_id" widget="image" options="{'preview_image': 'avatar_128'}"/>
|
||||
<field name="user_id" class="fw-bold"/>
|
||||
</div>
|
||||
<div class="pt-3 fs-1 fw-bolder">
|
||||
<t t-if="record.definition_display.raw_value == 'boolean'">
|
||||
<t t-if="record.state.raw_value=='reached'"><i role="img" class="text-success fa fa-check fa-3x" title="Goal Reached" aria-label="Goal Reached"/></t>
|
||||
<t t-if="record.state.raw_value=='inprogress'"><i role="img" class="text-body fa fa-clock-o fa-3x" title="Goal in Progress" aria-label="Goal in Progress"/></t>
|
||||
<t t-if="record.state.raw_value=='failed'"><i role="img" class="text-danger fa fa-times fa-3x" title="Goal Failed" aria-label="Goal Failed"/></t>
|
||||
</t>
|
||||
<t t-if="record.definition_display.raw_value == 'progress'">
|
||||
<t t-if="record.definition_condition.raw_value =='higher'">
|
||||
<field name="current" widget="gauge" options="{'max_field': 'target_goal', 'label_field': 'definition_suffix', 'style': 'width:160px; height: 120px;'}" />
|
||||
</t>
|
||||
<t t-if="record.definition_condition.raw_value != 'higher'">
|
||||
<field class="#{record.current.raw_value == record.target_goal.raw_value+1 ? 'text-warning' : record.current.raw_value > record.target_goal.raw_value ? 'text-danger' : 'text-success'}" name="current" />
|
||||
<em>Target: less than <field name="target_goal"/></em>
|
||||
</t>
|
||||
</t>
|
||||
</div>
|
||||
<p>
|
||||
<t t-if="record.start_date.value">
|
||||
From <field name="start_date" />
|
||||
</t>
|
||||
<t t-if="record.end_date.value">
|
||||
To <field name="end_date" />
|
||||
</t>
|
||||
</p>
|
||||
</t>
|
||||
</templates>
|
||||
</kanban>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue