from flask import Blueprint, request from Manage.Ratings.Implements.SearchRatingApiImpl import SearchRatingApiImpl from Utils.ErrorUtil import ReturnConditionCheckFailed 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: 返回数据 """ try: req = request.json search_body_impl = SearchRatingApiImpl() search_body = search_body_impl.SearchBody() sort_body = search_body_impl.SortBody() search = req['search'] if req.__contains__('search') else {} sort = req['sort'] if req.__contains__('sort') else {} if search.__contains__('企业ID'): search_body.cid = search['企业ID'] if search.__contains__('评价ID'): search_body.rid = search['评价ID'] if search.__contains__('企业名称'): search_body.name = search['企业名称'] if search.__contains__('评价项目'): search_body.project = search['评价项目'] if search.__contains__('评价方式'): search_body.method = search['评价方式'] if search.__contains__('进行状态'): search_body.status = search['进行状态'] if search.__contains__('评价结果'): search_body.result = search['评价结果'] if search.__contains__('评价时间'): search_body.time = search['评价时间'] if sort != {}: sort_body.field = list(sort.keys())[0] sort_body.sort = list(sort.values())[0] search_body_impl.search = search_body search_body_impl.sort = sort_body search_body_impl.page_size = req['page_size'] search_body_impl.page_no = req['page_no'] result = search_body_impl.conditions_search() return {"info": '查询结果', "result": result}, 200 except ReturnConditionCheckFailed as e: return {"info": e.failed_info}, e.status_code except KeyError: return {"info": "参数异常"}, 400 @rating_route.route('/rating_result', methods=['POST']) @verify_token @authority_scope(['admin', 'developer', 'analysts', 'operator']) def rating_result(**kwargs): """ 查询评价结果 Parameters: - Returns: info: 返回信息 result: 返回数据 """ try: search_body_impl = SearchRatingApiImpl() search_body = search_body_impl.SearchBody() search_body.rid = request.json['rid'] search_body_impl.search = search_body result = search_body_impl.result_search() return {"info": '查询成功', "result": result}, 200 except ReturnConditionCheckFailed as e: e.log_error() return {"info": e.failed_info}, e.status_code except KeyError: return {"info": "参数异常"}, 400 @rating_route.route('/get_company_process', methods=['POST']) @verify_token @authority_scope(['admin', 'developer', 'analysts', 'operator']) def get_company_process(**kwargs): """ 获取评测流程 Parameters: - Returns: result dict 流程数据 """ try: search_body_impl = SearchRatingApiImpl() search_body = search_body_impl.SearchBody() search_body.rid = request.json['rid'] search_body_impl.search = search_body result = search_body_impl.process_search() return {"info": result}, 200 except ReturnConditionCheckFailed as e: e.log_error() return {"info": e.failed_info}, e.status_code except KeyError: return {"info": "参数异常"}, 400 @rating_route.route('/details', methods=['POST']) @verify_token @authority_scope(['admin', 'developer', 'analysts', 'operator']) def fill_details(**kwargs): """ 查看填报详情信息 Parameters: - Returns: result dict 流程数据 """ try: search_body_impl = SearchRatingApiImpl() search_body = search_body_impl.SearchBody() search_body.rid = request.json['rid'] search_body_impl.search = search_body result = search_body_impl.detail_search() return {"info": "查询成功", "result": result}, 200 except ReturnConditionCheckFailed as e: e.log_error() return {"info": e.failed_info}, e.status_code except KeyError: return {"info": "参数异常"}, 400 @rating_route.route('/risk', methods=['POST']) @verify_token @authority_scope(['admin', 'developer', 'analysts', 'operator']) def risk_info(**kwargs): """ 查询风险数据 Parameters: - Returns: result dict 流程数据 """ try: search_body_impl = SearchRatingApiImpl() search_body = search_body_impl.SearchBody() search_body.rid = request.json['rid'] search_body_impl.search = search_body result = search_body_impl.risk_search() return {"info": "查询成功", "result": result}, 200 except ReturnConditionCheckFailed as e: e.log_error() return {"info": e.failed_info}, e.status_code except KeyError: return {"info": "参数异常"}, 400 @rating_route.route('/report_data', methods=['POST']) @verify_token @authority_scope(['admin', 'developer', 'analysts', 'operator']) def report_data(**kwargs): """ 查看报告数据 Parameters: - Returns: result dict 流程数据 """ try: search_body_impl = SearchRatingApiImpl() search_body = search_body_impl.SearchBody() search_body.rid = request.json['rid'] search_body_impl.search = search_body result = search_body_impl.report_search() return {"info": "查询成功", "result": result}, 200 except ReturnConditionCheckFailed as e: e.log_error() return {"info": e.failed_info}, e.status_code except KeyError: return {"info": "参数异常"}, 400 @rating_route.route('/report_revise', methods=['POST']) @verify_token @authority_scope(['admin', 'developer', 'analysts', 'operator']) def report_revise(**kwargs): """ 报告编辑、保存、删除操作 Parameters: - Returns: result dict 生成结果 """ try: search_body_impl = SearchRatingApiImpl() search_body = search_body_impl.SearchBody() search_body.rid = request.json['rid'] text_model = request.json['text_model'] search_body_impl.search = search_body result = search_body_impl.report_revise(text_model) return result except ReturnConditionCheckFailed as e: e.log_error() return {"info": e.failed_info}, e.status_code except KeyError: return {"info": "参数异常"}, 400 @rating_route.route('/financial_index', methods=['POST']) @verify_token @authority_scope(['admin', 'developer', 'analysts', 'operator']) def financial_index(**kwargs): """ 查看财指结果 Parameters: - Returns: result dict 财指结果 """ try: search_body_impl = SearchRatingApiImpl() search_body = search_body_impl.SearchBody() search_body.rid = request.json['rid'] search_body_impl.search = search_body result = search_body_impl.financial_search() return {"info": "查询成功", "result": result}, 200 except ReturnConditionCheckFailed as e: e.log_error() return {"info": e.failed_info}, e.status_code except KeyError: return {"info": "参数异常"}, 400 @rating_route.route('/comprehensive_credit_analysis', methods=['POST']) @verify_token @authority_scope(['admin', 'developer', 'analysts', 'operator']) def comprehensive_credit(**kwargs): """ 查看综合信用分析 Parameters: - Returns: result dict 财指结果 """ try: search_body_impl = SearchRatingApiImpl() search_body = search_body_impl.SearchBody() search_body.rid = request.json['rid'] search_body_impl.search = search_body result = search_body_impl.comprehensive_credit_search() return {"info": "查询成功", "result": result}, 200 except ReturnConditionCheckFailed as e: e.log_error() return {"info": e.failed_info}, e.status_code except KeyError: return {"info": "参数异常"}, 400 @rating_route.route('/business_risk_analysis', methods=['POST']) @verify_token @authority_scope(['admin', 'developer', 'analysts', 'operator']) def business_risk(**kwargs): """ 查看经营风险分析 Parameters: - Returns: result dict 财指结果 """ try: search_body_impl = SearchRatingApiImpl() search_body = search_body_impl.SearchBody() search_body.rid = request.json['rid'] search_body_impl.search = search_body result = search_body_impl.business_risk_search() return {"info": "查询成功", "result": result}, 200 except ReturnConditionCheckFailed as e: e.log_error() return {"info": e.failed_info}, e.status_code except KeyError: return {"info": "参数异常"}, 400 @rating_route.route('financial_elements_analysis', methods=['POST']) @verify_token @authority_scope(['admin', 'developer', 'analysts', 'operator']) def financial_elements(**kwargs): """ 查看财务要素分析 Parameters: - Returns: result dict 财指结果 """ try: search_body_impl = SearchRatingApiImpl() search_body = search_body_impl.SearchBody() search_body.rid = request.json['rid'] search_body_impl.search = search_body result = search_body_impl.financial_elements_search() return {"info": "查询成功", "result": result}, 200 except ReturnConditionCheckFailed as e: e.log_error() return {"info": e.failed_info}, e.status_code except KeyError: return {"info": "参数异常"}, 400 @rating_route.route('esg_evaluation_analysis', methods=['POST']) @verify_token @authority_scope(['admin', 'developer', 'analysts', 'operator']) def esg_evaluation(**kwargs): """ 查看财务要素分析 Parameters: - Returns: result dict 财指结果 """ try: search_body_impl = SearchRatingApiImpl() search_body = search_body_impl.SearchBody() search_body.rid = request.json['rid'] search_body_impl.search = search_body result = search_body_impl.esg_evaluation_search() return {"info": "查询成功", "result": result}, 200 except ReturnConditionCheckFailed as e: e.log_error() return {"info": e.failed_info}, e.status_code except KeyError: return {"info": "参数异常"}, 400