summaryrefslogtreecommitdiff
path: root/addons
diff options
context:
space:
mode:
authordbh <dbh@odoo.com>2017-03-31 15:25:29 +0530
committerYannick Tivisse <yti@odoo.com>2017-05-10 13:33:36 +0200
commit9ab421d99aaa8c683811f7e69d42965b3a398c5c (patch)
tree445b9cd285fed21bc15bc72ad3d57631c93b2404 /addons
parentb1642f87101a794adc6fd3a3bad0a283e3260b69 (diff)
[ADD] sale_management: Separate sales menu items from sale app
Purpose ======= Don't display sales app icon in Odoo homepage when installing ecommerce (only website should be visible) it's confusing to have sales icon -> where do I manage my sales? In sales or in website? -> in website Specfication ============ We need one new modules to add Sales menus to the homepage. Currently they come with "sale". So when installing "website_sale", we get them (because sale and account are dependencies of website_sale). We don't want that anymore. Along with that you need to replace modules in Apps menu: sales menu items must be in the new sale_management module, no longer in sale - create new app "sale_management" - Currently 3 app icons when installing ecommerce (Sales, Invoicing, Website) -> too many icons, where to start? -> GOAL: Only 2 icons > Website, Invoicing - new module to display Sales Icon (like account_accountant): "sale_management" - move menu items to sale_management - sale, sale_management: move app description, rewrite the manifest file - sale, sale_management: move tour from sale > sale_management - Changes in some dependency module "sale" > "sale_management" modules: event_sale, mrp_repair, pos_sale, report_intrastat, sale_crm, sale_expense, sale_stock, sale_timesheet, website_quote Menu items to move 'sale' --> 'sale_management' =============================================== Sales Quotations Sales Orders Invoicing Orders to invoice Orders to Upsell Catalog Products Product Variants Pricelists Reporting sales Configuration Settings Products -Attributes, Attribute Values, Internal Categories
Diffstat (limited to 'addons')
-rw-r--r--addons/crm/views/crm_team_views.xml24
-rw-r--r--addons/delivery/views/delivery_view.xml2
-rw-r--r--addons/event_sale/__manifest__.py2
-rw-r--r--addons/mrp_repair/__manifest__.py2
-rw-r--r--addons/pos_sale/__manifest__.py2
-rw-r--r--addons/report_intrastat/__manifest__.py2
-rw-r--r--addons/sale/__manifest__.py42
-rw-r--r--addons/sale/report/sale_report_views.xml2
-rw-r--r--addons/sale/tests/__init__.py1
-rw-r--r--addons/sale/views/sale_layout_category_view.xml8
-rw-r--r--addons/sale/views/sale_templates.xml1
-rw-r--r--addons/sale/views/sale_views.xml47
-rw-r--r--addons/sale_crm/__manifest__.py2
-rw-r--r--addons/sale_expense/__manifest__.py2
-rw-r--r--addons/sale_management/__init__.py2
-rw-r--r--addons/sale_management/__manifest__.py52
-rw-r--r--addons/sale_management/data/sale_management_tour.xml (renamed from addons/sale/data/sale_tour.xml)0
-rw-r--r--addons/sale_management/static/description/icon.png (renamed from addons/sale/static/description/icon.png)bin2036 -> 2036 bytes
-rw-r--r--addons/sale_management/static/description/index.html (renamed from addons/sale/static/description/index.html)0
-rw-r--r--addons/sale_management/static/description/sale_sc_00.png (renamed from addons/sale/static/description/sale_sc_00.png)bin52677 -> 52677 bytes
-rw-r--r--addons/sale_management/static/description/sale_sc_01.png (renamed from addons/sale/static/description/sale_sc_01.png)bin111074 -> 111074 bytes
-rw-r--r--addons/sale_management/static/description/sale_sc_02a.png (renamed from addons/sale/static/description/sale_sc_02a.png)bin46305 -> 46305 bytes
-rw-r--r--addons/sale_management/static/description/sale_sc_02b.png (renamed from addons/sale/static/description/sale_sc_02b.png)bin66451 -> 66451 bytes
-rw-r--r--addons/sale_management/static/description/sale_sc_02c.png (renamed from addons/sale/static/description/sale_sc_02c.png)bin43627 -> 43627 bytes
-rw-r--r--addons/sale_management/static/description/sale_sc_03.png (renamed from addons/sale/static/description/sale_sc_03.png)bin47818 -> 47818 bytes
-rw-r--r--addons/sale_management/static/description/sale_sc_05.png (renamed from addons/sale/static/description/sale_sc_05.png)bin53622 -> 53622 bytes
-rw-r--r--addons/sale_management/static/src/js/tour.js (renamed from addons/sale/static/src/js/tour.js)2
-rw-r--r--addons/sale_management/tests/__init__.py4
-rw-r--r--addons/sale_management/tests/test_sale_ui.py (renamed from addons/sale/tests/test_sale_ui.py)0
-rw-r--r--addons/sale_management/views/crm_team_views.xml28
-rw-r--r--addons/sale_management/views/sale_management_templates.xml9
-rw-r--r--addons/sale_management/views/sale_management_views.xml36
-rw-r--r--addons/sale_margin/__manifest__.py2
-rw-r--r--addons/sale_stock/__manifest__.py2
-rw-r--r--addons/sale_timesheet/__manifest__.py2
-rw-r--r--addons/sales_team/views/crm_team_views.xml43
-rw-r--r--addons/website_quote/__manifest__.py2
-rw-r--r--addons/website_quote/views/sale_quote_views.xml4
38 files changed, 194 insertions, 133 deletions
diff --git a/addons/crm/views/crm_team_views.xml b/addons/crm/views/crm_team_views.xml
index 2feaa2dbc9c..fe52eb6b911 100644
--- a/addons/crm/views/crm_team_views.xml
+++ b/addons/crm/views/crm_team_views.xml
@@ -1,6 +1,30 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
+ <!--
+ This menu item's purpose is to overwrite another one defined in
+ the sales_team module in order to set action.
+ -->
+
+ <menuitem id="sales_team.menu_sales_team_act" action="sales_team.crm_team_salesteams_act" sequence="1" parent="sales_team.menu_base_partner" name="Dashboard"/>
+
+ <menuitem id="sales_team.menu_partner_form" parent="sales_team.menu_sales" action="base.action_partner_form" sequence="3"/>
+
+ <menuitem id="sales_team.menu_sale_general_settings" name="Settings" parent="sales_team.menu_sale_config" sequence="0" action="sales_team.action_sale_config" groups="base.group_system"/>
+ <menuitem name="Sales Channels" id="sales_team.sales_team_config" parent="sales_team.menu_sale_config" action="sales_team.sales_team_config_action" sequence="2"/>
+ <menuitem name="Activity Types" id="sales_team.sales_team_menu_config_activity_types" sequence="2" action="sales_team.mail_activity_type_action_config_sales" parent="sales_team.menu_sale_config"/>
+
+ <menuitem action="base.action_partner_category_form" id="sales_team.menu_partner_category_form" name="Contact Tags" sequence="1" parent="sales_team.menu_config_address_book" groups="base.group_no_one"/>
+ <menuitem action="base.action_partner_title_contact" id="sales_team.menu_partner_title_contact" name="Contact Titles" parent="sales_team.menu_config_address_book" sequence="3" groups="base.group_no_one"/>
+
+ <menuitem action="base.action_country" id="sales_team.menu_country_partner" parent="sales_team.menu_localisation" sequence="1" groups="base.group_no_one"/>
+ <menuitem action="base.action_country_group" id="sales_team.menu_country_group" name="Country Group" parent="sales_team.menu_localisation" sequence="3" groups="base.group_no_one"/>
+ <menuitem action="base.action_country_state" id="sales_team.menu_country_state_partner" parent="sales_team.menu_localisation" sequence="2" groups="base.group_no_one"/>
+ <menuitem action="base.action_currency_form" id="sales_team.menu_action_currency_form" parent="sales_team.menu_localisation" sequence="3" groups="base.group_multi_currency"/>
+
+ <menuitem action="base.action_res_bank_form" id="sales_team.menu_action_res_bank_form" parent="sales_team.menu_config_bank_accounts" sequence="1" groups="base.group_no_one"/>
+ <menuitem action="base.action_res_partner_bank_account_form" id="sales_team.menu_action_res_partner_bank_form" parent="sales_team.menu_config_bank_accounts" groups="base.group_no_one" sequence="2"/>
+
<!-- CRM lead search by Salesteams -->
<record id="crm_case_form_view_salesteams_lead" model="ir.actions.act_window">
<field name="name">Leads</field>
diff --git a/addons/delivery/views/delivery_view.xml b/addons/delivery/views/delivery_view.xml
index 0148319cb26..c59e3be748b 100644
--- a/addons/delivery/views/delivery_view.xml
+++ b/addons/delivery/views/delivery_view.xml
@@ -148,7 +148,7 @@
</record>
<menuitem action="action_delivery_carrier_form" id="menu_action_delivery_carrier_form" parent="menu_delivery" sequence="1"/>
- <menuitem action="action_delivery_carrier_form" id="sale_menu_action_delivery_carrier_form" parent="sale.menu_sales_config" sequence="4"/>
+ <menuitem action="action_delivery_carrier_form" id="sale_menu_action_delivery_carrier_form" parent="sale_management.sale_management_menu_config" sequence="4"/>
<record id="view_delivery_price_rule_form" model="ir.ui.view">
<field name="name">delivery.price.rule.form</field>
diff --git a/addons/event_sale/__manifest__.py b/addons/event_sale/__manifest__.py
index 3f1362350f6..e8e755008e9 100644
--- a/addons/event_sale/__manifest__.py
+++ b/addons/event_sale/__manifest__.py
@@ -18,7 +18,7 @@ that product, you will be able to choose an existing event of that category and
when you confirm your sales order it will automatically create a registration for
this event.
""",
- 'depends': ['event', 'sale'],
+ 'depends': ['event', 'sale_management'],
'data': [
'views/event_views.xml',
'views/product_views.xml',
diff --git a/addons/mrp_repair/__manifest__.py b/addons/mrp_repair/__manifest__.py
index c059e8a8865..8227b91cf3d 100644
--- a/addons/mrp_repair/__manifest__.py
+++ b/addons/mrp_repair/__manifest__.py
@@ -21,7 +21,7 @@ The following topics are covered by this module:
* Repair quotation report
* Notes for the technician and for the final customer
""",
- 'depends': ['stock', 'sale', 'account'],
+ 'depends': ['stock', 'sale_management', 'account'],
'website': 'https://www.odoo.com/page/manufacturing',
'data': [
'security/ir.model.access.csv',
diff --git a/addons/pos_sale/__manifest__.py b/addons/pos_sale/__manifest__.py
index 52c39542e88..74eff3a8bac 100644
--- a/addons/pos_sale/__manifest__.py
+++ b/addons/pos_sale/__manifest__.py
@@ -14,7 +14,7 @@
This module adds a custom Sales Channel for the point of sale to be able to view and manage your point of sale sales with more ease.
""",
- 'depends': ['point_of_sale', 'sale'],
+ 'depends': ['point_of_sale', 'sale_management'],
'data': [
'data/pos_sale_data.xml',
'security/pos_sale_security.xml',
diff --git a/addons/report_intrastat/__manifest__.py b/addons/report_intrastat/__manifest__.py
index fb94d392dff..a139939f2a1 100644
--- a/addons/report_intrastat/__manifest__.py
+++ b/addons/report_intrastat/__manifest__.py
@@ -10,7 +10,7 @@ A module that adds intrastat reports.
This module gives the details of the goods traded between the countries of
European Union.""",
- 'depends': ['base', 'product', 'delivery', 'stock', 'sale', 'purchase'],
+ 'depends': ['base', 'product', 'delivery', 'stock', 'sale_management', 'purchase'],
'data': [
'data/report_intrastat_data.xml',
'report/report_intrastat_invoice_template.xml',
diff --git a/addons/sale/__manifest__.py b/addons/sale/__manifest__.py
index 8ce49065d04..30611258802 100644
--- a/addons/sale/__manifest__.py
+++ b/addons/sale/__manifest__.py
@@ -3,49 +3,16 @@
{
'name': 'Sales',
- 'version': '1.0',
+ 'version': '1.1',
'category': 'Sales',
- 'sequence': 15,
- 'summary': 'Quotations, Sales Orders, Invoicing',
+ 'summary': 'Sales internal machinery',
'description': """
-Manage sales quotations and orders
-==================================
-
-This application allows you to manage your sales goals in an effective and efficient manner by keeping track of all sales orders and history.
-
-It handles the full sales workflow:
-
-* **Quotation** -> **Sales order** -> **Invoice**
-
-Preferences (only with Warehouse Management installed)
-------------------------------------------------------
-
-If you also installed the Warehouse Management, you can deal with the following preferences:
-
-* Shipping: Choice of delivery at once or partial delivery
-* Invoicing: choose how invoices will be paid
-* Incoterms: International Commercial terms
-
-You can choose flexible invoicing methods:
-
-* *On Demand*: Invoices are created manually from Sales Orders when needed
-* *On Delivery Order*: Invoices are generated from picking (delivery)
-* *Before Delivery*: A Draft invoice is created and must be paid before delivery
-
-With this module you can personnalize the sales order and invoice report with
-categories, subtotals or page-breaks.
-
-The Dashboard for the Sales Manager will include
-------------------------------------------------
-* My Quotations
-* Monthly Turnover (Graph)
+This module contains all the common features of Sales Management and eCommerce.
""",
- 'website': 'https://www.odoo.com/page/crm',
- 'depends': ['sales_team', 'account', 'procurement', 'web_tour'],
+ 'depends': ['sales_team', 'account', 'procurement'],
'data': [
'data/ir_sequence_data.xml',
'data/sale_data.xml',
- 'data/sale_tour.xml',
'report/sale_report.xml',
'data/mail_template_data.xml',
'report/sale_report_views.xml',
@@ -68,5 +35,4 @@ The Dashboard for the Sales Manager will include
'css': ['static/src/css/sale.css'],
'installable': True,
'auto_install': False,
- 'application': True,
}
diff --git a/addons/sale/report/sale_report_views.xml b/addons/sale/report/sale_report_views.xml
index 2a660a3616c..6016dd0e495 100644
--- a/addons/sale/report/sale_report_views.xml
+++ b/addons/sale/report/sale_report_views.xml
@@ -94,6 +94,4 @@
<field name="help">This report performs analysis on your quotations and sales orders. Analysis check your sales revenues and sort it by different group criteria (salesman, partner, product, etc.) Use this report to perform analysis on sales not having invoiced yet. If you want to analyse your turnover, you should use the Invoice Analysis report in the Accounting application.</field>
</record>
- <menuitem name="Sales" action="action_order_report_all" id="menu_report_product_all" parent="sales_team.menu_sale_report" sequence="8"/>
-
</odoo>
diff --git a/addons/sale/tests/__init__.py b/addons/sale/tests/__init__.py
index c37b8ebd5a0..3aac8a509ba 100644
--- a/addons/sale/tests/__init__.py
+++ b/addons/sale/tests/__init__.py
@@ -3,4 +3,3 @@
from . import test_sale_to_invoice
from . import test_sale_order
from . import test_product_id_change
-from . import test_sale_ui
diff --git a/addons/sale/views/sale_layout_category_view.xml b/addons/sale/views/sale_layout_category_view.xml
index ecb0bbebb74..545346f1311 100644
--- a/addons/sale/views/sale_layout_category_view.xml
+++ b/addons/sale/views/sale_layout_category_view.xml
@@ -50,12 +50,4 @@
<field name="view_mode">tree,form</field>
</record>
- <menuitem
- action="report_configuration_action"
- id="Report_configuration"
- parent="menu_sales_config"
- sequence="2"
- name="Report Layout Categories"
- groups="sale.group_sale_layout"
- />
</odoo>
diff --git a/addons/sale/views/sale_templates.xml b/addons/sale/views/sale_templates.xml
index 5dba4c07761..7e0e68ad63c 100644
--- a/addons/sale/views/sale_templates.xml
+++ b/addons/sale/views/sale_templates.xml
@@ -5,7 +5,6 @@
<xpath expr="." position="inside">
<link rel="stylesheet" href="/sale/static/src/less/sale.less" type="text/less"/>
<script type="text/javascript" src="/sale/static/src/js/sale.js"></script>
- <script type="text/javascript" src="/sale/static/src/js/tour.js"></script>
</xpath>
</template>
</odoo>
diff --git a/addons/sale/views/sale_views.xml b/addons/sale/views/sale_views.xml
index 58cff62bab2..3af41ee3985 100644
--- a/addons/sale/views/sale_views.xml
+++ b/addons/sale/views/sale_views.xml
@@ -1,36 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
- <!-- Top menu item -->
- <!--
- This menu item's purpose is to overwrite another one defined in
- the base module in order to set new groups.
- -->
- <menuitem name="Sales"
- id="sales_team.menu_base_partner"
- web_icon="sale,static/description/icon.png"/>
-
- <menuitem
- id= "menu_sales_config"
- parent= "sales_team.menu_sale_config"
- sequence= "3"
- name= "Sales"
- groups= "sales_team.group_sale_manager,sales_team.group_sale_salesman,account.group_account_manager,account.group_account_user"/>
-
- <menuitem id="product_menu_catalog" name="Catalog" action="product.product_template_action" parent="sales_team.menu_base_partner" sequence="7"/>
- <menuitem id="menu_product" name="Product Variants" parent="product_menu_catalog" sequence="2" groups="product.group_product_variant"/>
- <menuitem id="sales_team.menu_sales" name="Sales" parent="sales_team.menu_base_partner" sequence="4"/>
- <menuitem action="product.product_template_action" id="menu_product_template_action" parent="product_menu_catalog" sequence="1" />
- <menuitem id="sale.prod_config_main" name="Products" parent="sales_team.menu_sale_config" sequence="5"/>
- <menuitem action="product.attribute_action" id="menu_attribute_action" parent="sale.prod_config_main" sequence="1" groups="product.group_product_variant"/>
- <menuitem action="product.variants_action" id="menu_variants_action" parent="sale.prod_config_main" sequence="2" groups="product.group_product_variant"/>
- <menuitem id="menu_products" action="product.product_normal_action_sell" parent="product_menu_catalog" groups="product.group_product_variant" sequence="2"/>
- <menuitem action="product.product_category_action_form" name="Internal Categories" id="menu_product_category_action_form" parent="sale.prod_config_main" sequence="4"/>
- <menuitem id="next_id_16" name="Units of Measure" parent="sale.prod_config_main" sequence="6" groups="product.group_uom"/>
- <menuitem action="product.product_uom_form_action" id="menu_product_uom_form_action" parent="sale.prod_config_main" sequence="7" groups="product.group_uom"/>
- <menuitem action="product.product_uom_categ_form_action" id="menu_product_uom_categ_form_action" parent="sale.prod_config_main" sequence="8" groups="product.group_uom"/>
- <menuitem id="menu_product_pricelist_main" name="Pricelists" parent="product_menu_catalog" action="product.product_pricelist_action2" groups="product.group_sale_pricelist" sequence="3"/>
-
<record id="view_sale_order_calendar" model="ir.ui.view">
<field name="name">sale.order.calendar</field>
<field name="model">sale.order</field>
@@ -468,10 +438,6 @@
</field>
</record>
- <menuitem action="action_orders"
- id="menu_sale_order" parent="sales_team.menu_sales"
- sequence="12" groups="sales_team.group_sale_salesman,sales_team.group_sale_manager"/>
-
<record id="action_orders_to_invoice" model="ir.actions.act_window">
<field name="name">Orders to Invoice</field>
<field name="type">ir.actions.act_window</field>
@@ -490,12 +456,6 @@
</p>
</field>
</record>
- <menuitem name="Invoicing"
- id="menu_sale_invoicing" parent="sales_team.menu_base_partner"
- sequence="5"/>
- <menuitem action="action_orders_to_invoice"
- id="menu_sale_order_invoice" parent="sale.menu_sale_invoicing"
- sequence="2"/>
<record id="action_orders_upselling" model="ir.actions.act_window">
<field name="name">Orders to Upsell</field>
@@ -518,9 +478,6 @@
</p>
</field>
</record>
- <menuitem action="action_orders_upselling"
- id="menu_sale_order_upselling" parent="sale.menu_sale_invoicing"
- sequence="5"/>
<record id="action_quotations" model="ir.actions.act_window">
@@ -545,10 +502,6 @@
</field>
</record>
- <menuitem id="menu_sale_quotations"
- action="action_quotations" parent="sales_team.menu_sales"
- sequence="11"/>
-
<record id="view_order_line_tree" model="ir.ui.view">
<field name="name">sale.order.line.tree</field>
<field name="model">sale.order.line</field>
diff --git a/addons/sale_crm/__manifest__.py b/addons/sale_crm/__manifest__.py
index 6c06ceaface..4217c735064 100644
--- a/addons/sale_crm/__manifest__.py
+++ b/addons/sale_crm/__manifest__.py
@@ -17,7 +17,7 @@ We suggest you to install this module, if you installed both the sale and the cr
modules.
""",
'website': 'https://www.odoo.com/page/crm',
- 'depends': ['sale', 'crm'],
+ 'depends': ['sale_management', 'crm'],
'data': [
'security/ir.model.access.csv',
'views/partner_views.xml',
diff --git a/addons/sale_expense/__manifest__.py b/addons/sale_expense/__manifest__.py
index 8a60ee9b281..69958e40f7c 100644
--- a/addons/sale_expense/__manifest__.py
+++ b/addons/sale_expense/__manifest__.py
@@ -15,7 +15,7 @@ This module does not add any feature, despite a few demo data to
test the features easily.
""",
'website': 'https://www.odoo.com/page/warehouse',
- 'depends': ['sale', 'hr_expense'],
+ 'depends': ['sale_management', 'hr_expense'],
'data': [
'views/product_view.xml',
],
diff --git a/addons/sale_management/__init__.py b/addons/sale_management/__init__.py
new file mode 100644
index 00000000000..67dee8c60db
--- /dev/null
+++ b/addons/sale_management/__init__.py
@@ -0,0 +1,2 @@
+# -*- coding: utf-8 -*-
+# Part of Odoo. See LICENSE file for full copyright and licensing details.
diff --git a/addons/sale_management/__manifest__.py b/addons/sale_management/__manifest__.py
new file mode 100644
index 00000000000..9f22b060c99
--- /dev/null
+++ b/addons/sale_management/__manifest__.py
@@ -0,0 +1,52 @@
+# -*- coding: utf-8 -*-
+# Part of Odoo. See LICENSE file for full copyright and licensing details.
+
+{
+ 'name': 'Sales Management',
+ 'version': '1.0',
+ 'category': 'Sales',
+ 'sequence': 15,
+ 'summary': 'Quotations, Sales Orders, Invoicing',
+ 'description': """
+Manage sales quotations and orders
+==================================
+
+This application allows you to manage your sales goals in an effective and efficient manner by keeping track of all sales orders and history.
+
+It handles the full sales workflow:
+
+* **Quotation** -> **Sales order** -> **Invoice**
+
+Preferences (only with Warehouse Management installed)
+------------------------------------------------------
+
+If you also installed the Warehouse Management, you can deal with the following preferences:
+
+* Shipping: Choice of delivery at once or partial delivery
+* Invoicing: choose how invoices will be paid
+* Incoterms: International Commercial terms
+
+You can choose flexible invoicing methods:
+
+* *On Demand*: Invoices are created manually from Sales Orders when needed
+* *On Delivery Order*: Invoices are generated from picking (delivery)
+* *Before Delivery*: A Draft invoice is created and must be paid before delivery
+
+With this module you can personnalize the sales order and invoice report with
+categories, subtotals or page-breaks.
+
+The Dashboard for the Sales Manager will include
+------------------------------------------------
+* My Quotations
+* Monthly Turnover (Graph)
+ """,
+ 'website': 'https://www.odoo.com/page/sales',
+ 'depends': ['sale'],
+ 'data': [
+ 'data/sale_management_tour.xml',
+ 'views/sale_management_views.xml',
+ 'views/crm_team_views.xml',
+ 'views/sale_management_templates.xml',
+ ],
+ 'application': True,
+}
diff --git a/addons/sale/data/sale_tour.xml b/addons/sale_management/data/sale_management_tour.xml
index 447ed474eab..447ed474eab 100644
--- a/addons/sale/data/sale_tour.xml
+++ b/addons/sale_management/data/sale_management_tour.xml
diff --git a/addons/sale/static/description/icon.png b/addons/sale_management/static/description/icon.png
index 0a2a697b4f0..0a2a697b4f0 100644
--- a/addons/sale/static/description/icon.png
+++ b/addons/sale_management/static/description/icon.png
Binary files differ
diff --git a/addons/sale/static/description/index.html b/addons/sale_management/static/description/index.html
index 334ab206f51..334ab206f51 100644
--- a/addons/sale/static/description/index.html
+++ b/addons/sale_management/static/description/index.html
diff --git a/addons/sale/static/description/sale_sc_00.png b/addons/sale_management/static/description/sale_sc_00.png
index f1cc78293e6..f1cc78293e6 100644
--- a/addons/sale/static/description/sale_sc_00.png
+++ b/addons/sale_management/static/description/sale_sc_00.png
Binary files differ
diff --git a/addons/sale/static/description/sale_sc_01.png b/addons/sale_management/static/description/sale_sc_01.png
index 1e954028b6f..1e954028b6f 100644
--- a/addons/sale/static/description/sale_sc_01.png
+++ b/addons/sale_management/static/description/sale_sc_01.png
Binary files differ
diff --git a/addons/sale/static/description/sale_sc_02a.png b/addons/sale_management/static/description/sale_sc_02a.png
index 378e8c3a1dc..378e8c3a1dc 100644
--- a/addons/sale/static/description/sale_sc_02a.png
+++ b/addons/sale_management/static/description/sale_sc_02a.png
Binary files differ
diff --git a/addons/sale/static/description/sale_sc_02b.png b/addons/sale_management/static/description/sale_sc_02b.png
index be22e1ca356..be22e1ca356 100644
--- a/addons/sale/static/description/sale_sc_02b.png
+++ b/addons/sale_management/static/description/sale_sc_02b.png
Binary files differ
diff --git a/addons/sale/static/description/sale_sc_02c.png b/addons/sale_management/static/description/sale_sc_02c.png
index adf64160990..adf64160990 100644
--- a/addons/sale/static/description/sale_sc_02c.png
+++ b/addons/sale_management/static/description/sale_sc_02c.png
Binary files differ
diff --git a/addons/sale/static/description/sale_sc_03.png b/addons/sale_management/static/description/sale_sc_03.png
index ab675ee5b2b..ab675ee5b2b 100644
--- a/addons/sale/static/description/sale_sc_03.png
+++ b/addons/sale_management/static/description/sale_sc_03.png
Binary files differ
diff --git a/addons/sale/static/description/sale_sc_05.png b/addons/sale_management/static/description/sale_sc_05.png
index cdae0dfc3e4..cdae0dfc3e4 100644
--- a/addons/sale/static/description/sale_sc_05.png
+++ b/addons/sale_management/static/description/sale_sc_05.png
Binary files differ
diff --git a/addons/sale/static/src/js/tour.js b/addons/sale_management/static/src/js/tour.js
index 8b46b2bc902..29b7e328e57 100644
--- a/addons/sale/static/src/js/tour.js
+++ b/addons/sale_management/static/src/js/tour.js
@@ -10,7 +10,7 @@ tour.register('sale_tour', {
url: "/web",
}, [tour.STEPS.MENU_MORE, {
trigger: '.o_app[data-menu-xmlid="sales_team.menu_base_partner"], .oe_menu_toggler[data-menu-xmlid="sales_team.menu_base_partner"]',
- content: _t('Organize your sales activities with the <b>Sales app</b>.'),
+ content: _t('Organize your sales activities with the <b>Sales Management app</b>.'),
position: 'bottom',
}, {
trigger: ".oe_kanban_action_button",
diff --git a/addons/sale_management/tests/__init__.py b/addons/sale_management/tests/__init__.py
new file mode 100644
index 00000000000..ec46cdcd6ca
--- /dev/null
+++ b/addons/sale_management/tests/__init__.py
@@ -0,0 +1,4 @@
+# -*- coding: utf-8 -*-
+# Part of Odoo. See LICENSE file for full copyright and licensing details.
+
+from . import test_sale_ui
diff --git a/addons/sale/tests/test_sale_ui.py b/addons/sale_management/tests/test_sale_ui.py
index 7db363187dd..7db363187dd 100644
--- a/addons/sale/tests/test_sale_ui.py
+++ b/addons/sale_management/tests/test_sale_ui.py
diff --git a/addons/sale_management/views/crm_team_views.xml b/addons/sale_management/views/crm_team_views.xml
new file mode 100644
index 00000000000..7067f7bb124
--- /dev/null
+++ b/addons/sale_management/views/crm_team_views.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="utf-8"?>
+<odoo>
+
+ <!--
+ This menu item's purpose is to overwrite another one defined in
+ the sales_team module in order to set action.
+ -->
+
+ <menuitem id="sales_team.menu_sales_team_act" action="sales_team.crm_team_salesteams_act" sequence="1" parent="sales_team.menu_base_partner" name="Dashboard"/>
+
+ <menuitem id="sales_team.menu_partner_form" parent="sales_team.menu_sales" action="base.action_partner_form" sequence="3"/>
+
+ <menuitem id="sales_team.menu_sale_general_settings" name="Settings" parent="sales_team.menu_sale_config" sequence="0" action="sales_team.action_sale_config" groups="base.group_system"/>
+ <menuitem name="Sales Channels" id="sales_team.sales_team_config" parent="sales_team.menu_sale_config" action="sales_team.sales_team_config_action" sequence="2"/>
+ <menuitem name="Activity Types" id="sales_team.sales_team_menu_config_activity_types" sequence="2" action="sales_team.mail_activity_type_action_config_sales" parent="sales_team.menu_sale_config"/>
+
+ <menuitem action="base.action_partner_category_form" id="sales_team.menu_partner_category_form" name="Contact Tags" sequence="1" parent="sales_team.menu_config_address_book" groups="base.group_no_one"/>
+ <menuitem action="base.action_partner_title_contact" id="sales_team.menu_partner_title_contact" name="Contact Titles" parent="sales_team.menu_config_address_book" sequence="3" groups="base.group_no_one"/>
+
+ <menuitem action="base.action_country" id="sales_team.menu_country_partner" parent="sales_team.menu_localisation" sequence="1" groups="base.group_no_one"/>
+ <menuitem action="base.action_country_group" id="sales_team.menu_country_group" name="Country Group" parent="sales_team.menu_localisation" sequence="3" groups="base.group_no_one"/>
+ <menuitem action="base.action_country_state" id="sales_team.menu_country_state_partner" parent="sales_team.menu_localisation" sequence="2" groups="base.group_no_one"/>
+ <menuitem action="base.action_currency_form" id="sales_team.menu_action_currency_form" parent="sales_team.menu_localisation" sequence="3" groups="base.group_multi_currency"/>
+
+ <menuitem action="base.action_res_bank_form" id="sales_team.menu_action_res_bank_form" parent="sales_team.menu_config_bank_accounts" sequence="1" groups="base.group_no_one"/>
+ <menuitem action="base.action_res_partner_bank_account_form" id="sales_team.menu_action_res_partner_bank_form" parent="sales_team.menu_config_bank_accounts" groups="base.group_no_one" sequence="2"/>
+
+</odoo>
diff --git a/addons/sale_management/views/sale_management_templates.xml b/addons/sale_management/views/sale_management_templates.xml
new file mode 100644
index 00000000000..50517640187
--- /dev/null
+++ b/addons/sale_management/views/sale_management_templates.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="utf-8"?>
+<odoo>
+ <!-- inherits from sales_team.assets_backend to override certain attributes defined in sales_team -->
+ <template id="assets_backend" name="project assets" inherit_id="sales_team.assets_backend">
+ <xpath expr="." position="inside">
+ <script type="text/javascript" src="/sale_management/static/src/js/tour.js"></script>
+ </xpath>
+ </template>
+</odoo>
diff --git a/addons/sale_management/views/sale_management_views.xml b/addons/sale_management/views/sale_management_views.xml
new file mode 100644
index 00000000000..e60b15dcfcb
--- /dev/null
+++ b/addons/sale_management/views/sale_management_views.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<odoo>
+
+ <menuitem name="Sales"
+ id="sales_team.menu_base_partner"
+ web_icon="sale_management,static/description/icon.png"/>
+
+ <menuitem id="sale_management_menu_product_catalog" name="Catalog" action="product.product_template_action" parent="sales_team.menu_base_partner" sequence="7"/>
+ <menuitem id="sale_management_menu_product" name="Product Variants" parent="sale_management_menu_product_catalog" sequence="2" groups="product.group_product_variant"/>
+ <menuitem action="product.product_template_action" id="sale_management_menu_product_template_action" parent="sale_management_menu_product_catalog" sequence="1" />
+ <menuitem id="sale_management_menu_products" action="product.product_normal_action_sell" parent="sale_management_menu_product_catalog" groups="product.group_product_variant" sequence="2"/>
+ <menuitem id="menu_product_pricelist_main" name="Pricelists" parent="sale_management_menu_product_catalog" action="product.product_pricelist_action2" groups="product.group_sale_pricelist" sequence="3"/>
+
+ <menuitem id="sales_team.menu_sales" name="Sales" parent="sales_team.menu_base_partner" sequence="4"/>
+ <menuitem action="sale.action_orders" id="sale_management_menu_sale_order" parent="sales_team.menu_sales" sequence="12" groups="sales_team.group_sale_salesman,sales_team.group_sale_manager"/>
+ <menuitem id="sale_management_menu_sale_quotations" action="sale.action_quotations" parent="sales_team.menu_sales" sequence="11"/>
+
+ <menuitem name="Invoicing" id="sale_management_menu_sale_invoicing" parent="sales_team.menu_base_partner" sequence="5"/>
+ <menuitem action="sale.action_orders_to_invoice" id="sale_management_menu_sale_order_invoice" parent="sale_management_menu_sale_invoicing" sequence="2"/>
+ <menuitem action="sale.action_orders_upselling" id="sale_management_menu_sale_order_upselling" parent="sale_management_menu_sale_invoicing" sequence="5"/>
+
+ <menuitem id="sale_management_menu_prod_config_main" name="Products" parent="sales_team.menu_sale_config" sequence="5"/>
+ <menuitem action="product.attribute_action" id="menu_attribute_action" parent="sale_management_menu_prod_config_main" sequence="1" groups="product.group_product_variant"/>
+ <menuitem action="product.variants_action" id="menu_variants_action" parent="sale_management_menu_prod_config_main" sequence="2" groups="product.group_product_variant"/>
+ <menuitem action="product.product_category_action_form" name="Internal Categories" id="menu_product_category_action_form" parent="sale_management_menu_prod_config_main" sequence="4"/>
+ <menuitem id="next_id_16" name="Units of Measure" parent="sale_management_menu_prod_config_main" sequence="6" groups="product.group_uom"/>
+ <menuitem action="product.product_uom_form_action" id="menu_product_uom_form_action" parent="sale_management_menu_prod_config_main" sequence="7" groups="product.group_uom"/>
+ <menuitem action="product.product_uom_categ_form_action" id="menu_product_uom_categ_form_action" parent="sale_management_menu_prod_config_main" sequence="8" groups="product.group_uom"/>
+
+ <menuitem id="sale_management_menu_config" parent="sales_team.menu_sale_config" sequence="3" name="Sales" groups="sales_team.group_sale_manager,sales_team.group_sale_salesman,account.group_account_manager,account.group_account_user"/>
+ <menuitem action="sale.report_configuration_action" id="sale_management_menu_Report_configuration" parent="sale_management_menu_config" sequence="2" name="Report Layout Categories" groups="sale.group_sale_layout" />
+
+ <!-- Report View Menu -->
+ <menuitem name="Sales" action="sale.action_order_report_all" id="sale_management_menu_report_product_all" parent="sales_team.menu_sale_report" sequence="8"/>
+
+</odoo>
diff --git a/addons/sale_margin/__manifest__.py b/addons/sale_margin/__manifest__.py
index 2e901ec0f74..4dbf1041738 100644
--- a/addons/sale_margin/__manifest__.py
+++ b/addons/sale_margin/__manifest__.py
@@ -12,7 +12,7 @@ This module adds the 'Margin' on sales order.
This gives the profitability by calculating the difference between the Unit
Price and Cost Price.
""",
- 'depends':['sale'],
+ 'depends': ['sale_management'],
'demo':['data/sale_margin_demo.xml'],
'data':['security/ir.model.access.csv','views/sale_margin_view.xml'],
'uninstall_hook': "uninstall_hook",
diff --git a/addons/sale_stock/__manifest__.py b/addons/sale_stock/__manifest__.py
index 8d63ed20dd8..fde12c1884f 100644
--- a/addons/sale_stock/__manifest__.py
+++ b/addons/sale_stock/__manifest__.py
@@ -25,7 +25,7 @@ You can choose flexible invoicing methods:
* *Before Delivery*: A Draft invoice is created and must be paid before delivery
""",
'website': 'https://www.odoo.com/page/warehouse',
- 'depends': ['sale', 'stock_account'],
+ 'depends': ['sale_management', 'stock_account'],
'data': [
'security/sale_stock_security.xml',
'security/ir.model.access.csv',
diff --git a/addons/sale_timesheet/__manifest__.py b/addons/sale_timesheet/__manifest__.py
index 89e5f4eb9cb..87a456b3e3e 100644
--- a/addons/sale_timesheet/__manifest__.py
+++ b/addons/sale_timesheet/__manifest__.py
@@ -14,7 +14,7 @@ according to the order/contract you work on. This allows to
have real delivered quantities in sales orders.
""",
'website': 'https://www.odoo.com/page/warehouse',
- 'depends': ['sale', 'hr_timesheet'],
+ 'depends': ['sale_management', 'hr_timesheet'],
'data': [
'data/sale_timesheet_data.xml',
'views/account_invoice_views.xml',
diff --git a/addons/sales_team/views/crm_team_views.xml b/addons/sales_team/views/crm_team_views.xml
index a2d25ca0c38..757a5c9c465 100644
--- a/addons/sales_team/views/crm_team_views.xml
+++ b/addons/sales_team/views/crm_team_views.xml
@@ -2,30 +2,31 @@
<odoo>
<data>
-<menuitem name="Sales"
- id="menu_base_partner"
- groups="group_sale_salesman,group_sale_manager" sequence="6"/>
+ <!-- The actions on menuitems have been moved to sales_management and crm to hide them -->
+ <!-- for example when only website_sale is installed -->
+ <menuitem name="Sales"
+ id="menu_base_partner"
+ groups="group_sale_salesman,group_sale_manager" sequence="6"/>
- <menuitem id="menu_sales" name="Sales" parent="menu_base_partner" sequence="5"/>
- <menuitem id="menu_partner_form" parent="menu_sales" action="base.action_partner_form" sequence="3"/>
+ <menuitem id="menu_sales" name="Sales" parent="menu_base_partner" sequence="5"/>
+ <menuitem id="menu_partner_form" parent="menu_sales" sequence="3"/>
- <menuitem id="menu_sale_config" name="Configuration" parent="menu_base_partner"
- sequence="100" groups="group_sale_manager"/>
+ <menuitem id="menu_sale_config" name="Configuration" parent="menu_base_partner"
+ sequence="100" groups="group_sale_manager"/>
<menuitem id="menu_sale_general_settings" name="Settings" parent="menu_sale_config"
- sequence="0" action="action_sale_config" groups="base.group_system"/>
+ sequence="0" groups="base.group_system"/>
<menuitem id="menu_config_address_book" parent="menu_sale_config" name="Contacts" sequence="4" groups="base.group_system"/>
- <menuitem action="base.action_partner_category_form" id="menu_partner_category_form" name="Contact Tags" sequence="1" parent="menu_config_address_book" groups="base.group_no_one"/>
- <menuitem action="base.action_partner_title_contact" id="menu_partner_title_contact" name="Contact Titles" parent="menu_config_address_book" sequence="3" groups="base.group_no_one"/>
- <menuitem id="menu_localisation" name="Localization" parent="menu_config_address_book" sequence="5" groups="base.group_no_one"/>
- <menuitem action="base.action_country" id="menu_country_partner" parent="menu_localisation" sequence="1" groups="base.group_no_one"/>
- <menuitem action="base.action_country_group" id="menu_country_group" name="Country Group" parent="menu_localisation" sequence="3" groups="base.group_no_one"/>
- <menuitem action="base.action_country_state" id="menu_country_state_partner" parent="menu_localisation" sequence="2" groups="base.group_no_one"/>
- <menuitem action="base.action_currency_form" id="menu_action_currency_form" parent="menu_localisation" sequence="3" groups="base.group_multi_currency"/>
- <menuitem id="menu_config_bank_accounts" name="Bank Accounts" parent="menu_config_address_book" sequence="6" groups="base.group_no_one"/>
- <menuitem action="base.action_res_bank_form" id="menu_action_res_bank_form" parent="menu_config_bank_accounts" sequence="1" groups="base.group_no_one"/>
- <menuitem action="base.action_res_partner_bank_account_form" id="menu_action_res_partner_bank_form" parent="menu_config_bank_accounts" groups="base.group_no_one" sequence="2"/>
-
+ <menuitem id="menu_partner_category_form" name="Contact Tags" sequence="1" parent="menu_config_address_book" groups="base.group_no_one"/>
+ <menuitem id="menu_partner_title_contact" name="Contact Titles" parent="menu_config_address_book" sequence="3" groups="base.group_no_one"/>
+ <menuitem id="menu_localisation" name="Localization" parent="menu_config_address_book" sequence="5" groups="base.group_no_one"/>
+ <menuitem id="menu_country_partner" parent="menu_localisation" sequence="1" groups="base.group_no_one"/>
+ <menuitem id="menu_country_group" name="Country Group" parent="menu_localisation" sequence="3" groups="base.group_no_one"/>
+ <menuitem id="menu_country_state_partner" parent="menu_localisation" sequence="2" groups="base.group_no_one"/>
+ <menuitem id="menu_action_currency_form" parent="menu_localisation" sequence="3" groups="base.group_multi_currency"/>
+ <menuitem id="menu_config_bank_accounts" name="Bank Accounts" parent="menu_config_address_book" sequence="6" groups="base.group_no_one"/>
+ <menuitem id="menu_action_res_bank_form" parent="menu_config_bank_accounts" sequence="1" groups="base.group_no_one"/>
+ <menuitem id="menu_action_res_partner_bank_form" parent="menu_config_bank_accounts" groups="base.group_no_one" sequence="2"/>
<!-- Cateamions Search view -->
<record id="crm_team_salesteams_search" model="ir.ui.view">
@@ -160,7 +161,7 @@
</field>
</record>
- <menuitem id="sales_team.menu_sales_team_act" action="crm_team_salesteams_act" sequence="1" parent="sales_team.menu_base_partner" name="Dashboard"/>
+ <menuitem id="sales_team.menu_sales_team_act" sequence="1" parent="sales_team.menu_base_partner" name="Dashboard"/>
<!-- add css / js -->
<template id="assets_backend" name="sales_team assets" inherit_id="web.assets_backend">
@@ -194,7 +195,6 @@
<menuitem name="Sales Channels"
id="sales_team_config"
parent="sales_team.menu_sale_config"
- action="sales_team_config_action"
sequence="2"/>
<record id="mail_activity_type_action_config_sales" model="ir.actions.act_window">
@@ -207,7 +207,6 @@
<menuitem name="Activity Types"
id="sales_team_menu_config_activity_types"
sequence="2"
- action="mail_activity_type_action_config_sales"
parent="sales_team.menu_sale_config"/>
</data>
diff --git a/addons/website_quote/__manifest__.py b/addons/website_quote/__manifest__.py
index 5ecc2344dee..2d5ba86a7b1 100644
--- a/addons/website_quote/__manifest__.py
+++ b/addons/website_quote/__manifest__.py
@@ -11,7 +11,7 @@ Odoo Sale Quote Roller
=========================
""",
- 'depends': ['website', 'sale', 'mail', 'payment', 'website_portal_sale', 'website_mail'],
+ 'depends': ['website', 'sale_management', 'mail', 'payment', 'website_portal_sale', 'website_mail'],
'data': [
'data/website_quotation_data.xml',
'report/sale_order_reports.xml',
diff --git a/addons/website_quote/views/sale_quote_views.xml b/addons/website_quote/views/sale_quote_views.xml
index 7e18b904f46..1f67b67d3e3 100644
--- a/addons/website_quote/views/sale_quote_views.xml
+++ b/addons/website_quote/views/sale_quote_views.xml
@@ -118,7 +118,7 @@
</field>
</record>
- <menuitem id="menu_sale_quote_template" action="action_sale_quotation_template" parent="sale.menu_sales_config" sequence="1" name="Quotation Templates" groups="sales_team.group_sale_salesman,sales_team.group_sale_manager"/>
+ <menuitem id="menu_sale_quote_template" action="action_sale_quotation_template" parent="sale_management.sale_management_menu_config" sequence="1" name="Quotation Templates" groups="sales_team.group_sale_salesman,sales_team.group_sale_manager"/>
- <menuitem id='payment_acquirer_menu_sale' action='payment.action_payment_acquirer' parent='sale.menu_sales_config' sequence='3' name='Payment Methods' groups="sales_team.group_sale_salesman"/>
+ <menuitem id='payment_acquirer_menu_sale' action='payment.action_payment_acquirer' parent='sale_management.sale_management_menu_config' sequence='3' name='Payment Methods' groups="sales_team.group_sale_salesman"/>
</odoo>