43 lines
1.0 KiB
Python
43 lines
1.0 KiB
Python
import flask
|
|
|
|
from Market.Database import Database
|
|
|
|
market = flask.Blueprint("market", __name__)
|
|
db = Database()
|
|
|
|
# TODO: users and logins
|
|
|
|
@app.get('/')
|
|
def market():
|
|
# TODO: return a page to view market stats
|
|
return 200
|
|
|
|
###
|
|
# Submit an order to the market.
|
|
# This method calls the Order().validate() method to validate the order schema.
|
|
# This method performs additional validations against user table.
|
|
# User balances are reduced immediately upon receiving a buy order from their account.
|
|
###
|
|
@app.post('/orders')
|
|
def order_post():
|
|
try:
|
|
new_order = Order(data=request.get_json())
|
|
new_order.validate()
|
|
# TODO: validate order against the Mine
|
|
# TODO: write order to db
|
|
if newOrder.orderType == 'buy':
|
|
# TODO: reduce user balance by ((price + fee) * volume)
|
|
continue
|
|
return 200
|
|
# TODO: exceptions
|
|
except mariadb.Error as e:
|
|
return e, 500
|
|
|
|
###
|
|
# Retrieve one or more orders.
|
|
###
|
|
@app.get('/orders')
|
|
def orders_get():
|
|
# TODO: order queries
|
|
return 200
|