# -*- coding: utf-8 -*- import odoo from odoo.tools import SQL odoo.models.READ_GROUP_AGGREGATE.update({ 'count_true': lambda table, expr: SQL('COUNT(*) FILTER (WHERE %s = true)', expr), 'count_false': lambda table, expr: SQL('COUNT(*) FILTER (WHERE %s = false)', expr), }) # 哪个模型需要就移植到哪个模型下 # @api.model # def web_read_group(self, domain, fields, groupby, limit=None, offset=0, orderby=False, lazy=True): # result = super().web_read_group(domain, fields, groupby, limit, offset, orderby, lazy) # fields_dict = self.fields_get(fields) # for group in result.get('groups'): # for field in fields: # if fields_dict[field].get('type') == 'boolean': # group[field] = len([r for r in self.search_read(group['__domain'], fields=[field]) if r.get(field)]) # return result