tfse-admin-api-v0.2/user/user_routes.py

129 lines
3.0 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

from flask import Blueprint, request
from Log.log_utils import error_info
from user.user_obj import UserManage, UserOperation
from user.user_auth import verify_token, authority_scope
user_route = Blueprint('user', __name__)
@user_route.route('/online_check', methods=['GET'])
@verify_token
def online_check_route(**kwargs):
"""
在线检查检查token是否有效
"""
return {"info": "正常"}, 200
@user_route.route('/list_user', methods=['POST'])
@verify_token
@authority_scope(['admin'])
@error_info
def list_user_route(**kwargs):
"""
用户信息列表接口
"""
user_manage = UserManage()
search = request.json['search']
sort = request.json['sort']
page_size = request.json['page_size']
page_no = request.json['page_no']
result = user_manage.list_user(search, sort, page_size, page_no)
return {"info": '查询结果', "result": result}, 200
@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
@user_route.route('/login', methods=['POST'])
def login_route():
"""
登录
"""
req = request.json
uo = UserOperation()
uo.email, uo.pwd, uo.vcode = req['email'], req['pwd'], req['vcode']
result = uo.login()
if type(result) == dict:
return {"info": "登录成功", "result": result}, 200
else:
return {"info": result}, 200
@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('/disable_user', methods=['GET'])
@verify_token
@authority_scope(['admin'])
def disable_user_route(**kwargs):
"""
停用用户接口
"""
uo = UserOperation()
uo.uid = request.args.get('UID')
uo.deactivate()
return {"info": "停用成功"}, 200
@user_route.route('/delete_user', methods=['GET'])
@verify_token
@authority_scope(['admin'])
def delete_user_route(**kwargs):
"""
删除用户接口
"""
uo = UserOperation()
uo.uid = request.args.get('UID')
uo.delete()
return {"info": "删除成功"}, 200
@user_route.route('/manage_role_of_user', methods=['POST'])
@verify_token
@authority_scope(['admin'])
def manage_role_of_user_route(**kwargs):
"""
管理用户角色接口
"""
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