九步骤引导式流程:从公司信息录入到最终重要性议题矩阵展示全流程覆盖(参见《「双重重要性评估工具」抢先体验!明晚8点正式开源》)
动态议题库:支持自定义议题,一键自动生成议题定义(大模型辅助)
利益相关方识别:预设常见利益相关方类别以及支持自定义添加
评估规则可配置:影响可能性/程度、财务影响可能性/程度的等级描述可调
问卷一键生成:调用大模型生成影响重要性问卷、财务重要性问卷及利益相关方重要性评估问卷
问卷下载:支持问卷下载为本地Word文档
调研数据上传与计算:支持上传问卷星等平台导出的数据表,自动计算议题得分及利益相关方权重
交互式重要性议题矩阵:动态矩阵图,支持影响重要性和财务重要性阈值调节,议题得分支持手动修正,评估结果可下载本地图片
历史会话管理:自动保存填写进度,支持查看和加载过往评估记录
02
技术栈
后端:Flask+SQLite
前端:HTML/CSS/JS+Plotly.js
大模型:DeepSeek API(OpenAI 兼容接口)
文件处理:pandas, openpyxl, python-docx
03
项目结构
esg_double_materiality_assessment/├── app.py # 主应用├── db.py # SQLite 会话管理├── conftest.py # pytest 路径配置├── requirements.txt├── .env.example # 环境变量示例(需自行创建)├── README.md├── data/ # 自动创建,存放 sessions.db├── src/│ ├── data.py # 预设行业、议题标准、利益相关方│ └── service.py # 核心逻辑:大模型调用、得分计算、定义生成├── static/│ ├── css/│ │ └── style.css # 全局深色主题样式│ └── js/│ └── matrix.js # 矩阵增量更新逻辑├── templates/│ ├── layout.html│ ├── index.html│ ├── history.html│ ├── step1_company.html│ ├── step2_topics.html│ ├── step3_definition.html│ ├── step4_stakeholders.html│ ├── step5_rules.html│ ├── step6_impact_questionnaire.html│ ├── step7_financial_questionnaire.html│ ├── step8_results.html│ └── step9_matrix.html└── tests/ # 单元测试目录(可自行添加)
04
快速开始
①克隆仓库
git clone https://github.com/wanziba/esg_double_materiality_assessment.gitcd~/Project/esg_double_materiality_assessment
②创建虚拟环境并安装依赖
python -m venv venvsource venv/bin/activate # Linux/Mac# venv\Scripts\activate # Windows
③安装依赖包,并设置应用入口与运行环境
pip install -r requirements.txtexport FLASK_APP=app.pyexport FLASK_ENV=development
④创建.env文件并写入环境变量
在项目根目录创建 .env 文件
# Linux/Mac# 创建.env文件touch .env# 编辑.env文件nano .env# Windows(CMD)# 创建.env文件echo. > .env# 编辑.env文件notepad .env
DEEPSEEK_API_KEY=your_api_key # your_api_key 替换为你的KEYFLASK_SECRET_KEY=your_secret_key # 可选,用于 session 安全
⑤初始化数据库
首次运行会自动创建 data/sessions.db 及所需表,无需手动操作。
⑥启动应用
方式一:使用 Flask 命令
flaskrun--port=5050方式二:直接运行 Python 文件
python app.py然后访问 http://127.0.0.1:5050 即可开始使用。
05
使用流程简述
步骤1 填写公司基本信息(全称、简称、行业、简介、评估年度)步骤2 设置议题长名单(支持批量导入或逐个添加,可拖拽排序)步骤3 为每个议题补充定义(支持“一键自动填写定义”,调用DeepSeek 生成)步骤4 选择或自定义利益相关方类别步骤5 自定义评估规则,影响(财务影响)的可能性或程度的各等级描述步骤6 生成影响重要性问卷 → 预览 → 下载 Word 文档步骤7 生成财务重要性问卷 + 利益相关方重要性问卷 → 预览合并版本 → 下载 Word 文档步骤8 使用问卷星等工具回收数据,按要求整理成两个 Excel/CSV 文件上传,系统自动计算各议题的影响得分与财务得分步骤9 展示双重重要性矩阵(支持调节阈值、手动修改得分、导出图片),并列出不同重要性区间的议题
06
常见问题
Q:生成问卷时提示“未检测到Deepseek API配置”?A:未设置DEEPSEEK_API_KEY环境变量,系统会自动使用本地简单模板生成,不影响基本使用。
Q:上传数据后计算失败,提示“列数不足”?A:请检查上传文件是否严格按照要求的列顺序排列,且议题数量、利益相关方数量与步骤2/4中设置的一致。
Q:能否将重要性议题矩阵图片导出?A:可以,在步骤9页面点击“下载矩阵及结果图片”按钮,会截图保存为PNG。
07
特别致谢:可爱的丸宝、亲爱的丸妈
欢迎大家下载和本地部署体验!
夜雨聆风