提交文件
This commit is contained in:
430
.qoder/repowiki/zh/content/项目概述/核心特性.md
Normal file
430
.qoder/repowiki/zh/content/项目概述/核心特性.md
Normal file
@@ -0,0 +1,430 @@
|
||||
# 核心特性
|
||||
|
||||
<cite>
|
||||
**本文引用的文件**
|
||||
- [backend/app/main.py](file://backend/app/main.py)
|
||||
- [backend/app/api/v1/performance_plans.py](file://backend/app/api/v1/performance_plans.py)
|
||||
- [backend/app/api/v1/assessments.py](file://backend/app/api/v1/assessments.py)
|
||||
- [backend/app/api/v1/salary.py](file://backend/app/api/v1/salary.py)
|
||||
- [backend/app/api/v1/stats.py](file://backend/app/api/v1/stats.py)
|
||||
- [backend/app/services/performance_plan_service.py](file://backend/app/services/performance_plan_service.py)
|
||||
- [backend/app/services/assessment_service.py](file://backend/app/services/assessment_service.py)
|
||||
- [backend/app/services/salary_service.py](file://backend/app/services/salary_service.py)
|
||||
- [backend/app/services/stats_service.py](file://backend/app/services/stats_service.py)
|
||||
- [backend/app/models/models.py](file://backend/app/models/models.py)
|
||||
- [backend/app/schemas/schemas.py](file://backend/app/schemas/schemas.py)
|
||||
- [frontend/src/views/assessment/Assessments.vue](file://frontend/src/views/assessment/Assessments.vue)
|
||||
- [frontend/src/views/reports/Reports.vue](file://frontend/src/views/reports/Reports.vue)
|
||||
- [frontend/src/views/salary/Salary.vue](file://frontend/src/views/salary/Salary.vue)
|
||||
- [frontend/src/views/basic/Templates.vue](file://frontend/src/views/basic/Templates.vue)
|
||||
</cite>
|
||||
|
||||
## 目录
|
||||
1. [简介](#简介)
|
||||
2. [项目结构](#项目结构)
|
||||
3. [核心组件](#核心组件)
|
||||
4. [架构总览](#架构总览)
|
||||
5. [详细组件分析](#详细组件分析)
|
||||
6. [依赖关系分析](#依赖关系分析)
|
||||
7. [性能考虑](#性能考虑)
|
||||
8. [故障排查指南](#故障排查指南)
|
||||
9. [结论](#结论)
|
||||
10. [附录](#附录)
|
||||
|
||||
## 简介
|
||||
本系统围绕“医院绩效管理系统”的核心业务目标,提供以下关键能力:
|
||||
- 平衡计分卡(BSC)多维度考核:支持财务、客户、内部流程、学习与成长四个维度的指标采集与加权统计。
|
||||
- 完整的绩效考核流程管理:覆盖草稿、提交、审核、确认的全流程闭环,支持批量创建与批量处理。
|
||||
- 智能工资核算计算:基于考核加权得分与员工绩效系数自动计算绩效奖金,支持批量生成与批量确认。
|
||||
- 丰富的数据分析报表:提供维度分析、科室统计、趋势分析、排名、指标完成度等多维报表。
|
||||
- 灵活的权限控制系统:通过角色与菜单权限控制访问范围,保障数据安全。
|
||||
|
||||
系统同时具备良好的扩展性与定制能力,支持指标模板管理、流程自定义、报表定制等,满足不同科室与医院的差异化需求。
|
||||
|
||||
## 项目结构
|
||||
后端采用 FastAPI + SQLAlchemy 2.0 + PostgreSQL 的现代化架构,按功能域划分 API、服务层、模型与数据结构;前端采用 Vue 3 + Element Plus + ECharts 实现交互式报表与工作流操作。
|
||||
|
||||
```mermaid
|
||||
graph TB
|
||||
subgraph "后端"
|
||||
A["FastAPI 应用<br/>app/main.py"]
|
||||
B["API 路由层<br/>api/v1/*"]
|
||||
C["服务层<br/>services/*"]
|
||||
D["数据模型<br/>models/models.py"]
|
||||
E["数据结构<br/>schemas/schemas.py"]
|
||||
end
|
||||
subgraph "前端"
|
||||
F["考核管理<br/>Assessments.vue"]
|
||||
G["报表中心<br/>Reports.vue"]
|
||||
H["工资管理<br/>Salary.vue"]
|
||||
I["模板管理<br/>Templates.vue"]
|
||||
end
|
||||
A --> B --> C --> D
|
||||
B --> E
|
||||
F --> B
|
||||
G --> B
|
||||
H --> B
|
||||
I --> B
|
||||
```
|
||||
|
||||
图示来源
|
||||
- [backend/app/main.py](file://backend/app/main.py#L15-L77)
|
||||
- [backend/app/api/v1/performance_plans.py](file://backend/app/api/v1/performance_plans.py#L1-L310)
|
||||
- [backend/app/api/v1/assessments.py](file://backend/app/api/v1/assessments.py#L1-L166)
|
||||
- [backend/app/api/v1/salary.py](file://backend/app/api/v1/salary.py#L1-L156)
|
||||
- [backend/app/api/v1/stats.py](file://backend/app/api/v1/stats.py#L1-L242)
|
||||
- [backend/app/services/performance_plan_service.py](file://backend/app/services/performance_plan_service.py#L1-L342)
|
||||
- [backend/app/services/assessment_service.py](file://backend/app/services/assessment_service.py#L1-L263)
|
||||
- [backend/app/services/salary_service.py](file://backend/app/services/salary_service.py#L1-L260)
|
||||
- [backend/app/services/stats_service.py](file://backend/app/services/stats_service.py#L1-L300)
|
||||
- [backend/app/models/models.py](file://backend/app/models/models.py#L1-L438)
|
||||
- [backend/app/schemas/schemas.py](file://backend/app/schemas/schemas.py#L1-L743)
|
||||
- [frontend/src/views/assessment/Assessments.vue](file://frontend/src/views/assessment/Assessments.vue#L1-L311)
|
||||
- [frontend/src/views/reports/Reports.vue](file://frontend/src/views/reports/Reports.vue#L1-L367)
|
||||
- [frontend/src/views/salary/Salary.vue](file://frontend/src/views/salary/Salary.vue#L1-L335)
|
||||
- [frontend/src/views/basic/Templates.vue](file://frontend/src/views/basic/Templates.vue#L1-L638)
|
||||
|
||||
章节来源
|
||||
- [backend/app/main.py](file://backend/app/main.py#L19-L39)
|
||||
- [backend/app/api/v1/performance_plans.py](file://backend/app/api/v1/performance_plans.py#L18-L310)
|
||||
- [backend/app/api/v1/assessments.py](file://backend/app/api/v1/assessments.py#L17-L166)
|
||||
- [backend/app/api/v1/salary.py](file://backend/app/api/v1/salary.py#L17-L156)
|
||||
- [backend/app/api/v1/stats.py](file://backend/app/api/v1/stats.py#L14-L242)
|
||||
- [frontend/src/views/assessment/Assessments.vue](file://frontend/src/views/assessment/Assessments.vue#L1-L311)
|
||||
- [frontend/src/views/reports/Reports.vue](file://frontend/src/views/reports/Reports.vue#L1-L367)
|
||||
- [frontend/src/views/salary/Salary.vue](file://frontend/src/views/salary/Salary.vue#L1-L335)
|
||||
- [frontend/src/views/basic/Templates.vue](file://frontend/src/views/basic/Templates.vue#L1-L638)
|
||||
|
||||
## 核心组件
|
||||
- 平衡计分卡(BSC)多维度考核:通过指标维度字段与加权得分计算,支持按维度聚合统计与可视化。
|
||||
- 绩效考核流程管理:提供草稿、提交、审核、确认的四级状态机,支持批量创建与批量处理。
|
||||
- 工资核算与发放:依据考核加权得分与员工绩效系数计算绩效奖金,支持批量生成与批量确认。
|
||||
- 数据分析与报表:提供维度分析、科室统计、趋势分析、排名、指标完成度等报表接口与前端图表。
|
||||
- 指标模板管理:支持模板类型、维度权重、指标集合的维护,便于快速复制与推广。
|
||||
- 权限控制:基于用户角色与菜单权限,限制对敏感流程与报表的访问。
|
||||
|
||||
章节来源
|
||||
- [backend/app/models/models.py](file://backend/app/models/models.py#L29-L35)
|
||||
- [backend/app/services/assessment_service.py](file://backend/app/services/assessment_service.py#L71-L156)
|
||||
- [backend/app/services/salary_service.py](file://backend/app/services/salary_service.py#L127-L190)
|
||||
- [backend/app/services/stats_service.py](file://backend/app/services/stats_service.py#L19-L72)
|
||||
- [frontend/src/views/assessment/Assessments.vue](file://frontend/src/views/assessment/Assessments.vue#L178-L292)
|
||||
- [frontend/src/views/reports/Reports.vue](file://frontend/src/views/reports/Reports.vue#L134-L308)
|
||||
- [frontend/src/views/salary/Salary.vue](file://frontend/src/views/salary/Salary.vue#L190-L311)
|
||||
- [frontend/src/views/basic/Templates.vue](file://frontend/src/views/basic/Templates.vue#L356-L572)
|
||||
|
||||
## 架构总览
|
||||
系统采用前后端分离架构,后端提供 RESTful API,前端通过 Element Plus 与 ECharts 进行交互与可视化展示。数据模型统一定义于 SQLAlchemy,服务层封装业务逻辑,API 层负责请求解析与响应格式化。
|
||||
|
||||
```mermaid
|
||||
graph TB
|
||||
FE["前端界面<br/>Assessments/Reports/Salary/Templates"]
|
||||
API["API 路由层<br/>performance_plans/assessments/salary/stats"]
|
||||
SVC["服务层<br/>performance_plan/assessment/salary/stats"]
|
||||
ORM["数据模型<br/>SQLAlchemy Models"]
|
||||
DB["数据库<br/>PostgreSQL"]
|
||||
FE --> API --> SVC --> ORM --> DB
|
||||
DB --> ORM --> SVC --> API --> FE
|
||||
```
|
||||
|
||||
图示来源
|
||||
- [backend/app/main.py](file://backend/app/main.py#L15-L77)
|
||||
- [backend/app/api/v1/performance_plans.py](file://backend/app/api/v1/performance_plans.py#L18-L310)
|
||||
- [backend/app/api/v1/assessments.py](file://backend/app/api/v1/assessments.py#L17-L166)
|
||||
- [backend/app/api/v1/salary.py](file://backend/app/api/v1/salary.py#L17-L156)
|
||||
- [backend/app/api/v1/stats.py](file://backend/app/api/v1/stats.py#L14-L242)
|
||||
- [backend/app/services/performance_plan_service.py](file://backend/app/services/performance_plan_service.py#L15-L342)
|
||||
- [backend/app/services/assessment_service.py](file://backend/app/services/assessment_service.py#L14-L263)
|
||||
- [backend/app/services/salary_service.py](file://backend/app/services/salary_service.py#L14-L260)
|
||||
- [backend/app/services/stats_service.py](file://backend/app/services/stats_service.py#L16-L300)
|
||||
- [backend/app/models/models.py](file://backend/app/models/models.py#L1-L438)
|
||||
|
||||
## 详细组件分析
|
||||
|
||||
### 平衡计分卡(BSC)多维度考核
|
||||
- 功能亮点
|
||||
- 指标维度:财务、客户、内部流程、学习与成长四维,支持按维度聚合与加权平均。
|
||||
- 统计接口:提供维度得分、指标完成度、趋势分析等报表。
|
||||
- 可视化:前端集成 ECharts,支持柱状图、饼图等展示。
|
||||
- 技术实现
|
||||
- 模型层定义维度枚举与指标权重字段。
|
||||
- 服务层按维度聚合计算总分与权重,并输出平均分。
|
||||
- API 层提供维度分析与指标完成度接口。
|
||||
- 业务价值
|
||||
- 帮助管理者从多维度审视运营成效,识别薄弱环节,指导资源投入与改进方向。
|
||||
|
||||
```mermaid
|
||||
flowchart TD
|
||||
Start(["开始"]) --> Load["加载考核数据<br/>按维度与权重聚合"]
|
||||
Load --> Calc["计算维度总分/权重/平均分"]
|
||||
Calc --> Output["输出维度统计结果"]
|
||||
Output --> Chart["前端渲染图表"]
|
||||
Chart --> End(["结束"])
|
||||
```
|
||||
|
||||
图示来源
|
||||
- [backend/app/services/stats_service.py](file://backend/app/services/stats_service.py#L19-L72)
|
||||
- [backend/app/api/v1/stats.py](file://backend/app/api/v1/stats.py#L17-L33)
|
||||
- [frontend/src/views/reports/Reports.vue](file://frontend/src/views/reports/Reports.vue#L183-L295)
|
||||
|
||||
章节来源
|
||||
- [backend/app/models/models.py](file://backend/app/models/models.py#L29-L35)
|
||||
- [backend/app/services/stats_service.py](file://backend/app/services/stats_service.py#L19-L72)
|
||||
- [backend/app/api/v1/stats.py](file://backend/app/api/v1/stats.py#L17-L33)
|
||||
- [frontend/src/views/reports/Reports.vue](file://frontend/src/views/reports/Reports.vue#L183-L295)
|
||||
|
||||
### 绩效考核流程管理
|
||||
- 功能亮点
|
||||
- 流程状态:草稿、已提交、已审核、已确认、已驳回,支持逐级流转。
|
||||
- 批量能力:支持批量创建考核、批量生成工资、批量确认工资。
|
||||
- 明细管理:支持按指标维度录入实际值与得分,自动计算总分与加权得分。
|
||||
- 技术实现
|
||||
- 服务层封装状态机与明细计算逻辑。
|
||||
- API 层提供提交、审核、确认等动作接口。
|
||||
- 前端提供工作流操作按钮与批量处理入口。
|
||||
- 业务价值
|
||||
- 规范考核流程,提升效率与透明度,减少人工干预与错误。
|
||||
|
||||
```mermaid
|
||||
sequenceDiagram
|
||||
participant U as "用户"
|
||||
participant FE as "前端界面"
|
||||
participant API as "API 路由"
|
||||
participant SVC as "服务层"
|
||||
participant DB as "数据库"
|
||||
U->>FE : 选择科室/周期/指标
|
||||
FE->>API : POST /assessments/batch-create
|
||||
API->>SVC : 批量创建考核
|
||||
SVC->>DB : 插入Assessment与Details
|
||||
SVC-->>API : 返回创建结果
|
||||
API-->>FE : 列表刷新
|
||||
FE->>U : 展示草稿状态
|
||||
U->>FE : 提交/审核/确认
|
||||
FE->>API : POST /assessments/{id}/submit 或 /review 或 /finalize
|
||||
API->>SVC : 更新状态
|
||||
SVC->>DB : 写入状态与时间戳
|
||||
SVC-->>API : 返回成功
|
||||
API-->>FE : 刷新状态
|
||||
```
|
||||
|
||||
图示来源
|
||||
- [backend/app/api/v1/assessments.py](file://backend/app/api/v1/assessments.py#L148-L166)
|
||||
- [backend/app/services/assessment_service.py](file://backend/app/services/assessment_service.py#L208-L262)
|
||||
- [frontend/src/views/assessment/Assessments.vue](file://frontend/src/views/assessment/Assessments.vue#L257-L286)
|
||||
|
||||
章节来源
|
||||
- [backend/app/api/v1/assessments.py](file://backend/app/api/v1/assessments.py#L17-L166)
|
||||
- [backend/app/services/assessment_service.py](file://backend/app/services/assessment_service.py#L17-L263)
|
||||
- [frontend/src/views/assessment/Assessments.vue](file://frontend/src/views/assessment/Assessments.vue#L178-L292)
|
||||
|
||||
### 智能工资核算计算
|
||||
- 功能亮点
|
||||
- 自动计算:基于考核加权得分与员工绩效系数计算绩效奖金。
|
||||
- 批量生成:按科室批量生成工资记录,支持批量确认。
|
||||
- 可编辑:支持对绩效奖金、补贴、扣款进行微调。
|
||||
- 技术实现
|
||||
- 服务层封装奖金计算与记录生成逻辑。
|
||||
- API 层提供生成、确认、批量处理接口。
|
||||
- 前端提供编辑弹窗与批量操作按钮。
|
||||
- 业务价值
|
||||
- 减少手工计算误差,提高薪酬发放效率与一致性。
|
||||
|
||||
```mermaid
|
||||
flowchart TD
|
||||
S(["开始"]) --> Fetch["读取已确认考核记录"]
|
||||
Fetch --> Calc["计算绩效奖金 = 基数×(得分/100)×系数"]
|
||||
Calc --> Create["创建工资记录(含基本工资+奖金)"]
|
||||
Create --> Pending["状态=待确认"]
|
||||
Pending --> Confirm["批量确认/手动确认"]
|
||||
Confirm --> Pay["薪酬发放"]
|
||||
Pay --> E(["结束"])
|
||||
```
|
||||
|
||||
图示来源
|
||||
- [backend/app/services/salary_service.py](file://backend/app/services/salary_service.py#L127-L190)
|
||||
- [backend/app/api/v1/salary.py](file://backend/app/api/v1/salary.py#L96-L156)
|
||||
- [frontend/src/views/salary/Salary.vue](file://frontend/src/views/salary/Salary.vue#L247-L306)
|
||||
|
||||
章节来源
|
||||
- [backend/app/services/salary_service.py](file://backend/app/services/salary_service.py#L17-L190)
|
||||
- [backend/app/api/v1/salary.py](file://backend/app/api/v1/salary.py#L71-L156)
|
||||
- [frontend/src/views/salary/Salary.vue](file://frontend/src/views/salary/Salary.vue#L190-L311)
|
||||
|
||||
### 丰富的数据分析报表
|
||||
- 功能亮点
|
||||
- 维度分析:按财务、客户、内部流程、学习与成长维度统计得分。
|
||||
- 科室统计:按科室汇总平均分、员工数、奖金总额等。
|
||||
- 趋势分析:按月度展示平均得分与加权得分趋势。
|
||||
- 排名:按加权得分对员工进行排名。
|
||||
- 指标完成度:统计指标平均分与完成率。
|
||||
- 技术实现
|
||||
- 服务层聚合统计并返回结构化数据。
|
||||
- API 层提供多类统计接口。
|
||||
- 前端使用 ECharts 渲染图表与表格。
|
||||
- 业务价值
|
||||
- 为管理层提供决策依据,及时发现异常与改进机会。
|
||||
|
||||
```mermaid
|
||||
sequenceDiagram
|
||||
participant U as "用户"
|
||||
participant FE as "报表页面"
|
||||
participant API as "统计接口"
|
||||
participant SVC as "统计服务"
|
||||
participant DB as "数据库"
|
||||
U->>FE : 选择统计周期
|
||||
FE->>API : GET /stats/department
|
||||
API->>SVC : 聚合科室统计
|
||||
SVC->>DB : 查询/聚合
|
||||
SVC-->>API : 返回统计结果
|
||||
API-->>FE : 渲染表格与图表
|
||||
FE-->>U : 展示维度分析/趋势/排名
|
||||
```
|
||||
|
||||
图示来源
|
||||
- [backend/app/api/v1/stats.py](file://backend/app/api/v1/stats.py#L36-L242)
|
||||
- [backend/app/services/stats_service.py](file://backend/app/services/stats_service.py#L75-L146)
|
||||
- [frontend/src/views/reports/Reports.vue](file://frontend/src/views/reports/Reports.vue#L134-L171)
|
||||
|
||||
章节来源
|
||||
- [backend/app/api/v1/stats.py](file://backend/app/api/v1/stats.py#L17-L242)
|
||||
- [backend/app/services/stats_service.py](file://backend/app/services/stats_service.py#L16-L300)
|
||||
- [frontend/src/views/reports/Reports.vue](file://frontend/src/views/reports/Reports.vue#L134-L308)
|
||||
|
||||
### 指标模板管理(扩展与定制)
|
||||
- 功能亮点
|
||||
- 模板类型:通用、手术临床、非手术有病房、非手术无病房、医技、护理、行政、后勤等。
|
||||
- 维度权重:支持为模板配置财务、客户、内部流程、学习与成长权重。
|
||||
- 指标集合:支持为模板添加/编辑/移除指标,设置目标值、权重、评分方法等。
|
||||
- 技术实现
|
||||
- 模型层定义模板与模板指标关联。
|
||||
- 服务层提供模板 CRUD 与指标管理。
|
||||
- 前端提供模板列表、详情、编辑与指标管理界面。
|
||||
- 业务价值
|
||||
- 快速复制成熟模板,降低指标设计成本,提升一致性与可复用性。
|
||||
|
||||
```mermaid
|
||||
classDiagram
|
||||
class IndicatorTemplate {
|
||||
+template_name
|
||||
+template_code
|
||||
+template_type
|
||||
+dimension_weights
|
||||
+assessment_cycle
|
||||
}
|
||||
class TemplateIndicator {
|
||||
+indicator_id
|
||||
+category
|
||||
+target_value
|
||||
+weight
|
||||
+scoring_method
|
||||
}
|
||||
IndicatorTemplate "1" o-- "many" TemplateIndicator : "包含"
|
||||
```
|
||||
|
||||
图示来源
|
||||
- [backend/app/models/models.py](file://backend/app/models/models.py#L387-L438)
|
||||
- [backend/app/schemas/schemas.py](file://backend/app/schemas/schemas.py#L698-L743)
|
||||
- [frontend/src/views/basic/Templates.vue](file://frontend/src/views/basic/Templates.vue#L356-L572)
|
||||
|
||||
章节来源
|
||||
- [backend/app/models/models.py](file://backend/app/models/models.py#L387-L438)
|
||||
- [backend/app/schemas/schemas.py](file://backend/app/schemas/schemas.py#L640-L743)
|
||||
- [frontend/src/views/basic/Templates.vue](file://frontend/src/views/basic/Templates.vue#L356-L638)
|
||||
|
||||
### 权限控制系统(扩展与定制)
|
||||
- 功能亮点
|
||||
- 角色与菜单:支持管理员、经理、普通员工等角色,菜单权限控制。
|
||||
- 操作权限:部分流程(提交、审核、确认、生成、确认工资)需具备相应角色。
|
||||
- 技术实现
|
||||
- 安全中间件与依赖注入校验当前用户与角色。
|
||||
- API 层通过装饰器限制操作权限。
|
||||
- 业务价值
|
||||
- 确保流程合规与数据安全,防止越权操作。
|
||||
|
||||
章节来源
|
||||
- [backend/app/api/v1/performance_plans.py](file://backend/app/api/v1/performance_plans.py#L194-L225)
|
||||
- [backend/app/api/v1/assessments.py](file://backend/app/api/v1/assessments.py#L105-L132)
|
||||
- [backend/app/api/v1/salary.py](file://backend/app/api/v1/salary.py#L71-L93)
|
||||
|
||||
## 依赖关系分析
|
||||
- 组件耦合
|
||||
- API 层仅依赖服务层接口,职责清晰,便于测试与替换。
|
||||
- 服务层依赖模型层进行数据持久化,避免直接操作数据库。
|
||||
- 前端通过 API 层与后端交互,不直接依赖服务层。
|
||||
- 外部依赖
|
||||
- 数据库:PostgreSQL,ORM:SQLAlchemy。
|
||||
- Web:FastAPI,异步 IO 支持。
|
||||
- 前端:Vue 3、Element Plus、ECharts。
|
||||
- 潜在风险
|
||||
- 统计查询复杂度随数据量增长而上升,建议在关键字段建立索引与缓存策略。
|
||||
|
||||
```mermaid
|
||||
graph LR
|
||||
FE["前端"] --> API["API 路由"]
|
||||
API --> SVC["服务层"]
|
||||
SVC --> ORM["SQLAlchemy 模型"]
|
||||
ORM --> DB["PostgreSQL"]
|
||||
```
|
||||
|
||||
图示来源
|
||||
- [backend/app/main.py](file://backend/app/main.py#L15-L77)
|
||||
- [backend/app/models/models.py](file://backend/app/models/models.py#L1-L438)
|
||||
- [backend/app/services/performance_plan_service.py](file://backend/app/services/performance_plan_service.py#L15-L342)
|
||||
- [backend/app/services/assessment_service.py](file://backend/app/services/assessment_service.py#L14-L263)
|
||||
- [backend/app/services/salary_service.py](file://backend/app/services/salary_service.py#L14-L260)
|
||||
- [backend/app/services/stats_service.py](file://backend/app/services/stats_service.py#L16-L300)
|
||||
|
||||
章节来源
|
||||
- [backend/app/models/models.py](file://backend/app/models/models.py#L1-L438)
|
||||
- [backend/app/services/performance_plan_service.py](file://backend/app/services/performance_plan_service.py#L15-L342)
|
||||
- [backend/app/services/assessment_service.py](file://backend/app/services/assessment_service.py#L14-L263)
|
||||
- [backend/app/services/salary_service.py](file://backend/app/services/salary_service.py#L14-L260)
|
||||
- [backend/app/services/stats_service.py](file://backend/app/services/stats_service.py#L16-L300)
|
||||
|
||||
## 性能考虑
|
||||
- 查询优化
|
||||
- 对常用筛选字段(如状态、周期、部门)建立索引,减少全表扫描。
|
||||
- 使用分页与子查询统计总数,避免一次性加载大量数据。
|
||||
- 计算优化
|
||||
- 工资计算与统计聚合尽量在服务层一次性完成,减少往返次数。
|
||||
- 对高频报表(如维度分析、趋势分析)引入缓存或物化视图。
|
||||
- 前端体验
|
||||
- 使用虚拟滚动与懒加载展示长列表,提升交互流畅度。
|
||||
- 图表渲染采用防抖与 resize 监听,避免频繁重绘。
|
||||
|
||||
## 故障排查指南
|
||||
- 常见问题
|
||||
- 状态不可逆:若状态非草稿或非已提交,提交/审核/确认接口会返回失败。
|
||||
- 重复生成:若已存在对应周期的工资记录,生成接口会拒绝重复创建。
|
||||
- 权限不足:提交、审核、确认、生成、确认工资等接口需具备相应角色。
|
||||
- 定位方法
|
||||
- 查看后端日志与异常捕获,定位具体错误原因。
|
||||
- 前端检查请求参数与响应状态码,确认必填项与格式。
|
||||
- 处理建议
|
||||
- 对状态机错误,先刷新页面查看最新状态再执行后续操作。
|
||||
- 对权限错误,确认当前用户角色与菜单权限配置。
|
||||
|
||||
章节来源
|
||||
- [backend/app/api/v1/assessments.py](file://backend/app/api/v1/assessments.py#L105-L132)
|
||||
- [backend/app/api/v1/salary.py](file://backend/app/api/v1/salary.py#L96-L110)
|
||||
- [backend/app/main.py](file://backend/app/main.py#L58-L75)
|
||||
|
||||
## 结论
|
||||
本系统以平衡计分卡为核心,贯通“计划—考核—工资—报表—模板—权限”全链路,既满足标准化管理需求,又提供灵活的扩展与定制能力。通过前后端分离与模块化设计,系统具备良好的可维护性与可扩展性,适合在不同规模与类型的医院落地应用。
|
||||
|
||||
## 附录
|
||||
- 使用场景与案例
|
||||
- 场景一:月度绩效考核
|
||||
- 操作:管理员批量创建考核 → 考核人提交 → 主管审核 → 确认 → 自动生成工资 → 批量确认 → 发放。
|
||||
- 价值:缩短考核周期,提升薪酬发放效率。
|
||||
- 场景二:维度分析与改进
|
||||
- 操作:查看维度分析 → 识别低分维度 → 下发改进计划 → 模板化固化 → 跟踪趋势。
|
||||
- 价值:驱动持续改进,提升整体运营水平。
|
||||
- 场景三:模板复用与推广
|
||||
- 操作:选择成熟模板 → 调整权重与指标 → 应用到新科室 → 批量生成考核 → 统一口径。
|
||||
- 价值:降低设计成本,提升一致性与可比性。
|
||||
|
||||
章节来源
|
||||
- [frontend/src/views/assessment/Assessments.vue](file://frontend/src/views/assessment/Assessments.vue#L257-L286)
|
||||
- [frontend/src/views/reports/Reports.vue](file://frontend/src/views/reports/Reports.vue#L134-L171)
|
||||
- [frontend/src/views/basic/Templates.vue](file://frontend/src/views/basic/Templates.vue#L356-L572)
|
||||
Reference in New Issue
Block a user