feat(hrm): 新增员工紧急联系人管理功能

完成员工紧急联系人模块的全流程开发,包括:
1. 数据库表结构、Mapper、Service、Controller后端代码
2. 前端页面、API接口、导入导出功能
3. 配套SQL脚本、导入模板与使用文档
4. 支持批量导入导出、数据校验与用户关联匹配
This commit is contained in:
2026-05-26 19:19:12 +08:00
parent 81e529a2dd
commit 12076c5d0b
19 changed files with 1509 additions and 0 deletions

View File

@@ -0,0 +1,115 @@
# 紧急联系人菜单手动添加指南
## 第一步清理脏数据在Navicat/DBeaver中执行
```sql
-- 先查询确认
SELECT menu_id, menu_name, parent_id, perms, create_time
FROM sys_menu
WHERE menu_name = '紧急联系人'
OR perms LIKE 'hrm:emergencyContact:%';
-- 确认无误后再执行删除
DELETE FROM sys_menu
WHERE menu_name = '紧急联系人'
OR perms LIKE 'hrm:emergencyContact:%';
```
---
## 第二步:在若依系统菜单管理中手动添加
### 1. 添加主菜单
进入 **系统管理 → 菜单管理**,点击【新增】按钮,填写以下信息:
| 字段 | 值 |
|------|-----|
| 上级菜单 | 人事中心(或你想要的父菜单) |
| 菜单类型 | 菜单 |
| 菜单图标 | user |
| 菜单名称 | 紧急联系人 |
| 显示排序 | 99 |
| 是否外链 | 否 |
| 路由地址 | emergencyContact |
| 组件路径 | hrm/emergencyContact/index |
| 权限字符 | hrm:emergencyContact:list |
| 路由参数 | (留空) |
| 是否缓存 | 缓存 |
| 显示状态 | 显示 |
| 菜单状态 | 正常 |
点击【确定】保存。
---
### 2. 添加按钮权限
主菜单添加成功后,在菜单列表中找到【紧急联系人】,点击右侧的【新增】按钮(添加子菜单/按钮)。
需要添加以下6个按钮权限
#### ① 查询按钮
- 菜单类型:按钮
- 菜单名称:查询
- 显示排序1
- 权限字符hrm:emergencyContact:query
- 显示状态:显示
- 菜单状态:正常
#### ② 新增按钮
- 菜单类型:按钮
- 菜单名称:新增
- 显示排序2
- 权限字符hrm:emergencyContact:add
- 显示状态:显示
- 菜单状态:正常
#### ③ 修改按钮
- 菜单类型:按钮
- 菜单名称:修改
- 显示排序3
- 权限字符hrm:emergencyContact:edit
- 显示状态:显示
- 菜单状态:正常
#### ④ 删除按钮
- 菜单类型:按钮
- 菜单名称:删除
- 显示排序4
- 权限字符hrm:emergencyContact:remove
- 显示状态:显示
- 菜单状态:正常
#### ⑤ 导出按钮
- 菜单类型:按钮
- 菜单名称:导出
- 显示排序5
- 权限字符hrm:emergencyContact:export
- 显示状态:显示
- 菜单状态:正常
#### ⑥ 导入按钮
- 菜单类型:按钮
- 菜单名称:导入
- 显示排序6
- 权限字符hrm:emergencyContact:import
- 显示状态:显示
- 菜单状态:正常
---
## 第三步:刷新系统
1. 添加完成后,**退出登录**或 **刷新页面**
2. 重新登录后,在对应父菜单下应该能看到【紧急联系人】菜单
3. 进入菜单测试功能是否正常
---
## 注意事项
1. **上级菜单选择**:如果想放在"人事中心"下,就选择"人事中心";如果想放在顶级,就选择"主类目"
2. **权限字符**:必须严格按照 `hrm:emergencyContact:list``hrm:emergencyContact:query` 等格式填写
3. **路由地址**:必须与前端路由配置一致,这里是 `emergencyContact`
4. **组件路径**:必须与前端组件路径一致,这里是 `hrm/emergencyContact/index`