From db532969752531af8c9c1a77e58810371e391008 Mon Sep 17 00:00:00 2001 From: P3ngSaM <61768364+P3ngSaM@users.noreply.github.com> Date: Fri, 11 Feb 2022 16:53:01 +0800 Subject: [PATCH] =?UTF-8?q?update=20ESG=E6=89=93=E5=88=86=E6=A8=A1?= =?UTF-8?q?=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Esg/EsgModel.py | 45 +++++ Esg/scripts/environmental.py | 343 ++++++++++++++++++++++++++++++++ Esg/scripts/governance.py | 211 ++++++++++++++++++++ Esg/scripts/social.py | 354 ++++++++++++++++++++++++++++++++++ Esg/static/__init__.py | 0 Esg/static/template_data.json | 153 +++++++++++++++ 6 files changed, 1106 insertions(+) create mode 100644 Esg/scripts/environmental.py create mode 100644 Esg/scripts/governance.py create mode 100644 Esg/scripts/social.py create mode 100644 Esg/static/__init__.py create mode 100644 Esg/static/template_data.json diff --git a/Esg/EsgModel.py b/Esg/EsgModel.py index b71d7bc..38ad95a 100644 --- a/Esg/EsgModel.py +++ b/Esg/EsgModel.py @@ -1,3 +1,7 @@ +from Esg.scripts.environmental import environmental_rating +from Esg.scripts.governance import governance_rating +from Esg.scripts.social import social_rating + class EsgModel: """ @@ -6,5 +10,46 @@ class EsgModel: def __init__(self): """ 初始化数据 + Parameters + param dict 数据模板 + questionnaire dict 填报问卷 + rid str 评价ID + cid str 企业ID + period str 评价年度 """ + self.questionnaire = None + self.company = None + self.rid = None self.cid = None + self.period = None + self.esg_score = None + + def prepare_params(self, param): + """ + 准备模型数据 + Parameters: + param dict 数据模板 + Returns: + - + """ + self.rid = param['评价ID'] + self.cid = param['企业ID'] + self.company = param['企业名称'] + self.period = param['评价年度'] + self.questionnaire = param['填报问卷'] + self.esg_score = self.esg_rating_scripts() + + def esg_rating_scripts(self): + """ + esg打分方法 + Parameters: + - + Returns: + score dict 分数 + """ + score = dict() + score['环境'] = environmental_rating(self.questionnaire) + score['社会责任'] = social_rating(self.questionnaire) + score['公司治理'] = governance_rating(self.questionnaire) + score['合计'] = sum(score.values()) + return score diff --git a/Esg/scripts/environmental.py b/Esg/scripts/environmental.py new file mode 100644 index 0000000..ece0b56 --- /dev/null +++ b/Esg/scripts/environmental.py @@ -0,0 +1,343 @@ +from common.scripts import read_json_file + + +def environmental_rating(param): + """ + 环境部分打分 + Parameters: + param dict 填报问卷 + Returns: + score float 环境部分得分 + """ + fraction = list() + + if calculation_09(param) == 'E=0': + score = 0 + else: + fraction.append(calculation_01(param)) + fraction.append(calculation_02(param)) + fraction.append(calculation_03(param)) + fraction.append(calculation_04(param)) + fraction.append(calculation_05(param)) + fraction.append(calculation_06(param)) + fraction.append(calculation_07(param)) + fraction.append(calculation_08(param)) + fraction.append(calculation_10(param)) + fraction.append(calculation_11(param)) + fraction.append(calculation_12(param)) + score = sum(fraction) + + return score + + +def calculation_01(param): + """ + 单位收入二氧化碳排放 + Parameters: + param dict 环境问卷 + Returns: + score int 得分 + """ + + def calculation_co2(data): + """ + 计算每年碳排放 + Parameters: + data dict 当前年公司能耗数据 + Returns: + result float 当年碳排放量 + """ + total = list() + total.append(round(data['原煤(千克)'] * 1.9003, 2)) + total.append(round(data['焦炭(千克)'] * 2.8604, 2)) + total.append(round(data['原油(升)'] * 0.86 * 3.0202, 2)) + total.append(round(data['燃料油(升)'] * 0.86 * 3.1705, 2)) + total.append(round(data['汽油(升)'] * 0.73 * 2.9251, 2)) + total.append(round(data['煤油(升)'] * 0.82 * 3.0179, 2)) + total.append(round(data['柴油(升)'] * 0.85 * 3.0959, 2)) + total.append(round(data['液化石油气(千克)'] * 3.1013, 2)) + total.append(round(data['天然气(立方米)'] * 2.1622, 2)) + total.append(round(data['煤气(立方米)'] * 0.7100, 2)) + total.append(round(data['电(千瓦时)'] * 0.6101, 2)) + amount = sum(total) + return amount + + year_2020 = calculation_co2(param['环境问卷']['近三年公司数据'][0]) + year_2019 = calculation_co2(param['环境问卷']['近三年公司数据'][1]) + year_2018 = calculation_co2(param['环境问卷']['近三年公司数据'][2]) + + factor_01 = ((year_2020/year_2018)**(1/2)-1) <= -0.04 and year_2018 >= year_2019 >= year_2020 + factor_02 = -0.04 < ((year_2020/year_2018)**(1/2)-1) <= -0.03 and year_2018 >= year_2019 >= year_2020 + factor_03 = -0.03 < ((year_2020/year_2018)**(1/2)-1) <= -0.02 and year_2018 >= year_2019 >= year_2020 + factor_04 = -0.02 < ((year_2020/year_2018)**(1/2)-1) <= 0.01 and year_2018 >= year_2019 >= year_2020 + factor_05 = -0.01 < ((year_2020/year_2018)**(1/2)-1) <= 0 and year_2018 >= year_2019 >= year_2020 + + if factor_01: + score = 15 + elif factor_02: + score = 12 + elif factor_03: + score = 9 + elif factor_04: + score = 6 + elif factor_05: + score = 3 + else: + score = 0 + + return score + + +def calculation_02(param): + """ + 单位收入的能耗 + Parameters: + param dict 环境问卷 + Returns: + score int 得分 + """ + def calculation_co2(data): + """ + 计算每年能耗 + Parameters: + data dict 当前年公司能耗数据 + Returns: + result float 当年碳排放量 + """ + total = list() + total.append(round(data['原煤(千克)'] * 20.9080, 2)) + total.append(round(data['焦炭(千克)'] * 28.4350, 2)) + total.append(round(data['原油(升)'] * 0.86 * 41.8160, 2)) + total.append(round(data['燃料油(升)'] * 0.86 * 41.8160, 2)) + total.append(round(data['汽油(升)'] * 0.73 * 43.0700, 2)) + total.append(round(data['煤油(升)'] * 0.82 * 43.0700, 2)) + total.append(round(data['柴油(升)'] * 0.85 * 42.6520, 2)) + total.append(round(data['液化石油气(千克)'] * 50.1790, 2)) + total.append(round(data['天然气(立方米)'] * 38.9310, 2)) + total.append(round(data['煤气(立方米)'] * 17.0000, 2)) + total.append(round(data['电(千瓦时)'] * 11.8400, 2)) + amount = sum(total) + return amount + + year_2020 = calculation_co2(param['环境问卷']['近三年公司数据'][0]) + year_2019 = calculation_co2(param['环境问卷']['近三年公司数据'][1]) + year_2018 = calculation_co2(param['环境问卷']['近三年公司数据'][2]) + + factor_01 = ((year_2020/year_2018)**(1/2)-1) <= -0.028 and year_2018 >= year_2019 >= year_2020 + factor_02 = -0.028 < ((year_2020/year_2018)**(1/2)-1) <= -0.02 and year_2018 >= year_2019 >= year_2020 + factor_03 = -0.02 < ((year_2020/year_2018)**(1/2)-1) <= -0.01 and year_2018 >= year_2019 >= year_2020 + factor_04 = -0.01 < ((year_2020/year_2018)**(1/2)-1) <= 0 and year_2018 >= year_2019 >= year_2020 + + if factor_01: + score = 11 + elif factor_02: + score = 8 + elif factor_03: + score = 5 + elif factor_04: + score = 2 + else: + score = 0 + + return score + + +def calculation_03(param): + """ + 单位收入的耗水 + Parameters: + param dict 环境问卷 + Returns: + score int 得分 + """ + year_2020 = param['环境问卷']['近三年公司数据'][0]['水(吨)'] + year_2019 = param['环境问卷']['近三年公司数据'][1]['水(吨)'] + year_2018 = param['环境问卷']['近三年公司数据'][2]['水(吨)'] + + factor_01 = ((year_2020/year_2018)**(1/2)-1) <= -0.01 and year_2018 >= year_2019 >= year_2020 + factor_02 = -0.01 < ((year_2020/year_2018)**(1/2)-1) <= 0 and year_2018 >= year_2019 >= year_2020 + + if factor_01: + score = 6 + elif factor_02: + score = 3 + else: + score = 0 + + return score + + +def calculation_04(param): + """ + 绿色业务收入占比(加分项) + Parameters: + param dict 环境问卷 + Returns: + score int 得分 + """ + income = param['公司收入'][0] + green_income = param['环境问卷']['近三年公司数据'][0]['绿色业务收入(万元)'] + prop = round(green_income / income, 2) + + if prop >= 50: + score = 10 + elif prop >= 30: + score = 6 + elif prop >= 10: + score = 3 + elif prop > 0: + score = 1 + else: + score = 0 + + return score + + +def calculation_05(param): + """ + 公司是否有温室气体减排目标 + Parameters: + param dict 环境问卷 + Returns: + score int 得分 + """ + answer = param['环境问卷']['其他类型问卷'][0] + + if answer[0] == '是' and answer[1] is not None: + score = 1 + else: + score = 0 + + return score + + +def calculation_06(param): + """ + 企业是否有节能目标 + Parameters: + param dict 环境问卷 + Returns: + score int 得分 + """ + answer = param['环境问卷']['其他类型问卷'][1] + + if answer[0] == '是' and answer[1] is not None: + score = 1 + else: + score = 0 + + return score + + +def calculation_07(param): + """ + 企业是否有节约用水目标 + Parameters: + param dict 环境问卷 + Returns: + score int 得分 + """ + answer = param['环境问卷']['其他类型问卷'][2] + + if answer[0] == '是' and answer[1] is not None: + score = 1 + else: + score = 0 + + return score + + +def calculation_08(param): + """ + 是否有绿色业务(加分项) + Parameters: + param dict 环境问卷 + Returns: + score int 得分 + """ + answer = param['环境问卷']['其他类型问卷'][3] + + if answer[0] == '是' and answer[1] is not None: + score = 2 + else: + score = 0 + + return score + + +def calculation_09(param): + """ + 近三年是否被环境或水务等监管部门处罚 + Parameters: + param dict 环境问卷 + Returns: + score int 得分 + """ + answer = param['环境问卷']['其他类型问卷'][4] + + if answer[0] == '是': + score = 'E=0' + else: + score = 0 + + return score + + +def calculation_10(param): + """ + 国家双碳目标对企业业务是否有不利影响(减分项) + Parameters: + param dict 环境问卷 + Returns: + score int 得分 + """ + answer = param['环境问卷']['其他类型问卷'][5] + + if answer[0] == '否': + score = -2 + else: + score = 0 + + return score + + +def calculation_11(param): + """ + 国家双碳目标对企业业务是否有有利影响(加分项) + Parameters: + param dict 环境问卷 + Returns: + score int 得分 + """ + answer = param['环境问卷']['其他类型问卷'][6] + + if answer[0] == '是' and answer[1] is not None: + score = 2 + else: + score = 0 + + return score + + +def calculation_12(param): + """ + 企业是否使用风电、光电、水电等清洁能源,是否使用清洁交通工具(加分项) + Parameters: + param dict 环境问卷 + Returns: + score int 得分 + """ + answer = param['环境问卷']['其他类型问卷'][7] + + if answer[0] == '是' and answer[1] is not None: + score = 3 + else: + score = 0 + + return score + + +if __name__ == '__main__': + data = read_json_file('/Esg/static/template_data.json') + E_score = environmental_rating(data) + print(E_score) diff --git a/Esg/scripts/governance.py b/Esg/scripts/governance.py new file mode 100644 index 0000000..bb05328 --- /dev/null +++ b/Esg/scripts/governance.py @@ -0,0 +1,211 @@ +from common.scripts import read_json_file + + +def governance_rating(param): + """ + 治理部分打分 + Parameters: + param dict 填报问卷 + Returns: + score float 治理部分得分 + """ + fraction = list() + + fraction.append(calculation_01(param)) + fraction.append(calculation_02(param)) + fraction.append(calculation_03(param)) + fraction.append(calculation_04(param)) + fraction.append(calculation_05(param)) + fraction.append(calculation_06(param)) + fraction.append(calculation_07(param)) + fraction.append(calculation_08(param)) + fraction.append(calculation_09(param)) + score = sum(fraction) + + return score + + +def calculation_01(param): + """ + 企业性质 + Parameters: + param dict 填报问卷 + Returns: + score int 得分 + """ + answer = param['治理问卷']['其他类型问卷'][0] + + if answer == 'A': + score = 8 + elif answer == 'B': + score = 3 + else: + score = 0 + + return score + + +def calculation_02(param): + """ + 公司是否设有董事会 + Parameters: + param dict 填报问卷 + Returns: + score int 得分 + """ + answer = param['治理问卷']['其他类型问卷'][5] + + if answer == '是': + score = 1 + else: + score = 0 + + return score + + +def calculation_03(param): + """ + 公司是否设有监事会 + Parameters: + param dict 填报问卷 + Returns: + score int 得分 + """ + answer = param['治理问卷']['其他类型问卷'][6] + + if answer == '是': + score = 1 + else: + score = 0 + + return score + + +def calculation_04(param): + """ + 董监高平均拥有的行业经验年数 + Parameters: + param dict 填报问卷 + Returns: + score int 得分 + """ + answer = param['治理问卷']['其他类型问卷'][1] + + if answer == 'A': + score = 4 + elif answer == 'B': + score = 2 + else: + score = 0 + + return score + + +def calculation_05(param): + """ + 董监高近三年离职率 + Parameters: + param dict 填报问卷 + Returns: + score int 得分 + """ + answer = param['治理问卷']['其他类型问卷'][2] / param['治理问卷']['其他类型问卷'][3] * 100 + + if answer < 35: + score = 4 + else: + score = 0 + + return score + + +def calculation_06(param): + """ + 公司近三年信息披露及时、可靠、完备、审计质量 + Parameters: + param dict 填报问卷 + Returns: + score int 得分 + """ + answer = param['治理问卷']['其他类型问卷'][7] + + if answer == '是': + score = 1 + else: + score = 0 + + return score + + +def calculation_07(param): + """ + 公司董事会近三年年均开会次数 + Parameters: + param dict 填报问卷 + Returns: + score int 得分 + """ + answer = param['治理问卷']['其他类型问卷'][4] + + if answer == 'A': + score = 3 + elif answer == 'B': + score = 1 + else: + score = 0 + + return score + + +def calculation_08(param): + """ + 净资产收益率 + Parameters: + param dict 填报问卷 + Returns: + score int 得分 + """ + data = param['治理问卷']['近三年公司数据'] + year_2020 = data[0]['公司净利润(万元)'] / data[0]['公司净资产(万元)'] * 100 + year_2019 = data[1]['公司净利润(万元)'] / data[1]['公司净资产(万元)'] * 100 + year_2018 = data[2]['公司净利润(万元)'] / data[2]['公司净资产(万元)'] * 100 + + average = (year_2020 + year_2019 + year_2018)/3 + + if average >= 15: + score = 6 + elif average >= 10: + score = 4 + elif average >= 8: + score = 2 + else: + score = 0 + + return score + + +def calculation_09(param): + """ + 公司是否有审计报告 + Parameters: + param dict 填报问卷 + Returns: + score int 得分 + """ + data = param['治理问卷']['近三年公司数据'] + year_2020 = data[0]['公司是否有审计报告'] + year_2019 = data[1]['公司是否有审计报告'] + year_2018 = data[2]['公司是否有审计报告'] + + if year_2020 == year_2019 == year_2018 == '是': + score = 2 + else: + score = 0 + + return score + + +if __name__ == '__main__': + data = read_json_file('/Esg/static/template_data.json') + S_score = governance_rating(data) + print(S_score) \ No newline at end of file diff --git a/Esg/scripts/social.py b/Esg/scripts/social.py new file mode 100644 index 0000000..a3d8666 --- /dev/null +++ b/Esg/scripts/social.py @@ -0,0 +1,354 @@ +from common.scripts import read_json_file + + +def social_rating(param): + """ + 社会部分打分 + Parameters: + param dict 填报问卷 + Returns: + score float 社会部分得分 + """ + fraction = list() + + if calculation_15(param) == 'S=0': + score = 0 + else: + fraction.append(calculation_01(param)) + fraction.append(calculation_02(param)) + fraction.append(calculation_03(param)) + fraction.append(calculation_04(param)) + fraction.append(calculation_05(param)) + fraction.append(calculation_06(param)) + fraction.append(calculation_07(param)) + fraction.append(calculation_08(param)) + fraction.append(calculation_09(param)) + fraction.append(calculation_10(param)) + fraction.append(calculation_11(param)) + fraction.append(calculation_12(param)) + fraction.append(calculation_13(param)) + fraction.append(calculation_14(param)) + score = sum(fraction) + + return score + + +def calculation_01(param): + """ + 离职人数占比 + Parameters: + param dict 填报问卷 + Returns: + score int 得分 + """ + social_data = param['社会问卷']['近三年公司数据'] + year_2020 = round(social_data[0]['当年离职人数'] / social_data[0]['员工总数'], 2) + year_2019 = round(social_data[1]['当年离职人数'] / social_data[1]['员工总数'], 2) + year_2018 = round(social_data[2]['当年离职人数'] / social_data[2]['员工总数'], 2) + + factor_01 = (year_2018 + year_2019 + year_2020)/3*100 <= 20 + factor_02 = 20 < (year_2018 + year_2019 + year_2020)/3*100 <= 30 + + if factor_01: + score = 5 + elif factor_02: + score = 2 + else: + score = 0 + + return score + + +def calculation_02(param): + """ + 人均薪酬涨幅 + Parameters: + param dict 填报问卷 + Returns: + score int 得分 + """ + year_2020 = param['社会问卷']['近三年公司数据'][0]['人均薪酬水平(元/月)'] + year_2018 = param['社会问卷']['近三年公司数据'][2]['人均薪酬水平(元/月)'] + + factor = (year_2020/year_2018)**(1/2) - 1 >= 0.03 + + if factor: + score = 2 + else: + score = 0 + + return score + + +def calculation_03(param): + """ + 劳动合同中的工作时长(周) + Parameters: + param dict 填报问卷 + Returns: + score int 得分 + """ + year_2020 = param['社会问卷']['近三年公司数据'][0]['劳动合同要求工作时长(每周小时数)'] + year_2019 = param['社会问卷']['近三年公司数据'][1]['劳动合同要求工作时长(每周小时数)'] + year_2018 = param['社会问卷']['近三年公司数据'][2]['劳动合同要求工作时长(每周小时数)'] + + factor = (year_2020 + year_2019 + year_2018) / 3 <= 45 + + if factor: + score = 4 + else: + score = 0 + + return score + + +def calculation_04(param): + """ + 劳动纠纷 + Parameters: + param dict 填报问卷 + Returns: + score int 得分 + """ + year_2020 = param['社会问卷']['近三年公司数据'][0]['劳资纠纷次数'] + year_2019 = param['社会问卷']['近三年公司数据'][1]['劳资纠纷次数'] + year_2018 = param['社会问卷']['近三年公司数据'][2]['劳资纠纷次数'] + + factor = (year_2020 + year_2019 + year_2018) <= 0 + + if factor: + score = 3 + else: + score = 0 + + return score + + +def calculation_05(param): + """ + 安全事故 + Parameters: + param dict 填报问卷 + Returns: + score int 得分 + """ + year_2020 = param['社会问卷']['近三年公司数据'][0]['安全事故发生次数'] + year_2019 = param['社会问卷']['近三年公司数据'][1]['安全事故发生次数'] + year_2018 = param['社会问卷']['近三年公司数据'][2]['安全事故发生次数'] + + factor = (year_2020 + year_2019 + year_2018) <= 0 + + if factor: + score = 3 + else: + score = 0 + + return score + + +def calculation_06(param): + """ + 提供培训 + Parameters: + param dict 填报问卷 + Returns: + score int 得分 + """ + year_2020 = param['社会问卷']['近三年公司数据'][0]['组织培训次数'] + year_2019 = param['社会问卷']['近三年公司数据'][1]['组织培训次数'] + year_2018 = param['社会问卷']['近三年公司数据'][2]['组织培训次数'] + + factor_01 = (year_2020 + year_2019 + year_2018) >= 4 + factor_02 = (year_2020 + year_2019 + year_2018) >= 1 + + if factor_01: + score = 5 + elif factor_02: + score = 2 + else: + score = 0 + + return score + + +def calculation_07(param): + """ + 社保缴纳是否符合当地标准 + Parameters: + param dict 填报问卷 + Returns: + score int 得分 + """ + anwser = param['社会问卷']['其他类型问卷'][0] + + if anwser == '是': + score = 1 + else: + score = 0 + + return score + + +def calculation_08(param): + """ + 公积金缴纳是否符合当地标准 + Parameters: + param dict 填报问卷 + Returns: + score int 得分 + """ + anwser = param['社会问卷']['其他类型问卷'][1] + + if anwser == '是': + score = 1 + else: + score = 0 + + return score + + +def calculation_09(param): + """ + 是否提供员工体检 + Parameters: + param dict 填报问卷 + Returns: + score int 得分 + """ + anwser = param['社会问卷']['其他类型问卷'][2] + + if anwser == '是': + score = 1 + else: + score = 0 + + return score + + +def calculation_10(param): + """ + 是否提供带薪假期 + Parameters: + param dict 填报问卷 + Returns: + score int 得分 + """ + anwser = param['社会问卷']['其他类型问卷'][3] + + if anwser == '是': + score = 1 + else: + score = 0 + + return score + + +def calculation_11(param): + """ + 公司从前三大供货商拿货占比 + Parameters: + param dict 填报问卷 + Returns: + score int 得分 + """ + year_2020 = param['社会问卷']['近三年公司数据'][0]['公司从前3大供应商拿货占全部供应商比例(%)'] + year_2018 = param['社会问卷']['近三年公司数据'][2]['公司从前3大供应商拿货占全部供应商比例(%)'] + + factor = year_2018 >= year_2020 + + if factor: + score = 1 + else: + score = 0 + + return score + + +def calculation_12(param): + """ + 公司前3大客户销量占比 + Parameters: + param dict 填报问卷 + Returns: + score int 得分 + """ + year_2020 = param['社会问卷']['近三年公司数据'][0]['公司前3大客户销售额占全部销售比例(%)'] + year_2018 = param['社会问卷']['近三年公司数据'][2]['公司前3大客户销售额占全部销售比例(%)'] + + factor = year_2018 >= year_2020 + + if factor: + score = 1 + else: + score = 0 + + return score + + +def calculation_13(param): + """ + 公司返修、退回、投诉产品比例(%) + Parameters: + param dict 填报问卷 + Returns: + score int 得分 + """ + year_2020 = param['社会问卷']['近三年公司数据'][0]['返修、退回、投诉产品对应销售额占全部销售比例(%)'] + year_2018 = param['社会问卷']['近三年公司数据'][2]['返修、退回、投诉产品对应销售额占全部销售比例(%)'] + + factor = year_2018 >= year_2020 + + if factor: + score = 1 + else: + score = 0 + + return score + + +def calculation_14(param): + """ + 扶贫+捐赠规模(万元) + Parameters: + param dict 填报问卷 + Returns: + score int 得分 + """ + year_2020 = param['社会问卷']['近三年公司数据'][0]['扶贫+捐赠规模(万元)'] + year_2019 = param['社会问卷']['近三年公司数据'][1]['扶贫+捐赠规模(万元)'] + year_2018 = param['社会问卷']['近三年公司数据'][2]['扶贫+捐赠规模(万元)'] + + factor_01 = (year_2020 + year_2019 + year_2018) > 0 + + if factor_01: + score = 5 + else: + score = 0 + + return score + + +def calculation_15(param): + """ + 司法风险 + Parameters: + param dict 填报问卷 + Returns: + score int 得分 + """ + risk = param['风险数据'] + score = None + for value in risk.values(): + if value > 0: + score = 'S=0' + break + else: + score = 0 + + return score + + +if __name__ == '__main__': + data = read_json_file('/Esg/static/template_data.json') + S_score = social_rating(data) + print(S_score) \ No newline at end of file diff --git a/Esg/static/__init__.py b/Esg/static/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/Esg/static/template_data.json b/Esg/static/template_data.json new file mode 100644 index 0000000..b62c415 --- /dev/null +++ b/Esg/static/template_data.json @@ -0,0 +1,153 @@ +{ + "评价ID": "EsfsSg02", + "企业ID": "Z1tfsw6r", + "企业名称": "远东资信评估有限公司", + "所属行业": ["制造业", "化学工业"], + "公司收入": [200232, 253014, 190123], + "环境问卷": { + "近三年公司数据": [ + { + "年份": "2020年", + "原煤(千克)": 1402.3, + "焦炭(千克)": 1402.3, + "原油(升)": 1402.3, + "燃料油(升)": 1402.3, + "汽油(升)": 1402.3, + "煤油(升)": 1402.3, + "柴油(升)": 1402.3, + "液化石油气(千克)": 1402.3, + "天然气(立方米)": 1402.3, + "煤气(立方米)": 1402.3, + "电(千瓦时)": 1402.3, + "水(吨)": 1402.3, + "绿色业务收入(万元)": 1402.3 + }, + { + "年份": "2019年", + "原煤(千克)": 1402.3, + "焦炭(千克)": 1402.3, + "原油(升)": 1402.3, + "燃料油(升)": 1402.3, + "汽油(升)": 1402.3, + "煤油(升)": 1402.3, + "柴油(升)": 1402.3, + "液化石油气(千克)": 1402.3, + "天然气(立方米)": 1402.3, + "煤气(立方米)": 1402.3, + "电(千瓦时)": 1402.3, + "水(吨)": 1402.3, + "绿色业务收入(万元)": 1402.3 + }, + { + "年份": "2018年", + "原煤(千克)": 1402.3, + "焦炭(千克)": 1402.3, + "原油(升)": 1402.3, + "燃料油(升)": 1402.3, + "汽油(升)": 1402.3, + "煤油(升)": 1402.3, + "柴油(升)": 1402.3, + "液化石油气(千克)": 1402.3, + "天然气(立方米)": 1402.3, + "煤气(立方米)": 1402.3, + "电(千瓦时)": 1402.3, + "水(吨)": 1402.3, + "绿色业务收入(万元)": 1402.3 + } + ], + "其他类型问卷": [ + ["是", "以2021年为基准,未来5年减少10%"], + ["是", "以2021年为基准,未来5年减少10%"], + ["是", "以2021年为基准,未来5年减少10%"], + ["否"], + ["否"], + ["是", "以2021年为基准,未来5年减少10%"], + ["是", "以2021年为基准,未来5年减少10%"], + ["否"] + ] + }, + "社会问卷": { + "近三年公司数据": [ + { + "年份": "2020年", + "员工总数": 152, + "当年离职人数": 23, + "人均薪酬水平(元/月)": 8140, + "劳动合同要求工作时长(每周小时数)": 40, + "劳资纠纷次数": 15, + "安全事故发生次数": 0, + "组织培训次数": 14, + "公司从前3大供应商拿货占全部供应商比例(%)": 10.1, + "公司前3大客户销售额占全部销售比例(%)": 152, + "返修、退回、投诉产品对应销售额占全部销售比例(%)": 0.98, + "扶贫+捐赠规模(万元)": 50 + }, + { + "年份": "2019年", + "员工总数": 152, + "当年离职人数": 23, + "人均薪酬水平(元/月)": 8140, + "劳动合同要求工作时长(每周小时数)": 40, + "劳资纠纷次数": 15, + "安全事故发生次数": 0, + "组织培训次数": 14, + "公司从前3大供应商拿货占全部供应商比例(%)": 10.1, + "公司前3大客户销售额占全部销售比例(%)": 152, + "返修、退回、投诉产品对应销售额占全部销售比例(%)": 0.98, + "扶贫+捐赠规模(万元)": 50 + }, + { + "年份": "2018年", + "员工总数": 152, + "当年离职人数": 23, + "人均薪酬水平(元/月)": 8140, + "劳动合同要求工作时长(每周小时数)": 40, + "劳资纠纷次数": 15, + "安全事故发生次数": 0, + "组织培训次数": 14, + "公司从前3大供应商拿货占全部供应商比例(%)": 10.1, + "公司前3大客户销售额占全部销售比例(%)": 152, + "返修、退回、投诉产品对应销售额占全部销售比例(%)": 0.98, + "扶贫+捐赠规模(万元)": 50 + } + ], + "其他类型问卷": [ + ["是"], + ["是"], + ["是"], + ["是"] + ] + }, + "治理问卷": { + "近三年公司数据": [ + { + "年份": "2020年", + "公司是否有审计报告": "是", + "公司净资产(万元)": 260242, + "公司净利润(万元)": 10230 + }, + { + "年份": "2019年", + "公司是否有审计报告": "是", + "公司净资产(万元)": 260242, + "公司净利润(万元)": 10230 + }, + { + "年份": "2018年", + "公司是否有审计报告": "是", + "公司净资产(万元)": 260242, + "公司净利润(万元)": 10230 + } + ], + "其他类型问卷": ["A", "B", 20, 6, "B", "是", "否", "是"] + }, + "风险数据": { + "法律诉讼": 0, + "被执行人": 0, + "失信人": 0, + "行政处罚": 0, + "税收违法": 0, + "严重违法": 0, + "经营异常": 0 + } +} \ No newline at end of file