提交文件

This commit is contained in:
2026-02-28 15:16:15 +08:00
parent 1a4e50e0a4
commit 44f250f58e
159 changed files with 61268 additions and 0 deletions

315
IMPLEMENTATION_SUMMARY.md Normal file
View File

@@ -0,0 +1,315 @@
# 医院绩效管理系统增强实施总结
## 已完成功能
### 1. 数据库模型增强 ✅
#### 科室类型扩展 (DeptType)
从 5 种扩展到 9 种科室类型:
- `clinical_surgical` - 手术临床科室
- `clinical_nonsurgical_ward` - 非手术有病房科室
- `clinical_nonsurgical_noward` - 非手术无病房科室
- `medical_tech` - 医技科室
- `medical_auxiliary` - 医辅科室
- `nursing` - 护理单元
- `admin` - 行政科室
- `finance` - 财务科室
- `logistics` - 后勤保障科室
#### 平衡计分卡维度 (BSCDimension)
新增四大维度枚举:
- `financial` - 财务维度
- `customer` - 客户维度
- `internal_process` - 内部流程维度
- `learning_growth` - 学习与成长维度
#### 指标类型扩展 (IndicatorType)
从 5 种扩展到 8 种:
- `quality` - 质量指标
- `quantity` - 数量指标
- `efficiency` - 效率指标
- `service` - 服务指标
- `cost` - 成本指标
- `safety` - 安全指标 ⭐ 新增
- `learning` - 学习成长指标 ⭐ 新增
- `compliance` - 合规指标 ⭐ 新增
#### 指标模型新增字段
```python
class Indicator(Base):
bs_dimension: Mapped[BSCDimension] # BSC 维度
target_unit: Mapped[Optional[str]] # 目标值单位
calculation_method: Mapped[Optional[str]] # 计算方法/公式
assessment_method: Mapped[Optional[str]] # 考核方法
deduction_standard: Mapped[Optional[str]] # 扣分标准
data_source: Mapped[Optional[str]] # 数据来源
applicable_dept_types: Mapped[Optional[str]] # 适用科室类型 (JSON)
is_veto: Mapped[bool] # 是否一票否决指标
```
### 2. 后端服务层增强 ✅
#### 统计服务 (StatsService)
文件:`backend/app/services/stats_service.py`
实现的功能:
- `get_bsc_dimension_stats()` - BSC 维度分析
- `get_department_stats()` - 科室绩效统计
- `get_trend_stats()` - 趋势分析
- `get_ranking_stats()` - 绩效排名
- `get_completion_stats()` - 指标完成度
#### 指标服务增强 (IndicatorService)
文件:`backend/app/services/indicator_service.py`
新增功能:
- `get_list()` - 支持按 BSC 维度筛选
- `import_template()` - 导入指标模板
- `get_templates()` - 获取模板列表
### 3. API 接口增强 ✅
#### 统计报表 API
文件:`backend/app/api/v1/stats.py`
```
GET /api/v1/stats/bsc-dimension # BSC 维度分析
GET /api/v1/stats/department # 科室绩效统计
GET /api/v1/stats/trend # 趋势分析
GET /api/v1/stats/ranking # 绩效排名
GET /api/v1/stats/completion # 指标完成度
```
#### 指标管理 API 增强
文件:`backend/app/api/v1/indicators.py`
新增接口:
```
GET /api/v1/indicators?bs_dimension=financial # 按 BSC 维度筛选
GET /api/v1/indicators/templates/list # 获取模板列表
POST /api/v1/indicators/templates/import # 导入模板
```
### 4. Schema 增强 ✅
#### 新增枚举 Schema
文件:`backend/app/schemas/schemas.py`
```python
class BSCDimension(str, Enum):
FINANCIAL = "financial"
CUSTOMER = "customer"
INTERNAL_PROCESS = "internal_process"
LEARNING_GROWTH = "learning_growth"
class IndicatorType(str, Enum):
QUALITY = "quality"
QUANTITY = "quantity"
EFFICIENCY = "efficiency"
SERVICE = "service"
COST = "cost"
SAFETY = "safety"
LEARNING = "learning"
COMPLIANCE = "compliance"
```
#### 指标 Schema 更新
```python
class IndicatorBase(BaseModel):
bs_dimension: BSCDimension
target_unit: Optional[str]
calculation_method: Optional[str]
assessment_method: Optional[str]
deduction_standard: Optional[str]
data_source: Optional[str]
applicable_dept_types: Optional[str]
is_veto: bool = False
```
### 5. 指标模板数据 ✅
文件:`backend/init_indicator_templates.py`
已创建的模板:
- **临床手术科室** (12 个指标)
- 财务维度:业务收入增长率、药品比例控制、医保扣款控制
- 客户维度:患者满意度、服务投诉处理率
- 内部流程:病历书写合格率、手术安全核对、手术分级管理、抗菌药物使用率、院感控制达标率
- 学习成长:培训参与率、继续教育学分达标率
- **行政科室** (4 个指标)
- 工作计划完成率、制度建设健全率
- 临床对行政满意度、科务会召开率
- **医技科室** (3 个指标)
- 报告及时率、检查阳性率、设备完好率
### 6. 文档完善 ✅
文件:`docs/enhancement_design.md`
包含内容:
- 系统架构设计
- 数据库设计
- API 接口设计
- 前端页面设计
- 实施计划
- 关键代码实现
## 待完成功能
### 1. 绩效工资核算 ⏳
需要实现:
- 绩效系数配置表
- 工资自动计算服务
- 奖惩记录管理
- 工资条导出功能
### 2. 前端页面更新 ⏳
需要更新:
- 指标管理页面(新增 BSC 维度、模板导入)
- BSC 分析报表页面
- 科室绩效统计页面
- 趋势分析页面
### 3. 满意度调查模块 ⏳
需要创建:
- 满意度调查数据模型
- 调查管理 API
- 移动端调查页面
- 满意度统计报表
## 系统启动说明
### 后端启动
```bash
cd backend
# 安装依赖(如需要)
pip install -r requirements.txt
# 启动服务
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000
```
### 前端启动
```bash
cd frontend
# 安装依赖(如需要)
npm install
# 启动开发服务器
npm run dev
```
### 访问地址
- 前端http://localhost:5173
- API 文档http://localhost:8000/api/v1/docs
- 健康检查http://localhost:8000/health
### 默认账号
- 用户名:`admin`
- 密码:`admin123`
## API 测试示例
### 1. 获取科室绩效统计
```bash
curl -X GET "http://localhost:8000/api/v1/stats/department?period_year=2026&period_month=2" \
-H "Authorization: Bearer YOUR_TOKEN"
```
### 2. 获取 BSC 维度分析
```bash
curl -X GET "http://localhost:8000/api/v1/stats/bsc-dimension?period_year=2026&period_month=2" \
-H "Authorization: Bearer YOUR_TOKEN"
```
### 3. 获取绩效排名
```bash
curl -X GET "http://localhost:8000/api/v1/stats/ranking?period_year=2026&period_month=2&limit=10" \
-H "Authorization: Bearer YOUR_TOKEN"
```
### 4. 获取指标模板列表
```bash
curl -X GET "http://localhost:8000/api/v1/indicators/templates/list" \
-H "Authorization: Bearer YOUR_TOKEN"
```
### 5. 导入指标模板
```bash
curl -X POST "http://localhost:8000/api/v1/indicators/templates/import" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"template_name": "手术临床科室考核指标",
"dept_type": "clinical_surgical",
"indicators": [...]
}'
```
## 下一步工作计划
### 第一阶段前端更新1 周)
1. 更新指标管理页面
- 添加 BSC 维度选择器
- 添加新增字段表单
- 实现模板导入功能
2. 创建统计报表页面
- BSC 维度分析(雷达图)
- 科室绩效统计(排行榜)
- 趋势分析(折线图)
- 绩效排名(表格)
### 第二阶段工资核算1 周)
1. 创建数据模型
2. 实现计算服务
3. 开发管理页面
### 第三阶段满意度调查1 周)
1. 创建调查模块
2. 开发移动端页面
3. 实现统计报表
### 第四阶段测试优化1 周)
1. 功能测试
2. 性能优化
3. 文档完善
## 技术亮点
1. **平衡计分卡 (BSC) 应用**
- 四大维度全面考核
- 维度权重可配置
- 维度得分可视化
2. **指标模板化**
- 按科室类型预置指标
- 一键导入模板
- 支持自定义模板
3. **多维度统计**
- BSC 维度分析
- 科室对比统计
- 趋势分析
- 绩效排名
4. **一票否决机制**
- 支持配置否决指标
- 重大事故自动否决
- 符合医院管理实际
5. **灵活的考核流程**
- 草稿→提交→审核→确认
- 多级审核支持
- 状态可追溯
## 联系与支持
如有问题或建议,请参考:
- 项目文档:`docs/` 目录
- API 文档http://localhost:8000/api/v1/docs
- 设计文档:`docs/enhancement_design.md`