from datetime import datetime def handle_esg_report_data(param1, param2): """ 处理ESG报告模板 Parameters: param1 dict 报告数据 param2 dict 报告模板 Returns: result dict 报告数据 """ def handle_paragraph_01(param): """ 远东资信 Parameters: param dict 远东资信段落模板 Returns: result dict 处理好的报告模板 """ param[2]['段落'] = param[2]['段落'].format(param1['报告模板']['远东资信']['联系电话']) param[3]['段落'] = param[3]['段落'].format(param1['报告模板']['远东资信']['联系人']) return param def handle_paragraph_02(param): """ 基本信息 Parameters: param dict 基本信息段落模板 Returns: result dict 处理好的报告模板 """ param[0]['段落'] = param[0]['段落'].format(param1['报告模板']['基本信息']['公司名称']) param[1]['段落'] = param[1]['段落'].format(param1['报告模板']['基本信息']['所属行业']) return param def handle_paragraph_03(param): """ 公司ESG等级 Parameters: param dict 公司ESG等级段落模板 Returns: result dict 处理好的报告模板 """ param[0]['段落'] = param[0]['段落'].format(param1['报告模板']['公司ESG等级']['评价等级']) return param def handle_paragraph_04(param): """ 环境部分 Parameters: param dict 环境部分段落模板 Returns: result dict 处理好的报告模板 """ def handle_part_03(): """ 段落3 Parameters: - Returns: result dict 处理好的报告段落模板 """ data = param1['报告模板']['环境部分']['段落3'] param[2]['段落'] = param[2]['段落'].format(date_range=data['date_range'], co2_emissions=data['co2_emissions']) def handle_part_04(): """ 段落4 Parameters: - Returns: result dict 处理好的报告段落模板 """ data = param1['报告模板']['环境部分']['段落4'] param[3]['段落'] = param[3]['段落'].format(date_range=data['date_range'], co2_emissions=data['co2_emissions'], year_02=data['year_02'], year_03=data['year_03'], year01_on_year02=data['year01_on_year02'], year02_on_year03=data['year02_on_year03'], industry_indicators=data['industry_indicators'], industry_indicators_average=data['industry_indicators_average'], industry_indicators_median=data['industry_indicators_median'], median_comparison=data['median_comparison']) def handle_part_06(): """ 段落4 Parameters: - Returns: result dict 处理好的报告段落模板 """ data = param1['报告模板']['环境部分']['段落6'] param[5]['段落'] = param[5]['段落'].format(date_range=data['date_range'], energy_consumption=data['energy_consumption']) def handle_part_07(): """ 段落7 Parameters: - Returns: result dict 处理好的报告段落模板 """ data = param1['报告模板']['环境部分']['段落7'] param[6]['段落'] = param[6]['段落'].format(date_range=data['date_range'], energy_consumption=data['energy_consumption'], year_02=data['year_02'], year_03=data['year_03'], year01_on_year02=data['year01_on_year02'], year02_on_year03=data['year02_on_year03'], industry_indicators=data['industry_indicators'], industry_indicators_average=data['industry_indicators_average'], industry_indicators_median=data['industry_indicators_median'], median_comparison=data['median_comparison']) def handle_part_08(): """ 段落8 Parameters: - Returns: result dict 处理好的报告段落模板 """ data = param1['报告模板']['环境部分']['段落8'] param[7]['段落'] = param[7]['段落'].format(date_range=data['date_range'], energy_consumption=data['energy_consumption']) def handle_part_09(): """ 段落9 Parameters: - Returns: result dict 处理好的报告段落模板 """ data = param1['报告模板']['环境部分']['段落9'] param[8]['段落'] = param[8]['段落'].format(date_range=data['date_range'], energy_consumption=data['energy_consumption']) def handle_part_10(): """ 段落10 Parameters: - Returns: result dict 处理好的报告段落模板 """ data = param1['报告模板']['环境部分']['段落10'] param[9]['段落'] = param[9]['段落'].format(date_range=data['date_range'], consume_water=data['consume_water']) def handle_part_11(): """ 段落11 Parameters: - Returns: result dict 处理好的报告段落模板 """ data = param1['报告模板']['环境部分']['段落11'] param[10]['段落'] = param[10]['段落'].format(date_range=data['date_range'], consume_water=data['consume_water'], year_02=data['year_02'], year_03=data['year_03'], year01_on_year02=data['year01_on_year02'], year02_on_year03=data['year02_on_year03'], industry_indicators=data['industry_indicators'], industry_indicators_average=data['industry_indicators_average'], industry_indicators_median=data['industry_indicators_median'], median_comparison=data['median_comparison']) def handle_part_12(): """ 段落12 Parameters: - Returns: result dict 处理好的报告段落模板 """ data = param1['报告模板']['环境部分']['段落12'] param[11]['段落'] = param[11]['段落'].format(describe=data['describe']) def hanlde_part_13(): """ 段落13 Parameters: - Returns: result dict 处理好的报告段落模板 """ data = param1['报告模板']['环境部分']['段落13'] param[12]['段落'] = param[12]['段落'].format(describe=data['describe']) def judge_false(): """ 判断语句描述中是否有false,有则删除 Parameters: param type 参数名 Returns: result type 返回数据 """ new_list = list() for item in param: if item['段落'] != 'False': new_list.append(item) return new_list # 调用子方法 handle_part_03() handle_part_04() handle_part_06() handle_part_07() handle_part_08() handle_part_09() handle_part_10() handle_part_11() handle_part_12() hanlde_part_13() result = judge_false() return result def handle_paragraph_05(param): """ 社会部分 Parameters: param dict 社会部分段落模板 Returns: result dict 处理好的报告模板 """ def handle_part_02(): """ 段落2 Parameters: - Returns: result dict 处理好的报告段落模板 """ data = param1['报告模板']['社会部分']['段落2'] param[1]['段落'] = param[1]['段落'].format(date_range=data['date_range'], turnover_ratio=data['turnover_ratio'], year_03=data['year_03'], industry_indicators=data['industry_indicators'], industry_indicators_average=data['industry_indicators_average'], industry_indicators_median=data['industry_indicators_median'], median_comparison=data['median_comparison']) def handle_part_03(): """ 段落3 Parameters: - Returns: result dict 处理好的报告段落模板 """ data = param1['报告模板']['社会部分']['段落3'] param[2]['段落'] = param[2]['段落'].format(date_range=data['date_range'], salary_level=data['salary_level'], year_02=data['year_02'], year_03=data['year_03'], year01_on_year02=data['year01_on_year02'], year02_on_year03=data['year02_on_year03'], industry_indicators=data['industry_indicators'], industry_indicators_average=data['industry_indicators_average'], industry_indicators_median=data['industry_indicators_median'], median_comparison=data['median_comparison']) def handle_part_04(): """ 段落4 Parameters: - Returns: result dict 处理好的报告段落模板 """ data = param1['报告模板']['社会部分']['段落4'] param[3]['段落'] = param[3]['段落'].format(describe=data['describe']) def handle_part_05(): """ 段落5 Parameters: - Returns: result dict 处理好的报告段落模板 """ data = param1['报告模板']['社会部分']['段落5'] param[4]['段落'] = param[4]['段落'].format(describe=data['describe']) def handle_part_06(): """ 段落6 Parameters: - Returns: result dict 处理好的报告段落模板 """ data = param1['报告模板']['社会部分']['段落6'] param[5]['段落'] = param[5]['段落'].format(date_range=data['date_range'], training_number=data['training_number'], year_03=data['year_03'], industry_indicators=data['industry_indicators']) def handle_part_07(): """ 段落7 Parameters: - Returns: result dict 处理好的报告段落模板 """ data = param1['报告模板']['社会部分']['段落7'] param[6]['段落'] = param[6]['段落'].format(date_range=data['date_range'], salary_level=data['salary_level'], year_03=data['year_03'], industry_indicators=data['industry_indicators']) def handle_part_08(): """ 段落8 Parameters: - Returns: result dict 处理好的报告段落模板 """ data = param1['报告模板']['社会部分']['段落8'] param[7]['段落'] = param[7]['段落'].format(describe=data['describe']) def handle_part_09(): """ 段落9 Parameters: - Returns: result dict 处理好的报告段落模板 """ data = param1['报告模板']['社会部分']['段落9'] param[8]['段落'] = param[8]['段落'].format(describe=data['describe']) def judge_false(): """ 判断语句描述中是否有false,有则删除 Parameters: param type 参数名 Returns: result type 返回数据 """ new_list = list() for item in param: if item['段落'] != 'False': new_list.append(item) return new_list # 调用子方法 handle_part_02() handle_part_03() handle_part_04() handle_part_05() handle_part_06() handle_part_07() handle_part_08() handle_part_09() result = judge_false() return result def handle_paragraph_06(param): """ 公司治理部分 Parameters: param dict 社会部分段落模板 Returns: result dict 处理好的报告模板 """ def handle_part_02(): """ 段落2 Parameters: - Returns: result dict 处理好的报告段落模板 """ data = param1['报告模板']['公司治理部分']['段落2'] param[1]['段落'] = param[1]['段落'].format(describe=data['describe']) def handle_part_03(): """ 段落3 Parameters: - Returns: result dict 处理好的报告段落模板 """ data = param1['报告模板']['公司治理部分']['段落3'] param[2]['段落'] = param[2]['段落'].format(describe=data['describe']) def handle_part_04(): """ 段落4 Parameters: - Returns: result dict 处理好的报告段落模板 """ data = param1['报告模板']['公司治理部分']['段落4'] param[3]['段落'] = param[3]['段落'].format(experience_year=data['experience_year'], industry_indicators_average=data['industry_indicators_average']) def handle_part_05(): """ 段落5 Parameters: - Returns: result dict 处理好的报告段落模板 """ data = param1['报告模板']['公司治理部分']['段落5'] param[4]['段落'] = param[4]['段落'].format(describe=data['describe']) def handle_part_06(): """ 段落6 Parameters: - Returns: result dict 处理好的报告段落模板 """ data = param1['报告模板']['公司治理部分']['段落6'] param[5]['段落'] = param[5]['段落'].format(board_meetings_number=data['board_meetings_number'], industry_indicators_average=data['industry_indicators_average']) def judge_false(): """ 判断语句描述中是否有false,有则删除 Parameters: param type 参数名 Returns: result type 返回数据 """ new_list = list() for item in param: if item['段落'] != 'False': new_list.append(item) return new_list # 调用子方法 handle_part_02() handle_part_03() handle_part_04() handle_part_05() handle_part_06() result = judge_false() return result param2['企业名称'] = param1['企业名称'] param2['评价ID'] = param1['评价ID'] param2['企业ID'] = param1['企业ID'] param2['评价年度'] = param1['评价年度'] param2['生成日期'] = datetime.now().strftime("%Y-%m-%d") for index in range(len(param2['报告内容'])): if param2['报告内容'][index]['章节'] == '远东资信': param2['报告内容'][index]['章节内容'] = handle_paragraph_01(param2['报告内容'][index]['章节内容']) elif param2['报告内容'][index]['章节'] == '基本信息': param2['报告内容'][index]['章节内容'] = handle_paragraph_02(param2['报告内容'][index]['章节内容']) elif param2['报告内容'][index]['章节'] == '公司ESG等级': param2['报告内容'][index]['章节内容'] = handle_paragraph_03(param2['报告内容'][index]['章节内容']) elif param2['报告内容'][index]['章节'] == '环境部分': param2['报告内容'][index]['章节内容'] = handle_paragraph_04(param2['报告内容'][index]['章节内容']) elif param2['报告内容'][index]['章节'] == '社会部分': param2['报告内容'][index]['章节内容'] = handle_paragraph_05(param2['报告内容'][index]['章节内容']) elif param2['报告内容'][index]['章节'] == '公司治理部分': param2['报告内容'][index]['章节内容'] = handle_paragraph_06(param2['报告内容'][index]['章节内容']) return param2