From 4f7a4fd5330b7adc75744376c12b1e6d0524a5e6 Mon Sep 17 00:00:00 2001 From: Haresh Chavda Date: Tue, 20 Nov 2018 10:37:43 +0530 Subject: [PATCH] [IMP]:Issues-145, Issues-147 --- addons/account/__manifest__.py | 2 +- addons/analytic/__manifest__.py | 2 +- addons/base_branch_company/models/res_branch.py | 13 +++++++++++++ addons/crm/__manifest__.py | 1 + addons/project/__manifest__.py | 3 ++- addons/project_scrum/__manifest__.py | 2 +- addons/purchase/__manifest__.py | 2 +- addons/purchase_indent/__manifest__.py | 1 + addons/sale/__manifest__.py | 2 +- addons/sales_team/__manifest__.py | 2 +- addons/stock/__manifest__.py | 2 +- addons/stock/models/stock_location.py | 2 +- 12 files changed, 25 insertions(+), 9 deletions(-) diff --git a/addons/account/__manifest__.py b/addons/account/__manifest__.py index 541dbb35..11f9e78d 100644 --- a/addons/account/__manifest__.py +++ b/addons/account/__manifest__.py @@ -12,7 +12,7 @@ Core mechanisms for the accounting modules. To display the menuitems, install th 'category': 'Accounting', 'website': 'https://flectrahq.com/accounting', 'images' : ['images/accounts.jpeg','images/bank_statement.jpeg','images/cash_register.jpeg','images/chart_of_accounts.jpeg','images/customer_invoice.jpeg','images/journal_entries.jpeg'], - 'depends' : ['base_setup', 'product', 'analytic', 'web_planner', 'portal', 'digest'], + 'depends' : ['base_setup', 'product', 'analytic', 'web_planner', 'portal', 'digest', 'base_branch_company'], 'data': [ 'security/account_security.xml', 'security/ir.model.access.csv', diff --git a/addons/analytic/__manifest__.py b/addons/analytic/__manifest__.py index de8f232f..e81f0dd9 100644 --- a/addons/analytic/__manifest__.py +++ b/addons/analytic/__manifest__.py @@ -7,7 +7,7 @@ 'version': '1.1', 'website' : 'https://flectrahq.com/accounting', 'category': 'Hidden/Dependency', - 'depends' : ['base', 'decimal_precision', 'mail'], + 'depends' : ['base', 'decimal_precision', 'mail', 'base_branch_company'], 'description': """ Module for defining analytic accounting object. =============================================== diff --git a/addons/base_branch_company/models/res_branch.py b/addons/base_branch_company/models/res_branch.py index df6d6ca4..22cb3b62 100644 --- a/addons/base_branch_company/models/res_branch.py +++ b/addons/base_branch_company/models/res_branch.py @@ -92,6 +92,19 @@ class Users(models.Model): _inherit = "res.users" + @api.multi + def read(self, fields=None, load='_classic_read'): + result = super(Users, self).read(fields, load=load) + self.with_context({'check_branch': True}).check_missing_branch() + return result + + @api.multi + def check_missing_branch(self): + for user_id in self: + if self._context.get('check_branch', False) and user_id.company_id.branch_id and not user_id.default_branch_id: + user_id.default_branch_id = user_id.company_id.branch_id.id + user_id.branch_ids = [(4, user_id.company_id.branch_id.id)] + @api.model def branch_default_get(self, user): if not user: diff --git a/addons/crm/__manifest__.py b/addons/crm/__manifest__.py index d0958782..2b463c0c 100644 --- a/addons/crm/__manifest__.py +++ b/addons/crm/__manifest__.py @@ -22,6 +22,7 @@ 'web_tour', 'contacts', 'digest', + 'base_branch_company' ], 'data': [ 'security/crm_security.xml', diff --git a/addons/project/__manifest__.py b/addons/project/__manifest__.py index 744b496e..5593d0bf 100644 --- a/addons/project/__manifest__.py +++ b/addons/project/__manifest__.py @@ -19,7 +19,8 @@ 'web', 'web_planner', 'web_tour', - 'digest' + 'digest', + 'base_branch_company' ], 'description': "", 'data': [ diff --git a/addons/project_scrum/__manifest__.py b/addons/project_scrum/__manifest__.py index 4eee4b70..bca98bf2 100755 --- a/addons/project_scrum/__manifest__.py +++ b/addons/project_scrum/__manifest__.py @@ -9,7 +9,7 @@ 'sequence': 40, 'summary': 'A module for Scrum implementation', 'depends': [ - 'project', 'resource' + 'project', 'resource', 'base_branch_company' ], 'data': [ 'security/ir.model.access.csv', diff --git a/addons/purchase/__manifest__.py b/addons/purchase/__manifest__.py index 2fc282b9..b10816f4 100644 --- a/addons/purchase/__manifest__.py +++ b/addons/purchase/__manifest__.py @@ -10,7 +10,7 @@ 'summary': 'Purchase Orders, Receipts, Vendor Bills', 'description': "", 'website': 'https://flectrahq.com/purchase', - 'depends': ['stock_account'], + 'depends': ['stock_account', 'base_branch_company'], 'data': [ 'security/purchase_security.xml', 'security/ir.model.access.csv', diff --git a/addons/purchase_indent/__manifest__.py b/addons/purchase_indent/__manifest__.py index bbf67653..2bccade7 100644 --- a/addons/purchase_indent/__manifest__.py +++ b/addons/purchase_indent/__manifest__.py @@ -13,6 +13,7 @@ 'depends': [ 'purchase', 'purchase_requisition', + 'base_branch_company' ], 'data': [ 'security/ir.model.access.csv', diff --git a/addons/sale/__manifest__.py b/addons/sale/__manifest__.py index 6b67047d..d1cb5ea5 100644 --- a/addons/sale/__manifest__.py +++ b/addons/sale/__manifest__.py @@ -10,7 +10,7 @@ 'description': """ This module contains all the common features of Sales Management and eCommerce. """, - 'depends': ['sales_team', 'account', 'portal'], + 'depends': ['sales_team', 'account', 'portal', 'base_branch_company'], 'data': [ 'security/sale_security.xml', 'security/ir.model.access.csv', diff --git a/addons/sales_team/__manifest__.py b/addons/sales_team/__manifest__.py index e16b45c9..a71b0dc2 100644 --- a/addons/sales_team/__manifest__.py +++ b/addons/sales_team/__manifest__.py @@ -11,7 +11,7 @@ Using this application you can manage Sales Channels with CRM and/or Sales =========================================================================== """, 'website': 'https://flectrahq.com/page/crm', - 'depends': ['base', 'mail'], + 'depends': ['base', 'mail', 'base_branch_company'], 'data': ['security/sales_team_security.xml', 'security/ir.model.access.csv', 'data/sales_team_data.xml', diff --git a/addons/stock/__manifest__.py b/addons/stock/__manifest__.py index dee8cbe1..a5b03178 100644 --- a/addons/stock/__manifest__.py +++ b/addons/stock/__manifest__.py @@ -8,7 +8,7 @@ 'summary': 'Inventory, Logistics, Warehousing', 'description': "", 'website': 'https://flectrahq.com/page/warehouse', - 'depends': ['product', 'barcodes', 'web_planner'], + 'depends': ['product', 'barcodes', 'web_planner', 'base_branch_company'], 'category': 'Warehouse', 'sequence': 13, 'demo': [ diff --git a/addons/stock/models/stock_location.py b/addons/stock/models/stock_location.py index 6d45915a..86f9ff0a 100644 --- a/addons/stock/models/stock_location.py +++ b/addons/stock/models/stock_location.py @@ -135,7 +135,7 @@ class Location(models.Model): ('lot_stock_id', 'in', record.ids), ('wh_output_stock_loc_id', 'in', record.ids)]) for warehouse_id in warehouses_ids: - if record.branch_id and record.branch_id != warehouse_id.branch_id: + if record.branch_id and warehouse_id.branch_id and record.branch_id != warehouse_id.branch_id: raise ValidationError( _('Configuration Error of Branch:\n' 'The Location Branch (%s) and '