From 3e7cbb62c898668827e8683be5eaca9be539e819 Mon Sep 17 00:00:00 2001 From: P3ngSaM <61768364+P3ngSaM@users.noreply.github.com> Date: Sat, 7 May 2022 12:21:22 +0800 Subject: [PATCH] =?UTF-8?q?update=20=E6=96=B0=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Implements/Rating/CreditImpl.py | 36 +++++++++---------- Implements/Rating/EsgImpl.py | 22 ++++++------ Objects/InProject/Rating/process.py | 54 ++++++++++++++++++++++++++++- 3 files changed, 83 insertions(+), 29 deletions(-) diff --git a/Implements/Rating/CreditImpl.py b/Implements/Rating/CreditImpl.py index 1adce39..acb7530 100644 --- a/Implements/Rating/CreditImpl.py +++ b/Implements/Rating/CreditImpl.py @@ -7,7 +7,7 @@ from DBHelper.MongoHelper import MongoHelper from Objects.Common.Rating.FECRRating import RatingRecord from Objects.InProject.Rating.credit import CreditInputData, FinancialReport, BalanceSheet, \ IncomeSheet, AppendixDataSheet -from Objects.InProject.Rating.process import CreditProcess +from Objects.InProject.Rating.process import CreditProcess, CreditNewProcess from Objects.InProject.Rating.question import SingleChoiceQuestion, MultipleChoiceQuestion, FillInTheBlank from Utils.ErrorUtil import ReturnConditionCheckFailed @@ -265,17 +265,18 @@ class CreditRating(CreditInputData, CreditUtils): def prepare_process_template(): """根据数据模板生成新的评价流程数据""" - credit_process = CreditProcess() - credit_process.fill_in_questionnaire = 0 - credit_process.fill_in_financial_data = 0 - credit_process.clean_risk_data = 0 + credit_process = CreditNewProcess() + credit_process.fill_in_data = 0 + credit_process.risk_data = 0 credit_process.model_scoring = 0 + credit_process.rating_result = 0 + credit_process.financial_indicator_results = 0 credit_process.report_generation = 0 + credit_process.report_data = 0 credit_process.certificate_generation = 0 - credit_process.cc_evaluation_homepage = 0 - credit_process.fe_evaluation_homepage = 0 - credit_process.cr_analysis_homepage = 0 - credit_process.am_details_homepage = 0 + credit_process.comprehensive_credit_analysis = 0 + credit_process.business_risk_analysis = 0 + credit_process.financial_element_analysis = 0 process_template = dict() process_template['评价ID'] = new_rid process_template['企业ID'] = self.cid @@ -294,7 +295,7 @@ class CreditRating(CreditInputData, CreditUtils): data = json.dumps({"company_id": self.cid, "company_name": company_name, "evaluation_id": new_rid}) requests.post(url, headers=headers, data=data) # 风险数据清洗完成后更新流程状态 - self.update_process_status(new_rid, {"评价流程.清洗风险数据": 1}) + self.update_process_status(new_rid, {"评价流程.风险数据": 1}) def __main__(): prepare_input_template() @@ -470,10 +471,7 @@ class CreditRating(CreditInputData, CreditUtils): ['评价流程'] ) if process: - if process['评价流程']['问卷填报'] == 0: - self.update_process_status(rid['评价ID'], {"评价流程.问卷填报": 1}) - if process['评价流程']['财务数据填报'] == 0: - self.update_process_status(rid['评价ID'], {"评价流程.财务数据填报": 1}) + self.update_process_status(rid['评价ID'], {"评价流程.填报数据": 1}) handle_input_form() rating_input() @@ -582,11 +580,13 @@ class CreditRating(CreditInputData, CreditUtils): } res = requests.post(url, headers=headers, data=json.dumps(data)) if res.status_code == 200: - self.update_process_status(rid['评价ID'], {"评价流程.综合信用评价主页": 1}) - self.update_process_status(rid['评价ID'], {"评价流程.财务要素评价主页": 1}) - self.update_process_status(rid['评价ID'], {"评价流程.公司风险分析主页": 1}) + self.update_process_status(rid['评价ID'], {"评价流程.综合信用分析": 1}) + self.update_process_status(rid['评价ID'], {"评价流程.经营风险分析": 1}) + self.update_process_status(rid['评价ID'], {"评价流程.财务要素分析": 1}) else: - self.update_process_status(rid['评价ID'], {"评价流程.综合信用评价主页": -1}) + self.update_process_status(rid['评价ID'], {"评价流程.综合信用分析": -1}) + self.update_process_status(rid['评价ID'], {"评价流程.经营风险分析": -1}) + self.update_process_status(rid['评价ID'], {"评价流程.财务要素分析": -1}) raise ReturnConditionCheckFailed("生成主页数据失败", 200) def update_rating_records(): diff --git a/Implements/Rating/EsgImpl.py b/Implements/Rating/EsgImpl.py index 9dc8b4f..c703f53 100644 --- a/Implements/Rating/EsgImpl.py +++ b/Implements/Rating/EsgImpl.py @@ -8,7 +8,7 @@ from Objects.Common.Rating.FECRRating import RatingRecord from Objects.InProject.Rating.esg import EnvironmentQuestionnaire, ThreeYearDataByE, OtherTypeDataByE, \ ThreeYearDataByS, SocietyQuestionnaire, OtherTypeDataByS, ThreeYearDataByG, GovernanceQuestionnaire, \ OtherTypeDataByG, EsgInputData -from Objects.InProject.Rating.process import EsgProcess +from Objects.InProject.Rating.process import EsgProcess, EsgNewProcess from Utils.ErrorUtil import ReturnConditionCheckFailed @@ -275,13 +275,15 @@ class EsgRating(EsgInputData, CreditUtils): def prepare_process_template(): """根据数据模板生成新的评价流程数据""" - credit_process = EsgProcess() - credit_process.data_filling = 0 - credit_process.clean_risk_data = 0 + credit_process = EsgNewProcess() + credit_process.fill_in_data = 0 + credit_process.risk_data = 0 credit_process.model_scoring = 0 + credit_process.rating_result = 0 + credit_process.report_data = 0 credit_process.report_generation = 0 - credit_process.certificate_generation = 0 - credit_process.esg_data_homepage = 0 + credit_process.esg_evaluation_analysis = 0 + credit_process.fill_in_data = 0 process_template = dict() process_template['评价ID'] = new_rid process_template['企业ID'] = self.cid @@ -300,7 +302,7 @@ class EsgRating(EsgInputData, CreditUtils): data = json.dumps({"company_id": self.cid, "company_name": company_name, "evaluation_id": new_rid}) requests.post(url, headers=headers, data=data) # 风险数据清洗完成后更新流程状态 - self.update_process_status(new_rid, {"评价流程.清洗风险数据": 1}) + self.update_process_status(new_rid, {"评价流程.风险数据": 1}) def __main__(): prepare_input_template() @@ -499,7 +501,7 @@ class EsgRating(EsgInputData, CreditUtils): rid, input_data ) - self.update_process_status(rid['评价ID'], {"评价流程.数据填报": 1}) + self.update_process_status(rid['评价ID'], {"评价流程.填报数据": 1}) def __main__(): handle_input_form() @@ -607,9 +609,9 @@ class EsgRating(EsgInputData, CreditUtils): } res = requests.post(url, headers=headers, data=json.dumps(data)) if res.status_code == 200: - self.update_process_status(rid['评价ID'], {"评价流程.主页ESG数据生成": 1}) + self.update_process_status(rid['评价ID'], {"评价流程.ESG评价分析": 1}) else: - self.update_process_status(rid['评价ID'], {"评价流程.主页ESG数据生成": -1}) + self.update_process_status(rid['评价ID'], {"评价流程.ESG评价分析": -1}) raise ReturnConditionCheckFailed("主页ESG数据生成失败", 200) def update_rating_records(): diff --git a/Objects/InProject/Rating/process.py b/Objects/InProject/Rating/process.py index f007573..8105e30 100644 --- a/Objects/InProject/Rating/process.py +++ b/Objects/InProject/Rating/process.py @@ -45,4 +45,56 @@ class EsgProcess(SpecObject): "report_generation": "报告生成", "certificate_generation": "证书生成", "esg_data_homepage": "主页ESG数据生成" - } \ No newline at end of file + } + + +class CreditNewProcess(SpecObject): + """综合信用评价流程数据(新)""" + fill_in_data = ValidateAttr(field='fill_in_data', type=int, in_list=[0, 1, -1]) + risk_data = ValidateAttr(field='risk_data', type=int, in_list=[0, 1, -1]) + model_scoring = ValidateAttr(field='model_scoring', type=int, in_list=[0, 1, -1]) + rating_result = ValidateAttr(field='rating_result', type=int, in_list=[0, 1, -1]) + financial_indicator_results = ValidateAttr(field='financial_indicator_results', type=int, in_list=[0, 1, -1]) + report_generation = ValidateAttr(field='report_generation', type=int, in_list=[0, 1, -1]) + report_data = ValidateAttr(field='report_data', type=int, in_list=[0, 1, -1]) + certificate_generation = ValidateAttr(field='certificate_generation', type=int, in_list=[0, 1, -1]) + comprehensive_credit_analysis = ValidateAttr(field='comprehensive_credit_analysis', type=int, in_list=[0, 1, -1]) + business_risk_analysis = ValidateAttr(field='business_risk_analysis', type=int, in_list=[0, 1, -1]) + financial_element_analysis = ValidateAttr(field='financial_element_analysis', type=int, in_list=[0, 1, -1]) + + fields_map = { + "fill_in_data": "填报数据", + "risk_data": "风险数据", + "model_scoring": "模型打分", + "rating_result": "评价结果", + "financial_indicator_results": "财指结果", + "report_generation": "报告生成", + "report_data": "报告数据", + "certificate_generation": "证书生成", + "comprehensive_credit_analysis": "综合信用分析", + "business_risk_analysis": "经营风险分析", + "financial_element_analysis": "财务要素分析" + } + + +class EsgNewProcess(SpecObject): + """ESG评价流程(新)""" + fill_in_data = ValidateAttr(field='fill_in_data', type=int, in_list=[0, 1, -1]) + risk_data = ValidateAttr(field='risk_data', type=int, in_list=[0, 1, -1]) + model_scoring = ValidateAttr(field='model_scoring', type=int, in_list=[0, 1, -1]) + rating_result = ValidateAttr(field='rating_result', type=int, in_list=[0, 1, -1]) + report_data = ValidateAttr(field='report_data', type=int, in_list=[0, 1, -1]) + report_generation = ValidateAttr(field='report_generation', type=int, in_list=[0, 1, -1]) + certificate_generation = ValidateAttr(field='certificate_generation', type=int, in_list=[0, 1, -1]) + esg_evaluation_analysis = ValidateAttr(field='esg_evaluation_analysis', type=int, in_list=[0, 1, -1]) + + fields_map = { + "fill_in_data": "填报数据", + "risk_data": "风险数据", + "model_scoring": "模型打分", + "rating_result": "评价结果", + "report_data": "报告数据", + "report_generation": "报告生成", + "certificate_generation": "证书生成", + "esg_evaluation_analysis": "ESG评价分析" + }