EHS 管理系统 —— 展示版桌面客户端
安装使用说明（V3.5.8-alpha / 后端 V2.114）
====================================================

一、这是什么
------------------------------------------------------------------
本安装包为 EHS 管理系统"展示版"桌面客户端（Windows）。
安装后自带整套演示数据与后端服务，双击桌面图标即可使用，无需另外
安装数据库或启动任何服务（内嵌后端固定使用 5005 端口，仅本机）。

包含能力（V2.80g~V2.91 全部）：
  · 外壳：认证/权限/消息中心/审批/附件中心/导出导入/审计/备份/
         到期预警/数据驾驶舱/全局搜索/企业信息/部门管理/用户管理
  · 教育培训模块（完整样板）：培训分类管理（多级树）、题库管理
         （904 题：单选/多选/判断）、试卷管理（随机组卷）、学习中心
         （视频课件+防拖看+进度守护）、考核中心（自动判卷+重考机制）、
         培训管理/培训记录（课程聚合台账+明细下钻）、考核管理/考核记录
         （主档列表+二维码+批量操作）、培训计划（主档+批量上传模板+
         取证到期提醒[页面提醒+到期日当天预警消息]）、学员端"我的学习"、
         题库批量导入、学时证明/成绩单（PDF 证书，一记录一证号）、
         证书格式设置（公司文字/横版证书打印：二维码+企业电子章、
         右下落款单位+出具日期实时信息两行[与章自动避让]、LOGO 高度可调）、
         考核中心导出（Excel/PDF）、全局搜索定位、菜单对齐参考设计
  · 演示模块：测试模块（数据范围验证）、模块间事件日志（事件总线看板）

二、安装步骤
------------------------------------------------------------------
1. 双击 "EHS管理系统 Setup 3.5.8-alpha.exe"
2. 按向导选择安装目录（默认即可），可勾选创建桌面/开始菜单快捷方式
3. 完成后双击桌面"EHS管理系统"图标启动
5. **旧版本升级 / 重新安装（重点，安装前看完）**：
------------------------------------------------------------------
   ① 先卸载旧版（控制面板 → 卸载 "EHS隐患排查管理系统"；旧版数据默认保留）
   ② 不要旧数据：卸载后删除数据目录 %APPDATA%\EHS隐患排查管理系统
      （整个文件夹删除；想保留旧数据先整体复制到别处备份）
   ③ 双击本包 "EHS管理系统 Setup 3.5.7-alpha.exe" 安装（默认安装到
      %LOCALAPPDATA%\Programs\EHS管理系统，无需管理员权限）
   ④ 首次启动自动拷贝全新演示数据到 %APPDATA%\EHS管理系统\data，
      直接登录即可（演示账号见下）
   想接着用老数据（升级保留历史录入）：
   ① 备份旧目录 %APPDATA%\EHS隐患排查管理系统\data（复制到别处）
   ② 卸载旧版 → 装新版 → 关闭程序（任务管理器确认无 EHS 进程）
   ③ 把备份里的 ehs.db、audit.db、attach\、backup\ 覆盖拷入
      %APPDATA%\EHS管理系统\data\（logs\ 不用拷）→ 重新启动

6. 登录（演示账号，密码格式=首字母大写+@123）：
     admin / Admin@123   （系统管理员，全部功能）
     ehs   / Ehs@123     （安全主管，教育培训全套）
     vp    / Vp@123      （高管，报告/学员端）
     mgr   / Mgr@123     （部门经理）
     emp   / Emp@123     （普通员工，我的学习）
     gov   / Gov@123     （政府监管，迎检预留）

三、日志和数据在哪里（给管理员看，普通用户不用管）
------------------------------------------------------------------
本系统所有数据都存放在一个"安装目录之外"的用户文件夹：
    %APPDATA%\EHS管理系统\data
