[MERGE] from trunk
[odoo/odoo.git] / addons / sale_crm / sale_crm_view.xml
index 31c0317..6b4d5f1 100644 (file)
@@ -43,7 +43,7 @@
                     <filter string="My Sales Team(s)"
                         icon="terp-personal+"
                         domain="[('section_id.user_id','=',uid)]"
-                        help="My Sales Team(s)"/>
+                        help="My Sales Team(s)"  groups="base.group_multi_salesteams"/>
                 </xpath>
                 <xpath expr="//field[@name='user_id']" position="after">
                     <field name="section_id" string="Sales Team" groups="base.group_multi_salesteams"/>
@@ -75,7 +75,7 @@
                     <field name="section_id"/>
                 </xpath>
                 <xpath expr="//group/filter[@string='Due Date']" position="after">
-                    <filter string="Sales Team" domain="[]" context="{'group_by':'section_id'}"/>
+                    <filter string="Sales Team" domain="[]" context="{'group_by':'section_id'}" groups="base.group_multi_salesteams"/>
                 </xpath>
             </field>
         </record>
             <field name="context">{
                     'search_default_section_id': [active_id],
                     'default_section_id': active_id,
-                    'search_default_my_sale_orders_filter': 1,
                 }
             </field>
             <field name="help" type="html">
             <field name="view_mode">tree,form,calendar,graph</field>
             <field name="context">{
                     'search_default_section_id': [active_id],
-                    'default_section_id': active_id, 'show_address': 1,
-                    'search_default_my_sale_orders_filter': 1
+                    'default_section_id': active_id,
+                    'show_address': 1,
                 }
             </field>
             <field name="domain">[('state','in',('draft','sent','cancel'))]</field>
                 ('type', '=', 'out_invoice')]</field>
             <field name="context">{
                     'search_default_section_id': [active_id],
-                    'default_section_id': active_id},
+                    'default_section_id': active_id,
                     'default_type':'out_invoice',
                     'type':'out_invoice',
                     'journal_type': 'sale',
             <field name="act_window_id" ref="sale_crm.action_invoice_salesteams"/>
         </record>
 
+        <record id="crm_case_section_salesteams_view_form" model="ir.ui.view">
+            <field name="name">crm.case.section.form</field>
+            <field name="model">crm.case.section</field>
+            <field name="inherit_id" ref="crm.crm_case_section_view_form"/>
+            <field name="arch" type="xml">
+            <data>
+                <field name="target_duration" position="before">
+                    <field name="target_invoice"/>
+                </field>
+            </data>
+            </field>
+        </record>
+
         <record id="crm_case_section_salesteams_view_kanban" model="ir.ui.view">
             <field name="name">crm.case.section.kanban</field>
             <field name="model">crm.case.section</field>
             <field name="inherit_id" ref="crm.crm_case_section_salesteams_view_kanban"/>
             <field name="arch" type="xml">
             <data>
-                <xpath expr="//field[@name='open_opportunity_ids']" position="after">
-                    <field name="quotation_ids"/>
-                    <field name="sale_order_ids"/>
-                    <field name="invoice_ids"/>
-                </xpath>
-                <xpath expr="//div[@class='oe_items_list']" position="inside">
-                    <a name="%(action_quotations_salesteams)d" type="action">
-                        <t t-raw="record.quotation_ids.raw_value.length"/>
-                        <t t-if="record.quotation_ids.raw_value.length &gt;= 2">Quotations</t>
-                        <t t-if="record.quotation_ids.raw_value.length &lt; 2">Quotation</t>
-                    </a>
-                    <a name="%(action_orders_salesteams)d" type="action">
-                        <t t-raw="record.sale_order_ids.raw_value.length"/>
-                        <t t-if="record.sale_order_ids.raw_value.length &gt;= 2">Sales Orders</t>
-                        <t t-if="record.sale_order_ids.raw_value.length &lt; 2">Sales Order</t>
-                    </a>
-                    <a name="%(action_invoice_salesteams)d" type="action" groups="account.group_account_invoice">
-                        <t t-raw="record.invoice_ids.raw_value.length"/>
-                        <t t-if="record.invoice_ids.raw_value.length &gt;= 2">Invoices</t>
-                        <t t-if="record.invoice_ids.raw_value.length &lt; 2">Invoice</t>
-                    </a>
+                <xpath expr="//field[@name='name']" position="after">
+                    <field name="created_quotation_per_duration"/>
+                    <field name="validate_saleorder_per_duration"/>
+                    <field name="sent_invoice_per_duration"/>
+
+                    <field name="forecast"/>
+                    <field name="target_invoice"/>
                 </xpath>
+                <xpath expr="//div[@class='oe_salesteams_leads']" position="after"><div class="oe_salesteams_orders">
+                        <a name="%(action_orders_salesteams)d" type="action">Sales Orders</a>
+                        <a name="%(sale.action_order_report_all)d" type="action" class="oe_sparkline_bar_link"><field name="validate_saleorder_per_duration" widget="sparkline_bar">Revenue of confirmed sales orders per <t t-esc="record.target_duration_txt.value"/>).<br/>Click the acces to Sales Analysis</field></a>
+                    </div></xpath>
+                <xpath expr="//div[@class='oe_salesteams_opportunities']" position="after"><div class="oe_salesteams_invoices">
+                        <a name="%(action_invoice_salesteams)d" type="action" groups="account.group_account_invoice">Invoices</a>
+                        <a name="%(account.action_account_invoice_report_all)d" type="action" class="oe_sparkline_bar_link"><field name="sent_invoice_per_duration" widget="sparkline_bar">Revenue of sent invoices per <t t-esc="record.target_duration_txt.value"/>.<br/>Click to see a detailed analysis of invoices.</field></a>
+                    </div><div class="oe_salesteams_quotations">
+                        <a name="%(action_quotations_salesteams)d" type="action" class="oe_sparkline_bar_link">Quotations</a>
+                        <a name="%(sale.action_order_report_all)d" type="action" class="oe_sparkline_bar_link"><field name="created_quotation_per_duration" widget="sparkline_bar">Revenue of created quotation per <t t-esc="record.target_duration_txt.value"/>.<br/>Click to see a detailed analysis of sales.</field></a>
+                    </div></xpath>
                 <xpath expr="//div[@class='oe_items_list']" position="after">
-                    <div class="oe_center">
-                        <div class="oe_sum"><field name="sum_month_invoice"/></div>
-                        <div class="oe_subsum">Invoiced this month</div>
+                    <div class="oe_center" t-if="record.target_invoice.raw_value">
+                        <field name="sent_invoice_per_duration" widget="gage" style="width:160px; height: 120px;" options="{'max_field': 'target_invoice', 'label_field': 'target_duration_txt'}">Invoiced</field>
+                        <field name="forecast" widget="gage" style="width:160px; height: 120px;" options="{'max_field': 'target_invoice', 'label_field': 'target_duration_txt', 'action_change': 'action_forecast'}">Forecast</field>
+                    </div>
+                    <div class="oe_center" style="color:#bbbbbb;" t-if="!record.target_invoice.raw_value">
+                        <br/>Define an invoicing target in the sales team settings to see the period's achievement and forecast at a glance.
                     </div>
                 </xpath>
             </data>