112 lines
4.1 KiB
Python
112 lines
4.1 KiB
Python
from common.scripts import read_json_file
|
|
from rating.scripts.common import industry_processing
|
|
from rating.scripts.esg.environment import *
|
|
from rating.scripts.esg.governance import *
|
|
from rating.scripts.esg.social import *
|
|
|
|
|
|
class EsgCleanModel:
|
|
"""
|
|
清洗ESG报告数据
|
|
Parameters:
|
|
param: 数据库数据
|
|
Returns:
|
|
result dict 清洗后满足条件的ESG报告数据
|
|
"""
|
|
def __init__(self, param):
|
|
# 企业名称
|
|
self.company = param['企业名称']
|
|
# 企业ID
|
|
self.cid = param['企业ID']
|
|
# 评价ID
|
|
self.rid = param['评价ID']
|
|
# 数据库数据
|
|
self.data = param
|
|
|
|
def paragraph_02(self):
|
|
# 段落2 远东资信
|
|
data = dict()
|
|
data['联系电话'] = '15912345678'
|
|
data['联系人'] = '贾丹'
|
|
return data
|
|
|
|
def paragraph_05(self):
|
|
# 段落5 基本信息
|
|
data = dict()
|
|
data['公司名称'] = self.data['企业名称']
|
|
data['所属行业'] = industry_processing(self.data['所属行业'])
|
|
return data
|
|
|
|
def paragraph_06(self):
|
|
# 段落6 公司esg等级
|
|
data = dict()
|
|
data['评价等级'] = self.data['评价等级']
|
|
return data
|
|
|
|
def environment(self):
|
|
# 段落7 环境部分
|
|
data = dict()
|
|
environment_co2_data = environment_co2(self.data)
|
|
data['段落3'] = environment_co2_data['part_01']
|
|
data['段落4'] = environment_co2_data['part_02']
|
|
environment_energy_data = environment_energy(self.data)
|
|
data['段落6'] = environment_energy_data['part_01']
|
|
data['段落7'] = environment_energy_data['part_02']
|
|
environment_standard_coal_data = environment_standard_coal(self.data)
|
|
data['段落8'] = environment_standard_coal_data['part_01']
|
|
data['段落9'] = environment_standard_coal_data['part_02']
|
|
environment_consume_water_data = environment_consume_water(self.data)
|
|
data['段落10'] = environment_consume_water_data['part_01']
|
|
data['段落11'] = environment_consume_water_data['part_02']
|
|
data['段落12'] = environment_green_business(self.data)
|
|
data['段落13'] = environment_punish(self.data)
|
|
return data
|
|
|
|
def social(self):
|
|
# 段落8 社会部分
|
|
data = dict()
|
|
social_turnover_salary_data = social_turnover_salary(self.data)
|
|
data['段落2'] = social_turnover_salary_data['part_01']
|
|
data['段落3'] = social_turnover_salary_data['part_02']
|
|
data['段落4'] = social_labor_disputes(self.data)
|
|
data['段落5'] = social_safety_accident(self.data)
|
|
social_training_return_data = social_training_return(self.data)
|
|
data['段落6'] = social_training_return_data['part_01']
|
|
data['段落7'] = social_training_return_data['part_02']
|
|
data['段落8'] = socail_poverty_alleviation(self.data)
|
|
data['段落9'] = socail_legal_proceedings(self.data)
|
|
return data
|
|
|
|
def governance(self):
|
|
# 段落9 公司治理部分
|
|
data = dict()
|
|
data['段落2'] = governance_board_directors(self.data)
|
|
data['段落3'] = governance_board_supervisors(self.data)
|
|
data['段落4'] = governance_professionalism(self.data)
|
|
data['段落5'] = governance_stability(self.data)
|
|
data['段落6'] = governance_meeting(self.data)
|
|
return data
|
|
|
|
def integrate_data(self):
|
|
data = dict()
|
|
data['远东资信'] = self.paragraph_02()
|
|
data['基本信息'] = self.paragraph_05()
|
|
data['公司ESG等级'] = self.paragraph_06()
|
|
data['环境部分'] = self.environment()
|
|
data['社会部分'] = self.social()
|
|
data['公司治理部分'] = self.governance()
|
|
return data
|
|
|
|
def storage_data(self):
|
|
data = dict()
|
|
data['评价ID'] = self.rid
|
|
data['企业ID'] = self.cid
|
|
data['企业名称'] = self.company
|
|
data['评价年度'] = self.data['评价年度']
|
|
data['报告模板'] = self.integrate_data()
|
|
return data
|
|
|
|
|
|
if __name__ == '__main__':
|
|
d = read_json_file('/rating/static/template_data.json')
|