（Win+R 输入 %APPDATA%\EHS管理系统 回车即可打开）
（V3.5.7-alpha 起产品改名，数据目录随之为 %APPDATA%\EHS管理系统；
  如果曾装过旧版（%APPDATA%\EHS隐患排查管理系统），升级前请先
  备份旧 data 目录，再把需要的历史数据拷入新目录）

各个文件是什么：
    data\ehs.db       业务数据库（人员/培训/考试/隐患等全部业务数据）
    data\audit.db     审计数据库（操作留痕，防篡改）
    data\attach\      附件（图片/PDF/Word/视频…，按内容寻址存放）
    data\backup\     系统自动备份（每日 02:00 自动备份 + 手动备份）
    data\logs\ehs.log  后端运行日志（出问题先看这里）
    %APPDATA%\EHS管理系统\backend.log  客户端壳日志（启动/进程管理）

三个便捷入口（任选其一）：
  1. 桌面版最简单：右上角 ⚙ 设置 →"系统信息"→ 点【打开数据目录】
     /【打开日志目录】按钮（直接弹出资源管理器）
  2. Win+R → 输入 %APPDATA%\EHS管理系统 → 回车
  3. 日志排障命令（PowerShell）：
     Get-Content "$env:APPDATA\EHS管理系统\data\logs\ehs.log" -Tail 200

数据规则：
  · 升级/重装/卸载：默认不删除该目录（数据长期保留）
  · 想恢复出厂演示数据：关闭程序后删除
        %APPDATA%\EHS管理系统\data
    重新启动即自动重建（首次启动从安装包拷贝演示数据）
  · 迁移/备份：停用程序后整体拷贝 data 目录即可

四、本包演示说明（重要）
------------------------------------------------------------------
  · 演示库 = 50 名员工 / 904 道题 / 3 门课程 / 3 套试卷 / 证书配置样例；
        展示版已做隐私清洗：企业身份为"演示企业"，不含真实企业
        LOGO/登录壁纸/厂区图纸/设备目录等资料（正式使用请在
        系统管理→企业信息 上传本企业 LOGO 与背景图，登录页与证书
        打印自动生效）
  · 视频课件（236MB）未打包：培训视频课程显示"视频已下架"属预期
        （想演示：把视频文件放入
         %APPDATA%\EHS管理系统\data\attach\formal\ 即可）
  · 培训计划演示：教育培训→培训计划 →【批量上传】下载模板，填入
        年度培训计划（含取证到期日期），导入后到期前页面横幅提醒、
        到期日当天向 EHS 发送预警消息（铃铛/工作台）
  · 历史预警/消息等演示数据由演示库自带，可自由增删测试

五、企业内多人使用（可选：服务器形态）
------------------------------------------------------------------
默认是单机桌面版。若要让局域网同事用浏览器访问：
1. 在常开电脑上运行程序加参数 --server（无窗口常驻；或：
   EHS管理系统.exe --server-install 注册开机自启）
2. 同事浏览器访问 http://<该电脑IP>:5005（免费，无需装客户端）
3. 停止服务：任务管理器结束 EHS管理系统 进程；
   取消开机自启：--server-uninstall
其他参数：--connect=<服务器URL>（客户端直连远程服务器）
         --bigscreen（值班室大屏全屏）

六、常见问题
------------------------------------------------------------------
  · 启动报"后端启动失败"：5005 端口被占，关闭其他 EHS 进程后重启
  · 重复双击图标：只聚焦已有窗口（单实例，不会叠加/残留进程）
  · 找不到日志：见第三节（设置面板一键打开，或 Win+R %APPDATA% 路径）
  · 培训视频 7 天后突然"下架"：旧包遗留问题（视频附件停在临时区被
    自动清理）——本包起上传的视频保存时自动转正式区，不再发生；
    若历史课程已下架：重新上传一遍视频即可
  · 忘记密码：系统管理→用户管理 由管理员重置

====================================================
打包文件：EHS管理系统 Setup 3.5.7-alpha.exe
SHA256  ：1B2C1FB2DE128D03518C170FE8DBDA089EAB78EF1599FD3EA072C099BC970D37
