Files
odoo_source/addons/project/views/rating_views.xml
T
ram ddf7195ae3 [IMP] rating, project, im_livechat: improve handling of ratings
RATING

Rating texts currently have a negative skewness. Indeed apart top rating
all ratings have a negative feeling. In this commit we update them
to match more closely a 1-5 range from dissatisfied to satisfied, ok being
the middle value.

PROJECT

Filter customer rating were taking in account ratings from first e-mail
instead of current satisfaction.

IM LIVECHAT

Livechat did not catch feedbacks without comment.

Task ID-2439720
COM PR odoo/odoo#66992
ENT PR odoo/enterprise#16757
2021-04-26 14:10:20 +00:00

229 lines
11 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="rating_rating_view_tree_project" model="ir.ui.view">
<field name="name">rating.rating.tree.project</field>
<field name="model">rating.rating</field>
<field name="inherit_id" ref="rating.rating_rating_view_tree"/>
<field name="mode">primary</field>
<field name="arch" type="xml">
<field name="res_name" position="attributes">
<attribute name="string">Task</attribute>
</field>
<field name="parent_res_name" position="attributes">
<attribute name="string">Project</attribute>
</field>
<field name="rated_partner_id" position="attributes">
<attribute name="string">Assigned to</attribute>
</field>
</field>
</record>
<record id="rating_rating_view_form_project" model="ir.ui.view">
<field name="name">rating.rating.form.project</field>
<field name="model">rating.rating</field>
<field name="inherit_id" ref="rating.rating_rating_view_form"/>
<field name="mode">primary</field>
<field name="arch" type="xml">
<field name="res_name" position="attributes">
<attribute name="string">Task</attribute>
</field>
<field name="resource_ref" position="attributes">
<attribute name="string">Task</attribute>
</field>
<field name="parent_ref" position="attributes">
<attribute name="string">Project</attribute>
</field>
<field name="parent_res_name" position="attributes">
<attribute name="string">Project</attribute>
</field>
<field name="rated_partner_id" position="attributes">
<attribute name="string">Assigned to</attribute>
</field>
<div name="rating_image_container" position="replace">
<field name="rating_text" string="Rating"/>
</div>
<xpath expr="//field[@name='is_internal']" position="attributes">
<attribute name="invisible">1</attribute>
</xpath>
</field>
</record>
<record id="rating_rating_view_pivot" model="ir.ui.view">
<field name="name">rating.rating.view.pivot.project</field>
<field name="model">rating.rating</field>
<field name="inherit_id" ref="rating.rating_rating_view_pivot"/>
<field name="mode">primary</field>
<field name="arch" type="xml">
<xpath expr="//pivot" position="attributes">
<attribute name="js_class">project_rating_pivot</attribute>
</xpath>
</field>
</record>
<record id="rating_rating_view_graph" model="ir.ui.view">
<field name="name">rating.rating.view.graph.project</field>
<field name="model">rating.rating</field>
<field name="inherit_id" ref="rating.rating_rating_view_graph"/>
<field name="mode">primary</field>
<field name="arch" type="xml">
<xpath expr="//graph" position="attributes">
<attribute name="js_class">project_rating_graph</attribute>
</xpath>
</field>
</record>
<record id="rating_rating_view_search_project" model="ir.ui.view">
<field name="name">rating.rating.search.project</field>
<field name="model">rating.rating</field>
<field name="inherit_id" ref="rating.rating_rating_view_search"/>
<field name="mode">primary</field>
<field name="arch" type="xml">
<xpath expr="//filter[@name='resource']" position="after">
<filter string="Project" name="groupby_project" context="{'group_by': 'parent_res_name'}"/>
</xpath>
<xpath expr="/search" position="inside">
<filter string="Last 30 Days" name="rating_last_30_days" domain="[
('write_date', '>=', (datetime.datetime.combine(context_today() + relativedelta(days=-30), datetime.time(0,0,0)).to_utc()).strftime('%Y-%m-%d %H:%M:%S'))]"
/>
<separator/>
</xpath>
</field>
</record>
<record id="rating_rating_action_view_project_rating" model="ir.actions.act_window">
<field name="name">Rating</field>
<field name="res_model">rating.rating</field>
<field name="view_mode">kanban,tree,graph,pivot,form</field>
<field name="domain">[('consumed','=',True), ('parent_res_model','=','project.project')]</field>
<field name="search_view_id" ref="rating_rating_view_search_project"/>
<field name="help" type="html">
<p class="o_view_nocontent_empty_folder">
There are no ratings for this project at the moment
</p>
</field>
</record>
<record id="rating_rating_action_view_project_rating_tree" model="ir.actions.act_window.view">
<field name="sequence" eval="10"/>
<field name="view_mode">tree</field>
<field name="act_window_id" ref="rating_rating_action_view_project_rating"/>
<field name="view_id" ref="rating_rating_view_tree_project"/>
</record>
<record id="rating_rating_action_view_project_rating_form" model="ir.actions.act_window.view">
<field name="sequence" eval="40"/>
<field name="view_mode">form</field>
<field name="act_window_id" ref="rating_rating_action_view_project_rating"/>
<field name="view_id" ref="rating_rating_view_form_project"/>
</record>
<record id="rating_rating_action_view_project_rating_pivot" model="ir.actions.act_window.view">
<field name="sequence" eval="40"/>
<field name="view_mode">pivot</field>
<field name="act_window_id" ref="rating_rating_action_view_project_rating"/>
<field name="view_id" ref="rating_rating_view_pivot"/>
</record>
<record id="rating_rating_action_view_project_rating_graph" model="ir.actions.act_window.view">
<field name="sequence" eval="40"/>
<field name="view_mode">graph</field>
<field name="act_window_id" ref="rating_rating_action_view_project_rating"/>
<field name="view_id" ref="rating_rating_view_graph"/>
</record>
<record id="rating_rating_action_task" model="ir.actions.act_window">
<field name="name">Customer Ratings on Task</field>
<field name="res_model">rating.rating</field>
<field name="view_mode">kanban,tree,pivot,graph,form</field>
<field name="domain">[('res_model', '=', 'project.task'), ('res_id', '=', active_id), ('consumed', '=', True)]</field>
<field name="search_view_id" ref="rating_rating_view_search_project"/>
<field name="help" type="html">
<p class="o_view_nocontent_empty_folder">
No customer ratings yet
</p><p>
Let's wait for your customers to manifest themselves.
</p>
</field>
</record>
<record id="rating_rating_action_task_tree" model="ir.actions.act_window.view">
<field name="sequence" eval="10"/>
<field name="view_mode">tree</field>
<field name="act_window_id" ref="rating_rating_action_task"/>
<field name="view_id" ref="rating_rating_view_tree_project"/>
</record>
<record id="rating_rating_action_task_form" model="ir.actions.act_window.view">
<field name="sequence" eval="40"/>
<field name="view_mode">form</field>
<field name="act_window_id" ref="rating_rating_action_task"/>
<field name="view_id" ref="rating_rating_view_form_project"/>
</record>
<record id="rating_rating_action_task_pivot" model="ir.actions.act_window.view">
<field name="sequence" eval="40"/>
<field name="view_mode">pivot</field>
<field name="act_window_id" ref="rating_rating_action_task"/>
<field name="view_id" ref="rating_rating_view_pivot"/>
</record>
<record id="rating_rating_action_task_graph" model="ir.actions.act_window.view">
<field name="sequence" eval="40"/>
<field name="view_mode">graph</field>
<field name="act_window_id" ref="rating_rating_action_task"/>
<field name="view_id" ref="rating_rating_view_graph"/>
</record>
<record id="rating_rating_action_project_report" model="ir.actions.act_window">
<field name="name">Customer Ratings</field>
<field name="res_model">rating.rating</field>
<field name="view_mode">kanban,tree,pivot,graph,form</field>
<field name="domain">[('parent_res_model','=','project.project'), ('consumed', '=', True)]</field>
<field name="search_view_id" ref="rating_rating_view_search_project"/>
<field name="help" type="html">
<p class="o_view_nocontent_empty_folder">
No customer ratings yet
</p><p>
Let's wait for your customers to manifest themselves.
</p>
</field>
<field name="context">{'search_default_rating_last_30_days': 1, 'search_default_responsible': 1}</field>
</record>
<record id="rating_rating_action_project_report_kanban" model="ir.actions.act_window.view">
<field name="sequence" eval="5"/>
<field name="view_mode">kanban</field>
<field name="act_window_id" ref="rating_rating_action_project_report"/>
<field name="view_id" ref="rating.rating_rating_view_kanban"/>
</record>
<record id="rating_rating_action_project_report_tree" model="ir.actions.act_window.view">
<field name="sequence" eval="10"/>
<field name="view_mode">tree</field>
<field name="act_window_id" ref="rating_rating_action_project_report"/>
<field name="view_id" ref="rating_rating_view_tree_project"/>
</record>
<record id="rating_rating_action_project_report_form" model="ir.actions.act_window.view">
<field name="sequence" eval="40"/>
<field name="view_mode">form</field>
<field name="act_window_id" ref="rating_rating_action_project_report"/>
<field name="view_id" ref="rating_rating_view_form_project"/>
</record>
<record id="rating_rating_action_project_report_pivot" model="ir.actions.act_window.view">
<field name="sequence" eval="40"/>
<field name="view_mode">pivot</field>
<field name="act_window_id" ref="rating_rating_action_project_report"/>
<field name="view_id" ref="rating_rating_view_pivot"/>
</record>
<record id="rating_rating_action_project_report_graph" model="ir.actions.act_window.view">
<field name="sequence" eval="40"/>
<field name="view_mode">graph</field>
<field name="act_window_id" ref="rating_rating_action_project_report"/>
<field name="view_id" ref="rating_rating_view_graph"/>
</record>
</odoo>