summaryrefslogtreecommitdiff
path: root/addons/event/models
diff options
context:
space:
mode:
authorThibault Delavallée <tde@odoo.com>2020-02-28 10:14:25 +0000
committerThibault Delavallée <tde@odoo.com>2020-02-28 12:59:26 +0000
commit456f8a7e70fe709eb75d6f648dcf163266a9dc60 (patch)
treeca0f5d704e0a6606ad13419e3f2c9e02644abffa /addons/event/models
parentb8b0a2ac7f355fd1ee3cfe9af8ade4c8697c238a (diff)
[FIX] event: fix seats computation when creating an event
Dealing with newId is sometimes difficult. closes odoo/odoo#46560 X-original-commit: 416d5ae6f7753c413b6981f9de3d24913943e9c2 Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
Diffstat (limited to 'addons/event/models')
-rw-r--r--addons/event/models/event_event.py8
1 files changed, 3 insertions, 5 deletions
diff --git a/addons/event/models/event_event.py b/addons/event/models/event_event.py
index dae3840f379..e5f89ecf884 100644
--- a/addons/event/models/event_event.py
+++ b/addons/event/models/event_event.py
@@ -190,10 +190,8 @@ class EventEvent(models.Model):
'open': 'seats_reserved',
'done': 'seats_used',
}
- results = dict(
- (event_id, dict((fname, 0) for fname in state_field.values()))
- for event_id in self.ids
- )
+ base_vals = dict((fname, 0) for fname in state_field.values())
+ results = dict((event_id, dict(base_vals)) for event_id in self.ids)
if self.ids:
query = """ SELECT event_id, state, count(event_id)
FROM event_registration
@@ -208,7 +206,7 @@ class EventEvent(models.Model):
# compute seats_available
for event in self:
- event.update(results[event._origin.id or event.id])
+ event.update(results.get(event._origin.id or event.id, base_vals))
if event.seats_max > 0:
event.seats_available = event.seats_max - (event.seats_reserved + event.seats_used)
seats_expected = event.seats_unconfirmed + event.seats_reserved + event.seats_used