2022-01-11 11:02:46 +08:00
|
|
|
|
from flask import Blueprint, request
|
|
|
|
|
|
2022-01-24 18:16:33 +08:00
|
|
|
|
from user.user_obj import UserManage, UserOperation
|
2022-02-11 11:24:28 +08:00
|
|
|
|
from user.user_auth import verify_token, authority_scope
|
2022-01-11 11:02:46 +08:00
|
|
|
|
|
|
|
|
|
user_route = Blueprint('user', __name__)
|
|
|
|
|
|
|
|
|
|
|
2022-01-11 15:12:08 +08:00
|
|
|
|
@user_route.route('/send_vcode_to_user', methods=['POST'])
|
|
|
|
|
def send_vcode_to_user_route():
|
|
|
|
|
"""
|
|
|
|
|
发送验证码
|
|
|
|
|
"""
|
|
|
|
|
um = UserManage()
|
|
|
|
|
um.email = request.json['email']
|
|
|
|
|
res = um.send_vcode_to_user()
|
|
|
|
|
if res is True:
|
|
|
|
|
return {"info": "验证邮件已发送"}, 200
|
|
|
|
|
else:
|
|
|
|
|
return {"info": res}, 200
|
2022-01-11 17:36:31 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@user_route.route('/login', methods=['POST'])
|
2022-01-12 13:30:27 +08:00
|
|
|
|
def login_route():
|
2022-01-11 17:36:31 +08:00
|
|
|
|
"""
|
|
|
|
|
登录
|
|
|
|
|
"""
|
2022-01-25 16:48:42 +08:00
|
|
|
|
req = request.json
|
|
|
|
|
|
2022-01-11 17:36:31 +08:00
|
|
|
|
uo = UserOperation()
|
2022-01-25 16:48:42 +08:00
|
|
|
|
uo.email, uo.pwd, uo.vcode = req['email'], req['pwd'], req['vcode']
|
|
|
|
|
|
|
|
|
|
result = uo.login()
|
|
|
|
|
if type(result) == dict:
|
|
|
|
|
return {"info": "登录成功", "result": result}, 200
|
2022-01-11 17:36:31 +08:00
|
|
|
|
else:
|
2022-01-25 16:48:42 +08:00
|
|
|
|
return {"info": result}, 200
|
2022-01-26 15:07:18 +08:00
|
|
|
|
|
|
|
|
|
|
2022-01-26 15:20:16 +08:00
|
|
|
|
@user_route.route('/online_check', methods=['GET'])
|
|
|
|
|
@verify_token
|
2022-01-26 15:42:37 +08:00
|
|
|
|
def online_check_route(**kwargs):
|
2022-01-26 15:20:16 +08:00
|
|
|
|
"""
|
|
|
|
|
在线检查,检查token是否有效
|
|
|
|
|
"""
|
|
|
|
|
return {"info": "正常"}, 200
|
|
|
|
|
|
|
|
|
|
|
2022-01-26 15:07:18 +08:00
|
|
|
|
@user_route.route('/create_user', methods=['POST'])
|
|
|
|
|
@verify_token
|
|
|
|
|
@authority_scope(['admin'])
|
|
|
|
|
def create_user_route(**kwargs):
|
|
|
|
|
"""
|
|
|
|
|
新建用户
|
|
|
|
|
"""
|
|
|
|
|
req = request.json
|
|
|
|
|
|
|
|
|
|
um = UserManage()
|
|
|
|
|
um.email, um.name, um.pwd, um.role = req['email'], req['name'], req['pwd'], req['role']
|
|
|
|
|
|
|
|
|
|
result = um.create_user()
|
|
|
|
|
|
|
|
|
|
if result is True:
|
|
|
|
|
return {"info": "新建用户成功"}, 200
|
|
|
|
|
else:
|
|
|
|
|
return {"info": result}, 200
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@user_route.route('/list_user', methods=['GET'])
|
|
|
|
|
@verify_token
|
|
|
|
|
@authority_scope(['admin'])
|
|
|
|
|
def list_user_route(**kwargs):
|
|
|
|
|
"""
|
|
|
|
|
用户信息列表接口
|
|
|
|
|
"""
|
2022-01-27 17:28:49 +08:00
|
|
|
|
uo = UserOperation()
|
|
|
|
|
uo.criteria = request.args.get('criteria')
|
|
|
|
|
uo.skip = int(request.args.get('skip'))
|
|
|
|
|
uo.limit = int(request.args.get('limit'))
|
|
|
|
|
result = uo.query()
|
|
|
|
|
return {"info": '查询成功', "result": result}, 200
|
2022-01-26 15:07:18 +08:00
|
|
|
|
|
|
|
|
|
|
2022-01-27 17:28:49 +08:00
|
|
|
|
@user_route.route('/disable_user', methods=['GET'])
|
2022-01-26 15:07:18 +08:00
|
|
|
|
@verify_token
|
|
|
|
|
@authority_scope(['admin'])
|
|
|
|
|
def disable_user_route(**kwargs):
|
|
|
|
|
"""
|
|
|
|
|
停用用户接口
|
|
|
|
|
"""
|
2022-01-27 17:28:49 +08:00
|
|
|
|
uo = UserOperation()
|
|
|
|
|
uo.uid = request.args.get('uid')
|
|
|
|
|
uo.deactivate()
|
|
|
|
|
return {"info": "停用成功"}, 200
|
2022-01-26 15:07:18 +08:00
|
|
|
|
|
|
|
|
|
|
2022-01-28 10:57:02 +08:00
|
|
|
|
@user_route.route('/delete_user', methods=['GET'])
|
2022-01-26 15:07:18 +08:00
|
|
|
|
@verify_token
|
|
|
|
|
@authority_scope(['admin'])
|
|
|
|
|
def delete_user_route(**kwargs):
|
|
|
|
|
"""
|
|
|
|
|
删除用户接口
|
|
|
|
|
"""
|
2022-01-28 10:57:02 +08:00
|
|
|
|
uo = UserOperation()
|
|
|
|
|
uo.uid = request.args.get('uid')
|
|
|
|
|
uo.delete()
|
|
|
|
|
return {"info": "删除成功"}, 200
|
2022-01-26 15:07:18 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@user_route.route('/manage_role_of_user', methods=['POST'])
|
|
|
|
|
@verify_token
|
|
|
|
|
@authority_scope(['admin'])
|
|
|
|
|
def manage_role_of_user_route(**kwargs):
|
|
|
|
|
"""
|
|
|
|
|
管理用户角色接口
|
|
|
|
|
"""
|
2022-01-28 10:57:02 +08:00
|
|
|
|
req = request.json
|
|
|
|
|
|
|
|
|
|
uo = UserOperation()
|
|
|
|
|
uo.uid, uo.role = req['uid'], req['role']
|
|
|
|
|
result = uo.manage()
|
|
|
|
|
if result:
|
|
|
|
|
return {"info": "修改成功"}, 200
|
|
|
|
|
else:
|
|
|
|
|
return {"info": "修改失败"}, 210
|