odex30_standard/odex30_base/data_chart/models/models_custom.py

27 lines
1.1 KiB
Python

from odoo import models, fields, api, _
class BaseModelExtend(models.BaseModel):
_name = 'basemodel.extend_custom_data_chart'
def _register_hook(self):
@api.model
@api.returns(
'self', upgrade=lambda self, value, args, offset=0, limit=None, order=None,
count=False: value if count else self.browse(value), downgrade=lambda self, value, args,
offset=0, limit=None, order=None, count=False: value if count else value.ids)
def search(self, args, offset=0, limit=None, order=None, count=False):
context = dict(self.env.context)
if context.get('data_chart_search', False):
res = self._search([], offset=offset, limit=limit, order=order, count=count)
else:
res = self._search(args, offset=offset, limit=limit, order=order, count=count)
return res if count else self.browse(res)
# -------------------------------------------------------
models.BaseModel.search = search
return super(BaseModelExtend, self)._register_hook()