diff --git a/multi_branch_base/__manifest__.py b/multi_branch_base/__manifest__.py
index 6855fa0d5..5e9f1ffd0 100644
--- a/multi_branch_base/__manifest__.py
+++ b/multi_branch_base/__manifest__.py
@@ -22,7 +22,7 @@
{
'name': "Multi Branch Operations",
- 'version': "14.0.1.0.1",
+ 'version': "14.0.1.1.1",
'summary': """ Multiple Branch Unit Operation Setup for All
Modules In Odoo""",
'description': """Multiple Branch Unit Operation Setup for All
diff --git a/multi_branch_base/models/branch_product_template.py b/multi_branch_base/models/branch_product_template.py
index e4fa7e603..4070543c3 100644
--- a/multi_branch_base/models/branch_product_template.py
+++ b/multi_branch_base/models/branch_product_template.py
@@ -27,21 +27,15 @@ class ProductTemplate(models.Model):
"""inherited product"""
_inherit = 'product.template'
-
-
branch_id = fields.Many2one("res.branch", string='Branch', store=True,
- readonly=False,
- compute="_compute_branch")
+ help='Leave this field empty if this product is'
+ ' shared between all branches'
+ )
+ allowed_branch_ids = fields.Many2many('res.branch', store=True,
+ string="Allowed Branches",
+ compute='_compute_allowed_branch_ids')
@api.depends('company_id')
- def _compute_branch(self):
- for order in self:
- company = self.env.company
- so_company = order.company_id if order.company_id else self.env.company
- branch_ids = self.env.user.branch_ids
- branch = branch_ids.filtered(
- lambda branch: branch.company_id == so_company)
- if branch:
- order.branch_id = branch.ids[0]
- else:
- order.branch_id = False
+ def _compute_allowed_branch_ids(self):
+ for po in self:
+ po.allowed_branch_ids = self.env.user.branch_ids.ids
diff --git a/multi_branch_base/models/branch_res_partner.py b/multi_branch_base/models/branch_res_partner.py
index 7ca4f3ba0..0bce4d036 100644
--- a/multi_branch_base/models/branch_res_partner.py
+++ b/multi_branch_base/models/branch_res_partner.py
@@ -28,21 +28,17 @@ class BranchPartner(models.Model):
_inherit = "res.partner"
branch_id = fields.Many2one("res.branch", string='Branch', store=True,
- readonly=False,
- compute="_compute_branch")
+ help='Leave this field empty if the partner is'
+ ' shared between all branches'
+ )
+ allowed_branch_ids = fields.Many2many('res.branch', store=True,
+ string="Branches",
+ compute='_compute_allowed_branch_ids')
@api.depends('company_id')
- def _compute_branch(self):
- for order in self:
- company = self.env.company
- so_company = order.company_id if order.company_id else self.env.company
- branch_ids = self.env.user.branch_ids
- branch = branch_ids.filtered(
- lambda branch: branch.company_id == so_company)
- if branch:
- order.branch_id = branch.ids[0]
- else:
- order.branch_id = False
+ def _compute_allowed_branch_ids(self):
+ for po in self:
+ po.allowed_branch_ids = self.env.user.branch_ids.ids
@api.model
def default_get(self, default_fields):
diff --git a/multi_branch_base/views/branch_product_template_views.xml b/multi_branch_base/views/branch_product_template_views.xml
index f7930a371..76a8936e6 100644
--- a/multi_branch_base/views/branch_product_template_views.xml
+++ b/multi_branch_base/views/branch_product_template_views.xml
@@ -7,7 +7,8 @@
-
+
+
diff --git a/multi_branch_base/views/branch_res_partner_views.xml b/multi_branch_base/views/branch_res_partner_views.xml
index a140aceaa..0b613a4a1 100644
--- a/multi_branch_base/views/branch_res_partner_views.xml
+++ b/multi_branch_base/views/branch_res_partner_views.xml
@@ -7,8 +7,9 @@
-
+