Small adjustments for meb
This commit is contained in:
parent
e2cb78842f
commit
fa06b571f8
@ -17,7 +17,7 @@ import threading
|
|||||||
import hub_api.helpers.session_helper as sh
|
import hub_api.helpers.session_helper as sh
|
||||||
from hub_api.session import SessionStart, SessionEnd, KeepSessionAlive
|
from hub_api.session import SessionStart, SessionEnd, KeepSessionAlive
|
||||||
from hub_api.uptime import Uptime
|
from hub_api.uptime import Uptime
|
||||||
from hub_api.buildings import GetMEB
|
from hub_api.buildings.meb import Meb
|
||||||
|
|
||||||
|
|
||||||
sh.begin_time = datetime.datetime.now()
|
sh.begin_time = datetime.datetime.now()
|
||||||
@ -33,7 +33,7 @@ api.add_resource(SessionEnd, '/v1.4/session/end')
|
|||||||
api.add_resource(KeepSessionAlive, '/v1.4/session/keep_alive')
|
api.add_resource(KeepSessionAlive, '/v1.4/session/keep_alive')
|
||||||
|
|
||||||
# Buildings
|
# Buildings
|
||||||
api.add_resource(GetMEB, '/v1.4/buildings/meb')
|
api.add_resource(Meb, '/v1.4/buildings/meb')
|
||||||
|
|
||||||
with open("hub_api/docs/openapi-specs.yml", "r") as stream:
|
with open("hub_api/docs/openapi-specs.yml", "r") as stream:
|
||||||
swagger_config = {
|
swagger_config = {
|
||||||
@ -53,7 +53,7 @@ with open("hub_api/docs/openapi-specs.yml", "r") as stream:
|
|||||||
try:
|
try:
|
||||||
Swagger(app, template=yaml.safe_load(stream), config=swagger_config)
|
Swagger(app, template=yaml.safe_load(stream), config=swagger_config)
|
||||||
except yaml.YAMLError as exc:
|
except yaml.YAMLError as exc:
|
||||||
print(exc)
|
print(f'error: {exc}')
|
||||||
|
|
||||||
|
|
||||||
@app.route("/")
|
@app.route("/")
|
||||||
|
@ -5,19 +5,19 @@ from flask_restful import Resource
|
|||||||
from hub_api.helpers.session_helper import active_session, refresh_session
|
from hub_api.helpers.session_helper import active_session, refresh_session
|
||||||
from hub_api.config import Config
|
from hub_api.config import Config
|
||||||
|
|
||||||
class GetMEB(Resource, Config):
|
class Meb(Resource, Config):
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
super().__init__()
|
super().__init__()
|
||||||
|
|
||||||
def post(self):
|
def get(self):
|
||||||
'''
|
"""
|
||||||
API call for requesting a specified list of enriched buildings
|
API call for requesting a specified list of enriched buildings
|
||||||
'''
|
"""
|
||||||
session_id = request.headers.get('session_id', None)
|
session_id = request.headers.get('session_id', None)
|
||||||
token = request.headers.get('token', None)
|
token = request.headers.get('token', None)
|
||||||
application_uuid = request.headers.get('application_uuid', None)
|
application_uuid = request.headers.get('application_uuid', None)
|
||||||
|
|
||||||
if(active_session(session_id, token, application_uuid)):
|
if active_session(session_id, token, application_uuid):
|
||||||
refresh_session(session_id, token, application_uuid)
|
refresh_session(session_id, token, application_uuid)
|
||||||
payload = request.get_json()
|
payload = request.get_json()
|
||||||
buildings = {}
|
buildings = {}
|
||||||
@ -27,9 +27,9 @@ class GetMEB(Resource, Config):
|
|||||||
for building in payload['cities'][city]:
|
for building in payload['cities'][city]:
|
||||||
buildings[city][building] = self.export_db_factory.building_info(building, city)
|
buildings[city][building] = self.export_db_factory.building_info(building, city)
|
||||||
|
|
||||||
#TODO: finish formating buildings to match swagger documentation
|
# TODO: finish formatting buildings to match swagger documentation
|
||||||
# and change export_db_factory.building_info to use MEB database
|
# and change export_db_factory.building_info to use MEB database
|
||||||
# call when ready
|
# call when ready
|
||||||
|
|
||||||
return Response(json.dumps({'result': 'succeed', 'results': buildings}), status=200)
|
return Response(json.dumps({'result': 'succeed', 'results': buildings}), status=200)
|
||||||
return Response(json.dumps({'error': 'unauthorized'}), status=403)
|
return Response(json.dumps({'error': 'unauthorized'}), status=403)
|
@ -140,28 +140,19 @@ paths:
|
|||||||
schema:
|
schema:
|
||||||
$ref: '#/components/schemas/unauthorized'
|
$ref: '#/components/schemas/unauthorized'
|
||||||
/v1.4/buildings/meb:
|
/v1.4/buildings/meb:
|
||||||
post:
|
get:
|
||||||
security:
|
security:
|
||||||
- session_id: [ ]
|
- session_id: [ ]
|
||||||
- token: [ ]
|
- token: [ ]
|
||||||
- application_uuid: [ ]
|
- application_uuid: [ ]
|
||||||
requestBody:
|
parameters:
|
||||||
content:
|
- in: body
|
||||||
application/json:
|
name: data
|
||||||
schema:
|
schema:
|
||||||
type: object
|
type: string
|
||||||
properties:
|
example: [{"city_1" :["building_1", "building_2"]}, {"city_2" :["building_3", "building_8"]}]
|
||||||
cities:
|
required: true
|
||||||
type: object
|
description: Json containing the city name and the buildings whose monthly energy balance is requested.
|
||||||
example: {"city_1" :["building_1", "building_2"], "city_2" :["building_3", "building_8"]}
|
|
||||||
|
|
||||||
# schema:
|
|
||||||
# ref: '#components/schemas/buildingsArray'
|
|
||||||
# payload:
|
|
||||||
# type: object
|
|
||||||
# example: {"city_1" :["building_1", "building_2"], "city_2" :["building_3", "building_8"]}
|
|
||||||
# required: true
|
|
||||||
# description: Json containing the city name and the buildings whose monthly energy balance is requested.
|
|
||||||
tags:
|
tags:
|
||||||
- Buildings monthly energy balance meb
|
- Buildings monthly energy balance meb
|
||||||
summary: Retrieve the monthly energy balance results for the given buildings in the given cities
|
summary: Retrieve the monthly energy balance results for the given buildings in the given cities
|
||||||
@ -229,19 +220,6 @@ components:
|
|||||||
cities:
|
cities:
|
||||||
type: array
|
type: array
|
||||||
example: [{'name': 'city 1', 'geometric_level_of_detail': '1'}, {'name': 'city 2', 'geometric_level_of_detail': '1'}]
|
example: [{'name': 'city 1', 'geometric_level_of_detail': '1'}, {'name': 'city 2', 'geometric_level_of_detail': '1'}]
|
||||||
buildingsArray:
|
|
||||||
content:
|
|
||||||
application/json:
|
|
||||||
schema:
|
|
||||||
type: array
|
|
||||||
items:
|
|
||||||
$ref: '#/components/schemas/buildings'
|
|
||||||
buildings:
|
|
||||||
type: object
|
|
||||||
properties:
|
|
||||||
city_id:
|
|
||||||
type: string
|
|
||||||
example: 'city_id1'
|
|
||||||
meb:
|
meb:
|
||||||
type: object
|
type: object
|
||||||
properties:
|
properties:
|
||||||
|
Loading…
Reference in New Issue
Block a user