119 lines
3.0 KiB
Python
119 lines
3.0 KiB
Python
from flask import Flask, redirect, render_template, request
|
|
import utils.sql_utils as sql_utils
|
|
|
|
app = Flask(__name__)
|
|
|
|
connection = sql_utils.connect_database('ubuntu-mariadb.home','admin','password','inventory')
|
|
|
|
|
|
### main.html paths
|
|
@app.route('/user_search')
|
|
def user_search():
|
|
data = request.args.get('data')
|
|
query = f'''
|
|
SELECT u.name,u.id_num,u.assigned_asset,u.assigned_card
|
|
FROM users u
|
|
WHERE u.name like '%{data.upper()}%\''''
|
|
response = sql_utils.read_query(connection, query)
|
|
print(response)
|
|
return response
|
|
|
|
@app.route('/asset_tag_search')
|
|
def asset_tag_search():
|
|
data = request.args.get('data')
|
|
query = f'''SELECT a.asset_id, a.serial, a.model, a.category, u.name
|
|
FROM assets a
|
|
left JOIN users u ON u.assigned_asset=a.asset_id
|
|
WHERE a.asset_id = {data.upper()}'''
|
|
response = sql_utils.read_query(connection, query)
|
|
return response
|
|
|
|
@app.route('/serial_search')
|
|
def serial_search():
|
|
data = request.args.get('data')
|
|
query = f'''SELECT a.asset_id, a.serial, a.model, a.category, u.name
|
|
FROM assets a
|
|
left JOIN users u ON u.assigned_asset=a.asset_id
|
|
WHERE a.serial LIKE "{data.upper()}"'''
|
|
response = sql_utils.read_query(connection, query)
|
|
return response
|
|
|
|
@app.route('/asset_list')
|
|
def asset_list():
|
|
query = '''
|
|
select a.asset_id,a.serial,a.model,a.category,u.name
|
|
from assets a
|
|
left join users u on u.assigned_asset=a.asset_id
|
|
'''
|
|
data = sql_utils.read_query(connection,query)
|
|
return data
|
|
|
|
@app.route('/card_list')
|
|
def card_list():
|
|
query = '''
|
|
select c.card_number,c.display_number,u.name assigned_user
|
|
from access_cards c
|
|
left join users u on u.assigned_card=c.card_number
|
|
'''
|
|
data = sql_utils.read_query(connection,query)
|
|
return data
|
|
@app.route('/user_list')
|
|
def user_list():
|
|
query = '''
|
|
select * from users;
|
|
'''
|
|
data = sql_utils.read_query(connection,query)
|
|
return data
|
|
|
|
### add.html paths
|
|
|
|
@app.route("/add_asset", methods=['POST'])
|
|
def add_asset():
|
|
data = request.json
|
|
query = f'''
|
|
insert into assets (asset_id,serial,model,category) values
|
|
(%(tag)s, %(serial)s, %(model)s, %(category)s)
|
|
'''
|
|
result = sql_utils.send_query(connection,query,data)
|
|
if result:
|
|
return "success"
|
|
else:
|
|
return "failure"
|
|
|
|
@app.route("/add_user",methods=['POST'])
|
|
def add_user():
|
|
data = request.json
|
|
query = f'''
|
|
insert into users (id_num,name,assigned_asset,assigned_card) values
|
|
(%(id)s, %(name)s, %(asset)s, %(card)s)
|
|
'''
|
|
result = sql_utils.send_query(connection,query,data)
|
|
if result:
|
|
return "success"
|
|
else:
|
|
return "failure"
|
|
|
|
@app.route("/add_card")
|
|
def add_card():
|
|
return None
|
|
@app.route("/modify_asset")
|
|
def modify_asset():
|
|
return None
|
|
@app.route("/modify_user")
|
|
def modify_user():
|
|
return None
|
|
@app.route("/modify_card")
|
|
def modify_card():
|
|
return None
|
|
|
|
### Pages
|
|
@app.route('/add')
|
|
def add_page():
|
|
return render_template('adding.html')
|
|
|
|
@app.route("/")
|
|
def default():
|
|
return render_template('main.html')
|
|
|
|
if __name__ == '__main__':
|
|
app.run() |