[FIX] point_of_sale: pos_config write should be @multi compliant
Avoid "expected singleton" when writing on multiple pos_config closes #24953
This commit is contained in:
@@ -351,11 +351,12 @@ class PosConfig(models.Model):
|
||||
|
||||
@api.multi
|
||||
def write(self, vals):
|
||||
if (self.is_posbox or vals.get('is_posbox')) and (self.iface_customer_facing_display or vals.get('iface_customer_facing_display')):
|
||||
facing_display = (self.customer_facing_display_html or vals.get('customer_facing_display_html') or '').strip()
|
||||
if not facing_display:
|
||||
vals['customer_facing_display_html'] = self._compute_default_customer_html()
|
||||
result = super(PosConfig, self).write(vals)
|
||||
|
||||
config_display = self.filtered(lambda c: c.is_posbox and c.iface_customer_facing_display and not (c.customer_facing_display_html or '').strip())
|
||||
if config_display:
|
||||
super(PosConfig, config_display).write({'customer_facing_display_html': self._compute_default_customer_html()})
|
||||
|
||||
self.sudo()._set_fiscal_position()
|
||||
self.sudo()._check_modules_to_install()
|
||||
self.sudo()._check_groups_implied()
|
||||
|
||||
Reference in New Issue
Block a user