Merge branch 'ps_v5.5' into 'master'

update 新流程

See merge request root/tfse_app_api!47
This commit is contained in:
FECR-IBD 2022-05-07 06:34:37 +00:00
commit c74f88b67a
3 changed files with 83 additions and 29 deletions

View File

@ -7,7 +7,7 @@ from DBHelper.MongoHelper import MongoHelper
from Objects.Common.Rating.FECRRating import RatingRecord from Objects.Common.Rating.FECRRating import RatingRecord
from Objects.InProject.Rating.credit import CreditInputData, FinancialReport, BalanceSheet, \ from Objects.InProject.Rating.credit import CreditInputData, FinancialReport, BalanceSheet, \
IncomeSheet, AppendixDataSheet 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 Objects.InProject.Rating.question import SingleChoiceQuestion, MultipleChoiceQuestion, FillInTheBlank
from Utils.ErrorUtil import ReturnConditionCheckFailed from Utils.ErrorUtil import ReturnConditionCheckFailed
@ -265,17 +265,18 @@ class CreditRating(CreditInputData, CreditUtils):
def prepare_process_template(): def prepare_process_template():
"""根据数据模板生成新的评价流程数据""" """根据数据模板生成新的评价流程数据"""
credit_process = CreditProcess() credit_process = CreditNewProcess()
credit_process.fill_in_questionnaire = 0 credit_process.fill_in_data = 0
credit_process.fill_in_financial_data = 0 credit_process.risk_data = 0
credit_process.clean_risk_data = 0
credit_process.model_scoring = 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_generation = 0
credit_process.report_data = 0
credit_process.certificate_generation = 0 credit_process.certificate_generation = 0
credit_process.cc_evaluation_homepage = 0 credit_process.comprehensive_credit_analysis = 0
credit_process.fe_evaluation_homepage = 0 credit_process.business_risk_analysis = 0
credit_process.cr_analysis_homepage = 0 credit_process.financial_element_analysis = 0
credit_process.am_details_homepage = 0
process_template = dict() process_template = dict()
process_template['评价ID'] = new_rid process_template['评价ID'] = new_rid
process_template['企业ID'] = self.cid 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}) data = json.dumps({"company_id": self.cid, "company_name": company_name, "evaluation_id": new_rid})
requests.post(url, headers=headers, data=data) requests.post(url, headers=headers, data=data)
# 风险数据清洗完成后更新流程状态 # 风险数据清洗完成后更新流程状态
self.update_process_status(new_rid, {"评价流程.清洗风险数据": 1}) self.update_process_status(new_rid, {"评价流程.风险数据": 1})
def __main__(): def __main__():
prepare_input_template() prepare_input_template()
@ -470,10 +471,7 @@ class CreditRating(CreditInputData, CreditUtils):
['评价流程'] ['评价流程']
) )
if process: if process:
if process['评价流程']['问卷填报'] == 0: self.update_process_status(rid['评价ID'], {"评价流程.填报数据": 1})
self.update_process_status(rid['评价ID'], {"评价流程.问卷填报": 1})
if process['评价流程']['财务数据填报'] == 0:
self.update_process_status(rid['评价ID'], {"评价流程.财务数据填报": 1})
handle_input_form() handle_input_form()
rating_input() rating_input()
@ -582,11 +580,13 @@ class CreditRating(CreditInputData, CreditUtils):
} }
res = requests.post(url, headers=headers, data=json.dumps(data)) res = requests.post(url, headers=headers, data=json.dumps(data))
if res.status_code == 200: 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: 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) raise ReturnConditionCheckFailed("生成主页数据失败", 200)
def update_rating_records(): def update_rating_records():

View File

@ -8,7 +8,7 @@ from Objects.Common.Rating.FECRRating import RatingRecord
from Objects.InProject.Rating.esg import EnvironmentQuestionnaire, ThreeYearDataByE, OtherTypeDataByE, \ from Objects.InProject.Rating.esg import EnvironmentQuestionnaire, ThreeYearDataByE, OtherTypeDataByE, \
ThreeYearDataByS, SocietyQuestionnaire, OtherTypeDataByS, ThreeYearDataByG, GovernanceQuestionnaire, \ ThreeYearDataByS, SocietyQuestionnaire, OtherTypeDataByS, ThreeYearDataByG, GovernanceQuestionnaire, \
OtherTypeDataByG, EsgInputData OtherTypeDataByG, EsgInputData
from Objects.InProject.Rating.process import EsgProcess from Objects.InProject.Rating.process import EsgProcess, EsgNewProcess
from Utils.ErrorUtil import ReturnConditionCheckFailed from Utils.ErrorUtil import ReturnConditionCheckFailed
@ -275,13 +275,15 @@ class EsgRating(EsgInputData, CreditUtils):
def prepare_process_template(): def prepare_process_template():
"""根据数据模板生成新的评价流程数据""" """根据数据模板生成新的评价流程数据"""
credit_process = EsgProcess() credit_process = EsgNewProcess()
credit_process.data_filling = 0 credit_process.fill_in_data = 0
credit_process.clean_risk_data = 0 credit_process.risk_data = 0
credit_process.model_scoring = 0 credit_process.model_scoring = 0
credit_process.rating_result = 0
credit_process.report_data = 0
credit_process.report_generation = 0 credit_process.report_generation = 0
credit_process.certificate_generation = 0 credit_process.esg_evaluation_analysis = 0
credit_process.esg_data_homepage = 0 credit_process.fill_in_data = 0
process_template = dict() process_template = dict()
process_template['评价ID'] = new_rid process_template['评价ID'] = new_rid
process_template['企业ID'] = self.cid 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}) data = json.dumps({"company_id": self.cid, "company_name": company_name, "evaluation_id": new_rid})
requests.post(url, headers=headers, data=data) requests.post(url, headers=headers, data=data)
# 风险数据清洗完成后更新流程状态 # 风险数据清洗完成后更新流程状态
self.update_process_status(new_rid, {"评价流程.清洗风险数据": 1}) self.update_process_status(new_rid, {"评价流程.风险数据": 1})
def __main__(): def __main__():
prepare_input_template() prepare_input_template()
@ -499,7 +501,7 @@ class EsgRating(EsgInputData, CreditUtils):
rid, rid,
input_data input_data
) )
self.update_process_status(rid['评价ID'], {"评价流程.数据填报": 1}) self.update_process_status(rid['评价ID'], {"评价流程.填报数据": 1})
def __main__(): def __main__():
handle_input_form() handle_input_form()
@ -607,9 +609,9 @@ class EsgRating(EsgInputData, CreditUtils):
} }
res = requests.post(url, headers=headers, data=json.dumps(data)) res = requests.post(url, headers=headers, data=json.dumps(data))
if res.status_code == 200: if res.status_code == 200:
self.update_process_status(rid['评价ID'], {"评价流程.主页ESG数据生成": 1}) self.update_process_status(rid['评价ID'], {"评价流程.ESG评价分析": 1})
else: else:
self.update_process_status(rid['评价ID'], {"评价流程.主页ESG数据生成": -1}) self.update_process_status(rid['评价ID'], {"评价流程.ESG评价分析": -1})
raise ReturnConditionCheckFailed("主页ESG数据生成失败", 200) raise ReturnConditionCheckFailed("主页ESG数据生成失败", 200)
def update_rating_records(): def update_rating_records():

View File

@ -45,4 +45,56 @@ class EsgProcess(SpecObject):
"report_generation": "报告生成", "report_generation": "报告生成",
"certificate_generation": "证书生成", "certificate_generation": "证书生成",
"esg_data_homepage": "主页ESG数据生成" "esg_data_homepage": "主页ESG数据生成"
} }
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评价分析"
}