[IMP] crm, sales_team: correct actions in sales_team dashboard

* When you click on activities from today, this week or overdue, you now get the correct filters in search view.
* Put emphasis on the whole cell when the target is reached
This commit is contained in:
Martin Geubelle
2015-09-15 12:07:58 +02:00
parent 70c0c99112
commit 2337f074bc
4 changed files with 31 additions and 18 deletions
+9
View File
@@ -637,6 +637,15 @@
<filter string="Unassigned" name="unassigned"
domain="[('user_id','=', False)]" help="No salesperson"/>
<separator/>
<filter string="Today Activities" name="today"
domain="[('date_action', '=', context_today().strftime('%Y-%m-%d'))]"/>
<filter string="This Week Activities" name="this_week"
domain="['&amp;', ('date_action', '&gt;=', context_today().strftime('%Y-%m-%d')),
('date_action', '&lt;=', (context_today()+datetime.timedelta(days=7)).strftime('%Y-%m-%d'))
]"/>
<filter string="Overdue Activities" name="overdue"
domain="[('date_action', '&lt;', context_today().strftime('%Y-%m-%d'))]"/>
<separator/>
<filter string="Follow-up" name="follow_up"
domain="[('date_action', '&lt;=', context_today().strftime('%Y-%m-%d') )]"
help="Show all opportunities for which the next action date is today or before"/>
@@ -50,14 +50,22 @@ var SalesTeamDashboardView = KanbanView.extend({
var self = this;
var $action = $(ev.currentTarget);
var action_name = $action.attr('name');
var action_extra = $action.data('extra');
var additional_context = {}
// TODO: find a better way to add defaults to search view
if (action_name === 'calendar.action_calendar_event') {
additional_context['search_default_mymeetings'] = 1;
}
if (action_name === 'crm.crm_lead_opportunities') {
additional_context['search_default_assigned_to_me'] = 1;
} else if (action_name === 'crm.crm_lead_action_activities') {
if (action_extra === 'today') {
additional_context['search_default_today'] = 1;
} else if (action_extra === 'this_week') {
additional_context['search_default_this_week'] = 1;
} else if (action_extra === 'overdue') {
additional_context['search_default_overdue'] = 1;
}
} else if (action_name === 'crm.crm_opportunity_report_action_graph') {
additional_context['search_default_won'] = 1;
}
new Model("ir.model.data")
@@ -57,10 +57,6 @@
display: inline;
}
.o_target_reached {
color: green;
}
a:hover {
text-decoration: none;
}
@@ -27,7 +27,7 @@
</a>
</td>
<td class="o_main" title="To Activities">
<a href="#" class="o_dashboard_action" name="crm.crm_lead_action_activities">
<a href="#" class="o_dashboard_action" name="crm.crm_lead_action_activities" data-extra="today">
<span class="o_highlight">
<t t-if="!show_demo">
<t t-esc="values['activity']['today']"/>
@@ -59,7 +59,7 @@
</a>
</td>
<td class="o_main" title="To Activities">
<a href="#" class="o_dashboard_action" name="crm.crm_lead_action_activities">
<a href="#" class="o_dashboard_action" name="crm.crm_lead_action_activities" data-extra="this_week">
<t t-if="!show_demo">
<t t-esc="values['activity']['next_7_days']"/>
</t>
@@ -74,7 +74,7 @@
<td></td>
<!-- Hide overdue when there is none -->
<td t-if="show_demo or (values and values['activity']['overdue'] != 0)" class="o_warning" title="To Activities">
<a href="#" class="o_dashboard_action" name="crm.crm_lead_action_activities">
<a href="#" class="o_dashboard_action" name="crm.crm_lead_action_activities" data-extra="overdue">
<t t-if="!show_demo">
<t t-esc="values['activity']['overdue']"/> overdue
</t>
@@ -102,9 +102,9 @@
<div class="o_highlight">Performance</div>
This Month
</td>
<td class="o_secondary" title="To Activity Report">
<td t-attf-class="#{values and values['done']['target'] and values['done']['this_month'] >= values['done']['target'] ? 'o_main' : 'o_secondary'}" title="To Activity Report">
<a href="#" class="o_dashboard_action" name="crm.crm_activity_report_action">
<span t-attf-class="o_highlight #{values and values['done']['target'] and values['done']['this_month'] >= values['done']['target'] ? 'o_target_reached' : ''}">
<span class="o_highlight">
<t t-if="!show_demo">
<t t-esc="values['done']['this_month']"/>
</t>
@@ -115,22 +115,22 @@
Activities Done
</a>
</td>
<td class="o_secondary" title="To Opportunity Report">
<td t-attf-class="#{values and values['won']['target'] and values['won']['this_month'] >= values['won']['target'] ? 'o_main' : 'o_secondary'}" title="To Opportunity Report">
<a href="#" class="o_dashboard_action" name="crm.crm_opportunity_report_action_graph">
<span t-attf-class="o_highlight #{values and values['won']['target'] and values['won']['this_month'] >= values['won']['target'] ? 'o_target_reached' : ''}">
<span class="o_highlight">
<t t-if="!show_demo">
<t t-esc="widget.render_monetary_field(values['won']['this_month'], values['currency_id'])"/>
</t>
<t t-if="show_demo" class="o_target_reached">
<t t-if="show_demo">
78,140.03€
</t>
</span> <br/>
Won in Opportunities
</a>
</td>
<td t-if="values['invoiced']" class="o_secondary" title="To Invoice Report">
<td t-if="values['invoiced']" t-attf-class="#{values and values['invoiced']['target'] and values['invoiced']['this_month'] >= values['invoiced']['target'] ? 'o_main' : 'o_secondary'}" title="To Invoice Report">
<a href="#" class="o_dashboard_action" name="account.action_account_invoice_report_all">
<span t-attf-class="o_highlight #{values and values['invoiced']['target'] and values['invoiced']['this_month'] >= values['invoiced']['target'] ? 'o_target_reached' : ''}">
<span class="o_highlight">
<t t-if="!show_demo">
<t t-esc="widget.render_monetary_field(values['invoiced']['this_month'], values['currency_id'])"/>
</t>
@@ -192,7 +192,7 @@
</a>
</td>
<td class="o_secondary" title="To Opportunity Report">
<a href="#" class="o_dashboard_action" name="crm.crm_opportunity_report_action">
<a href="#" class="o_dashboard_action" name="crm.crm_opportunity_report_action_graph">
<t t-esc="widget.render_monetary_field(values['won']['last_month'], values['currency_id'])"/>
</a>
</td>