Starts splitting views/json routes into separate files

This commit is contained in:
Patrick McDonagh
2017-04-19 16:03:35 -05:00
parent 9c84de53c4
commit 6c41beb1b0
7 changed files with 99 additions and 105 deletions

View File

@@ -126,72 +126,70 @@ def main(global_config, **settings):
# SHARED ROUTES
config.add_route('home', '/')
config.add_route('json_snapshot', '/json')
config.add_route("json_users", "/json/users", factory='pocwww.security.UserLoginFactory')
# Cards
config.add_route('cards_page', '/cards/{cards_date}/{page_num}')
config.add_route('json_cards_page', '/json/cards/{cards_date}/{page_num}')
config.add_route('cards_date', '/cards/{cards_date}')
config.add_route('json_cards_date', '/json/cards/{cards_date}')
config.add_route('cards', '/cards')
config.add_route('json_cards', '/json/cards')
config.add_route('card_single', "/card/view/{stroke_number}")
config.add_route('json_card_single', "/json/card/view/{stroke_number}")
config.add_route('json_lastcard', "/json/lastcard")
config.add_route('values_all', "/values")
config.add_route('json_values_all', "/json/values")
config.add_route('values_tag', "/values/tag/{tagname}")
config.add_route('values_time', '/values/time/{time}')
config.add_route('json_values_time', '/json/values/time/{time}')
# Measurements
config.add_route('measurements_all', "/values")
config.add_route('measurements_all_json', "/json/values")
config.add_route('measurements_between_wparams_json', "/json/values/between/{startdt}/{enddt}")
config.add_route('measurements_between_json', "/json/values/between")
config.add_route("measurements_daterange_json", "/json/values/daterange")
config.add_route('measurements_singlebetween_wparams_json', "/json/values/tag/{tagname}/between/{startdt}/{enddt}")
config.add_route('measurements_singlebetween_json', "/json/values/tag/{tagname}")
config.add_route("measurements_singledaterange_json", "/json/values/tag/{tagname}/daterange")
config.add_route('measurements_single', "/values/tag/{tagname}")
# Gauge Off
config.add_route('gaugeoff_all', '/gaugeoff')
config.add_route('json_gaugeoff_all', '/json/gaugeoff')
# Fluid Shots
config.add_route('fluidshots_all', '/fluidshots')
config.add_route('json_fluidshots_all', '/json/fluidshots')
# Well Tests
config.add_route('welltests_all', '/welltests')
config.add_route('json_welltests_all', '/json/welltests')
# Run Status
config.add_route('runstatus', '/runstatus')
config.add_route('json_runstatus_page', '/json/runstatus/{page_num}')
config.add_route('json_runstatus', '/json/runstatus')
config.add_route('json_runstatusnow', "/json/runstatusnow")
# Configuration
config.add_route('json_config', '/json/config', factory='pocwww.security.UserLoginFactory')
config.add_route('config', '/config', factory='pocwww.security.UserLoginFactory')
# Setpoints
config.add_route('json_setpoints', '/json/setpoints', factory='pocwww.security.UserLoginFactory')
config.add_route('json_mode', '/json/mode', factory='pocwww.security.UserLoginFactory')
config.add_route('setpoints', '/setpoints', factory='pocwww.security.UserLoginFactory')
# Administration
config.add_route('admin', '/admin', factory='pocwww.security.UserLoginFactory')
config.add_route('auth', '/sign/{action}')
config.add_route('register', '/register', factory='pocwww.security.UserLoginFactory')
# JSON-ONLY ROUTES
config.add_route('json_lastcard', "/json/lastcard")
config.add_route('json_runstatusnow', "/json/runstatusnow")
config.add_route('json_valuesbetween_wparams', "/json/values/between/{startdt}/{enddt}")
config.add_route('json_valuesbetween', "/json/values/between")
config.add_route("json_valuesdaterange", "/json/values/daterange")
config.add_route('json_singlevaluebetween_wparams', "/json/values/tag/{tagname}/between/{startdt}/{enddt}")
config.add_route('json_singlevaluebetween', "/json/values/tag/{tagname}")
config.add_route("json_singlevaluedaterange", "/json/values/tag/{tagname}/daterange")
# POC Interface
config.add_route("json_updateconfig", "/json/updateconfig", factory='pocwww.security.UserLoginFactory')
config.add_route("json_shake", '/json/cmd/shake', factory='pocwww.security.UserLoginFactory')
config.add_route("json_cmd", '/json/cmd/{action}', factory='pocwww.security.UserLoginFactory')
# config.add_route("json_cmd_start", "/json/cmd/start", factory='pocwww.security.UserLoginFactory')
# config.add_route("json_cmd_stop", "/json/cmd/stop", factory='pocwww.security.UserLoginFactory')
# config.add_route("json_cmd_shake", "/json/cmd/shake", factory='pocwww.security.UserLoginFactory')
config.add_route("json_update_poc_address", "/json/updatepocaddress", factory='pocwww.security.UserLoginFactory')
config.add_route("json_shake", '/json/cmd/shake', factory='pocwww.security.UserLoginFactory')
config.add_route("json_users", "/json/users", factory='pocwww.security.UserLoginFactory')
config.scan()
return config.make_wsgi_app()

