# chisup 基卫 CHIS 上报数据项目。项目目标是提供稳定的后端 API,供第三方系统提交体检数据;`chisup` 负责校验、转换、维护 CHIS 登录会话,并把符合 CHIS 接口格式的数据提交到基卫 CHIS。 当前仓库处于 MVP 起步阶段:已有 Flask application factory 地基、health check、基础配置、pytest 测试入口、CHIS 登录基础链路和架构包目录。当前已参考 `D:\hans\chupd\chis\login_client_v2.py` 迁移 `myRoles -> myApps -> cookie` 登录流程,public key 由配置提供;访问 CHIS 支持可选 `CHIS_PROXY` SOCKS5 代理;保存上报前先实现只读体检详情查询来验证登录、会话、加密和通用请求。 ## 文档入口 | 文档 | 作用 | | --- | --- | | [AGENTS.md](AGENTS.md) | Codex / AI coding agent 的仓库级入口 | | [CLAUDE.md](CLAUDE.md) | Claude Code 薄入口,指向 `AGENTS.md` | | [tasks.md](tasks.md) | 根目录任务总览,详细任务以 `docs/06-tasks.md` 为准 | | [progress.md](progress.md) | 执行历史流水,只追加记录 | | [docs/README.md](docs/README.md) | 项目文档导航 | | [docs/00-ai-start-here.md](docs/00-ai-start-here.md) | AI 开发入口、阅读顺序和任务领取规则 | | [docs/01-vision.md](docs/01-vision.md) | 项目愿景、价值和非目标 | | [docs/02-requirements.md](docs/02-requirements.md) | MVP 需求和验收标准 | | [docs/03-tech-stack.md](docs/03-tech-stack.md) | 技术栈、运行命令和待定项 | | [docs/04-architecture.md](docs/04-architecture.md) | 架构设计、模块职责、数据流和风险 | | [docs/05-coding-rules.md](docs/05-coding-rules.md) | 编码纪律和验证规则 | | [docs/06-tasks.md](docs/06-tasks.md) | 可逐步交付的任务看板 | | [docs/api.md](docs/api.md) | 对第三方 API 与内部模块合约 | | [docs/current-state.md](docs/current-state.md) | 当前代码现实、可运行命令和下一步 | | [docs/clean-state-checklist.md](docs/clean-state-checklist.md) | 每轮结束前的收尾检查 | ## 当前事实 - Python 版本目标:当前系统 Python 3.8,不创建虚拟环境。 - Web 框架目标:Flask 3.0.3。 - Flask 结构:使用 application factory 模式,T-001 实现 `create_app(config_object=None)`。 - 依赖管理:T-001 创建 `requirements.txt`,使用 `python -m pip install -r requirements.txt` 安装到当前系统 Python 3.8 环境。 - 测试入口:T-003 固定 `pytest==8.3.5`,使用 `python -m pytest`。 - CHIS 登录:T-101 已迁移登录基础链路到 `app/chis/auth.py`,SM2 加密在 `app/chis/crypto.py`。 - Redis 会话缓存:T-103 已实现 `RedisChisSessionStore`,使用 `redis==3.5.3` 保存 CHIS 会话对象。 - 访问 CHIS 支持可选 `CHIS_PROXY`:为空直连,有值时 CHIS 登录、查询和保存请求走 SOCKS5 代理。 - 当前已有资料:`reverse_file/` 下的 CHIS 前端脚本、schema 和 HAR。 - 当前已有查询 HAR:`reverse_file/20260704_query_health_check.har`,包含 `getHMNIListOfHTML` 和 `getCheckInfoDetail`。 - 当前尚未确认:数据库、部署方式、第三方鉴权方式、仅凭 `healthCheck` 反查查询详情所需参数的链路。 ## 推荐开工方式 新一轮开发先读: 1. [AGENTS.md](AGENTS.md) 2. [docs/00-ai-start-here.md](docs/00-ai-start-here.md) 3. [docs/current-state.md](docs/current-state.md) 4. [docs/06-tasks.md](docs/06-tasks.md) 编码前从任务看板领取第一个依赖已完成的 `TODO`。当前 Phase 0 已完成,下一步进入 CHIS 登录与会话验证,随后跑通只读体检详情查询,最后再做保存上报。