tfse-app-api-v0.2/esg_rating/EsgRatingRoute.py

90 lines
2.3 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 Utils.ErrorUtil import ReturnConditionCheckFailed
from esg_rating.EsgRatingImpl import EsgRatingImpl
from CompanyUser.CompanyUserAuth import verify_token
esg_route = Blueprint('esg', __name__)
@esg_route.route('/rating_records', methods=['GET'])
@verify_token
def rating_records(**kwargs):
"""
获取企业评价记录(esg)
Parameters:
cid 企业ID
Returns:
info 信息
result 记录
"""
try:
esg = EsgRatingImpl()
esg.cid = kwargs['cid']
result = esg.records()
status = 200 if result else 210
return {"info": "评价记录", "result": result}, status
except ReturnConditionCheckFailed as e:
e.log_error()
return {"info": e.__str__()}, e.status_code
@esg_route.route('/start_esg_rating', methods=['GET'])
@verify_token
def start_esg_rating_input(**kwargs):
"""
开始esg评价
Parameters:
cid 企业ID
Returns:
info 信息
result 记录
"""
try:
esg = EsgRatingImpl()
esg.cid = kwargs['cid']
info, result = esg.start_esg_rating_obj()
return {"info": info, "result": result}, 200
except ReturnConditionCheckFailed as e:
e.log_error()
return {"info": e.__str__()}, e.status_code
@esg_route.route('/save_esg_input_form', methods=['POST'])
@verify_token
def save_esg_input_form(**kwargs):
"""
保存综合填报数据
Parameters:
cid 企业ID
Returns:
info: 信息
"""
try:
esg = EsgRatingImpl()
esg.cid = kwargs['cid']
info = esg.save_input_general(request.json['input_form'])
return {"info": info}, 200
except ReturnConditionCheckFailed as e:
e.log_error()
return {"info": e.__str__()}, e.status_code
@esg_route.route('/submit_esg_rating_input', methods=['GET'])
@verify_token
def submit_general_rating_input(**kwargs):
"""
提交填报数据开始esg评价
Parameters:
cid 企业ID
Returns:
res: desc
"""
try:
esg = EsgRatingImpl()
esg.cid = kwargs['cid']
info, status = esg.exec_esg_rating()
return {"info": info}, status
except ReturnConditionCheckFailed as e:
e.log_error()
return {"info": e.__str__()}, e.status_code