43
pocwww/cards.py Normal file
View File

@@ -0,0 +1,43 @@
from pyramid.view import view_config
from .view_helpers import *
@view_config(route_name="json_lastcard", renderer="prettyjson")
def json_lastcard(request):
return get_latest_card(request)
@view_config(route_name='cards', renderer='templates/datelist.jinja2')
@view_config(route_name='json_cards', renderer='prettyjson')
def cards(request):
return {'datelist': get_all_dates_with_cards(request), 'navgroup': 'cards'}
@view_config(route_name='cards_page', renderer='templates/cardlist.jinja2')
@view_config(route_name='cards_date', renderer='templates/cardlist.jinja2')
@view_config(route_name='json_cards_date', renderer='prettyjson')
@view_config(route_name='json_cards_page', renderer='prettyjson')
def cards_page(request):
cp = card_page(request)
cp['datelist'] = get_all_dates_with_cards(request)
return cp
@view_config(route_name='card_single', renderer='templates/cardsingle.jinja2')
@view_config(route_name='json_card_single', renderer='prettyjson')
def card_single(request):
card = {}
try:
card = list(request.db['cards'].find({"strokeNumber": int(request.matchdict['stroke_number'])}))[0]
except IndexError:
pass
datepage_url = request.referrer.split("/")[3:]
page_num = 1
carddate = ""
if len(datepage_url) > 2:
page_num = int(datepage_url[2])
if len(datepage_url) > 1:
carddate = datepage_url[1]
return {"card": card, 'navgroup': 'cards', 'datelist': get_all_dates_with_cards(request), 'date': carddate, 'datepage': page_num}

9
pocwww/fluid_shots.py Normal file
View File

@@ -0,0 +1,9 @@
from pyramid.view import view_config
from .view_helpers import *
@view_config(route_name="fluidshots_all", renderer="templates/fluidshots.jinja2")
@view_config(route_name="json_fluidshots_all", renderer="prettyjson")
def fluidshots_all(request):
fluidshots = list(request.db['fluidShots'].find())
return {'navgroup': 'fluidshots', 'data': fluidshots}

View File

@@ -4,14 +4,6 @@ from bson import json_util
import requests
import pytz
# JSON
@view_config(route_name="json_lastcard", renderer="prettyjson")
def json_lastcard(request):
return get_latest_card(request)
@view_config(route_name="json_runstatusnow", renderer="prettyjson")
def json_runstatusnow(request):
status = False

View File

