# 班主任考核指标体系管理模块开发文档 ## 📋 模块概述 **功能名称**: 班主任考核指标体系管理 **模块路径**: `/bzrkh/assessmentIndicator` **开发时间**: 2025-01-08 **技术架构**: 前后端分离 (Vue 3 + Spring Boot 3.4.6) ## 🎯 功能说明 该模块用于管理班主任考核的指标体系,支持树形结构的指标管理,包括指标类型、权重配置、评价设置等功能。 ### 主要功能 - ✅ 指标体系列表查询(支持分页) - ✅ 指标体系新增/修改/删除 - ✅ 指标类型关联(下拉选择) - ✅ 父级指标选择(树形选择器) - ✅ 权重比例配置(0-1之间) - ✅ 评价权限设置(自评/上级评) - ✅ 数据导出功能 - ✅ 树形结构展示 ## 📂 文件结构 ### 前端文件 (web/) ``` web/src/ ├── api/bzrkh/assessmentIndicator/ │ ├── index.ts # API接口定义 │ └── types.ts # TypeScript类型定义 └── views/bzrkh/assessmentIndicator/ └── index.vue # 主界面组件 ``` ### 后端文件 (backend/ruoyi-modules/ruoyi-bzrkh/) ``` src/main/java/org/dromara/bzrkh/ ├── controller/ │ └── BmzrAssessmentIndicatorController.java # 控制器 ├── service/ │ ├── IBmzrAssessmentIndicatorService.java # 服务接口 │ └── impl/ │ └── BmzrAssessmentIndicatorServiceImpl.java # 服务实现 ├── mapper/ │ └── BmzrAssessmentIndicatorMapper.java # 数据访问层 ├── domain/ │ ├── BmzrAssessmentIndicator.java # 实体类 │ ├── bo/ │ │ └── BmzrAssessmentIndicatorBo.java # 业务对象 │ └── vo/ │ └── BmzrAssessmentIndicatorVo.java # 视图对象 └── resources/mapper/bzrkh/ └── BmzrAssessmentIndicatorMapper.xml # MyBatis映射文件 ``` ### 配置文件 ``` backend/ruoyi-modules/ruoyi-bzrkh/ ├── 班主任考核指标体系管理权限配置.sql # 权限配置SQL └── 班主任考核指标体系开发文档.md # 本文档 ``` ## 🔐 权限配置 ### API权限字符 | 功能 | 权限字符 | 说明 | |------|----------|------| | 列表查询 | `bzrkh:assessmentIndicator:list` | 查询指标体系列表权限 | | 详情查询 | `bzrkh:assessmentIndicator:query` | 查询指标体系详情权限 | | 新增 | `bzrkh:assessmentIndicator:add` | 新增指标体系权限 | | 修改 | `bzrkh:assessmentIndicator:edit` | 修改指标体系权限 | | 删除 | `bzrkh:assessmentIndicator:remove` | 删除指标体系权限 | | 导出 | `bzrkh:assessmentIndicator:export` | 导出指标体系权限 | ### 菜单配置 - **主菜单**: 班主任考核指标体系 - **路由路径**: `assessmentIndicator` - **组件路径**: `bzrkh/assessmentIndicator/index` - **图标**: `tree` ## 🌐 API接口 ### 前端API方法 | 方法名 | 请求方式 | 路径 | 说明 | |--------|----------|------|------| | `listAssessmentIndicator` | GET | `/bzrkh/assessmentIndicator/list` | 查询列表 | | `getAssessmentIndicator` | GET | `/bzrkh/assessmentIndicator/{id}` | 查询详情 | | `addAssessmentIndicator` | POST | `/bzrkh/assessmentIndicator` | 新增 | | `updateAssessmentIndicator` | PUT | `/bzrkh/assessmentIndicator` | 修改 | | `delAssessmentIndicator` | DELETE | `/bzrkh/assessmentIndicator/{id}` | 删除 | | `getIndicatorTypeOptions` | GET | `/bzrkh/assessmentIndicatorType/listAllIncludeDeleted` | 指标类型选项 | | `getParentIndicatorOptions` | GET | `/bzrkh/assessmentIndicator/treeselect` | 父级指标选项 | ### 后端Controller方法 | 方法名 | 注解 | 说明 | |--------|------|------| | `list` | `@GetMapping("/list")` | 分页查询列表 | | `treeselect` | `@GetMapping("/treeselect")` | 树形结构查询 | | `getInfo` | `@GetMapping("/{id}")` | 详情查询 | | `add` | `@PostMapping()` | 新增 | | `edit` | `@PutMapping()` | 修改 | | `remove` | `@DeleteMapping("/{ids}")` | 删除 | | `export` | `@PostMapping("/export")` | 导出 | ## 📊 数据模型 ### 核心字段 | 字段名 | 类型 | 说明 | 验证规则 | |--------|------|------|----------| | `indicatorName` | String | 指标名称 | 必填 | | `indicatorCode` | String | 指标编码 | 必填,唯一 | | `indicatorType` | String | 指标类型 | 必填,关联指标类型表 | | `parentId` | Long | 父级指标ID | 可选,支持树形结构 | | `weightRatio` | BigDecimal | 权重比例 | 必填,0-1之间 | | `maxScore` | BigDecimal | 最高分值 | 必填,>=0 | | `score` | BigDecimal | 分值 | 必填,>=0 | | `allowSelfEvaluation` | String | 允许自评 | 必填,0=否 1=是 | | `allowSuperiorEvaluation` | String | 允许上级评 | 必填,0=否 1=是 | | `sortOrder` | Integer | 排序 | 必填,>=1 | | `status` | String | 状态 | 必填,0=正常 1=停用 | ## 🎨 界面特性 ### 查询条件 - 指标名称(模糊查询) - 指标编码(精确查询) - 指标类型(下拉选择) - 允许自评(是/否) - 允许上级评(是/否) - 状态(正常/停用) ### 表格展示 - 指标编码 - 指标名称 - 指标类型(显示类型名称) - 权重比例(百分比格式) - 最高分值 - 分值 - 排序 - 允许自评(字典显示) - 允许上级评(字典显示) - 状态(字典显示) - 备注 ### 表单字段 - 基本信息:指标编码、指标名称 - 分类信息:指标类型、父级指标 - 分值配置:权重比例、最高分值、分值、排序 - 权限设置:允许自评、允许上级评、状态 - 备注信息 ## 🔧 技术要点 ### 前端技术 - **Vue 3 + TypeScript**: 组件开发 - **Element Plus**: UI组件库 - **树形选择器**: 父级指标选择 - **数字输入框**: 精确的数值输入 - **字典转换**: 状态和评价权限显示 ### 后端技术 - **Spring Boot 3.4.6**: 框架 - **MyBatis-Plus**: ORM框架 - **Sa-Token**: 权限控制 - **Bean Validation**: 参数校验 - **树形结构**: 递归查询和构建 ### 数据特性 - **多租户支持**: TenantEntity继承 - **逻辑删除**: 软删除机制 - **审计字段**: 创建时间、更新时间等 - **树形结构**: 支持层级关系 ## 📋 部署说明 ### 1. 数据库 执行以下SQL文件: - `docs/设计文档/database/班主任考核管理/bmzr_assessment_tables.sql` - `docs/设计文档/database/班主任考核管理/bmzr_dict_data_mysql.sql` - `backend/ruoyi-modules/ruoyi-bzrkh/班主任考核指标体系管理权限配置.sql` ### 2. 后端 - 确保 `ruoyi-bzrkh` 模块已添加到主项目依赖 - 重启后端服务 ### 3. 前端 - 前端文件已放置在正确位置 - 重新编译前端项目 ### 4. 权限分配 - 管理员登录系统 - 进入权限管理,为相关角色分配权限 - 菜单路径:系统管理 → 权限管理 → 角色管理 ## ✅ 测试要点 ### 功能测试 - [ ] 指标体系列表查询 - [ ] 指标体系新增(各种场景) - [ ] 指标体系修改 - [ ] 指标体系删除(单个/批量) - [ ] 指标类型下拉加载 - [ ] 父级指标树形选择 - [ ] 数据导出 - [ ] 权限控制 ### 数据验证 - [ ] 权重比例范围验证(0-1) - [ ] 分值非负验证 - [ ] 必填字段验证 - [ ] 唯一性验证(指标编码) ## 📝 注意事项 1. **指标类型依赖**: 需要先配置指标类型数据 2. **权重配置**: 权重比例为0-1之间的小数 3. **树形结构**: 支持多级父子关系 4. **逻辑删除**: 删除操作为逻辑删除,可恢复 5. **权限控制**: 严格按照权限字符控制功能访问 --- **开发完成时间**: 2025-01-08 **版本**: V1.0.0 **状态**: ✅ 开发完成