This commit is contained in:
P3ngSaM 2022-06-16 20:37:35 +08:00
commit 8361b38d7c
4 changed files with 95 additions and 30 deletions

View File

@ -4,10 +4,26 @@ from Utils.CommonUtil import trans_fields_name
class DashBoardImpl(object):
@staticmethod
def static_all_country(**kwargs):
items = DB_GUA.find_data_with_aggregate(
"评级数据",
"评级记录",
[
{'$match': {'评级状态': "完成"}},
{'$group': {'_id': "$所在省份", 'count': {'$sum': 1}}}
]
)
result = list()
for item in items:
result.append({"省份": item['_id'], "数量": item["count"]})
return result
@staticmethod
def static_by_province(**kwargs):
province = kwargs["province"]
province = kwargs["province"] + ""
page_size = kwargs["page_size"]
page_no = kwargs["page_no"]
@ -72,6 +88,22 @@ class DashBoardImpl(object):
return result
@staticmethod
def rank_levels_distribute(**kwargs):
items = DB_GUA.find_data_with_aggregate(
"评级数据",
"评级记录",
[
{'$match': {'评级状态': "完成"}},
{'$group': {'_id': "$信用级别", 'count': {'$sum': 1}}}
]
)
result = list()
for item in items:
result.append({item['_id']: item["count"]})
return result
@staticmethod
def latest_rating_result(**kwargs):

View File

@ -57,33 +57,28 @@ def statistics_route(**kwargs):
@board_route.route('/distribute')
@verify_token
def distribute_route(**kwargs):
""""""
"""信用级别分布"""
demo_data = {
"info": "查询成功",
"result": [
{
"AAA": 3
},
{
"AA+": 8
},
{
"AA": 4
},
{
"AA-": 8
},
{
"A+": 5
}
]
}
return demo_data
try:
impl = DashBoardImpl()
result = impl.rank_levels_distribute()
return {"info": "信用级别分布", "result": result}
except APIReturnError as e:
return {"info": e.__str__()}, e.status_code
@board_route.route('/map/province')
@board_route.route('/map/country', methods=['GET'])
@verify_token
def map_country_route(**kwargs):
try:
impl = DashBoardImpl()
result = impl.static_all_country()
return {"info": "评级结果地图(全国)", "result": result}
except APIReturnError as e:
return {"info": e.__str__()}, e.status_code
@board_route.route('/map/province', methods=['GET'])
@verify_token
def map_province_route(**kwargs):
"""评级结果地图(省份)"""
@ -104,7 +99,7 @@ def map_province_route(**kwargs):
return {"info": e.__str__()}, e.status_code
@board_route.route('/map/city')
@board_route.route('/map/city', methods=['GET'])
@verify_token
def map_city_route(**kwargs):
"""评级结果地图(省份)"""
@ -123,4 +118,3 @@ def map_city_route(**kwargs):
return result
except APIReturnError as e:
return {"info": e.__str__()}, e.status_code

View File

@ -274,7 +274,6 @@ class RatingImpl(object):
@staticmethod
def score_and_rank(**kwargs):
""""""
rid = kwargs["rid"]
@ -478,9 +477,35 @@ class RatingImpl(object):
return file_id if file_id else False
@staticmethod
def submit(**kwargs):
""""""
def confirm(**kwargs):
rid = kwargs["rid"]
result = DB_GUA.find_single_data(
"评级数据",
"得分级别",
{"评级ID": rid},
["信用得分", "信用级别"]
)
record = DB_GUA.find_single_data(
"评级数据",
"评级记录",
{"评级ID": rid},
["企业名称", "评级ID", "企业ID", "评级报告"]
)
item = {
"企业名称": record["企业名称"],
"评级ID": record["评级ID"],
"企业ID": record["企业ID"],
"信用级别": result["信用级别"],
"评级报告": "/admin/file/credit_report?file_id={}".format(record["评级报告"])
}
return item
@staticmethod
def submit(**kwargs):
rid = kwargs["rid"]
item = DB_GUA.find_single_data(

View File

@ -131,6 +131,20 @@ def rank_report_route(**kwargs):
return {"info": e.__str__()}, e.status_code
@rating_route.route('/confirm', methods=['GET'])
@verify_token
def confirm_route(**kwargs):
"""评级结果信息"""
try:
RouteParamsCheck(req=request.args, params=["rid"]).required()
rid = request.args["rid"]
impl = RatingImpl()
result = impl.confirm(rid=rid)
return {"info": "评级结果信息", "result": result}
except APIReturnError as e:
return {"info": e.__str__()}, e.status_code
@rating_route.route('/submit', methods=['GET'])
@verify_token
def submit_route(**kwargs):