@@ -139,7 +139,7 @@ def get_grouped_measurements_between(request, start_datetime, end_datetime, tagn
return tag_data
@view_config(route_name='values_all', renderer="templates/valuesall.jinja2")
@view_config(route_name='measurements_all', renderer="templates/valuesall.jinja2")
def values_page(request):
latest_tag_values = []
latesttag_agg = request.db['measurements'].aggregate([
@@ -164,7 +164,7 @@ def values_page(request):
return {'navgroup': 'values', "current_values": latest_tag_values}
@view_config(route_name='json_values_all', renderer='prettyjson')
@view_config(route_name='measurements_all_json', renderer='prettyjson')
def values_all(request):
end = datetime.now(tz=pytz.utc)
try: # Attempt to get a value from the request.
@@ -206,8 +206,8 @@ def values_all(request):
return {'navgroup': 'values', 'values': all_values, "current_values": latest_tag_values}
@view_config(route_name="json_singlevaluebetween", renderer="prettyjson")
@view_config(route_name="json_singlevaluebetween_wparams", renderer="prettyjson")
@view_config(route_name="measurements_singlebetween_json", renderer="prettyjson")
@view_config(route_name="measurements_singlebetween_wparams_json", renderer="prettyjson")
def json_singlevaluebetween(request):
end = datetime.now(tz=pytz.utc)
try: # Attempt to get a value from the request.
@@ -229,8 +229,8 @@ def json_singlevaluebetween(request):
return {'tag': all_values, 'start': start, 'end': end, 'tagname': request.matchdict['tagname']}
@view_config(route_name="json_valuesbetween", renderer="prettyjson")
@view_config(route_name="json_valuesbetween_wparams", renderer="prettyjson")
@view_config(route_name="measurements_between_json", renderer="prettyjson")
@view_config(route_name="measurements_between_wparams_json", renderer="prettyjson")
def json_valuesbetween(request):
end = datetime.now(tz=pytz.utc)
try: # Attempt to get a value from the request.
@@ -252,7 +252,7 @@ def json_valuesbetween(request):
return {'values': tag_data, 'start': start, 'end': end}
@view_config(route_name="json_valuesdaterange", renderer="prettyjson")
@view_config(route_name="measurements_daterange_json", renderer="prettyjson")
def json_valuesdaterange(request):
date_limits = list(request.db['measurements'].aggregate([
{"$group": {
@@ -264,7 +264,7 @@ def json_valuesdaterange(request):
return {'first_date': date_limits['first'], 'last_date': date_limits['last']}
@view_config(route_name="json_singlevaluedaterange", renderer="prettyjson")
@view_config(route_name="measurements_singledaterange_json", renderer="prettyjson")
def json_singlevaluedaterange(request):
date_limits = list(request.db['measurements'].aggregate([
{"$match": {"tagname": request.matchdict['tagname']}},
@@ -275,3 +275,8 @@ def json_singlevaluedaterange(request):
}}
]))[0]
return {'first_date': date_limits['first'], 'last_date': date_limits['last']}
@view_config(route_name="measurements_single", renderer="templates/values_single.jinja2")
def measurements_single(request):
tagname = request.matchdict['tagname']
return {'navgroup': 'values', 'tagname': tagname}

View File

@@ -38,54 +38,6 @@ def my_view(request):
return {'project': 'POC Web Interface', 'navgroup': 'dashboard', 'tag_values': latest_tag_values, 'card': latest_card}
@view_config(route_name='cards', renderer='templates/datelist.jinja2')
@view_config(route_name='json_cards', renderer='prettyjson')
def cards(request):
return {'datelist': get_all_dates_with_cards(request), 'navgroup': 'cards'}
@view_config(route_name='cards_page', renderer='templates/cardlist.jinja2')
@view_config(route_name='cards_date', renderer='templates/cardlist.jinja2')
@view_config(route_name='json_cards_date', renderer='prettyjson')
@view_config(route_name='json_cards_page', renderer='prettyjson')
def cards_page(request):
cp = card_page(request)
cp['datelist'] = get_all_dates_with_cards(request)
return cp
@view_config(route_name='card_single', renderer='templates/cardsingle.jinja2')
@view_config(route_name='json_card_single', renderer='prettyjson')
def card_single(request):
card = {}
try:
card = list(request.db['cards'].find({"strokeNumber": int(request.matchdict['stroke_number'])}))[0]
except IndexError:
pass
datepage_url = request.referrer.split("/")[3:]
page_num = 1
carddate = ""
if len(datepage_url) > 2:
page_num = int(datepage_url[2])
if len(datepage_url) > 1:
carddate = datepage_url[1]
return {"card": card, 'navgroup': 'cards', 'datelist': get_all_dates_with_cards(request), 'date': carddate, 'datepage': page_num}
# @view_config(route_name='values_all', renderer="templates/valuesall.jinja2")
# @view_config(route_name='json_values_all', renderer='prettyjson')
# def values_all(request):
# return {'navgroup': 'values', 'current_tag_values': get_lastest_tag_values(request)}
@view_config(route_name="values_tag", renderer="templates/values_single.jinja2")
def values_tag(request):
tagname = request.matchdict['tagname']
return {'navgroup': 'values', 'tagname': tagname}
@view_config(route_name="gaugeoff_all", renderer="templates/gaugeoff_all.jinja2")
@view_config(route_name="json_gaugeoff_all", renderer="prettyjson")
def gaugeoff_all(request):
@@ -130,20 +82,6 @@ def gaugeoff_all(request):
return {'navgroup': 'gaugeoff', 'data': gaugeoff_list}
@view_config(route_name="fluidshots_all", renderer="templates/fluidshots.jinja2")
@view_config(route_name="json_fluidshots_all", renderer="prettyjson")
def fluidshots_all(request):
fluidshots = list(request.db['fluidShots'].find())
return {'navgroup': 'fluidshots', 'data': fluidshots}
@view_config(route_name="welltests_all", renderer="templates/welltests.jinja2")
@view_config(route_name="json_welltests_all", renderer="prettyjson")
def welltests_all(request):
welltests = list(request.db['wellTests'].find())
return {'navgroup': 'welltests', 'data': welltests}
@view_config(route_name="runstatus", renderer="templates/runstatus.jinja2")
@view_config(route_name="json_runstatus", renderer="prettyjson")
@view_config(route_name="json_runstatus_page", renderer="prettyjson")

9
pocwww/well_tests.py Normal file
View File

@@ -0,0 +1,9 @@
from pyramid.view import view_config
from .view_helpers import *
@view_config(route_name="welltests_all", renderer="templates/welltests.jinja2")
@view_config(route_name="json_welltests_all", renderer="prettyjson")
def welltests_all(request):
welltests = list(request.db['wellTests'].find())
return {'navgroup': 'welltests', 'data': welltests}