Table Sort Order Done
This commit is contained in:
@ -7,41 +7,76 @@ from pyramid.view import view_config
|
||||
from barker.models import FoodTable, Overview
|
||||
|
||||
|
||||
@view_config(request_method='POST', route_name='v1_tables_new', renderer='json', permission='Tables', trans=True)
|
||||
@view_config(
|
||||
request_method="POST",
|
||||
route_name="v1_tables_new",
|
||||
renderer="json",
|
||||
permission="Tables",
|
||||
trans=True,
|
||||
)
|
||||
def save(request):
|
||||
json = request.json_body
|
||||
item = FoodTable(json['name'], json['location'], json['isActive'], json['sortOrder'])
|
||||
item = FoodTable(
|
||||
json["name"], json["location"], json["isActive"], json["sortOrder"]
|
||||
)
|
||||
request.dbsession.add(item)
|
||||
transaction.commit()
|
||||
item = request.dbsession.query(FoodTable).filter(FoodTable.id == item.id).first()
|
||||
return food_table_info(item)
|
||||
|
||||
|
||||
@view_config(request_method='PUT', route_name='v1_tables_id', renderer='json', permission='Tables', trans=True)
|
||||
@view_config(
|
||||
request_method="PUT",
|
||||
route_name="v1_tables_id",
|
||||
renderer="json",
|
||||
permission="Tables",
|
||||
trans=True,
|
||||
)
|
||||
def update(request):
|
||||
json = request.json_body
|
||||
item = request.dbsession.query(FoodTable).filter(FoodTable.id == uuid.UUID(request.matchdict['id'])).first()
|
||||
item.name = json['name']
|
||||
item.location = json['location']
|
||||
item.is_active = json['isActive']
|
||||
item.sort_order = json['sortOrder']
|
||||
item = (
|
||||
request.dbsession.query(FoodTable)
|
||||
.filter(FoodTable.id == uuid.UUID(request.matchdict["id"]))
|
||||
.first()
|
||||
)
|
||||
item.name = json["name"]
|
||||
item.location = json["location"]
|
||||
item.is_active = json["isActive"]
|
||||
item.sort_order = json["sortOrder"]
|
||||
transaction.commit()
|
||||
item = request.dbsession.query(FoodTable).filter(FoodTable.id == item.id).first()
|
||||
return food_table_info(item)
|
||||
|
||||
|
||||
@view_config(request_method='DELETE', route_name='v1_tables_id', renderer='json', permission='Tables', trans=True)
|
||||
@view_config(
|
||||
request_method="DELETE",
|
||||
route_name="v1_tables_id",
|
||||
renderer="json",
|
||||
permission="Tables",
|
||||
trans=True,
|
||||
)
|
||||
def delete(request):
|
||||
item = request.dbsession.query(FoodTable).filter(FoodTable.id == uuid.UUID(request.matchdict['id'])).first()
|
||||
item = (
|
||||
request.dbsession.query(FoodTable)
|
||||
.filter(FoodTable.id == uuid.UUID(request.matchdict["id"]))
|
||||
.first()
|
||||
)
|
||||
request.dbsession.delete(item)
|
||||
transaction.commit()
|
||||
return {}
|
||||
|
||||
|
||||
@view_config(request_method='GET', route_name='v1_tables_id', renderer='json', permission='Authenticated')
|
||||
@view_config(
|
||||
request_method="GET",
|
||||
route_name="v1_tables_id",
|
||||
renderer="json",
|
||||
permission="Authenticated",
|
||||
)
|
||||
def show_id(request):
|
||||
id_ = request.matchdict['id']
|
||||
p = re.compile('^[A-Za-z0-9]{8}-[A-Za-z0-9]{4}-[A-Za-z0-9]{4}-[A-Za-z0-9]{4}-[A-Za-z0-9]{12}$')
|
||||
id_ = request.matchdict["id"]
|
||||
p = re.compile(
|
||||
"^[A-Za-z0-9]{8}-[A-Za-z0-9]{4}-[A-Za-z0-9]{4}-[A-Za-z0-9]{4}-[A-Za-z0-9]{12}$"
|
||||
)
|
||||
if p.match(id_):
|
||||
id_ = uuid.UUID(id_)
|
||||
item = request.dbsession.query(FoodTable).filter(FoodTable.id == id_).first()
|
||||
@ -50,28 +85,39 @@ def show_id(request):
|
||||
return food_table_info(item)
|
||||
|
||||
|
||||
@view_config(request_method='GET', route_name='v1_tables_new', renderer='json', request_param='v')
|
||||
@view_config(
|
||||
request_method="GET", route_name="v1_tables_new", renderer="json", request_param="v"
|
||||
)
|
||||
def show_voucher(request):
|
||||
voucher_id = request.GET['v']
|
||||
voucher = request.dbsession.query(Overview).filter(Overview.voucher_id == voucher_id).first()
|
||||
voucher_id = request.GET["v"]
|
||||
voucher = (
|
||||
request.dbsession.query(Overview)
|
||||
.filter(Overview.voucher_id == voucher_id)
|
||||
.first()
|
||||
)
|
||||
if voucher is not None:
|
||||
return food_table_info(voucher.food_table)
|
||||
return {}
|
||||
|
||||
|
||||
@view_config(request_method='GET', route_name='v1_tables_new', renderer='json', permission='Tables')
|
||||
@view_config(
|
||||
request_method="GET",
|
||||
route_name="v1_tables_new",
|
||||
renderer="json",
|
||||
permission="Tables",
|
||||
)
|
||||
def show_blank(request):
|
||||
return {
|
||||
'name': "",
|
||||
'isActive': True,
|
||||
'location': "",
|
||||
'sortOrder': 0
|
||||
}
|
||||
return {"name": "", "isActive": True, "location": "", "sortOrder": 0}
|
||||
|
||||
|
||||
@view_config(request_method='GET', route_name='v1_tables_list', renderer='json', permission='Authenticated')
|
||||
@view_config(
|
||||
request_method="GET",
|
||||
route_name="v1_tables_list",
|
||||
renderer="json",
|
||||
permission="Authenticated",
|
||||
)
|
||||
def show_list(request):
|
||||
active = request.GET.get('a', None)
|
||||
active = request.GET.get("a", None)
|
||||
list_ = request.dbsession.query(FoodTable)
|
||||
if active is not None:
|
||||
list_ = list_.filter(FoodTable.is_active == active)
|
||||
@ -79,39 +125,42 @@ def show_list(request):
|
||||
|
||||
food_tables = []
|
||||
for item in list_:
|
||||
food_tables.append({
|
||||
'id': item.id,
|
||||
'name': item.name,
|
||||
'location': item.location,
|
||||
'isActive': item.is_active,
|
||||
'sortOrder': item.sort_order,
|
||||
'status': '' if item.status is None else item.status.status,
|
||||
'voucherId': None if item.status is None else item.status.voucher_id
|
||||
})
|
||||
food_tables.append(
|
||||
{
|
||||
"id": item.id,
|
||||
"name": item.name,
|
||||
"location": item.location,
|
||||
"isActive": item.is_active,
|
||||
"sortOrder": item.sort_order,
|
||||
"status": "" if item.status is None else item.status.status,
|
||||
"voucherId": None if item.status is None else item.status.voucher_id,
|
||||
}
|
||||
)
|
||||
return food_tables
|
||||
|
||||
|
||||
@view_config(request_method='PUT', route_name='v1_tables_list', renderer='json', permission='Tables')
|
||||
@view_config(
|
||||
request_method="POST",
|
||||
route_name="v1_tables_list",
|
||||
renderer="json",
|
||||
permission="Tables",
|
||||
)
|
||||
def sort_order(request):
|
||||
json = request.json_body
|
||||
for index, item in enumerate(json):
|
||||
request.dbsession.query(
|
||||
FoodTable
|
||||
).filter(
|
||||
FoodTable.id == uuid.UUID(item['FoodTableID'])
|
||||
).update(
|
||||
{FoodTable.sort_order: index}
|
||||
)
|
||||
request.dbsession.query(FoodTable).filter(
|
||||
FoodTable.id == uuid.UUID(item["id"])
|
||||
).update({FoodTable.sort_order: index})
|
||||
return True
|
||||
|
||||
|
||||
def food_table_info(item):
|
||||
return {
|
||||
'id': item.id,
|
||||
'name': item.name,
|
||||
'location': item.location,
|
||||
'isActive': item.is_active,
|
||||
'status': '' if item.status is None else item.status.status,
|
||||
'sortOrder': item.sort_order,
|
||||
'voucherId': None if item.status is None else item.status.voucher_id
|
||||
"id": item.id,
|
||||
"name": item.name,
|
||||
"location": item.location,
|
||||
"isActive": item.is_active,
|
||||
"status": "" if item.status is None else item.status.status,
|
||||
"sortOrder": item.sort_order,
|
||||
"voucherId": None if item.status is None else item.status.voucher_id,
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user