コード例 #1
0
ファイル: api.py プロジェクト: pawelreise/commcare-hq
 def _init_counts(self):
     groups, _ = es_wrapper('groups', domain=self.domain, q=self.q,
         doc_type='Group', size=0, return_count=True)
     users, _ = es_wrapper('users', domain=self.domain, q=self.q,
         size=0, return_count=True)
     self.group_start = len(self.basics)
     self.user_start = self.group_start + groups
     self.total_results = self.user_start + users
コード例 #2
0
ファイル: api.py プロジェクト: pawelreise/commcare-hq
 def get_groups(self, start, size):
     fields = ['_id', 'name']
     reporting_filter = {"term": {"reporting": "true"}}
     groups = es_wrapper('groups', domain=self.domain, q=self.q,
         doc_type='Group', fields=fields, start_at=start, size=size,
         sort_by='name', order='asc', filters=[reporting_filter])
     return [group_tuple(g) for g in groups]
コード例 #3
0
ファイル: api.py プロジェクト: puttarajubr/commcare-hq
 def user_es_call(self, query, **kwargs):
     query = {"bool": {"must": [
         {"query_string": {
             "query": q,
             "fields": ["first_name", "last_name", "username"],
         }} for q in self.get_es_query_strings(query)
     ]}} if query and query.strip() else None
     return es_wrapper('users', domain=self.domain, q=query, **kwargs)
コード例 #4
0
ファイル: api.py プロジェクト: puttarajubr/commcare-hq
 def group_es_call(self, query, group_type="reporting", **kwargs):
     query = {"bool": {"must": [
         {"query_string": {
             "query": q,
             "default_field": "name",
         }} for q in self.get_es_query_strings(query)
     ]}} if query and query.strip() else None
     type_filter = {"term": {group_type: "true"}}
     return es_wrapper('groups', domain=self.domain, q=query,
                       filters=[type_filter], doc_type='Group',
                       **kwargs)
コード例 #5
0
ファイル: api.py プロジェクト: NoahCarnahan/commcare-hq
 def group_es_call(self, **kwargs):
     reporting_filter = {"term": {"reporting": "true"}}
     return es_wrapper('groups', domain=self.domain, q=self.group_query,
         doc_type='Group', filters=[reporting_filter], **kwargs)
コード例 #6
0
ファイル: api.py プロジェクト: NoahCarnahan/commcare-hq
 def user_es_call(self, **kwargs):
     return es_wrapper('users', domain=self.domain, q=self.user_query, **kwargs)
コード例 #7
0
ファイル: api.py プロジェクト: SEL-Columbia/commcare-hq
 def group_es_call(self, group_type="reporting", **kwargs):
     # Valid group_types are "reporting" and "case_sharing"
     return es_wrapper('groups', domain=self.domain, q=self.group_query,
         filters=[{"term": {group_type: "true"}}], doc_type='Group',
         **kwargs)
コード例 #8
0
ファイル: api.py プロジェクト: pawelreise/commcare-hq
 def get_users(self, start, size):
     fields = ['_id', 'username', 'first_name', 'last_name']
     users = es_wrapper('users', domain=self.domain, q=self.q,
         fields=fields, start_at=start, size=size, sort_by='username', order='asc')
     return [user_tuple(u) for u in users]