def es_results(self): if not self.patient_id: return None full_query = ReportXFormES.by_case_id_query(self.request.domain, self.patient_id) full_query.update({ "fields": [ "_id", "received_on", "form.meta.timeEnd", "form.meta.timeStart", "form.meta.username", "form.#type", ], "sort": self.get_sorting_block(), "size": self.pagination.count, "from": self.pagination.start }) full_query['script_fields'] = pact_script_fields() res = self.xform_es.run_query(full_query) return res
def dots_submissions_by_case(case_id, query_date, username=None): """ Actually run query for username submissions todo: do terms for the pact_ids instead of individual term? """ xform_es = ReportXFormES(PACT_DOMAIN) script_fields = { "doc_id": get_report_script_field('_id', is_known=True), "pact_id": get_report_script_field("form.pact_id"), "encounter_date": get_report_script_field('form.encounter_date'), "username": get_report_script_field('form.meta.username', is_known=True), "visit_type": get_report_script_field('form.visit_type'), "visit_kept": get_report_script_field('form.visit_kept'), "contact_type": get_report_script_field('form.contact_type'), "observed_art": get_report_script_field('form.observed_art'), "observed_non_art": get_report_script_field('form.observed_non_art'), "observer_non_art_dose": get_report_script_field('form.observed_non_art_dose'), "observed_art_dose": get_report_script_field('form.observed_art_dose'), "pillbox_check": get_report_script_field('form.pillbox_check.check'), "scheduled": get_report_script_field('form.scheduled'), } term_block = {'form.#type': 'dots_form'} if username is not None: term_block['form.meta.username'] = username query = xform_es.by_case_id_query(PACT_DOMAIN, case_id, terms=term_block, date_field='form.encounter_date.#value', startdate=query_date, enddate=query_date) query['sort'] = {'received_on': 'asc'} query['script_fields'] = script_fields query['size'] = 1 query['from'] = 0 res = xform_es.run_query(query) print simplejson.dumps(res, indent=2) return res
def dots_submissions_by_case(case_id, query_date, username=None): """ Actually run query for username submissions todo: do terms for the pact_ids instead of individual term? """ xform_es = ReportXFormES(PACT_DOMAIN) script_fields = { "doc_id": get_report_script_field('_id', is_known=True), "pact_id": get_report_script_field("form.pact_id"), "encounter_date": get_report_script_field('form.encounter_date'), "username": get_report_script_field('form.meta.username', is_known=True), "visit_type": get_report_script_field('form.visit_type'), "visit_kept": get_report_script_field('form.visit_kept'), "contact_type": get_report_script_field('form.contact_type'), "observed_art": get_report_script_field('form.observed_art'), "observed_non_art": get_report_script_field('form.observed_non_art'), "observer_non_art_dose": get_report_script_field('form.observed_non_art_dose'), "observed_art_dose": get_report_script_field('form.observed_art_dose'), "pillbox_check": get_report_script_field('form.pillbox_check.check'), "scheduled": get_report_script_field('form.scheduled'), } term_block = {'form.#type': 'dots_form'} if username is not None: term_block['form.meta.username'] = username query = xform_es.by_case_id_query(PACT_DOMAIN, case_id, terms=term_block, date_field='form.encounter_date.#value', startdate=query_date, enddate=query_date) query['sort'] = {'received_on': 'asc'} query['script_fields'] = script_fields query['size'] = 1 query['from'] = 0 res = xform_es.run_query(query) print(json.dumps(res, indent=2)) return res
def es_results(self): if not self.patient_id: return None full_query = ReportXFormES.by_case_id_query(self.request.domain, self.patient_id) full_query.update({ "fields": [ "_id", "received_on", "form.meta.timeEnd", "form.meta.timeStart", "form.meta.username", "form.#type", ], "sort": self.get_sorting_block(), "size": self.pagination.count, "from": self.pagination.start }) full_query['script_fields'] = pact_script_fields() res = self.xform_es.run_query(full_query) return res