guarantee-admin-api-v0.2/Modules/Rating/RatingRoutes.py

121 lines
3.7 KiB
Python
Raw Normal View History

2022-05-26 17:15:30 +08:00
from flask import Blueprint, request
from Modules.AdminUser.UserAuthUtils import verify_token
2022-05-30 16:56:01 +08:00
from Modules.Rating.RatingImpl import RatingImpl
from Utils.ErrorUtil import AttrCheckError, APIReturnError
2022-05-26 17:15:30 +08:00
from Utils.RouteUtil import RouteParamsCheck
rating_route = Blueprint('rating', __name__)
2022-05-27 14:45:15 +08:00
@rating_route.route('/before_create', methods=['GET'])
@verify_token
def before_create_routes(**kwargs):
"""评级选择"""
try:
2022-06-15 10:09:03 +08:00
RouteParamsCheck(req=request.args, params=['cid']).required()
cid = request.args['cid']
2022-05-30 16:56:01 +08:00
impl = RatingImpl()
2022-05-27 14:45:15 +08:00
result = impl.before_create(cid=cid)
return {"info": "评级选择", "result": result}
2022-06-15 10:09:03 +08:00
except APIReturnError as e:
return {"info": e.__str__()}, e.status_code
2022-05-27 14:45:15 +08:00
2022-05-26 17:15:30 +08:00
@rating_route.route('/create', methods=['GET'])
@verify_token
def create_routes(**kwargs):
"""新建评级"""
try:
2022-06-15 10:09:03 +08:00
RouteParamsCheck(req=request.args, params=['cid', 'report_date']).required()
cid = request.args['cid']
report_date = request.args['report_date']
2022-05-30 16:56:01 +08:00
impl = RatingImpl()
2022-05-31 17:08:01 +08:00
result, info = impl.create(cid=cid, report_date=report_date)
return {"info": info, "result": result}
2022-05-26 17:15:30 +08:00
except AssertionError as e:
2022-05-27 14:45:15 +08:00
return {"info": e.__str__()}, 200
2022-05-26 17:15:30 +08:00
except AttrCheckError as e:
return {"info": e.__str__()}, 202
@rating_route.route('/financial_analysis', methods=['GET'])
@verify_token
def financial_analysis_routes(**kwargs):
"""财务分析"""
2022-05-30 16:56:01 +08:00
try:
2022-06-01 14:51:12 +08:00
RouteParamsCheck(req=request.args, params=['rid', 'cid', 'report_date']).required()
2022-05-30 16:56:01 +08:00
rid = request.args['rid']
cid = request.args['cid']
report_date = request.args['report_date']
impl = RatingImpl()
2022-06-01 14:51:12 +08:00
result = impl.financial_analysis(rid=rid, cid=cid, report_date=report_date)
return {"info": "财务分析", "result": result}
2022-05-30 16:56:01 +08:00
except AssertionError as e:
return {"info": e.__str__()}, 200
except AttrCheckError as e:
2022-06-09 11:22:56 +08:00
return {"info": "请求异常,请检查填入数据是否正确"}, 202
2022-05-30 16:56:01 +08:00
except APIReturnError as e:
2022-06-08 17:01:39 +08:00
return {"info": e.__str__()}, e.status_code
2022-05-30 16:56:01 +08:00
2022-05-26 17:15:30 +08:00
@rating_route.route('/risk_analysis', methods=['GET'])
@verify_token
def risk_analysis_route(**kwargs):
"""风险分析"""
2022-06-13 15:36:49 +08:00
try:
RouteParamsCheck(req=request.args, params=['cid', 'report_date']).required()
cid = request.args["cid"]
report_date = request.args["report_date"]
impl = RatingImpl()
result = impl.risk_analysis(cid=cid, report_date=report_date)
return {"info": "风险分析", "result": result}
except APIReturnError as e:
return {"info": e.__str__()}, e.status_code
2022-06-01 17:04:14 +08:00
2022-05-26 17:15:30 +08:00
@rating_route.route('/score_and_rank', methods=['GET'])
@verify_token
def score_and_rank_route(**kwargs):
"""得分级别"""
2022-06-13 15:36:49 +08:00
try:
RouteParamsCheck(req=request.args, params=['rid']).required()
rid = request.args['rid']
impl = RatingImpl()
result = impl.score_and_rank(rid=rid)
return {"info": "得分级别", "result": result}
except APIReturnError as e:
return {"info": e.__str__()}, e.status_code
2022-06-06 16:58:08 +08:00
2022-05-26 17:15:30 +08:00
2022-06-15 03:51:24 +08:00
@rating_route.route('/report_data', methods=['GET'])
@verify_token
def report_data_route(**kwargs):
"""报告数据"""
rid = request.args['rid']
impl = RatingImpl()
result = impl.rank_report(rid=rid)
return {"info": "报告数据", "result": result}
2022-05-26 17:15:30 +08:00
@rating_route.route('/rank_report', methods=['GET'])
@verify_token
def rank_report_route(**kwargs):
"""评级报告"""
@rating_route.route('/submit', methods=['GET'])
@verify_token
def submit_route(**kwargs):
"""确认提交"""
2022-05-27 14:45:15 +08:00
@rating_route.route('/delete', methods=['GET'])
@verify_token
def delete_route(**kwargs):
"""删除评级(进行中)"""