2022-05-05 14:45:06 +08:00
|
|
|
from Objects.Common.Company.FECRCompany import FinancialElementsAnalysis, OperatingRiskAnalysis, BasicBusinessInfo, \
|
|
|
|
CCRatingAnalysis, ESGRatingAnalysis
|
|
|
|
from Objects.Common.Industry.FECRIndustry import IndustryAnalysis
|
|
|
|
from Utils.ObjUtil import SpecObject
|
|
|
|
from Utils.ValidateUtil import ValidateAttr
|
2022-04-25 17:02:34 +08:00
|
|
|
|
|
|
|
|
|
|
|
class ThisFinancialElementsAnalysis(FinancialElementsAnalysis):
|
|
|
|
|
|
|
|
def dict_to_return(self, **kwargs):
|
|
|
|
_dict_ = self.dict_to_show(columns=["更新时间", "财报期", "财务得分年度比较", "财务得分同行比较", "财务得分较去年变化", "财务得分较同行差异", "指标详情"])
|
|
|
|
_dict_['财务得分年度比较'] = [{list(item.values())[0]: list(item.values())[1]} for item in _dict_['财务得分年度比较']]
|
|
|
|
_dict_['财务得分年度比较'] = {**_dict_['财务得分年度比较'][0], **_dict_['财务得分年度比较'][1]}
|
|
|
|
_dict_['指标详情'] = [list(item.values()) for item in _dict_['指标详情']]
|
|
|
|
return _dict_
|
|
|
|
|
|
|
|
|
|
|
|
class ThisOperatingRiskAnalysis(OperatingRiskAnalysis):
|
|
|
|
|
|
|
|
def dict_to_return(self):
|
|
|
|
_dict_ = self.dict_to_show(columns=["更新日期", "风险分数", "风险级别", "风险数量", "列入失信名单", "合规风险统计", "经营风险统计", "周边风险统计", "变更记录统计"])
|
2022-04-26 10:01:27 +08:00
|
|
|
_dict_["合规风险"] = _dict_.pop("合规风险统计")
|
|
|
|
_dict_["经营风险"] = _dict_.pop("经营风险统计")
|
|
|
|
_dict_["周边风险"] = _dict_.pop("周边风险统计")
|
|
|
|
_dict_["变更记录"] = _dict_.pop("变更记录统计")
|
2022-04-25 17:02:34 +08:00
|
|
|
return _dict_
|
|
|
|
|
|
|
|
|
|
|
|
class CompanyIndex(SpecObject):
|
|
|
|
"""企业主页"""
|
|
|
|
|
|
|
|
class HeadInfo(SpecObject):
|
|
|
|
"""企业主页头部信息"""
|
|
|
|
|
|
|
|
class LatestCCRating(SpecObject):
|
|
|
|
"""当前信用评价状态"""
|
|
|
|
level = ValidateAttr(field='level', type=str, default='N/A')
|
|
|
|
score = ValidateAttr(field='score', type=str, default='N/A')
|
|
|
|
rating_time = ValidateAttr(field='rating_time', type=str, default='N/A')
|
|
|
|
|
|
|
|
fields_map = {
|
|
|
|
"level": "信用等级",
|
|
|
|
"score": "信用评分",
|
|
|
|
"rating_time": "评价时间"
|
|
|
|
}
|
|
|
|
|
|
|
|
class LatestESGRating(SpecObject):
|
|
|
|
"""当前ESG评价状态"""
|
|
|
|
level = ValidateAttr(field='level', type=str, default='N/A')
|
|
|
|
score = ValidateAttr(field='score', type=str, default='N/A')
|
|
|
|
rating_time = ValidateAttr(field='rating_time', type=str, default='N/A')
|
|
|
|
|
|
|
|
fields_map = {
|
|
|
|
"level": "评价等级",
|
|
|
|
"score": "ESG得分",
|
|
|
|
"rating_time": "评价时间"
|
|
|
|
}
|
|
|
|
|
|
|
|
name = ValidateAttr(field='name', type=str)
|
|
|
|
industry = ValidateAttr(field='industry', type=str)
|
|
|
|
verify_status = ValidateAttr(field='verify_status', in_list=["是", "否"])
|
|
|
|
latest_cc_rating = ValidateAttr(field='latest_cc_rating', type=LatestCCRating)
|
|
|
|
latest_esg_rating = ValidateAttr(field='latest_esg_rating', type=LatestESGRating)
|
|
|
|
|
|
|
|
fields_map = {
|
|
|
|
"name": "企业名称",
|
|
|
|
"industry": "行业",
|
|
|
|
"verify_status": "企业认证",
|
|
|
|
"latest_cc_rating": "综合信用评价",
|
|
|
|
"latest_esg_rating": "ESG评价"
|
|
|
|
}
|
|
|
|
|
|
|
|
def dict_to_return(self, **kwargs):
|
|
|
|
_dict_ = self.dict_to_show()
|
|
|
|
_dict_['企业认证'] = "已认证" if _dict_['企业认证'] == "是" else "未认证"
|
|
|
|
|
|
|
|
return _dict_
|
|
|
|
|
|
|
|
cid = ValidateAttr(field='cid', type=str, length=8)
|
|
|
|
name = ValidateAttr(field='name', type=str)
|
2022-04-29 15:08:11 +08:00
|
|
|
industry = ValidateAttr(field='industry', type=str)
|
2022-04-25 17:02:34 +08:00
|
|
|
head_info = ValidateAttr(field='head_info', type=HeadInfo)
|
|
|
|
business_info = ValidateAttr(field='business_info', type=BasicBusinessInfo)
|
|
|
|
industry_analysis = ValidateAttr(field='industry_analysis', type=IndustryAnalysis)
|
|
|
|
cc_rating_analysis = ValidateAttr(field='cc_rating_analysis', type=CCRatingAnalysis)
|
|
|
|
esg_rating_analysis = ValidateAttr(field='esg_rating_analysis', type=ESGRatingAnalysis)
|
|
|
|
financial_analysis = ValidateAttr(field="financial_analysis", type=ThisFinancialElementsAnalysis)
|
|
|
|
operating_risk_analysis = ValidateAttr(field="operating_risk_analysis", type=OperatingRiskAnalysis)
|
|
|
|
|
|
|
|
fields_map = {
|
|
|
|
"cid": "企业ID",
|
|
|
|
"name": "企业名称",
|
2022-04-29 15:08:11 +08:00
|
|
|
"industry": "行业",
|
2022-04-25 17:02:34 +08:00
|
|
|
"head_info": "工商信息",
|
|
|
|
"business_info": "股东信息",
|
|
|
|
"industry_analysis": "主要成员",
|
|
|
|
"cc_rating_analysis": "综信评价结果",
|
|
|
|
"esg_rating_analysis": "ESG评价结果",
|
|
|
|
"financial_analysis": "财务要素分析",
|
|
|
|
"operating_risk_analysis": "经营风险分析",
|
|
|
|
}
|
|
|
|
|
|
|
|
def get_head_info(self):
|
|
|
|
"""获取 企业主页头部信息"""
|
|
|
|
|
|
|
|
def get_business_info(self):
|
|
|
|
"""获取 工商基本信息"""
|
|
|
|
|
2022-04-29 15:08:11 +08:00
|
|
|
def get_industry_type(self):
|
|
|
|
"""获取行业类型"""
|
|
|
|
|
2022-04-25 17:02:34 +08:00
|
|
|
def get_industry_analysis(self):
|
|
|
|
"""获取 行业分析数据"""
|
|
|
|
|
|
|
|
def get_cc_rating_analysis(self):
|
|
|
|
"""获取 综合信用评价"""
|
|
|
|
|
|
|
|
def get_esg_rating_analysis(self):
|
|
|
|
"""获取 ESG评价数据"""
|
|
|
|
|
|
|
|
def get_financial_analysis(self):
|
|
|
|
"""获取 财务要素评价"""
|
|
|
|
|
|
|
|
def get_operating_risk_analysis(self):
|
|
|
|
"""获取 公司风险分析"""
|