mirror of
https://github.com/Hestia-Homes/Model.git
synced 2026-06-08 11:17:27 +00:00
restructure wip
This commit is contained in:
parent
c0f9462377
commit
fb0c5859b9
4 changed files with 32 additions and 15 deletions
|
|
@ -1,10 +1,11 @@
|
|||
from fastapi import APIRouter, Depends
|
||||
from backend.app.dependencies import validate_token
|
||||
from backend.app.plan.schemas import PlanTriggerRequest
|
||||
from backend.app.utils import read_csv_from_s3, setup_logger
|
||||
from backend.app.utils import read_csv_from_s3
|
||||
from backend.app.config import get_settings
|
||||
from model_data.Property import Property
|
||||
from epc_api.client import EpcClient
|
||||
from utils.logger import setup_logger
|
||||
|
||||
logger = setup_logger()
|
||||
|
||||
|
|
@ -35,6 +36,17 @@ open_uprn_data = [
|
|||
'LONGITUDE': -0.0823165}
|
||||
]
|
||||
|
||||
in_conservation_area_data = [
|
||||
{'uprn': 6032920, 'is_in_conservation_area': 'not_in_conservation_area'},
|
||||
{'uprn': 6038625, 'is_in_conservation_area': 'not_in_conservation_area'},
|
||||
{'uprn': 34153991, 'is_in_conservation_area': 'unknown'},
|
||||
{'uprn': 10008299676, 'is_in_conservation_area': 'in_conservation_area'},
|
||||
{'uprn': 10008299677, 'is_in_conservation_area': 'in_conservation_area'},
|
||||
{'uprn': 100021039066, 'is_in_conservation_area': 'not_in_conservation_area'},
|
||||
{'uprn': 100021226060, 'is_in_conservation_area': 'in_conservation_area'},
|
||||
{'uprn': 200003489276, 'is_in_conservation_area': 'in_conservation_area'}
|
||||
]
|
||||
|
||||
|
||||
@router.post("/trigger")
|
||||
async def trigger_plan(body: PlanTriggerRequest):
|
||||
|
|
@ -62,4 +74,9 @@ async def trigger_plan(body: PlanTriggerRequest):
|
|||
coordinate_data = [x for x in open_uprn_data if x['UPRN'] == int(p.data['uprn'])][0]
|
||||
p.set_coordinates(coordinate_data)
|
||||
|
||||
logger.info("Check if property is in conservation area")
|
||||
for p in input_properties:
|
||||
in_conservation_area = [x for x in in_conservation_area_data if x['uprn'] == int(p.data['uprn'])][0]
|
||||
p.set_is_in_conservation_area(in_conservation_area)
|
||||
|
||||
return {"message": "Plan complete"}
|
||||
|
|
|
|||
|
|
@ -52,8 +52,8 @@ class ConservationAreaClient:
|
|||
raise ValueError("Coordinates have not been set, run get_coordinates() first")
|
||||
|
||||
is_in_conservation_area = self.is_in_conservation_area_historic_england(
|
||||
x_bng=coordinates["x_coordinate"],
|
||||
y_bng=coordinates["y_coordinate"]
|
||||
x_bng=coordinates.X_COORDINATE,
|
||||
y_bng=coordinates.Y_COORDINATE
|
||||
)
|
||||
|
||||
if is_in_conservation_area != "unknown":
|
||||
|
|
@ -62,8 +62,8 @@ class ConservationAreaClient:
|
|||
if is_in_conservation_area == "unknown":
|
||||
# We double check the secondary data source
|
||||
backup = self.is_in_conservation_area_historic_gov(
|
||||
longitude=coordinates["longitude"],
|
||||
latitude=coordinates["latitude"]
|
||||
longitude=coordinates.LONGITUDE,
|
||||
latitude=coordinates.LATITUDE
|
||||
)
|
||||
|
||||
if backup:
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ our database for querying from other services
|
|||
|
||||
import os
|
||||
from conservation_areas.ConservationAreaClient import ConservationAreaClient
|
||||
from datatypes.datatypes import OpenUprnCoordinateData
|
||||
|
||||
|
||||
def app():
|
||||
|
|
@ -38,16 +39,13 @@ def app():
|
|||
'LONGITUDE': -0.0823165}
|
||||
]
|
||||
|
||||
result = [conservation_area_client.is_in_conservation_area(coordinates) for coordinates in open_uprn_data]
|
||||
|
||||
conservation_area_client
|
||||
|
||||
uprns = [
|
||||
int(x) for x in
|
||||
['34153991', '6038625', '100021039066', '100021226060', '10008299676', '10008299677', '6032920', '200003489276']
|
||||
result = [
|
||||
{
|
||||
"uprn": coordinates["UPRN"],
|
||||
"is_in_conservation_area": conservation_area_client.is_in_conservation_area(
|
||||
OpenUprnCoordinateData(**coordinates))
|
||||
} for coordinates in
|
||||
open_uprn_data
|
||||
]
|
||||
|
||||
open_uprn_client.data[open_uprn_client.data["UPRN"].isin(
|
||||
uprns
|
||||
)].to_dict("records")
|
||||
# TODO: Add a method to write to the database
|
||||
|
|
|
|||
|
|
@ -38,6 +38,8 @@ package:
|
|||
- infrastructure/**
|
||||
- data_collection/**
|
||||
- node_modules/**
|
||||
- conservation_areas/**
|
||||
- open_uprn/**
|
||||
|
||||
plugins:
|
||||
- serverless-python-requirements
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue