def handler(event, context): print(event) if 'field' in event: # GraphQL API table_name = event['field'] args = event['arguments'] with app.app_context(): results = DataService.fetch_rows_orm_eager( table_name, { 'startRow': args['start_row'], 'endRow': args['end_row'], 'rowGroupCols': args['row_group_cols'], 'valueCols': args['value_cols'], 'pivotCols': args['pivot_cols'], 'pivotMode': args['pivot_mode'], 'groupKeys': args['group_keys'], 'sortModel': args['sort_model'], 'filterModel': transform_filter_model(args['filter_model']) }) model_name = get_model_name_by_table_name(table_name) results['rows'] = [ marshal(row, rest_api.api_schemas[f'{model_name}Full']) for row in results['rows'] ] print(results) return results else: # REST API with app.app_context(): if event['body']: # POST path = event['path'] table_name = path[5:] # remove /api/ model_name = get_model_name_by_table_name(table_name) req = json.loads(json.loads(event['body'])) results = DataService.fetch_rows_orm(table_name, req) results['rows'] = [ marshal(row, rest_api.api_schemas[model_name]) for row in results['rows'] ] return { 'body': json.dumps(results), 'headers': { "Access-Control-Allow-Origin": "*", }, 'statusCode': 200, }
def resolve_row_data(parent, info, start_row, end_row, row_group_cols, value_cols, pivot_cols, pivot_mode, group_keys, filter_model, sort_model): from app.service import DataService results = DataService.fetch_rows_orm( model, { 'startRow': start_row, 'endRow': end_row, 'rowGroupCols': row_group_cols, 'valueCols': value_cols, 'pivotCols': pivot_cols, 'pivotMode': pivot_mode, 'groupKeys': group_keys, 'sortModel': sort_model, 'filterModel': transform_filter_model(filter_model) } ) print(results) return results
from flask import Flask, Response from app.service import DataService from flask_cors import CORS app = Flask(__name__) CORS(app) ds = DataService() @app.route('/') def hello(): return "<h1>NASA COVID-19 backend</h1>" @app.route('/covid/<interval>') def get_covid_timeseries(interval): return Response(ds.get_covid_by_interval(interval), mimetype='application/json') @app.route('/covid') def get_covid_data(): return Response(ds.get_covid_data(), mimetype='application/json') @app.route('/crude-oil') def get_crude_oil(): return Response(ds.get_energy_crude_oil(), mimetype='application/json') @app.route('/transport') def get_transport_data():
def post(self): '''Get a list of Baltimore City circuit court civil cases''' return DataService.fetch_rows_orm('cc', request.parsed_obj)
def post(self): '''Get a list of Baltimore City district court criminal cases''' return DataService.fetch_rows_orm('dscr', request.parsed_obj)
def post(self): '''Get a list of MD traffic cases''' return DataService.fetch_rows_orm('odytraf', request.parsed_obj)
def post(self): '''Get a list of cases''' return DataService.fetch_rows_orm('cases', request.parsed_obj)
def post(self): '''Get a list of MD criminal cases''' return DataService.fetch_rows_orm('odycrim', request.parsed_obj)