diff --git a/Rating/RatingModel.py b/Rating/RatingModel.py index 83f52d9..b365544 100644 --- a/Rating/RatingModel.py +++ b/Rating/RatingModel.py @@ -6,7 +6,7 @@ from Rating.scripts.financial_score import financial_score from Rating.scripts.operating_score.Manufacturing import manufacturing from Rating.scripts.risk_score 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: @@ -137,7 +137,8 @@ class RatingModel: industry = self.industry[1] # main - elements.pop('年报期') # 计算指标分数前移除年报期字段 + elements = sub_dict(elements, ['净资产收益率', '总资产报酬率', '总资产周转率', '存货周转率', '营业增长率', '总资产增长率', '应收账款周转率', '资产负债率', '已获利息倍数', '速动比率', '技术投入比率']) + # 计算指标分数前移除年报期字段 score = financial_score(industry, elements) return score @@ -227,5 +228,6 @@ class RatingModel: if __name__ == '__main__': data = read_json_file(file_path('/static/test_data/demo01.json')) - model = RatingModel(data) + model = RatingModel() + model.prepare_params(data) # model.save_result() diff --git a/Rating/routes.py b/Rating/routes.py index cf1eaf4..00dd135 100644 --- a/Rating/routes.py +++ b/Rating/routes.py @@ -23,7 +23,7 @@ def general_model(): @rating_route.route('/financial_score', methods=['POST']) @verify_token def financial_score(): - input_data = request.json['input_data'] + input_data = request.json try: model = RatingModel() model.industry = input_data['所属行业'] diff --git a/common/scripts.py b/common/scripts.py index b57a638..cf8ff8d 100644 --- a/common/scripts.py +++ b/common/scripts.py @@ -49,3 +49,15 @@ def verify_token(func): return {"info": "请求异常"}, 401 return func(*args, **kwargs) 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) \ No newline at end of file