316 lines
8.0 KiB
Markdown
316 lines
8.0 KiB
Markdown
# 医院绩效管理系统增强实施总结
|
||
|
||
## 已完成功能
|
||
|
||
### 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`
|