2026-02-28 15:16:15 +08:00
2026-02-28 15:16:15 +08:00
2026-02-28 15:02:08 +08:00
2026-02-28 15:16:15 +08:00
2026-02-28 15:16:15 +08:00
2026-02-28 15:16:15 +08:00
2026-02-28 15:16:15 +08:00
2026-02-28 15:16:15 +08:00
2026-02-28 15:16:15 +08:00
2026-02-28 15:16:15 +08:00
2026-02-28 15:16:15 +08:00
2026-02-28 15:16:15 +08:00
2026-02-28 15:16:15 +08:00
2026-02-28 15:16:15 +08:00
2026-02-28 15:16:15 +08:00
2026-02-28 15:16:15 +08:00
2026-02-28 15:16:15 +08:00
2026-02-28 15:16:15 +08:00
2026-02-28 15:16:15 +08:00
2026-02-28 15:16:15 +08:00
2026-02-28 15:16:15 +08:00
2026-02-28 15:16:15 +08:00
2026-02-28 15:16:15 +08:00
2026-02-28 15:16:15 +08:00
2026-02-28 15:16:15 +08:00

医院绩效考核管理系统

一个为县级中医院设计的绩效考核管理系统,支持科室管理、员工管理、考核指标管理、绩效考核流程、数据分析报表和绩效工资核算。

技术栈

后端

  • FastAPI - 高性能异步 Web 框架
  • SQLAlchemy 2.0 - 异步 ORM
  • PostgreSQL - 数据库端口15432
  • Alembic - 数据库迁移
  • Pydantic v2 - 数据验证
  • asyncpg - PostgreSQL 异步驱动

前端

  • Vue 3 - 渐进式 JavaScript 框架Composition API
  • Element Plus - UI 组件库
  • Pinia - 状态管理
  • ECharts - 图表库
  • Vite - 构建工具

项目结构

hospital-performance/
├── backend/                    # 后端服务
│   ├── app/
│   │   ├── core/              # 核心配置
│   │   ├── models/            # 数据模型
│   │   ├── schemas/           # Pydantic模式
│   │   ├── api/               # API路由
│   │   ├── services/          # 业务逻辑
│   │   └── utils/             # 工具函数
│   ├── alembic/               # 数据库迁移
│   └── requirements.txt
├── frontend/                   # 前端应用
│   ├── src/
│   │   ├── views/             # 页面组件
│   │   ├── components/        # 通用组件
│   │   ├── api/               # API调用
│   │   ├── stores/            # 状态管理
│   │   └── router/            # 路由配置
│   └── package.json
└── README.md

功能模块

graph TD
    A[医院绩效考核系统] --> B[基础数据管理]
    A --> C[绩效考核流程]
    A --> D[数据分析报表]
    A --> E[绩效工资核算]
    B --> B1[科室管理]
    B --> B2[员工管理]
    B --> B3[考核指标库]
    B --> B4[模板管理]
    C --> C1[考核计划]
    C --> C2[指标分配]
    C --> C3[考核提交]
    C --> C4[多级审核]
    C --> C5[批量考核]
    D --> D1[科室统计]
    D --> D2[员工排名]
    D --> D3[趋势分析]
    D --> D4[分布分析]
    E --> E1[自动计算]
    E --> E2[公式配置]
    E --> E3[批量生成]
    E --> E4[发放确认]

1. 基础数据管理

  • 科室信息管理(支持树形结构,含临床、医技、行政等类别)
  • 员工信息管理(工号、岗位、职称、入职时间等)
  • 考核指标管理KPI 指标库、平衡计分卡维度)
  • 模板管理(考核表模板、指标分配方案)

2. 绩效考核流程

  • 考核计划制定(月度、季度、年度)
  • 考核记录创建与编辑
  • 考核提交与多级审核流程
  • 批量创建考核
  • 绩效反馈与申诉

3. 数据分析报表

  • 科室绩效统计(工作量、质量、满意度等)
  • 员工绩效排名与分析
  • 趋势分析图表(同比、环比)
  • 绩效分布分析(按科室、岗位、职称)
  • 平衡计分卡四维分析

