diff --git a/addons/rating/models/rating_mixin.py b/addons/rating/models/rating_mixin.py index e0cf0e6837e..05e1df49874 100644 --- a/addons/rating/models/rating_mixin.py +++ b/addons/rating/models/rating_mixin.py @@ -3,7 +3,7 @@ from datetime import timedelta from odoo import api, fields, models, tools -from odoo.addons.rating.models.rating import RATING_LIMIT_SATISFIED, RATING_LIMIT_OK +from odoo.addons.rating.models.rating import RATING_LIMIT_SATISFIED, RATING_LIMIT_OK, RATING_LIMIT_MIN from odoo.osv import expression @@ -68,7 +68,7 @@ class RatingMixin(models.AbstractModel): @api.depends('rating_ids.res_id', 'rating_ids.rating') def _compute_rating_stats(self): """ Compute avg and count in one query, as thoses fields will be used together most of the time. """ - domain = self._rating_domain() + domain = expression.AND([self._rating_domain(), [('rating', '>=', RATING_LIMIT_MIN)]]) read_group_res = self.env['rating.rating'].read_group(domain, ['rating:avg'], groupby=['res_id'], lazy=False) # force average on rating column mapping = {item['res_id']: {'rating_count': item['__count'], 'rating_avg': item['rating']} for item in read_group_res} for record in self: