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.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():

View File

@ -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():

View File

@ -46,3 +46,55 @@ class EsgProcess(SpecObject):
"certificate_generation": "证书生成",
"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评价分析"
}