def get_case_property_map(self): data = all_case_properties_by_domain(self.domain, include_parent_properties=False) return { 'data': data, 'success': True, }
def _get_all_case_properties(domain): # moved here to avoid circular import from corehq.apps.app_manager.util import all_case_properties_by_domain from corehq.apps.export.models.new import CaseExportDataSchema case_type_to_properties = {} case_properties_from_apps = all_case_properties_by_domain( domain, include_parent_properties=False ) for case_type in get_case_types_from_apps(domain): properties = set() schema = CaseExportDataSchema.generate_schema_from_builds(domain, None, case_type) for group_schema in schema.group_schemas: for item in group_schema.items: if item.tag: name = item.tag else: name = '/'.join([p.name for p in item.path]) properties.add(name) case_type_props_from_app = case_properties_from_apps.get(case_type, {}) properties |= set(case_type_props_from_app) case_type_to_properties[case_type] = properties return case_type_to_properties
def _get_all_case_properties(domain): case_type_to_properties = {} case_properties_from_apps = all_case_properties_by_domain( domain, include_parent_properties=False) for case_type in get_case_types_from_apps(domain): properties = set() schema = CaseExportDataSchema.generate_schema_from_builds( domain, None, case_type) for group_schema in schema.group_schemas: for item in group_schema.items: if item.tag: name = item.tag else: name = '/'.join([p.name for p in item.path]) properties.add(name) case_type_props_from_app = case_properties_from_apps.get(case_type, {}) properties |= set(case_type_props_from_app) case_type_to_properties[case_type] = properties return case_type_to_properties
def _get_all_case_properties(domain): case_type_to_properties = {} case_properties_from_apps = all_case_properties_by_domain( domain, include_parent_properties=False ) for case_type in get_case_types_from_apps(domain): properties = set() schema = CaseExportDataSchema.generate_schema_from_builds(domain, None, case_type) for group_schema in schema.group_schemas: for item in group_schema.items: if item.tag: name = item.tag else: name = '/'.join([p.name for p in item.path]) properties.add(name) case_type_props_from_app = case_properties_from_apps.get(case_type, {}) properties |= set(case_type_props_from_app) case_type_to_properties[case_type] = properties return case_type_to_properties