docs: define flask factory and archive logging

This commit is contained in:
ila
2026-07-04 23:13:00 +08:00
parent 21dbdf81ed
commit 22e69ccce1
14 changed files with 154 additions and 24 deletions
+7 -3
View File
@@ -6,7 +6,7 @@
- 日期:2026-07-04
- 阶段:MVP 起步 / 文档与逆向资料整理
- 技术栈:目标为当前系统 Python 3.8、Flask 3.0.3、Redis;代码尚未初始化;不创建虚拟环境
- 技术栈:目标为当前系统 Python 3.8、Flask 3.0.3 application factory、Redis;代码尚未初始化;不创建虚拟环境
- 生产代码:暂无
- 测试:暂无
- 数据 / 资料:`reverse_file/` 下已有 CHIS HAR、前端脚本和 schema;`D:\hans\chupd\chis\login_client_v2.py` 可作为登录链路参考
@@ -30,7 +30,7 @@
任务状态以 [06-tasks.md](06-tasks.md) 为准。
- 已完成:DOC-001 建立 harness coding 项目文档。
- 已完成:DOC-001 建立 harness coding 项目文档;DOC-002 更新 CHIS 登录与只读查询验证路线;DOC-003 明确使用系统 Python 3.8;DOC-004 明确 Flask factory 模式;DOC-005 明确日志与请求归档方案。详见 [../progress.md](../progress.md)。
- 正在进行:无。
- 下一个可领取任务:T-001 初始化 Flask 项目骨架。
@@ -38,16 +38,20 @@
- CHIS public key 可通过配置文件或环境变量提供。
- 使用当前系统 Python 3.8 环境,不创建虚拟环境;T-001 创建 `requirements.txt` 固定依赖。
- Flask 应用使用 application factory 模式,`app/__init__.py` 暴露 `create_app(config_object=None)`。
- 登录链路参考 `login_client_v2.py`:`myRoles` -> 选择 `责任医生助理` / `责任医生` -> `myApps` -> 拼接 cookie。
- SM2 加密参考 `hans_chis.sm2.sm2_encrypt`:`gmssl.sm2.CryptSM2(mode=0)`,返回带 `04` 前缀密文。
- 会话验证可用 `chis.myPageService / getLanderInfo`。
- 体检详情查询第一版可用 `healthCheck + phrId + idCard` 调 `getHMNIListOfHTML`,用 `idCard + checkDate` 调 `getCheckInfoDetail`。
- 当前不能证明只传 `healthCheck` 就能查完整详情。
- 运行日志保存到 `logs/`,每天一个综合日志文件,保留 1 年。
- 每个 API 请求保存一个 `archives/` JSON 归档文件,包含完整 API 和 CHIS 请求 / 响应,archive 不脱敏,仅用于内网前置机本地受控排查。
## 当前可运行内容
```powershell
Get-ChildItem -Recurse -File
Get-ChildItem -Recurse -File # PowerShell
# bash 等价: find . -type f -not -path './.git/*'
```
## 开始编码前检查