# perf-assess **Repository Path**: thuxy/perf-assess ## Basic Information - **Project Name**: perf-assess - **Description**: 绩效积分录入系统 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-07-22 - **Last Updated**: 2026-07-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 绩效积分录入系统 基于 FastAPI 的本地 Web 应用,提供教师绩效积分录入、OCR 证据识别和 Excel 导出功能。 ## 功能 - 多用户登录 / 注册,Token 鉴权 - 填报清单:按类别(教学 A1、科研 B2、学工 C3、其他 D4)展示全部可填写积分项目,区分待填写、已填写、已忽略状态 - 动态录入表单:根据积分项目类型自动渲染不同的录入模板 - OCR 图片 / PDF 证据识别:上传证据图片或 PDF,自动识别内容并计算积分 - 多种积分规则:固定分、档位分、金额分、手工分、复合分、排课计算 - 积分规则界面化管理与编辑 - 图片证据上传、预览、删除、去重 - OCR 规则训练与 Schema 训练 - 按模板格式导出 Excel,含导出前完整性检查 - 教学得分自动计算(授课课时、实训、毕设等) - 本地文件夹存储,无需数据库,复制即备份 ## 开发运行 ```bash python -m venv .venv --without-pip --system-site-packages .venv/bin/python -m pip install -e ".[dev]" "numpy<2" # 数据目录默认 ~/.perf-assess/data,开发时通过环境变量指定到项目内 PERF_ASSESS_DATA_DIR=./perf-data-dev .venv/bin/python -m perf_assess.app_web ``` 启动后自动打开浏览器访问本地 Web 界面。 ## 命令行 ```bash # 运行测试 make test # 或直接使用 pytest .venv/bin/python -m pytest # 将工作区配置同步回种子数据目录(用于 git 提交) make sync-data # 生成积分规则参考文档(输出到工作区 docs/rules-reference.md) .venv/bin/python -m perf_assess.docs.rules_reference ./perf-data-dev ``` ## 目录结构 ``` perf-assess/ pyproject.toml model.xlsx -- 绩效模板 src/perf_assess/ domain/ -- 领域模型、规则引擎、得分计算 entry_forms/ -- 动态录入表单模板 ocr/ -- OCR 识别服务与流水线 storage/ -- 文件夹工作区、JSON 存储、图片证据 template/ -- 模板解析、规则推断、Excel 导出 web/ -- FastAPI 服务端 + Web 前端静态资源 docs/ -- 文档工具(规则参考表生成) tests/ -- pytest 测试 ```