tfse-app-api-v0.2/TestForAdmin/route.py

100 lines
3.1 KiB
Python

from flask import Blueprint, request
from Implements.Others.EmailNoticeImpl import EmailNoticeImpl
from Implements.User.RealCompanyVerifyImpl import RealCompanyVerifyImpl
from Implements.User.TFSECompanyUserImpl import TFSECompanyUserImpl
from Rating.Credit.CreditImpl import CreditRating
from Rating.Esg.EsgImpl import EsgRating
from TestForAdmin.APIAuth import api_secret
from Utils.ErrorUtil import ReturnConditionCheckFailed
test_admin_route = Blueprint('test_admin', __name__)
@test_admin_route.route('/company_verify', methods=['GET'])
@api_secret
def company_verify_route():
"""企业认证"""
try:
impl = RealCompanyVerifyImpl()
impl.cid = request.args['cid']
impl.verify()
return {"info": "认证成功"}, 200
except ReturnConditionCheckFailed as e:
e.log_error()
return {"info": e.failed_info}, e.status_code
except KeyError:
return {"info": "参数异常"}, 400
@test_admin_route.route('/general_rating', methods=['POST'])
@api_secret
def general_rating():
"""评价打分"""
try:
project = request.json['评价项目']
cid = request.json['企业ID']
if project == '综合信用评价':
credit = CreditRating()
credit.cid = cid
info, status = credit.exec_cc_rating()
return {"info": info}, status
else:
esg = EsgRating()
esg.cid = cid
info, status = esg.exec_esg_rating()
return {"info": info}, status
except ReturnConditionCheckFailed as e:
e.log_error()
return {"info": e.failed_info}, e.status_code
except KeyError:
return {"info": "参数异常"}, 400
@test_admin_route.route('/verify_email', methods=['POST'])
@api_secret
def verify_email():
"""
新注册企业
1.调用发送注册邮箱,获取验证码
2.使用邮箱、密码、验证码进行注册
3.使用认证接口进行认证、初始化企业数据
"""
try:
req = request.json
# 发送验证码
impl = EmailNoticeImpl()
impl.email = req['email']
impl.v_type = 'register'
impl.send_email()
return {"info": "邮件已发送"}, 200
except ReturnConditionCheckFailed as e:
e.log_error()
return {"info": e.failed_info}, e.status_code
except KeyError:
return {"info": "参数异常"}, 400
@test_admin_route.route('/register', methods=['POST'])
@api_secret
def register():
"""
新注册企业
1.调用发送注册邮箱,获取验证码
2.使用邮箱、密码、验证码进行注册
3.使用认证接口进行认证、初始化企业数据
"""
try:
req = request.json
# 注册
impl = TFSECompanyUserImpl()
impl.email = req['email']
impl.pwd = "Fecr1988."
impl.register(req['code'])
return {"info": "注册成功"}, 200
except ReturnConditionCheckFailed as e:
e.log_error()
return {"info": e.failed_info}, e.status_code
except KeyError:
return {"info": "参数异常"}, 400