增加财务指标得分计算接口

This commit is contained in:
王思川 2021-12-21 09:49:14 +08:00
parent 283e2f6a0d
commit 2c8adba8f2
3 changed files with 18 additions and 4 deletions

View File

@ -6,7 +6,7 @@ from Rating.scripts.financial_score import financial_score
from Rating.scripts.operating_score.Manufacturing import manufacturing from Rating.scripts.operating_score.Manufacturing import manufacturing
from Rating.scripts.risk_score import * from Rating.scripts.risk_score import *
from Rating.scripts.Indicators import * from Rating.scripts.Indicators import *
from common.scripts import read_json_file, file_path from common.scripts import read_json_file, file_path, sub_dict
class RatingModel: class RatingModel:
@ -137,7 +137,8 @@ class RatingModel:
industry = self.industry[1] industry = self.industry[1]
# main # main
elements.pop('年报期') # 计算指标分数前移除年报期字段 elements = sub_dict(elements, ['净资产收益率', '总资产报酬率', '总资产周转率', '存货周转率', '营业增长率', '总资产增长率', '应收账款周转率', '资产负债率', '已获利息倍数', '速动比率', '技术投入比率'])
# 计算指标分数前移除年报期字段
score = financial_score(industry, elements) score = financial_score(industry, elements)
return score return score
@ -227,5 +228,6 @@ class RatingModel:
if __name__ == '__main__': if __name__ == '__main__':
data = read_json_file(file_path('/static/test_data/demo01.json')) data = read_json_file(file_path('/static/test_data/demo01.json'))
model = RatingModel(data) model = RatingModel()
model.prepare_params(data)
# model.save_result() # model.save_result()

View File

@ -23,7 +23,7 @@ def general_model():
@rating_route.route('/financial_score', methods=['POST']) @rating_route.route('/financial_score', methods=['POST'])
@verify_token @verify_token
def financial_score(): def financial_score():
input_data = request.json['input_data'] input_data = request.json
try: try:
model = RatingModel() model = RatingModel()
model.industry = input_data['所属行业'] model.industry = input_data['所属行业']

View File

@ -49,3 +49,15 @@ def verify_token(func):
return {"info": "请求异常"}, 401 return {"info": "请求异常"}, 401
return func(*args, **kwargs) return func(*args, **kwargs)
return internal return internal
def sub_dict(param1, param2):
"""
获取字典的子集
Parameters:
param1: 原字典
param2: 子集字段
Returns:
子集
"""
return dict((key, value) for key, value in param1.items() if key in param2)