Files
ccdi/doc/数据库文档/员工调动记录/SQL执行报告.md
2026-02-11 10:42:38 +08:00

255 lines
7.8 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 员工调动记录模块 - SQL执行报告
**执行时间**: 2026-02-10
**数据库**: ccdi (116.62.17.81:3306)
**执行人**: admin
---
## ✅ 执行概览
| 脚本名称 | 执行状态 | 影响行数 | 说明 |
|---------|---------|---------|------|
| 01_create_table.sql | ✅ 成功 | - | 创建ccdi_staff_transfer表 |
| 02_dict_data.sql | ✅ 成功 | 11行 | 插入字典类型+10条字典数据 |
| 03_menu_permission.sql | ✅ 成功 | 7行 | 插入主菜单+6个按钮权限 |
| **总计** | **✅ 全部成功** | **18行** | **3个脚本全部执行成功** |
---
## 1⃣ 建表SQL (01_create_table.sql)
### 执行结果: ✅ 成功
**表名**: `ccdi_staff_transfer`
**表结构验证**:
- ✅ 19个字段全部创建成功
- ✅ 主键id (自增)
- ✅ 5个索引创建成功:
- idx_staff_id
- idx_transfer_type
- idx_transfer_date
- idx_dept_before
- idx_dept_after
**字段列表**:
| 字段名 | 类型 | 说明 |
|--------|------|------|
| id | bigint(20) | 主键ID (自增) |
| staff_id | bigint(20) | 员工ID (NOT NULL) |
| transfer_type | varchar(50) | 调动类型 |
| transfer_sub_type | varchar(100) | 调动子类型 |
| dept_id_before | bigint(20) | 调动前部门ID |
| dept_name_before | varchar(200) | 调动前部门 |
| grade_before | varchar(50) | 调动前职级 |
| position_before | varchar(100) | 调动前岗位 |
| salary_level_before | varchar(50) | 调动前薪酬等级 |
| dept_id_after | bigint(20) | 调动后部门ID |
| dept_name_after | varchar(200) | 调动后部门 |
| grade_after | varchar(50) | 调动后职级 |
| position_after | varchar(100) | 调动后岗位 |
| salary_level_after | varchar(50) | 调动后薪酬等级 |
| transfer_date | date | 调动日期 |
| create_time | datetime | 记录创建时间 (自动) |
| update_time | datetime | 记录更新时间 (自动更新) |
| created_by | varchar(100) | 创建人 (NOT NULL) |
| updated_by | varchar(100) | 更新人 |
---
## 2⃣ 字典数据SQL (02_dict_data.sql)
### 执行结果: ✅ 成功
**影响行数**: 11行 (1个字典类型 + 10条字典数据)
#### 2.1 字典类型
| dict_id | dict_name | dict_type | status |
|---------|-----------|-----------|--------|
| 113 | 调动类型 | ccdi_transfer_type | 0 (正常) |
#### 2.2 字典数据 (10条)
| dict_code | dict_sort | dict_label | dict_value | list_class |
|-----------|-----------|-----------|------------|------------|
| 150 | 1 | 升职 | PROMOTION | primary |
| 151 | 2 | 降职 | DEMOPTION | danger |
| 152 | 3 | 平调 | LATERAL | info |
| 153 | 4 | 轮岗 | ROTATION | warning |
| 154 | 5 | 借调 | SECONDMENT | default |
| 155 | 6 | 部门调动 | DEPARTMENT_CHANGE | success |
| 156 | 7 | 职位调整 | POSITION_CHANGE | primary |
| 157 | 8 | 返岗 | RETURN | info |
| 158 | 9 | 离职 | TERMINATION | danger |
| 159 | 10 | 其他 | OTHER | default |
**验证结果**: ✅ 10条字典数据全部正确插入
---
## 3⃣ 菜单权限SQL (03_menu_permission.sql)
### 执行结果: ✅ 成功
**影响行数**: 7行 (1个主菜单 + 6个按钮权限)
#### 3.1 主菜单
| menu_id | menu_name | parent_id | path | component | menu_type |
|---------|-----------|-----------|------|-----------|-----------|
| 2060 | 员工调动记录 | 2000 (信息维护) | staffTransfer | ccdiStaffTransfer/index | C (菜单) |
#### 3.2 按钮权限 (6个)
| menu_id | menu_name | parent_id | perms | 说明 |
|---------|-----------|-----------|-------|------|
| 2061 | 员工调动记录查询 | 2060 | ccdi:staffTransfer:query | 查询权限 |
| 2062 | 员工调动记录新增 | 2060 | ccdi:staffTransfer:add | 新增权限 |
| 2063 | 员工调动记录修改 | 2060 | ccdi:staffTransfer:edit | 修改权限 |
| 2064 | 员工调动记录删除 | 2060 | ccdi:staffTransfer:remove | 删除权限 |
| 2065 | 员工调动记录导出 | 2060 | ccdi:staffTransfer:export | 导出权限 |
| 2066 | 员工调动记录导入 | 2060 | ccdi:staffTransfer:import | 导入权限 |
**验证结果**: ✅ 1个主菜单 + 6个按钮权限全部正确插入
---
## 📊 执行统计
### 数据库对象统计
| 对象类型 | 数量 | 详情 |
|---------|------|------|
| 数据表 | 1 | ccdi_staff_transfer |
| 索引 | 5 | 主键 + 4个业务索引 |
| 字典类型 | 1 | ccdi_transfer_type |
| 字典数据 | 10 | 10种调动类型 |
| 菜单 | 7 | 1个主菜单 + 6个按钮权限 |
### SQL语句统计
| SQL类型 | 数量 |
|---------|------|
| CREATE TABLE | 1 |
| INSERT | 3 (字典类型、字典数据、菜单) |
| 总计 | 4条SQL语句 |
---
## ✅ 验证检查清单
- [x] 表结构验证: ccdi_staff_transfer表存在
- [x] 字段验证: 19个字段全部正确
- [x] 索引验证: 5个索引全部创建
- [x] 字典验证: ccdi_transfer_type字典类型存在
- [x] 字典数据验证: 10条字典数据全部正确
- [x] 菜单验证: 主菜单menu_id=2060存在
- [x] 权限验证: 6个按钮权限全部正确
---
## 🎯 下一步操作
### 1. 配置角色权限
登录系统,进入「系统管理 → 角色管理」,为相应角色勾选「员工调动记录」相关权限:
- ccdi:staffTransfer:query (查询)
- ccdi:staffTransfer:add (新增)
- ccdi:staffTransfer:edit (修改)
- ccdi:staffTransfer:remove (删除)
- ccdi:staffTransfer:export (导出)
- ccdi:staffTransfer:import (导入)
### 2. 重启后端服务
```bash
cd D:\ccdi\ccdi
mvn clean compile
mvn spring-boot:run
```
### 3. 重启前端服务
```bash
cd D:\ccdi\ccdi\ruoyi-ui
npm run dev
```
### 4. 访问菜单
登录系统后,在左侧菜单找到「信息维护 → 员工调动记录」
### 5. 测试功能
- 测试新增调动记录
- 测试查询列表
- 测试修改记录
- 测试删除记录
- 测试导入导出
- 测试字典下拉框
---
## 📝 注意事项
1. **员工数据依赖**: 该模块依赖`ccdi_base_staff`表,确保该表有测试数据
2. **部门数据依赖**: 部门字段依赖`sys_dept`
3. **Redis依赖**: 导入功能依赖Redis,确保Redis服务正常运行
4. **权限缓存**: 修改角色权限后,可能需要退出重新登录才能生效
---
## 🔧 样式修复记录 (2026-02-11)
### 问题说明
在前端展示时,调动类型中的**借调**和**其他**两个码值没有显示标签样式,只显示普通文本。
**原因分析**:
- DictTag 组件逻辑:当 `list_class = 'default'` 或为空时,只显示文本,不显示标签
- 这两个值的 `list_class` 配置为 `'default'`
### 修复方案
`list_class``'default'` 改为 `'info'`,使它们显示为灰色标签。
### 执行脚本
**文件**: `05_fix_transfer_type_style.sql`
```sql
-- 更新借调的样式: default -> info
UPDATE sys_dict_data
SET list_class = 'info'
WHERE dict_type = 'ccdi_transfer_type'
AND dict_value = 'SECONDMENT'
AND list_class = 'default';
-- 更新其他的样式: default -> info
UPDATE sys_dict_data
SET list_class = 'info'
WHERE dict_type = 'ccdi_transfer_type'
AND dict_value = 'OTHER'
AND list_class = 'default';
```
### 修复后的样式配置
| dict_label | dict_value | 原list_class | 新list_class | 标签颜色 |
|-----------|-----------|-------------|-------------|---------|
| 升职 | PROMOTION | primary | primary | 蓝色 |
| 降职 | DEMOPTION | danger | danger | 红色 |
| 平调 | LATERAL | info | info | 灰色 |
| 轮岗 | ROTATION | warning | warning | 橙色 |
| 借调 | SECONDMENT | default | **info** | 灰色 ✅ |
| 部门调动 | DEPARTMENT_CHANGE | success | success | 绿色 |
| 职位调整 | POSITION_CHANGE | primary | primary | 蓝色 |
| 返岗 | RETURN | info | info | 灰色 |
| 离职 | TERMINATION | danger | danger | 红色 |
| 其他 | OTHER | default | **info** | 灰色 ✅ |
---
## ✨ 执行成功
所有SQL脚本已成功执行,数据库结构完整,可以开始使用员工调动记录管理模块!
**执行完成时间**: 2026-02-10
**样式修复时间**: 2026-02-11
**状态**: ✅ 数据库就绪,等待后端代码部署