diff --git a/beesdoo_base/__manifest__.py b/beesdoo_base/__manifest__.py
index dd0c497..2ad0665 100644
--- a/beesdoo_base/__manifest__.py
+++ b/beesdoo_base/__manifest__.py
@@ -34,5 +34,6 @@
'installable': True,
'demo': [
'demo/cooperators.xml',
+ 'demo/eaters.xml',
]
}
diff --git a/beesdoo_base/demo/eaters.xml b/beesdoo_base/demo/eaters.xml
new file mode 100644
index 0000000..13dc5f3
--- /dev/null
+++ b/beesdoo_base/demo/eaters.xml
@@ -0,0 +1,43 @@
+
+
+
+
+ Gilles Eaterbeek
+ Gilles
+ Eaterbeek
+ eater
+
+
+
+
+
+ Constant Eateration
+ Constant
+ Eateration
+ eater
+
+
+
+
+
+ Alexander G. Eaterphone
+ Alexander G.
+ Eaterphone
+ eater
+
+
+
+
+
+ Tim Eaternet
+ Tim
+ Eaternet
+ eater
+
+
+
+
+
diff --git a/beesdoo_base/models/partner.py b/beesdoo_base/models/partner.py
index 9f0e35b..34a0e02 100644
--- a/beesdoo_base/models/partner.py
+++ b/beesdoo_base/models/partner.py
@@ -12,40 +12,19 @@ class Partner(models.Model):
barcode = fields.Char(compute="_get_bar_code", string='Barcode', store=True)
parent_barcode = fields.Char(compute="_get_bar_code", string='Parent Barcode', store=True)
member_card_ids = fields.One2many('member.card', 'partner_id')
- country_id = fields.Many2one(required=True)
member_card_to_be_printed = fields.Boolean('Print BEES card?')
last_printed = fields.Datetime('Last printed on')
- cooperator_type = fields.Selection([('share_a', 'Share A'), ('share_b', 'Share B'), ('share_c', 'Share C')], store=True, compute=None)
-
@api.depends('parent_eater_id', 'parent_eater_id.barcode', 'eater', 'member_card_ids')
def _get_bar_code(self):
- self.ensure_one()
- if self.eater == 'eater':
- self.parent_barcode = self.parent_eater_id.barcode
- elif self.member_card_ids:
- for c in self.member_card_ids:
- if c.valid:
- self.barcode = c.barcode
-
- @api.constrains('child_eater_ids', 'parent_eater_id')
- def _check_number_of_eaters(self):
- """The owner of an A share can have a maximum of two eaters but
- the owner of a B share can have a maximum of three eaters.
- """
- self.ensure_one()
- # Get the default_code of the share for the current eater and his parent
- share_type_code = self.cooperator_type
- parent_share_type_code = self.parent_eater_id.cooperator_type
- # Raise exception
- if share_type_code == 'share_b' or parent_share_type_code == 'share_b':
- if len(self.child_eater_ids) > 3 or len(self.parent_eater_id.child_eater_ids) > 3:
- raise ValidationError(_('You can only set three additional eaters per worker'))
- else:
- if len(self.child_eater_ids) > 2 or len(self.parent_eater_id.child_eater_ids) > 2:
- raise ValidationError(_('You can only set two additional eaters per worker'))
-
+ for rec in self:
+ if rec.eater == 'eater':
+ rec.parent_barcode = rec.parent_eater_id.barcode
+ elif rec.member_card_ids:
+ for c in rec.member_card_ids:
+ if c.valid:
+ rec.barcode = c.barcode
@api.multi
def write(self, values):
diff --git a/beesdoo_base/views/partner.xml b/beesdoo_base/views/partner.xml
index efa8d96..6a2c6a7 100644
--- a/beesdoo_base/views/partner.xml
+++ b/beesdoo_base/views/partner.xml
@@ -19,19 +19,12 @@
res.partner
-
-
-
-
- {'invisible':
- [('cooperator_type', '=', 'share_a')]}
-
@@ -87,19 +80,6 @@
-
- beesdoo.partner.search.view
- res.partner
-
-
-
-
-
-
-
-
-
-