4. 绩效工资核算

  • 根据考核结果自动计算工资
  • 绩效工资公式配置
  • 批量生成工资记录
  • 工资确认与发放
  • 工资条导出

快速开始

环境要求

  • Python 3.10+
  • Node.js 18+
  • PostgreSQL 14+

后端启动

# 进入后端目录
cd backend

# 创建虚拟环境
python -m venv venv

# 激活虚拟环境
# Windows PowerShell
.\venv\Scripts\Activate.ps1
# 或 CMD
venv\Scripts\activate.bat

# 安装依赖
pip install -r requirements.txt

# 配置环境变量
cp .env.example .env
# 编辑 .env 文件配置数据库连接(默认使用 PostgreSQL:15432

# 运行数据库迁移
alembic upgrade head

# 初始化测试数据(可选)
python init_db.py

# 启动服务
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000

前端启动

# 进入前端目录
cd frontend

# 安装依赖
npm install

# 启动开发服务器(自动代理到后端 http://localhost:8000
npm run dev

# 构建生产版本
npm run build

# 预览生产构建
npm run preview

访问系统

API文档

启动后端服务后访问以下地址查看API文档

默认账号

  • 用户名: admin
  • 密码: admin123

数据库设计

主要表结构

  • departments - 科室信息表(含树形结构支持)
  • staff - 员工信息表(关联科室、岗位、职称)
  • indicators - 考核指标表KPI、平衡计分卡维度
  • indicator_templates - 指标模板表
  • assessments - 考核记录表
  • assessment_details - 考核明细表(多维度评分)
  • performance_plans - 绩效计划表
  • salary_records - 工资核算表
  • users - 系统用户表
  • menus - 菜单权限表

核心业务模型

  • DeptType: 科室类型枚举(临床手术/非手术、医技、行政等)
  • BSCDimension: 平衡计分卡四维度(财务、客户、内部流程、学习成长)
  • IndicatorType: 指标类型(数量、质量、成本、满意度等)

项目截图

登录页面 Dashboard 科室管理 员工管理 指标管理 考核管理 绩效计划 工资管理 财务报表 统计报表

更多截图请查看 docs/screenshots 目录

开发规范

代码风格

  • 后端: Python PEP 8使用 type hints
  • 前端: ESLint + Prettier待配置
  • Git: 遵循 conventional commits 规范

分支管理

  • main: 主分支,仅接受合并请求
  • develop: 开发分支(待创建)
  • feature/*: 功能分支

提交规范

feat: 新功能
fix: 修复 bug
docs: 文档更新
style: 代码格式调整
refactor: 重构
test: 测试相关
chore: 构建/工具链相关

性能优化

  1. 数据库层面

    • 合理的索引设计
    • 连接池配置asyncpg
    • 异步查询
    • 批量操作优化
  2. 应用层面

    • FastAPI 异步 IO 处理
    • 分页查询
    • 响应缓存策略
    • 后台任务队列(待实现)
  3. 前端层面

    • 路由懒加载
    • 组件按需加载
    • ECharts 图表数据缓存
    • API 请求防抖

可维护性设计

  1. 代码规范

    • 模块化设计(按业务领域划分)
    • 分层架构API -> Service -> Model
    • 类型注解Python type hints
    • 统一的错误处理
  2. 文档完善

    • API 自动文档Swagger/OpenAPI
    • 代码注释Google Style
    • README 文档
    • 开发者指南docs/目录)
  3. 测试覆盖

    • 单元测试pytest
    • 集成测试
    • API 测试
    • E2E 测试(待实现)

常见问题

Q: 数据库连接失败?

A: 检查 PostgreSQL 是否运行在 15432 端口,确认 .env 文件中 DATABASE_URL 配置正确。

Q: 前端无法访问后端 API

A: Vite 开发服务器已配置代理,确保后端运行在 http://localhost:8000

Q: 如何重置数据库?

A: 删除所有表后重新运行 alembic upgrade head,或使用 backend/create_database.py 脚本。

贡献指南

欢迎提交 Issue 和 Pull Request

License

MIT

Description
医院绩效系统
Readme 7.2 MiB
Languages
Python 69.8%
Vue 23.1%
Shell 3.5%
JavaScript 2.6%
HTML 0.6%
Other 0.4%