diff --git a/pos_disable_pricelist_selection/models/pos_config.py b/pos_disable_pricelist_selection/models/pos_config.py index 6fce6a623f..bd71b51cbd 100644 --- a/pos_disable_pricelist_selection/models/pos_config.py +++ b/pos_disable_pricelist_selection/models/pos_config.py @@ -4,6 +4,15 @@ class PosConfig(models.Model): _inherit = "pos.config" + def _default_pricelist(self): + return self.env["product.pricelist"].search( + [ + ("company_id", "in", (False, self.env.company.id)), + ("currency_id", "=", self.env.company.currency_id.id), + ], + limit=1, + ) + hide_pricelist_button = fields.Boolean( default=False, ) @@ -12,6 +21,7 @@ class PosConfig(models.Model): string="Selectable Pricelists", domain="[('id', 'in', available_pricelist_ids)]", relation="pos_conf_selectable_pricelist_rel", + default=_default_pricelist, ) pricelist_id_domain = fields.Binary( compute="_compute_pricelist_id_domain", @@ -19,7 +29,7 @@ class PosConfig(models.Model): store=False, ) - @api.depends("hide_pricelist_button") + @api.onchange("hide_pricelist_button") def onchange_hide_pricelist_button(self): self.update( {"selectable_pricelist_ids": [(6, 0, self.allowed_pricelist_ids.ids)]} @@ -34,7 +44,9 @@ def _compute_pricelist_id_domain(self): rec.pricelist_id_domain = [("id", "in", rec.allowed_pricelist_ids.ids)] else: if not rec.selectable_pricelist_ids: - rec.selectable_pricelist_ids = [(6, 0, rec.allowed_pricelist_ids.ids)] + rec.selectable_pricelist_ids = [ + (6, 0, rec.allowed_pricelist_ids.ids) + ] rec.pricelist_id_domain = [ ("id", "in", rec.selectable_pricelist_ids.ids) ]