42 lines
931 B
Python
42 lines
931 B
Python
from flask import Blueprint, jsonify, abort
|
|
from flask_login import current_user
|
|
from db.queries import user_get, domsubusers_list, orders_pool_list
|
|
|
|
api = Blueprint('api', __name__)
|
|
|
|
@api.route('/subs')
|
|
def subs():
|
|
return jsonify(
|
|
[
|
|
{"sub_username": dsu.sub.telegram_username}
|
|
for dsu
|
|
in domsubusers_list(current_user.db_user)
|
|
]
|
|
)
|
|
|
|
@api.route('/subs/<username>/orders')
|
|
def sub_orders(username):
|
|
try:
|
|
sub = user_get(username)
|
|
except:
|
|
abort(500)
|
|
return
|
|
|
|
if sub.telegram_username not in [dsu.sub.telegram_username for dsu in domsubusers_list(current_user.db_user)]:
|
|
abort(500)
|
|
return
|
|
|
|
return jsonify([
|
|
{
|
|
'id': op.id,
|
|
'name': op.name,
|
|
'orders': [{
|
|
'id': order.id,
|
|
'name': order.name,
|
|
'weight': order.weight,
|
|
'repeat': order.repeat
|
|
} for order in op.orders]
|
|
}
|
|
for op
|
|
in orders_pool_list(sub.id)
|
|
])
|