tfse-app-api-v0.2/CompanyObject/CompanyImpl.py

96 lines
3.2 KiB
Python

from CompanyObject.CompanyObj import Company, HeadInfo
from DBHelper.MongoHelper import MongoHelper
class CompanyImpl(Company):
"""企业实现类"""
db = MongoHelper("tfse_v0.21")
def get_head_info(self):
"""企业主要 头部信息"""
verify_status = self.db.find_single_column(
"应用端",
"企业用户",
{"企业ID": self.cid},
"已认证"
)
company_data = self.db.find_single_data(
"企业数据",
"企业数据_更新汇总",
{"企业ID": self.cid},
["企业名称", "综信评价结果", "ESG评价结果"]
)
head_info = HeadInfo()
head_info.name = company_data['企业名称']
head_info.verify_status = "已认证" if verify_status == "" else "未认证"
latest_cc_rating = HeadInfo.LatestCCRating()
latest_esg_rating = HeadInfo.LatestESGRating()
if company_data.__contains__('综信评价结果'):
cc_rating = company_data['综信评价结果']
latest_cc_rating.level = cc_rating['信用等级']
latest_cc_rating.score = str(cc_rating['信用评分'])
latest_cc_rating.rating_time = cc_rating['评价时间']
else:
latest_cc_rating.level = None
latest_cc_rating.score = None
latest_cc_rating.rating_time = None
if company_data.__contains__('ESG评价结果'):
esg_rating = company_data['ESG评价结果']
latest_esg_rating.level = esg_rating['评价等级']
latest_esg_rating.score = esg_rating['ESG得分']
latest_esg_rating.rating_time = esg_rating['评价时间']
else:
latest_esg_rating.level = None
latest_esg_rating.score = None
latest_esg_rating.rating_time = None
head_info.latest_cc_rating = latest_cc_rating
head_info.latest_esg_rating = latest_esg_rating
return head_info.dict_to_show()
def get_basic_info(self):
"""企业主要 基本信息"""
data = self.db.find_single_data(
"企业数据",
"企业数据_更新汇总",
{"企业ID": self.cid},
["更新时间", "企业名称", "工商信息", "股东信息", "主要成员"]
)
result = {
"企业名称": data['企业名称'],
"工商信息": data['工商信息'],
"股东信息": data['股东信息'],
"主要成员": data['主要成员'],
"更新时间": data['更新时间']['工商信息']
}
return result
def get_industry_analysis(self):
"""企业主页 行业分析"""
industry = self.db.find_single_column(
"企业数据",
"企业数据_更新汇总",
{"企业ID": self.cid},
"一级行业"
)
result = self.db.find_single_data(
"行业数据",
"行业分析",
{"行业": industry},
["行业", "行业简介", "更新时间", "正面因素", "负面因素", "增长趋势", "规模分布"]
)
return result if result else {}