def district_results(self, state_lookup: str, geo_queryset: QuerySet) -> List[dict]: # Returns congressional district results formatted for map state_pop_rows = PopCongressionalDistrict.objects.all().values() populations = { f"{row['state_code']}{row['congressional_district']}": row["latest_population"] for row in state_pop_rows } results = [] for x in geo_queryset: shape_code = code_to_state.get(x[state_lookup])["fips"] + pad_codes( self.geo_layer.value, x["code_as_float"] ) per_capita = None population = populations.get(shape_code) if population: per_capita = (Decimal(x["transaction_amount"]) / Decimal(population)).quantize(Decimal(".01")) results.append( { "shape_code": shape_code, "aggregated_amount": x["transaction_amount"], "display_name": x[state_lookup] + "-" + pad_codes(self.geo_layer.value, x["code_as_float"]), "population": population, "per_capita": per_capita, } ) return results
def district_results(self, state_lookup): # Returns congressional district results formatted for map results = [{ 'shape_code': code_to_state.get(x[state_lookup])['fips'] + pad_codes(self.geo_layer, x['code_as_float']), 'aggregated_amount': x['transaction_amount'], 'display_name': x[state_lookup] + '-' + pad_codes(self.geo_layer, x['code_as_float']) } for x in self.geo_queryset] return results
def district_results(self, state_lookup): # Returns congressional district results formatted for map results = [ { "shape_code": code_to_state.get(x[state_lookup])["fips"] + pad_codes(self.geo_layer, x["code_as_float"]), "aggregated_amount": x["transaction_amount"], "display_name": x[state_lookup] + "-" + pad_codes(self.geo_layer, x["code_as_float"]), } for x in self.geo_queryset ] return results
def county_results(self, state_lookup: str, county_name: str, geo_queryset: QuerySet) -> List[dict]: # Returns county results formatted for map state_pop_rows = PopCounty.objects.exclude(county_number="000").values() populations = {f"{row['state_code']}{row['county_number']}": row["latest_population"] for row in state_pop_rows} results = [] for x in geo_queryset: shape_code = code_to_state.get(x[state_lookup])["fips"] + pad_codes( self.geo_layer.value, x["code_as_float"] ) per_capita = None population = populations.get(shape_code) if population: per_capita = (Decimal(x["transaction_amount"]) / Decimal(population)).quantize(Decimal(".01")) results.append( { "shape_code": shape_code, "aggregated_amount": x["transaction_amount"], "display_name": x[county_name].title() if x[county_name] is not None else x[county_name], "population": population, "per_capita": per_capita, } ) return results
def county_results(self, state_lookup, county_name): # Returns county results formatted for map results = [{ 'shape_code': code_to_state.get(x[state_lookup])['fips'] + pad_codes(self.geo_layer, x['code_as_float']), 'aggregated_amount': x['transaction_amount'], 'display_name': x[county_name].title() if x[county_name] is not None else x[county_name] } for x in self.geo_queryset] return results
def county_results(self, state_lookup, county_name): # Returns county results formatted for map results = [ { "shape_code": code_to_state.get(x[state_lookup])["fips"] + pad_codes(self.geo_layer, x["code_as_float"]), "aggregated_amount": x["transaction_amount"], "display_name": x[county_name].title() if x[county_name] is not None else x[county_name], } for x in self.geo_queryset ] return results