287 lines
7.2 KiB
Python
287 lines
7.2 KiB
Python
from flask import Blueprint, request
|
|
from common.APIAuth import api_secret
|
|
from Manage.rating.Rating import Rating
|
|
from user.user_auth import verify_token, authority_scope
|
|
|
|
rating_route = Blueprint('rating', __name__)
|
|
|
|
|
|
@rating_route.route('/search', methods=['POST'])
|
|
@verify_token
|
|
@authority_scope(['admin', 'developer', 'analysts', 'operator'])
|
|
def search_rating(**kwargs):
|
|
"""
|
|
企业评价记录搜索
|
|
Parameters:
|
|
-
|
|
Returns:
|
|
info: 返回信息
|
|
result: 返回数据
|
|
"""
|
|
rating = Rating()
|
|
rating.query = request.json['query']
|
|
skip = request.json['skip']
|
|
limit = request.json['limit']
|
|
data = rating.search_rating(skip, limit)
|
|
return {"info": '查询成功', "result": data}, 200
|
|
|
|
|
|
@rating_route.route('/rating_result', methods=['POST'])
|
|
@api_secret
|
|
def rating_result():
|
|
"""
|
|
查询评价结果
|
|
Parameters:
|
|
-
|
|
Returns:
|
|
info: 返回信息
|
|
result: 返回数据
|
|
"""
|
|
try:
|
|
rating = Rating()
|
|
rating.rid = request.json['rid']
|
|
data = rating.search_rating_result()
|
|
return {"info": '查询成功', "result": data}, 200
|
|
except KeyError:
|
|
return {"info": "键值错误"}, 400
|
|
except TypeError:
|
|
return {"info": "参数错误"}, 400
|
|
|
|
|
|
@rating_route.route('/details', methods=['POST'])
|
|
@api_secret
|
|
def fill_details():
|
|
"""
|
|
查看填报详情信息
|
|
Parameters:
|
|
-
|
|
Returns:
|
|
info: 返回信息
|
|
result: 返回数据
|
|
"""
|
|
try:
|
|
rating = Rating()
|
|
rating.rid = request.json['rid']
|
|
data = rating.search_fill_details()
|
|
return {"info": '查询成功', "result": data}, 200
|
|
except KeyError:
|
|
return {"info": "键值错误"}, 400
|
|
except TypeError:
|
|
return {"info": "参数错误"}, 400
|
|
|
|
|
|
@rating_route.route('/risk', methods=['POST'])
|
|
@api_secret
|
|
def risk_info():
|
|
"""
|
|
查看风险数据信息
|
|
Parameters:
|
|
-
|
|
Returns:
|
|
info: 返回信息
|
|
result: 返回数据
|
|
"""
|
|
try:
|
|
rating = Rating()
|
|
rating.rid = request.json['rid']
|
|
data = rating.search_risk_info()
|
|
return {"info": '查询成功', "result": data}, 200
|
|
except KeyError:
|
|
return {"info": "键值错误"}, 400
|
|
except TypeError:
|
|
return {"info": "参数错误"}, 400
|
|
|
|
|
|
@rating_route.route('/get_report_text_model', methods=['POST'])
|
|
@verify_token
|
|
def get_report_text_model_route(**kwargs):
|
|
"""
|
|
查看报告text_model
|
|
"""
|
|
rating = Rating()
|
|
rating.rid = request.json['rid']
|
|
result = rating.get_report_text_model()
|
|
return {"info": "查询成功", "result": result}, 200
|
|
|
|
|
|
@rating_route.route('/report_edit_save_delete', methods=['POST'])
|
|
@verify_token
|
|
def report_edit_save_delete(**kwargs):
|
|
"""
|
|
报告编辑、保存、删除操作
|
|
Parameters:
|
|
-
|
|
Returns:
|
|
info: 生成结果
|
|
"""
|
|
try:
|
|
def edit():
|
|
info = rating.report_edit(text_model)
|
|
return info
|
|
|
|
def delete():
|
|
info = rating.report_delete()
|
|
return info
|
|
|
|
def create():
|
|
info = rating.report_create()
|
|
return info
|
|
|
|
rating = Rating()
|
|
rating.rid = request.json['rid']
|
|
rating.cid = request.json['cid']
|
|
text_model = request.json['text_model']
|
|
step_01 = edit()
|
|
if step_01:
|
|
step_02 = delete()
|
|
if step_02:
|
|
step_03 = create()
|
|
return step_03
|
|
else:
|
|
return {"info": "删除失败"}
|
|
else:
|
|
return {"info": "此公司不存在报告数据"}
|
|
except KeyError:
|
|
return {"info": "键值错误"}, 400
|
|
except TypeError:
|
|
return {"info": "参数错误"}, 400
|
|
|
|
|
|
@rating_route.route('/get_company_process', methods=['POST'])
|
|
@api_secret
|
|
def get_company_process():
|
|
"""
|
|
获取评测流程
|
|
Parameters:
|
|
-
|
|
Returns:
|
|
result dict 流程数据
|
|
"""
|
|
rating = Rating()
|
|
rating.rid = request.json['rid']
|
|
rating.cid = request.json['cid']
|
|
rating.types = request.json['types']
|
|
info = rating.get_company_process()
|
|
status = 200 if info else 210
|
|
return {"info": info}, status
|
|
|
|
|
|
@rating_route.route('/esg_rating_result', methods=['POST'])
|
|
@api_secret
|
|
def esg_rating_result():
|
|
"""
|
|
查询esg评价结果
|
|
Parameters:
|
|
-
|
|
Returns:
|
|
info: 返回信息
|
|
result: 返回数据
|
|
"""
|
|
try:
|
|
rating = Rating()
|
|
rating.rid = request.json['rid']
|
|
data = rating.search_esg_rating_result()
|
|
return {"info": '查询成功', "result": data}, 200
|
|
except KeyError:
|
|
return {"info": "键值错误"}, 400
|
|
except TypeError:
|
|
return {"info": "参数错误"}, 400
|
|
|
|
|
|
@rating_route.route('/esg_details', methods=['POST'])
|
|
@api_secret
|
|
def esg_fill_details():
|
|
"""
|
|
查看ESG填报详情信息
|
|
Parameters:
|
|
-
|
|
Returns:
|
|
info: 返回信息
|
|
result: 返回数据
|
|
"""
|
|
try:
|
|
rating = Rating()
|
|
rating.rid = request.json['rid']
|
|
data = rating.search_esg_fill_details()
|
|
return {"info": '查询成功', "result": data}, 200
|
|
except KeyError:
|
|
return {"info": "键值错误"}, 400
|
|
except TypeError:
|
|
return {"info": "参数错误"}, 400
|
|
|
|
|
|
@rating_route.route('/esg_risk', methods=['POST'])
|
|
@api_secret
|
|
def esg_risk_info():
|
|
"""
|
|
查看ESG风险数据信息
|
|
Parameters:
|
|
-
|
|
Returns:
|
|
info: 返回信息
|
|
result: 返回数据
|
|
"""
|
|
try:
|
|
rating = Rating()
|
|
rating.rid = request.json['rid']
|
|
data = rating.search_esg_risk_info()
|
|
return {"info": '查询成功', "result": data}, 200
|
|
except KeyError:
|
|
return {"info": "键值错误"}, 400
|
|
except TypeError:
|
|
return {"info": "参数错误"}, 400
|
|
|
|
|
|
@rating_route.route('/get_esg_report_text', methods=['POST'])
|
|
@api_secret
|
|
def get_esg_report_text_route(**kwargs):
|
|
"""
|
|
查看ESG报告text_model
|
|
"""
|
|
rating = Rating()
|
|
rating.rid = request.json['rid']
|
|
result = rating.get_esg_report_text()
|
|
return {"info": "查询成功", "result": result}, 200
|
|
|
|
|
|
@rating_route.route('/esg_report_edit_save_delete', methods=['POST'])
|
|
@api_secret
|
|
def esg_report_edit_save_delete(**kwargs):
|
|
"""
|
|
ESG报告编辑、保存、删除操作
|
|
Parameters:
|
|
-
|
|
Returns:
|
|
info: 生成结果
|
|
"""
|
|
try:
|
|
def edit():
|
|
info = rating.esg_report_edit(text_model)
|
|
return info
|
|
|
|
def delete():
|
|
info = rating.esg_report_delete()
|
|
return info
|
|
|
|
def create():
|
|
info = rating.esg_report_create()
|
|
return info
|
|
|
|
rating = Rating()
|
|
rating.rid = request.json['rid']
|
|
rating.cid = request.json['cid']
|
|
text_model = request.json['text_model']
|
|
step_01 = edit()
|
|
if step_01:
|
|
step_02 = delete()
|
|
if step_02:
|
|
step_03 = create()
|
|
return step_03
|
|
else:
|
|
return {"info": "删除失败"}
|
|
else:
|
|
return {"info": "此公司不存在报告数据"}
|
|
except KeyError:
|
|
return {"info": "键值错误"}, 400
|
|
except TypeError:
|
|
return {"info": "参数错误"}, 400 |