refactor: 重命名 ruoyi-ccdi 模块为 ruoyi-info-collection

- Maven 模块从 ruoyi-ccdi 重命名为 ruoyi-info-collection
- Java 包名从 com.ruoyi.ccdi 改为 com.ruoyi.info.collection
- MyBatis XML 命名空间同步更新
- 保留数据库表名、API URL、权限标识中的 ccdi 前缀
- 更新项目文档中的模块引用
This commit is contained in:
wkc
2026-02-24 17:12:11 +08:00
parent b126b43e2c
commit 1cd87d2695
206 changed files with 1339 additions and 915 deletions

View File

@@ -78,7 +78,7 @@ ccdi/
├── ruoyi-common/ # 通用工具 (annotations, utils, constants) ├── ruoyi-common/ # 通用工具 (annotations, utils, constants)
├── ruoyi-quartz/ # 定时任务 ├── ruoyi-quartz/ # 定时任务
├── ruoyi-generator/ # 代码生成器 ├── ruoyi-generator/ # 代码生成器
├── ruoyi-ccdi/ # 【核心业务模块】纪检初核业务 ├── ruoyi-info-collection/ # 【核心业务模块】信息采集
├── ruoyi-ui/ # 前端 Vue 应用 ├── ruoyi-ui/ # 前端 Vue 应用
├── sql/ # 数据库脚本 ├── sql/ # 数据库脚本
├── bin/ # 启动脚本 ├── bin/ # 启动脚本
@@ -94,10 +94,10 @@ ruoyi-admin (启动模块)
├── ruoyi-common (共享工具) ├── ruoyi-common (共享工具)
├── ruoyi-quartz (定时任务) ├── ruoyi-quartz (定时任务)
├── ruoyi-generator (代码生成) ├── ruoyi-generator (代码生成)
└── ruoyi-ccdi (纪检业务模块) └── ruoyi-info-collection (信息采集模块)
``` ```
### ruoyi-ccdi 业务模块 (核心) ### ruoyi-info-collection 业务模块 (核心)
自定义业务模块,包含以下核心功能: 自定义业务模块,包含以下核心功能:
@@ -115,14 +115,14 @@ ruoyi-admin (启动模块)
**分层结构:** **分层结构:**
- Controller: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/` - Controller: `ruoyi-info-collection/src/main/java/com/ruoyi/info/collection/controller/`
- Service: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/` - Service: `ruoyi-info-collection/src/main/java/com/ruoyi/info/collection/service/`
- Mapper: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/` - Mapper: `ruoyi-info-collection/src/main/java/com/ruoyi/info/collection/mapper/`
- Domain: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/` - Domain: `ruoyi-info-collection/src/main/java/com/ruoyi/info/collection/domain/`
- dto/: 数据传输对象 - dto/: 数据传输对象
- vo/: 视图对象 - vo/: 视图对象
- excel/: Excel导入导出实体 - excel/: Excel导入导出实体
- XML映射: `ruoyi-ccdi/src/main/resources/mapper/ccdi/` - XML映射: `ruoyi-info-collection/src/main/resources/mapper/info/collection/`
--- ---
@@ -130,7 +130,7 @@ ruoyi-admin (启动模块)
### 通用规范 ### 通用规范
- **新模块命名**: 项目英文名首字母集合 + 主要功能 (如 `ruoyi-ccdi`) - **新模块命名**: 项目英文名首字母集合 + 主要功能 (如 `ruoyi-info-collection`)
- **代码分离**: 新功能代码与若依框架自带代码分离Controller 放在新模块中 - **代码分离**: 新功能代码与若依框架自带代码分离Controller 放在新模块中
- **审计字段**: 实体类不继承 BaseEntity单独添加审计字段通过注释实现自动插入 - **审计字段**: 实体类不继承 BaseEntity单独添加审计字段通过注释实现自动插入
@@ -301,8 +301,8 @@ POST /login/test?username=admin&password=admin123
|---------------|--------------------------------------------------------------------------------| |---------------|--------------------------------------------------------------------------------|
| 应用入口 | `ruoyi-admin/src/main/java/com/ruoyi/RuoYiApplication.java` | | 应用入口 | `ruoyi-admin/src/main/java/com/ruoyi/RuoYiApplication.java` |
| 安全配置 | `ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java` | | 安全配置 | `ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java` |
| 业务 Controller | `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/` | | 业务 Controller | `ruoyi-info-collection/src/main/java/com/ruoyi/info/collection/controller/` |
| 业务 Mapper XML | `ruoyi-ccdi/src/main/resources/mapper/ccdi/` | | 业务 Mapper XML | `ruoyi-info-collection/src/main/resources/mapper/info/collection/` |
| Vue 路由 | `ruoyi-ui/src/router/index.js` | | Vue 路由 | `ruoyi-ui/src/router/index.js` |
| Vuex Store | `ruoyi-ui/src/store/` | | Vuex Store | `ruoyi-ui/src/store/` |
| 前端 API | `ruoyi-ui/src/api/` | | 前端 API | `ruoyi-ui/src/api/` |
@@ -311,7 +311,7 @@ POST /login/test?username=admin&password=admin123
## 数据库规范 ## 数据库规范
- **新建表名**: 需要加上项目英文名首字母集合前缀 (如 `ccdi_base_staff`) - **新建表名**: 需要加上项目英文名首字母集合前缀 `ccdi_` (如 `ccdi_base_staff`)
--- ---

View File

@@ -72,7 +72,7 @@ SHOW INDEX FROM ccdi_base_staff WHERE Key_name = 'idx_id_card';
2026-02-11 2026-02-11
### 执行内容 ### 执行内容
修改文件: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/CcdiStaffEnterpriseRelationVO.java` 修改文件: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/CcdiStaffEnterpriseRelationVO.java`
添加字段: 添加字段:
```java ```java
@@ -98,7 +98,7 @@ private String personName;
2026-02-11 2026-02-11
### 执行内容 ### 执行内容
修改文件: `ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiStaffEnterpriseRelationMapper.xml` 修改文件: `ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiStaffEnterpriseRelationMapper.xml`
#### 1. 更新ResultMap #### 1. 更新ResultMap
添加字段映射: 添加字段映射:
@@ -134,7 +134,7 @@ LEFT JOIN ccdi_base_staff bs ON ser.person_id = bs.id_card
2026-02-11 2026-02-11
### 执行内容 ### 执行内容
修改文件: `ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiStaffEnterpriseRelationMapper.xml` 修改文件: `ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiStaffEnterpriseRelationMapper.xml`
更新selectRelationById查询: 更新selectRelationById查询:
```xml ```xml

View File

@@ -7,7 +7,7 @@
2026-02-09 2026-02-09
## 实现位置 ## 实现位置
- 文件: `D:\ccdi\ccdi\ruoyi-ccdi\src\main\java\com\ruoyi\ccdi\service\impl\CcdiEmployeeImportServiceImpl.java` - 文件: `D:\ccdi\ccdi\ruoyi-info-collection\src\main\java\com\ruoyi\ccdi\service\impl\CcdiEmployeeImportServiceImpl.java`
- 方法: `importEmployeeAsync` (第43-126行) - 方法: `importEmployeeAsync` (第43-126行)
## 核心功能 ## 核心功能

View File

@@ -20,7 +20,7 @@ Error updating database. Cause: java.sql.SQLIntegrityConstraintViolationExceptio
### 1. 代码修改 ### 1. 代码修改
**文件**[CcdiIntermediaryBlacklistServiceImpl.java](d:\discipline-prelim-check\discipline-prelim-check\ruoyi-ccdi\src\main\java\com\ruoyi\dpc\service\impl\CcdiIntermediaryBlacklistServiceImpl.java) **文件**[CcdiIntermediaryBlacklistServiceImpl.java](d:\discipline-prelim-check\discipline-prelim-check\ruoyi-info-collection\src\main\java\com\ruoyi\dpc\service\impl\CcdiIntermediaryBlacklistServiceImpl.java)
**修改位置**:第 390-394 行 **修改位置**:第 390-394 行
@@ -44,7 +44,7 @@ intermediary.setIntermediaryType("2");
### 2. 验证逻辑增强 ### 2. 验证逻辑增强
**文件**[CcdiIntermediaryBlacklistServiceImpl.java](d:\discipline-prelim-check\discipline-prelim-check\ruoyi-ccdi\src\main\java\com\ruoyi\dpc\service\impl\CcdiIntermediaryBlacklistServiceImpl.java) **文件**[CcdiIntermediaryBlacklistServiceImpl.java](d:\discipline-prelim-check\discipline-prelim-check\ruoyi-info-collection\src\main\java\com\ruoyi\dpc\service\impl\CcdiIntermediaryBlacklistServiceImpl.java)
**修改位置**:第 484-488 行 **修改位置**:第 484-488 行
@@ -72,7 +72,7 @@ private void validateEntityIntermediaryData(CcdiIntermediaryEntityExcel excel) {
### 3. 批量更新 XML 配置优化 ### 3. 批量更新 XML 配置优化
**文件**[CcdiIntermediaryBlacklistMapper.xml](d:\discipline-prelim-check\discipline-prelim-check\ruoyi-ccdi\src\main\resources\mapper\dpc\CcdiIntermediaryBlacklistMapper.xml) **文件**[CcdiIntermediaryBlacklistMapper.xml](d:\discipline-prelim-check\discipline-prelim-check\ruoyi-info-collection\src\main\resources\mapper\dpc\CcdiIntermediaryBlacklistMapper.xml)
**修改位置**:第 125-127 行 **修改位置**:第 125-127 行
@@ -151,8 +151,8 @@ WHERE intermediary_type = '2' AND certificate_no IS NULL AND corp_credit_code IS
## 修改文件列表 ## 修改文件列表
1. [CcdiIntermediaryBlacklistServiceImpl.java](d:\discipline-prelim-check\discipline-prelim-check\ruoyi-ccdi\src\main\java\com\ruoyi\dpc\service\impl\CcdiIntermediaryBlacklistServiceImpl.java) - 服务层实现 1. [CcdiIntermediaryBlacklistServiceImpl.java](d:\discipline-prelim-check\discipline-prelim-check\ruoyi-info-collection\src\main\java\com\ruoyi\dpc\service\impl\CcdiIntermediaryBlacklistServiceImpl.java) - 服务层实现
2. [CcdiIntermediaryBlacklistMapper.xml](d:\discipline-prelim-check\discipline-prelim-check\ruoyi-ccdi\src\main\resources\mapper\dpc\CcdiIntermediaryBlacklistMapper.xml) - MyBatis 映射文件 2. [CcdiIntermediaryBlacklistMapper.xml](d:\discipline-prelim-check\discipline-prelim-check\ruoyi-info-collection\src\main\resources\mapper\dpc\CcdiIntermediaryBlacklistMapper.xml) - MyBatis 映射文件
3. [test_import_fix.py](d:\discipline-prelim-check\discipline-prelim-check\doc\test-data\test_import_fix.py) - 测试脚本 3. [test_import_fix.py](d:\discipline-prelim-check\discipline-prelim-check\doc\test-data\test_import_fix.py) - 测试脚本
## 版本历史 ## 版本历史

View File

@@ -5,7 +5,7 @@
## 审查范围 ## 审查范围
- 前端:`ruoyi-ui/src/views/ccdiStaffEnterpriseRelation/index.vue` - 前端:`ruoyi-ui/src/views/ccdiStaffEnterpriseRelation/index.vue`
- 后端:`ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/` 相关文件 - 后端:`ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/` 相关文件
## 严重问题(必须立即修复) ## 严重问题(必须立即修复)

View File

@@ -360,20 +360,20 @@ VALUES
| 类型 | 文件路径 | | 类型 | 文件路径 |
|------|---------| |------|---------|
| Controller | `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiStaffEnterpriseRelationController.java` | | Controller | `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiStaffEnterpriseRelationController.java` |
| Service接口 | `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/ICcdiStaffEnterpriseRelationService.java` | | Service接口 | `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/ICcdiStaffEnterpriseRelationService.java` |
| Service实现 | `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiStaffEnterpriseRelationServiceImpl.java` | | Service实现 | `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiStaffEnterpriseRelationServiceImpl.java` |
| ImportService接口 | `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/ICcdiStaffEnterpriseRelationImportService.java` | | ImportService接口 | `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/ICcdiStaffEnterpriseRelationImportService.java` |
| ImportService实现 | `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiStaffEnterpriseRelationImportServiceImpl.java` | | ImportService实现 | `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiStaffEnterpriseRelationImportServiceImpl.java` |
| Mapper接口 | `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiStaffEnterpriseRelationMapper.java` | | Mapper接口 | `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiStaffEnterpriseRelationMapper.java` |
| Mapper XML | `ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiStaffEnterpriseRelationMapper.xml` | | Mapper XML | `ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiStaffEnterpriseRelationMapper.xml` |
| Entity | `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/CcdiStaffEnterpriseRelation.java` | | Entity | `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/CcdiStaffEnterpriseRelation.java` |
| DTO (Add) | `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiStaffEnterpriseRelationAddDTO.java` | | DTO (Add) | `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiStaffEnterpriseRelationAddDTO.java` |
| DTO (Edit) | `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiStaffEnterpriseRelationEditDTO.java` | | DTO (Edit) | `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiStaffEnterpriseRelationEditDTO.java` |
| DTO (Query) | `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiStaffEnterpriseRelationQueryDTO.java` | | DTO (Query) | `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiStaffEnterpriseRelationQueryDTO.java` |
| VO | `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/CcdiStaffEnterpriseRelationVO.java` | | VO | `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/CcdiStaffEnterpriseRelationVO.java` |
| Excel | `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/excel/CcdiStaffEnterpriseRelationExcel.java` | | Excel | `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/excel/CcdiStaffEnterpriseRelationExcel.java` |
| ImportFailureVO | `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/StaffEnterpriseRelationImportFailureVO.java` | | ImportFailureVO | `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/StaffEnterpriseRelationImportFailureVO.java` |
--- ---

View File

@@ -67,7 +67,7 @@
### 修复1后端强制设置默认状态 ### 修复1后端强制设置默认状态
**修改文件:** `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiStaffEnterpriseRelationServiceImpl.java` **修改文件:** `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiStaffEnterpriseRelationServiceImpl.java`
**修改内容:** **修改内容:**
```java ```java
@@ -144,7 +144,7 @@ dicts: ['ccdi_relation_status', 'ccdi_data_source'],
### 修改文件清单 ### 修改文件清单
1. `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiStaffEnterpriseRelationServiceImpl.java` 1. `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiStaffEnterpriseRelationServiceImpl.java`
2. `ruoyi-ui/src/views/ccdiStaffEnterpriseRelation/index.vue` 2. `ruoyi-ui/src/views/ccdiStaffEnterpriseRelation/index.vue`
### 数据库变更 ### 数据库变更

View File

@@ -258,7 +258,7 @@ python doc/test-data/intermediary/test_import_performance.py
## 相关文件 ## 相关文件
### 后端文件 ### 后端文件
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java:245-488` - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java:245-488`
### 数据库表 ### 数据库表
- `ccdi_biz_intermediary` - 个人中介表 - `ccdi_biz_intermediary` - 个人中介表

View File

@@ -482,8 +482,8 @@ handleImportComplete(statusResult) {
### 相关文件 ### 相关文件
- **前端组件:** `ruoyi-ui/src/views/ccdiEmployee/index.vue` - **前端组件:** `ruoyi-ui/src/views/ccdiEmployee/index.vue`
- **API定义:** `ruoyi-ui/src/api/ccdiEmployee.js` - **API定义:** `ruoyi-ui/src/api/ccdiEmployee.js`
- **后端VO:** `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/ImportStatusVO.java` - **后端VO:** `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/ImportStatusVO.java`
- **后端Controller:** `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiEmployeeController.java` - **后端Controller:** `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiEmployeeController.java`
### 测试文件 ### 测试文件
- **浏览器测试:** `doc/员工导入状态持久化功能测试.html` - **浏览器测试:** `doc/员工导入状态持久化功能测试.html`

View File

@@ -0,0 +1,93 @@
# ruoyi-ccdi 模块重命名设计文档
## 概述
`ruoyi-ccdi` 模块重命名为 `ruoyi-info-collection`,以更清晰地表达"信息采集"功能,同时保持与其他功能模块的命名一致性。
## 设计决策
### 方案选择:混合命名(方案 A
| 项目 | 当前命名 | 目标命名 |
|-----|---------|---------|
| Maven 模块 | `ruoyi-ccdi` | `ruoyi-info-collection` |
| Java 包名 | `com.ruoyi.ccdi` | `com.ruoyi.info.collection` |
| 数据库表 | `ccdi_*` | `ccdi_*` (保持不变) |
| API URL | `/ccdi/*` | `/ccdi/*` (保持不变) |
| 权限标识 | `ccdi:*:*` | `ccdi:*:*` (保持不变) |
| 前端文件 | `ccdi*` | `ccdi*` (保持不变) |
### 选择理由
1. **模块名和包名**:更清晰表达"信息采集"功能
2. **保留 ccdi 前缀**:在 URL、表名、前端避免破坏性变更
3. **数据库不变**:无需迁移数据,降低风险
4. **API 不变**:前端调用无需修改
## 修改清单
### 1. Maven 模块重命名
| 文件 | 修改内容 |
|-----|---------|
| `pom.xml` (根目录) | `<module>ruoyi-ccdi</module>``<module>ruoyi-info-collection</module>` |
| `pom.xml` (根目录) | `<artifactId>ruoyi-ccdi</artifactId>``<artifactId>ruoyi-info-collection</artifactId>` |
| `ruoyi-ccdi/pom.xml` | 目录重命名为 `ruoyi-info-collection/``<artifactId>` 同步修改 |
| `ruoyi-admin/pom.xml` | `<artifactId>ruoyi-ccdi</artifactId>``<artifactId>ruoyi-info-collection</artifactId>` |
### 2. Java 包名重命名
- **目录结构**`com/ruoyi/ccdi/``com/ruoyi/info/collection/`
- **涉及文件**:约 100+ 个 Java 文件
- **修改内容**
- 所有 `package com.ruoyi.ccdi``package com.ruoyi.info.collection`
- 所有 `import com.ruoyi.ccdi.*``import com.ruoyi.info.collection.*`
### 3. MyBatis XML 命名空间
- **涉及文件**11 个 Mapper XML 文件
- **修改内容**:命名空间从 `com.ruoyi.ccdi.mapper.*` 改为 `com.ruoyi.info.collection.mapper.*`
### 4. 项目文档修改
- **涉及文件**`doc/` 目录下约 135 个文件
- **修改内容**:将 `ruoyi-ccdi` 模块引用改为 `ruoyi-info-collection`
## 不修改的内容
- 数据库表名 (`ccdi_*`)
- 数据库名 (`ccdi`)
- API URL 路径 (`/ccdi/*`)
- 权限标识 (`ccdi:*:*`)
- 前端 API 文件和视图目录
- 菜单配置数据
## 执行步骤
1. 重命名模块目录 `ruoyi-ccdi/``ruoyi-info-collection/`
2. 修改 Maven 配置文件
3. 批量修改 Java 包名
4. 修改 MyBatis XML 命名空间
5. 更新项目文档
6. 验证编译 `mvn clean compile`
## 风险评估
- **风险等级**:中
- **主要风险**:包名修改涉及大量文件,可能遗漏
- **缓解措施**
- 使用 IDE 的重构功能
- 编译验证确保无遗漏
- 执行单元测试
## 验收标准
1. Maven 编译成功 (`mvn clean compile`)
2. 所有 Java 文件包名正确
3. MyBatis XML 命名空间正确
4. 文档中模块名称已更新
---
**设计日期**2026-02-24
**设计状态**:已批准

View File

@@ -0,0 +1,331 @@
# ruoyi-ccdi 模块重命名实施计划
> **For Claude:** REQUIRED SUB-SKILL: Use superpowers:executing-plans to implement this plan task-by-task.
**Goal:** 将 ruoyi-ccdi 模块重命名为 ruoyi-info-collection同时将 Java 包名从 com.ruoyi.ccdi 改为 com.ruoyi.info.collection
**Architecture:** Maven 模块重命名 + Java 包结构重组 + MyBatis XML 命名空间更新。保留数据库表名、API URL、权限标识和前端文件中的 ccdi 前缀不变。
**Tech Stack:** Maven, Java 17, MyBatis Plus, Spring Boot 3
---
## Task 1: 重命名模块目录
**Files:**
- Rename: `ruoyi-ccdi/``ruoyi-info-collection/`
**Step 1: 使用 git mv 重命名目录**
```bash
git mv ruoyi-ccdi ruoyi-info-collection
```
**Step 2: 验证目录已重命名**
Run: `ls -la | grep ruoyi-info-collection`
Expected: 显示 `ruoyi-info-collection` 目录
---
## Task 2: 修改根 pom.xml 模块声明
**Files:**
- Modify: `pom.xml`
**Step 1: 修改 module 声明**
找到 `<module>ruoyi-ccdi</module>` 并修改为:
```xml
<module>ruoyi-info-collection</module>
```
**Step 2: 修改 dependencyManagement 中的 artifactId**
找到 ruoyi-ccdi 的依赖声明并修改为:
```xml
<!-- 信息采集模块-->
<dependency>
<groupId>com.ruoyi</groupId>
<artifactId>ruoyi-info-collection</artifactId>
<version>${ruoyi.version}</version>
</dependency>
```
**Step 3: 验证修改**
Run: `grep -n "ruoyi-info-collection" pom.xml`
Expected: 显示 2 处匹配module 和 dependency
---
## Task 3: 修改 ruoyi-info-collection 模块 pom.xml
**Files:**
- Modify: `ruoyi-info-collection/pom.xml`
**Step 1: 修改 artifactId 和 description**
```xml
<artifactId>ruoyi-info-collection</artifactId>
<description>信息采集模块</description>
```
**Step 2: 验证修改**
Run: `grep -n "artifactId" ruoyi-info-collection/pom.xml | head -1`
Expected: `<artifactId>ruoyi-info-collection</artifactId>`
---
## Task 4: 修改 ruoyi-admin 的依赖声明
**Files:**
- Modify: `ruoyi-admin/pom.xml`
**Step 1: 修改依赖 artifactId**
找到 ruoyi-ccdi 依赖并修改为:
```xml
<!-- 信息采集模块-->
<dependency>
<groupId>com.ruoyi</groupId>
<artifactId>ruoyi-info-collection</artifactId>
</dependency>
```
**Step 2: 验证修改**
Run: `grep -n "ruoyi-info-collection" ruoyi-admin/pom.xml`
Expected: 显示 1 处匹配
---
## Task 5: 创建新的包目录结构
**Files:**
- Create: `ruoyi-info-collection/src/main/java/com/ruoyi/info/collection/`
- Create: `ruoyi-info-collection/src/main/resources/mapper/info/collection/`
**Step 1: 创建 Java 包目录**
```bash
mkdir -p ruoyi-info-collection/src/main/java/com/ruoyi/info/collection
```
**Step 2: 创建 MyBatis mapper 目录**
```bash
mkdir -p ruoyi-info-collection/src/main/resources/mapper/info/collection
```
**Step 3: 验证目录创建**
Run: `ls -la ruoyi-info-collection/src/main/java/com/ruoyi/info/`
Expected: 显示 `collection` 目录
---
## Task 6: 移动 Java 源码到新包结构
**Files:**
- Move: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/*``ruoyi-info-collection/src/main/java/com/ruoyi/info/collection/`
**Step 1: 移动所有子目录**
```bash
cd ruoyi-info-collection/src/main/java/com/ruoyi
mv ccdi/* info/collection/
```
**Step 2: 删除旧目录**
```bash
rm -rf ccdi
```
**Step 3: 验证新结构**
Run: `ls ruoyi-info-collection/src/main/java/com/ruoyi/info/collection/`
Expected: 显示 controller, domain, enums, mapper, service, utils 等目录
---
## Task 7: 批量修改 Java 文件包名声明
**Files:**
- Modify: `ruoyi-info-collection/src/main/java/com/ruoyi/info/collection/**/*.java` (约 100+ 文件)
**Step 1: 批量替换 package 声明**
```bash
find ruoyi-info-collection/src/main/java -name "*.java" -exec sed -i 's/package com\.ruoyi\.ccdi/package com.ruoyi.info.collection/g' {} +
```
**Step 2: 批量替换 import 语句**
```bash
find ruoyi-info-collection/src/main/java -name "*.java" -exec sed -i 's/import com\.ruoyi\.ccdi/import com.ruoyi.info.collection/g' {} +
```
**Step 3: 验证包名修改**
Run: `grep -r "package com.ruoyi.ccdi" ruoyi-info-collection/src/main/java/`
Expected: 无输出(所有旧的包名已替换)
---
## Task 8: 移动 MyBatis XML 文件
**Files:**
- Move: `ruoyi-info-collection/src/main/resources/mapper/ccdi/*``ruoyi-info-collection/src/main/resources/mapper/info/collection/`
**Step 1: 移动 XML 文件**
```bash
cd ruoyi-info-collection/src/main/resources/mapper
mkdir -p info/collection
mv ccdi/* info/collection/
rm -rf ccdi
```
**Step 2: 验证文件移动**
Run: `ls ruoyi-info-collection/src/main/resources/mapper/info/collection/`
Expected: 显示 11 个 XML 文件
---
## Task 9: 修改 MyBatis XML 命名空间
**Files:**
- Modify: `ruoyi-info-collection/src/main/resources/mapper/info/collection/*.xml` (11 文件)
**Step 1: 批量替换命名空间**
```bash
find ruoyi-info-collection/src/main/resources/mapper -name "*.xml" -exec sed -i 's/com\.ruoyi\.ccdi/com.ruoyi.info.collection/g' {} +
```
**Step 2: 验证命名空间修改**
Run: `grep -r "com.ruoyi.ccdi" ruoyi-info-collection/src/main/resources/mapper/`
Expected: 无输出(所有旧的命名空间已替换)
---
## Task 10: 更新 CLAUDE.md 项目文档
**Files:**
- Modify: `CLAUDE.md`
**Step 1: 更新模块架构描述**
将所有 `ruoyi-ccdi` 引用改为 `ruoyi-info-collection`,包括:
- 模块架构图
- 模块依赖关系
- ruoyi-ccdi 业务模块描述
- 重要文件路径
**Step 2: 验证修改**
Run: `grep "ruoyi-ccdi" CLAUDE.md`
Expected: 无输出(所有引用已更新)
---
## Task 11: 更新 doc 目录下的文档
**Files:**
- Modify: `doc/**/*.md` (约 135 文件)
**Step 1: 批量替换模块名引用**
```bash
find doc -name "*.md" -exec sed -i 's/ruoyi-ccdi/ruoyi-info-collection/g' {} +
```
**Step 2: 验证修改**
Run: `grep -r "ruoyi-ccdi" doc/`
Expected: 仅在设计文档中保留历史记录
---
## Task 12: 验证 Maven 编译
**Files:**
- None (验证步骤)
**Step 1: 清理并编译**
```bash
mvn clean compile
```
Expected: BUILD SUCCESS
**Step 2: 如果编译失败,检查错误**
常见的编译错误:
- 遗漏的 import 语句
- 遗漏的包名声明
- MyBatis XML 命名空间不匹配
---
## Task 13: 提交更改
**Files:**
- None (Git 操作)
**Step 1: 查看更改**
```bash
git status
git diff --stat
```
**Step 2: 添加所有更改**
```bash
git add -A
```
**Step 3: 提交**
```bash
git commit -m "$(cat <<'EOF'
refactor: 重命名 ruoyi-ccdi 模块为 ruoyi-info-collection
- Maven 模块从 ruoyi-ccdi 重命名为 ruoyi-info-collection
- Java 包名从 com.ruoyi.ccdi 改为 com.ruoyi.info.collection
- MyBatis XML 命名空间同步更新
- 保留数据库表名、API URL、权限标识中的 ccdi 前缀
- 更新项目文档中的模块引用
EOF
)"
```
---
## 验收清单
- [ ] 模块目录已重命名为 `ruoyi-info-collection`
- [ ] 所有 pom.xml 中的 artifactId 已更新
- [ ] Java 包结构已重组为 `com.ruoyi.info.collection`
- [ ] 所有 Java 文件的 package 声明已更新
- [ ] 所有 Java 文件的 import 语句已更新
- [ ] MyBatis XML 文件已移动到新目录
- [ ] MyBatis XML 命名空间已更新
- [ ] 项目文档已更新
- [ ] Maven 编译成功
- [ ] 更改已提交到 Git
---
**计划日期**: 2026-02-24
**预计任务数**: 13

View File

@@ -80,7 +80,7 @@ CREATE TABLE `ccdi_staff_recruitment` (
### 3.1 模块结构 ### 3.1 模块结构
``` ```
ruoyi-ccdi/ ruoyi-info-collection/
├── domain/ ├── domain/
│ ├── CcdiStaffRecruitment.java # 实体类 │ ├── CcdiStaffRecruitment.java # 实体类
│ ├── dto/ │ ├── dto/

View File

@@ -391,5 +391,5 @@ Element UI 的 MessageBox 组件有较高的CSS优先级必须使用 `!import
### 8.2 相关文件 ### 8.2 相关文件
- 前端组件: `ruoyi-ui/src/views/ccdiEmployee/index.vue` - 前端组件: `ruoyi-ui/src/views/ccdiEmployee/index.vue`
- 后端服务: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiEmployeeServiceImpl.java` - 后端服务: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiEmployeeServiceImpl.java`
- API文档: `doc/api/ccdiEmployee.md` - API文档: `doc/api/ccdiEmployee.md`

View File

@@ -13,7 +13,7 @@
## Task 1: 创建个人中介Entity实体类 ## Task 1: 创建个人中介Entity实体类
**Files:** **Files:**
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/CcdiBizIntermediary.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/CcdiBizIntermediary.java`
**Step 1: 创建CcdiBizIntermediary实体类** **Step 1: 创建CcdiBizIntermediary实体类**
@@ -116,7 +116,7 @@ public class CcdiBizIntermediary implements Serializable {
**Step 2: 提交代码** **Step 2: 提交代码**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/CcdiBizIntermediary.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/CcdiBizIntermediary.java
git commit -m "feat: 添加个人中介实体类CcdiBizIntermediary" git commit -m "feat: 添加个人中介实体类CcdiBizIntermediary"
``` ```
@@ -125,7 +125,7 @@ git commit -m "feat: 添加个人中介实体类CcdiBizIntermediary"
## Task 2: 创建实体中介Entity实体类 ## Task 2: 创建实体中介Entity实体类
**Files:** **Files:**
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/CcdiEnterpriseBaseInfo.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/CcdiEnterpriseBaseInfo.java`
**Step 1: 创建CcdiEnterpriseBaseInfo实体类** **Step 1: 创建CcdiEnterpriseBaseInfo实体类**
@@ -234,7 +234,7 @@ public class CcdiEnterpriseBaseInfo implements Serializable {
**Step 2: 提交代码** **Step 2: 提交代码**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/CcdiEnterpriseBaseInfo.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/CcdiEnterpriseBaseInfo.java
git commit -m "feat: 添加实体中介实体类CcdiEnterpriseBaseInfo" git commit -m "feat: 添加实体中介实体类CcdiEnterpriseBaseInfo"
``` ```
@@ -243,8 +243,8 @@ git commit -m "feat: 添加实体中介实体类CcdiEnterpriseBaseInfo"
## Task 3: 创建个人中介DTO ## Task 3: 创建个人中介DTO
**Files:** **Files:**
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiIntermediaryPersonAddDTO.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiIntermediaryPersonAddDTO.java`
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiIntermediaryPersonEditDTO.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiIntermediaryPersonEditDTO.java`
**Step 1: 创建个人中介新增DTO** **Step 1: 创建个人中介新增DTO**
@@ -465,8 +465,8 @@ public class CcdiIntermediaryPersonEditDTO implements Serializable {
**Step 3: 提交代码** **Step 3: 提交代码**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiIntermediaryPersonAddDTO.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiIntermediaryPersonAddDTO.java
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiIntermediaryPersonEditDTO.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiIntermediaryPersonEditDTO.java
git commit -m "feat: 添加个人中介DTO类" git commit -m "feat: 添加个人中介DTO类"
``` ```
@@ -475,8 +475,8 @@ git commit -m "feat: 添加个人中介DTO类"
## Task 4: 创建实体中介DTO ## Task 4: 创建实体中介DTO
**Files:** **Files:**
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiIntermediaryEntityAddDTO.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiIntermediaryEntityAddDTO.java`
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiIntermediaryEntityEditDTO.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiIntermediaryEntityEditDTO.java`
**Step 1: 创建实体中介新增DTO** **Step 1: 创建实体中介新增DTO**
@@ -709,8 +709,8 @@ public class CcdiIntermediaryEntityEditDTO implements Serializable {
**Step 3: 提交代码** **Step 3: 提交代码**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiIntermediaryEntityAddDTO.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiIntermediaryEntityAddDTO.java
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiIntermediaryEntityEditDTO.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiIntermediaryEntityEditDTO.java
git commit -m "feat: 添加实体中介DTO类" git commit -m "feat: 添加实体中介DTO类"
``` ```
@@ -719,10 +719,10 @@ git commit -m "feat: 添加实体中介DTO类"
## Task 5: 创建查询DTO和统一VO ## Task 5: 创建查询DTO和统一VO
**Files:** **Files:**
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiIntermediaryQueryDTO.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiIntermediaryQueryDTO.java`
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/CcdiIntermediaryVO.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/CcdiIntermediaryVO.java`
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/CcdiIntermediaryPersonDetailVO.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/CcdiIntermediaryPersonDetailVO.java`
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/CcdiIntermediaryEntityDetailVO.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/CcdiIntermediaryEntityDetailVO.java`
**Step 1: 创建查询DTO** **Step 1: 创建查询DTO**
@@ -999,10 +999,10 @@ public class CcdiIntermediaryEntityDetailVO implements Serializable {
**Step 5: 提交代码** **Step 5: 提交代码**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiIntermediaryQueryDTO.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiIntermediaryQueryDTO.java
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/CcdiIntermediaryVO.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/CcdiIntermediaryVO.java
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/CcdiIntermediaryPersonDetailVO.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/CcdiIntermediaryPersonDetailVO.java
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/CcdiIntermediaryEntityDetailVO.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/CcdiIntermediaryEntityDetailVO.java
git commit -m "feat: 添加中介查询DTO和VO类" git commit -m "feat: 添加中介查询DTO和VO类"
``` ```
@@ -1011,9 +1011,9 @@ git commit -m "feat: 添加中介查询DTO和VO类"
## Task 6: 创建Mapper接口 ## Task 6: 创建Mapper接口
**Files:** **Files:**
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiBizIntermediaryMapper.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiBizIntermediaryMapper.java`
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiEnterpriseBaseInfoMapper.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiEnterpriseBaseInfoMapper.java`
- Create: `ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiIntermediaryMapper.xml` - Create: `ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiIntermediaryMapper.xml`
**Step 1: 创建个人中介Mapper接口** **Step 1: 创建个人中介Mapper接口**
@@ -1121,9 +1121,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
**Step 4: 提交代码** **Step 4: 提交代码**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiBizIntermediaryMapper.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiBizIntermediaryMapper.java
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiEnterpriseBaseInfoMapper.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiEnterpriseBaseInfoMapper.java
git add ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiIntermediaryMapper.xml git add ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiIntermediaryMapper.xml
git commit -m "feat: 添加中介Mapper接口和XML映射" git commit -m "feat: 添加中介Mapper接口和XML映射"
``` ```
@@ -1132,8 +1132,8 @@ git commit -m "feat: 添加中介Mapper接口和XML映射"
## Task 7: 创建Service接口和实现类 ## Task 7: 创建Service接口和实现类
**Files:** **Files:**
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/ICcdiIntermediaryService.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/ICcdiIntermediaryService.java`
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java`
**Step 1: 创建Service接口** **Step 1: 创建Service接口**
@@ -1316,7 +1316,7 @@ public class CcdiIntermediaryServiceImpl implements ICcdiIntermediaryService {
**Step 3: 提交Service框架** **Step 3: 提交Service框架**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/ git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/
git commit -m "feat: 添加中介Service接口和实现类框架" git commit -m "feat: 添加中介Service接口和实现类框架"
``` ```
@@ -1325,8 +1325,8 @@ git commit -m "feat: 添加中介Service接口和实现类框架"
## Task 8: 创建Excel导入导出类 ## Task 8: 创建Excel导入导出类
**Files:** **Files:**
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/excel/CcdiIntermediaryPersonExcel.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/excel/CcdiIntermediaryPersonExcel.java`
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/excel/CcdiIntermediaryEntityExcel.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/excel/CcdiIntermediaryEntityExcel.java`
**Step 1: 创建个人中介Excel类** **Step 1: 创建个人中介Excel类**
@@ -1518,7 +1518,7 @@ public class CcdiIntermediaryEntityExcel implements Serializable {
**Step 3: 提交Excel类** **Step 3: 提交Excel类**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/excel/ git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/excel/
git commit -m "feat: 添加中介Excel导入导出类" git commit -m "feat: 添加中介Excel导入导出类"
``` ```
@@ -1527,7 +1527,7 @@ git commit -m "feat: 添加中介Excel导入导出类"
## Task 9: 创建Controller控制器 ## Task 9: 创建Controller控制器
**Files:** **Files:**
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java`
**Step 1: 创建CcdiIntermediaryController** **Step 1: 创建CcdiIntermediaryController**
@@ -1723,7 +1723,7 @@ public class CcdiIntermediaryController extends BaseController {
**Step 2: 提交Controller** **Step 2: 提交Controller**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java
git commit -m "feat: 添加中介黑名单Controller" git commit -m "feat: 添加中介黑名单Controller"
``` ```
@@ -1732,7 +1732,7 @@ git commit -m "feat: 添加中介黑名单Controller"
## Task 10: 补充Service实现类的完整代码 ## Task 10: 补充Service实现类的完整代码
**Files:** **Files:**
- Complete: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java` - Complete: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java`
完整的Service实现需要包含所有业务逻辑方法包括 完整的Service实现需要包含所有业务逻辑方法包括
- UNION联合查询的分页实现 - UNION联合查询的分页实现
@@ -1745,7 +1745,7 @@ git commit -m "feat: 添加中介黑名单Controller"
**Step 1: 提交完整的Service实现** **Step 1: 提交完整的Service实现**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java
git commit -m "feat: 完善中介Service实现类" git commit -m "feat: 完善中介Service实现类"
``` ```

View File

@@ -13,7 +13,7 @@
### 2.1 修复实体类字段映射 ### 2.1 修复实体类字段映射
**文件:** `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/CcdiBizIntermediary.java` **文件:** `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/CcdiBizIntermediary.java`
**修改内容:** **修改内容:**
1. 删除了不存在的 `relationTypeField` 字段第70行 1. 删除了不存在的 `relationTypeField` 字段第70行
@@ -31,7 +31,7 @@ private String dataSource;
### 2.2 创建联合查询Mapper接口 ### 2.2 创建联合查询Mapper接口
**新增文件:** `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiIntermediaryMapper.java` **新增文件:** `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiIntermediaryMapper.java`
**功能:** **功能:**
- 定义联合查询方法 `selectIntermediaryList()` - 定义联合查询方法 `selectIntermediaryList()`
@@ -40,7 +40,7 @@ private String dataSource;
### 2.3 创建MyBatis XML Mapper ### 2.3 创建MyBatis XML Mapper
**新增文件:** `ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiIntermediaryMapper.xml` **新增文件:** `ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiIntermediaryMapper.xml`
**SQL设计策略** **SQL设计策略**
@@ -69,7 +69,7 @@ private String dataSource;
### 2.4 优化Service层实现 ### 2.4 优化Service层实现
**文件:** `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java` **文件:** `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java`
**修改内容:** **修改内容:**
@@ -84,7 +84,7 @@ private String dataSource;
### 2.5 扩展查询DTO ### 2.5 扩展查询DTO
**文件:** `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiIntermediaryQueryDTO.java` **文件:** `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiIntermediaryQueryDTO.java`
**新增字段:** **新增字段:**
```java ```java
@@ -144,17 +144,17 @@ OFFSET #{pageNum} * #{pageSize}
## 五、文件清单 ## 五、文件清单
### 修改的文件 ### 修改的文件
1. `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/CcdiBizIntermediary.java` - 删除冗余字段,修复字段映射 1. `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/CcdiBizIntermediary.java` - 删除冗余字段,修复字段映射
2. `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java` - 重构查询逻辑 2. `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java` - 重构查询逻辑
3. `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiIntermediaryQueryDTO.java` - 添加分页参数 3. `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiIntermediaryQueryDTO.java` - 添加分页参数
### 新增的文件 ### 新增的文件
1. `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiIntermediaryMapper.java` - 联合查询Mapper接口 1. `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiIntermediaryMapper.java` - 联合查询Mapper接口
2. `ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiIntermediaryMapper.xml` - MyBatis XML Mapper 2. `ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiIntermediaryMapper.xml` - MyBatis XML Mapper
3. `doc/test/scripts/test_union_query.sh` - 测试脚本 3. `doc/test/scripts/test_union_query.sh` - 测试脚本
### 删除的文件 ### 删除的文件
1. `ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiIntermediaryMapper.xml` - 旧的错误配置 1. `ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiIntermediaryMapper.xml` - 旧的错误配置
## 六、优势总结 ## 六、优势总结
@@ -204,7 +204,7 @@ chmod +x test_union_query.sh
如果新实现出现问题可以通过Git回滚到之前的版本 如果新实现出现问题可以通过Git回滚到之前的版本
```bash ```bash
git checkout HEAD~1 -- ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java git checkout HEAD~1 -- ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java
``` ```
删除新增的Mapper文件即可恢复原状。 删除新增的Mapper文件即可恢复原状。

View File

@@ -48,7 +48,7 @@ Page<CcdiEmployeeVO> selectEmployeePageWithDept(@Param("page") Page<CcdiEmployee
### 3.2 核心改动 ### 3.2 核心改动
#### 1. Mapper接口方法签名 #### 1. Mapper接口方法签名
**文件:** `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiIntermediaryMapper.java` **文件:** `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiIntermediaryMapper.java`
**修改前:** **修改前:**
```java ```java
@@ -71,7 +71,7 @@ Page<CcdiIntermediaryVO> selectIntermediaryList(
- 删除了单独的count查询方法 - 删除了单独的count查询方法
#### 2. XML Mapper文件 #### 2. XML Mapper文件
**文件:** `ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiIntermediaryMapper.xml` **文件:** `ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiIntermediaryMapper.xml`
**修改前v2.0** **修改前v2.0**
```xml ```xml
@@ -125,7 +125,7 @@ Page<CcdiIntermediaryVO> selectIntermediaryList(
- MyBatis Plus分页插件会自动在ORDER BY后面注入分页SQL - MyBatis Plus分页插件会自动在ORDER BY后面注入分页SQL
#### 3. Service层实现 #### 3. Service层实现
**文件:** `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java` **文件:** `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java`
**修改前v2.0** **修改前v2.0**
```java ```java
@@ -162,7 +162,7 @@ public Page<CcdiIntermediaryVO> selectIntermediaryPage(Page<CcdiIntermediaryVO>
- 无需手动计算分页参数 - 无需手动计算分页参数
#### 4. QueryDTO清理 #### 4. QueryDTO清理
**文件:** `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiIntermediaryQueryDTO.java` **文件:** `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiIntermediaryQueryDTO.java`
**删除字段:** **删除字段:**
```java ```java
@@ -237,11 +237,11 @@ mapper.selectList(page, queryDTO);
## 五、文件清单 ## 五、文件清单
### 修改的文件 ### 修改的文件
1. `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/CcdiBizIntermediary.java` - 删除冗余字段,修复字段映射 1. `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/CcdiBizIntermediary.java` - 删除冗余字段,修复字段映射
2. `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiIntermediaryQueryDTO.java` - 删除分页参数 2. `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiIntermediaryQueryDTO.java` - 删除分页参数
3. `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiIntermediaryMapper.java` - 修改方法签名 3. `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiIntermediaryMapper.java` - 修改方法签名
4. `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java` - 简化分页逻辑 4. `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java` - 简化分页逻辑
5. `ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiIntermediaryMapper.xml` - 重写SQL结构 5. `ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiIntermediaryMapper.xml` - 重写SQL结构
### 新增的文件 ### 新增的文件
1. `doc/test/scripts/test_union_query_mybatis_plus.sh` - 测试脚本 1. `doc/test/scripts/test_union_query_mybatis_plus.sh` - 测试脚本

View File

@@ -17,7 +17,7 @@
### Task 1.1:添加批量删除方法到 Mapper 接口 ### Task 1.1:添加批量删除方法到 Mapper 接口
**文件:** **文件:**
- 修改:`ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiEmployeeMapper.java` - 修改:`ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiEmployeeMapper.java`
**Step 1: 在 Mapper 接口中添加方法声明** **Step 1: 在 Mapper 接口中添加方法声明**
@@ -40,7 +40,7 @@ int deleteBatchByIdCard(@Param("list") List<String> idCards);
**Step 3: 提交** **Step 3: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiEmployeeMapper.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiEmployeeMapper.java
git commit -m "feat(employee): 添加批量删除方法声明" git commit -m "feat(employee): 添加批量删除方法声明"
``` ```
@@ -49,7 +49,7 @@ git commit -m "feat(employee): 添加批量删除方法声明"
### Task 1.2:在 Mapper XML 中实现批量删除 SQL ### Task 1.2:在 Mapper XML 中实现批量删除 SQL
**文件:** **文件:**
- 修改:`ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiEmployeeMapper.xml` - 修改:`ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiEmployeeMapper.xml`
**Step 1: 在 XML 文件中添加删除 SQL** **Step 1: 在 XML 文件中添加删除 SQL**
@@ -73,7 +73,7 @@ git commit -m "feat(employee): 添加批量删除方法声明"
**Step 3: 提交** **Step 3: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiEmployeeMapper.xml git add ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiEmployeeMapper.xml
git commit -m "feat(employee): 实现批量删除SQL" git commit -m "feat(employee): 实现批量删除SQL"
``` ```
@@ -84,7 +84,7 @@ git commit -m "feat(employee): 实现批量删除SQL"
- [x] **已完成** (commit: ebe4fd7) - [x] **已完成** (commit: ebe4fd7)
**文件:** **文件:**
- 修改:`ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiEmployeeServiceImpl.java` - 修改:`ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiEmployeeServiceImpl.java`
- 目标方法:`importEmployee` (第 172-311 行) - 目标方法:`importEmployee` (第 172-311 行)
**Step 1: 备份原方法** **Step 1: 备份原方法**
@@ -183,7 +183,7 @@ public String importEmployee(List<CcdiEmployeeExcel> excelList, Boolean isUpdate
**Step 3: 提交** **Step 3: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiEmployeeServiceImpl.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiEmployeeServiceImpl.java
git commit -m "refactor(employee): 重构导入方法为先删后插模式" git commit -m "refactor(employee): 重构导入方法为先删后插模式"
``` ```
@@ -369,7 +369,7 @@ cd D:\ccdi\ccdi
- [x] **已完成** (commit: ba8eedc) - [x] **已完成** (commit: ba8eedc)
**文件:** **文件:**
- 修改:`ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiBizIntermediaryMapper.java` - 修改:`ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiBizIntermediaryMapper.java`
**Step 1: 在 Mapper 接口中添加方法声明** **Step 1: 在 Mapper 接口中添加方法声明**
@@ -386,7 +386,7 @@ int deleteBatchByPersonId(@Param("list") List<String> personIds);
**Step 2: 提交** **Step 2: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiBizIntermediaryMapper.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiBizIntermediaryMapper.java
git commit -m "feat(intermediary): 添加个人批量删除方法声明" git commit -m "feat(intermediary): 添加个人批量删除方法声明"
``` ```
@@ -395,7 +395,7 @@ git commit -m "feat(intermediary): 添加个人批量删除方法声明"
### Task 2.2:在 Mapper XML 中实现批量删除 SQL ### Task 2.2:在 Mapper XML 中实现批量删除 SQL
**文件:** **文件:**
- 修改:`ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiBizIntermediaryMapper.xml` - 修改:`ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiBizIntermediaryMapper.xml`
**Step 1: 在 XML 文件中添加删除 SQL** **Step 1: 在 XML 文件中添加删除 SQL**
@@ -413,7 +413,7 @@ git commit -m "feat(intermediary): 添加个人批量删除方法声明"
**Step 2: 提交** **Step 2: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiBizIntermediaryMapper.xml git add ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiBizIntermediaryMapper.xml
git commit -m "feat(intermediary): 实现个人批量删除SQL" git commit -m "feat(intermediary): 实现个人批量删除SQL"
``` ```
@@ -422,7 +422,7 @@ git commit -m "feat(intermediary): 实现个人批量删除SQL"
### Task 2.3:重构中介库个人导入方法 ### Task 2.3:重构中介库个人导入方法
**文件:** **文件:**
- 修改:`ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java` - 修改:`ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java`
- 目标方法:`importIntermediaryPerson` - 目标方法:`importIntermediaryPerson`
**Step 1: 找到 `importIntermediaryPerson` 方法** **Step 1: 找到 `importIntermediaryPerson` 方法**
@@ -511,7 +511,7 @@ public String importIntermediaryPerson(List<CcdiIntermediaryPersonExcel> excelLi
**Step 3: 提交** **Step 3: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java
git commit -m "refactor(intermediary): 重构个人导入方法为先删后插模式" git commit -m "refactor(intermediary): 重构个人导入方法为先删后插模式"
``` ```
@@ -522,7 +522,7 @@ git commit -m "refactor(intermediary): 重构个人导入方法为先删后插
### Task 3.1:添加批量删除方法到 Mapper 接口 ### Task 3.1:添加批量删除方法到 Mapper 接口
**文件:** **文件:**
- 修改:`ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiEnterpriseBaseInfoMapper.java` - 修改:`ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiEnterpriseBaseInfoMapper.java`
**Step 1: 在 Mapper 接口中添加方法声明** **Step 1: 在 Mapper 接口中添加方法声明**
@@ -539,7 +539,7 @@ int deleteBatchBySocialCreditCode(@Param("list") List<String> socialCreditCodes)
**Step 2: 提交** **Step 2: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiEnterpriseBaseInfoMapper.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiEnterpriseBaseInfoMapper.java
git commit -m "feat(intermediary): 添加实体批量删除方法声明" git commit -m "feat(intermediary): 添加实体批量删除方法声明"
``` ```
@@ -548,7 +548,7 @@ git commit -m "feat(intermediary): 添加实体批量删除方法声明"
### Task 3.2:在 Mapper XML 中实现批量删除 SQL ### Task 3.2:在 Mapper XML 中实现批量删除 SQL
**文件:** **文件:**
- 修改:`ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiEnterpriseBaseInfoMapper.xml` - 修改:`ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiEnterpriseBaseInfoMapper.xml`
**Step 1: 在 XML 文件中添加删除 SQL** **Step 1: 在 XML 文件中添加删除 SQL**
@@ -566,7 +566,7 @@ git commit -m "feat(intermediary): 添加实体批量删除方法声明"
**Step 2: 提交** **Step 2: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiEnterpriseBaseInfoMapper.xml git add ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiEnterpriseBaseInfoMapper.xml
git commit -m "feat(intermediary): 实现实体批量删除SQL" git commit -m "feat(intermediary): 实现实体批量删除SQL"
``` ```
@@ -575,7 +575,7 @@ git commit -m "feat(intermediary): 实现实体批量删除SQL"
### Task 3.3:重构中介库实体导入方法 ### Task 3.3:重构中介库实体导入方法
**文件:** **文件:**
- 修改:`ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java` - 修改:`ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java`
- 目标方法:`importIntermediaryEntity` - 目标方法:`importIntermediaryEntity`
**Step 1: 找到 `importIntermediaryEntity` 方法** **Step 1: 找到 `importIntermediaryEntity` 方法**
@@ -664,7 +664,7 @@ public String importIntermediaryEntity(List<CcdiIntermediaryEntityExcel> excelLi
**Step 3: 提交** **Step 3: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java
git commit -m "refactor(intermediary): 重构实体导入方法为先删后插模式" git commit -m "refactor(intermediary): 重构实体导入方法为先删后插模式"
``` ```
@@ -675,7 +675,7 @@ git commit -m "refactor(intermediary): 重构实体导入方法为先删后插
### Task 4.1:添加批量删除方法到 Mapper 接口 ### Task 4.1:添加批量删除方法到 Mapper 接口
**文件:** **文件:**
- 修改:`ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiStaffRecruitmentMapper.java` - 修改:`ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiStaffRecruitmentMapper.java`
**Step 1: 在 Mapper 接口中添加方法声明** **Step 1: 在 Mapper 接口中添加方法声明**
@@ -692,7 +692,7 @@ int deleteBatchByRecruitId(@Param("list") List<String> recruitIds);
**Step 2: 提交** **Step 2: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiStaffRecruitmentMapper.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiStaffRecruitmentMapper.java
git commit -m "feat(recruitment): 添加批量删除方法声明" git commit -m "feat(recruitment): 添加批量删除方法声明"
``` ```
@@ -701,7 +701,7 @@ git commit -m "feat(recruitment): 添加批量删除方法声明"
### Task 4.2:在 Mapper XML 中实现批量删除 SQL ### Task 4.2:在 Mapper XML 中实现批量删除 SQL
**文件:** **文件:**
- 修改:`ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiStaffRecruitmentMapper.xml` - 修改:`ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiStaffRecruitmentMapper.xml`
**Step 1: 在 XML 文件中添加删除 SQL** **Step 1: 在 XML 文件中添加删除 SQL**
@@ -719,7 +719,7 @@ git commit -m "feat(recruitment): 添加批量删除方法声明"
**Step 2: 提交** **Step 2: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiStaffRecruitmentMapper.xml git add ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiStaffRecruitmentMapper.xml
git commit -m "feat(recruitment): 实现批量删除SQL" git commit -m "feat(recruitment): 实现批量删除SQL"
``` ```
@@ -728,7 +728,7 @@ git commit -m "feat(recruitment): 实现批量删除SQL"
### Task 4.3:重构招聘信息导入方法 ### Task 4.3:重构招聘信息导入方法
**文件:** **文件:**
- 修改:`ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiStaffRecruitmentServiceImpl.java` - 修改:`ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiStaffRecruitmentServiceImpl.java`
- 目标方法:`importRecruitment` - 目标方法:`importRecruitment`
**Step 1: 找到 `importRecruitment` 方法** **Step 1: 找到 `importRecruitment` 方法**
@@ -817,7 +817,7 @@ public String importRecruitment(List<CcdiStaffRecruitmentExcel> excelList, Boole
**Step 3: 提交** **Step 3: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiStaffRecruitmentServiceImpl.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiStaffRecruitmentServiceImpl.java
git commit -m "refactor(recruitment): 重构导入方法为先删后插模式" git commit -m "refactor(recruitment): 重构导入方法为先删后插模式"
``` ```

View File

@@ -383,23 +383,23 @@ public String importXxx(List<XxxExcel> excelList, Boolean isUpdateSupport) {
### 5.1 修改文件清单11 个文件) ### 5.1 修改文件清单11 个文件)
#### 员工信息管理模块 #### 员工信息管理模块
1. `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiEmployeeMapper.java` 1. `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiEmployeeMapper.java`
2. `ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiEmployeeMapper.xml` 2. `ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiEmployeeMapper.xml`
3. `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiEmployeeServiceImpl.java` 3. `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiEmployeeServiceImpl.java`
#### 中介库管理模块(个人和实体) #### 中介库管理模块(个人和实体)
4. `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiBizIntermediaryMapper.java` 4. `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiBizIntermediaryMapper.java`
5. `ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiBizIntermediaryMapper.xml` 5. `ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiBizIntermediaryMapper.xml`
6. `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiEnterpriseBaseInfoMapper.java` 6. `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiEnterpriseBaseInfoMapper.java`
7. `ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiEnterpriseBaseInfoMapper.xml` 7. `ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiEnterpriseBaseInfoMapper.xml`
8. `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java` 8. `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java`
- 修改 `importIntermediaryPerson` 方法 - 修改 `importIntermediaryPerson` 方法
- 修改 `importIntermediaryEntity` 方法 - 修改 `importIntermediaryEntity` 方法
#### 员工招聘信息管理模块 #### 员工招聘信息管理模块
9. `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiStaffRecruitmentMapper.java` 9. `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiStaffRecruitmentMapper.java`
10. `ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiStaffRecruitmentMapper.xml` 10. `ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiStaffRecruitmentMapper.xml`
11. `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiStaffRecruitmentServiceImpl.java` 11. `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiStaffRecruitmentServiceImpl.java`
### 5.2 实施步骤 ### 5.2 实施步骤

View File

@@ -34,7 +34,7 @@
#### 1. 实体层 #### 1. 实体层
``` ```
ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/ ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/
├── domain/ ├── domain/
│ ├── CcdiPurchaseTransaction.java # 实体类 (36字段) │ ├── CcdiPurchaseTransaction.java # 实体类 (36字段)
│ ├── dto/ │ ├── dto/
@@ -50,7 +50,7 @@ ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/
#### 2. 持久层 #### 2. 持久层
``` ```
ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/ ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/
├── mapper/ ├── mapper/
│ ├── CcdiPurchaseTransactionMapper.java # Mapper接口 │ ├── CcdiPurchaseTransactionMapper.java # Mapper接口
│ └── resources/mapper/ccdi/ │ └── resources/mapper/ccdi/
@@ -59,7 +59,7 @@ ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/
#### 3. 服务层 #### 3. 服务层
``` ```
ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/ ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/
├── service/ ├── service/
│ ├── ICcdiPurchaseTransactionService.java # Service接口 │ ├── ICcdiPurchaseTransactionService.java # Service接口
│ ├── ICcdiPurchaseTransactionImportService.java # 异步导入Service接口 │ ├── ICcdiPurchaseTransactionImportService.java # 异步导入Service接口
@@ -70,7 +70,7 @@ ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/
#### 4. 控制层 #### 4. 控制层
``` ```
ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/ ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/
└── controller/ └── controller/
└── CcdiPurchaseTransactionController.java # REST Controller (10接口) └── CcdiPurchaseTransactionController.java # REST Controller (10接口)
``` ```
@@ -159,14 +159,14 @@ WHERE menu_name = '采购交易管理';
#### 方式A: 已有代码跳过 (推荐) #### 方式A: 已有代码跳过 (推荐)
```bash ```bash
# 代码已存在于项目目录中,无需额外操作 # 代码已存在于项目目录中,无需额外操作
cd ruoyi-ccdi cd ruoyi-info-collection
mvn clean compile # 验证编译 mvn clean compile # 验证编译
``` ```
#### 方式B: 从Git拉取 #### 方式B: 从Git拉取
```bash ```bash
git pull origin dev git pull origin dev
cd ruoyi-ccdi cd ruoyi-info-collection
mvn clean compile mvn clean compile
``` ```
@@ -586,8 +586,8 @@ redis-cli KEYS "import:purchaseTransaction:*"
- 查看Redis状态: `redis-cli monitor` - 查看Redis状态: `redis-cli monitor`
**关键文件位置**: **关键文件位置**:
- Controller: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiPurchaseTransactionController.java` - Controller: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiPurchaseTransactionController.java`
- 异步Service: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiPurchaseTransactionImportServiceImpl.java` - 异步Service: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiPurchaseTransactionImportServiceImpl.java`
- 前端页面: `ruoyi-ui/src/views/ccdiPurchaseTransaction/index.vue` - 前端页面: `ruoyi-ui/src/views/ccdiPurchaseTransaction/index.vue`
--- ---

View File

@@ -407,8 +407,8 @@ redisTemplate.expire(statusKey, 7, TimeUnit.DAYS);
- 验证清单: `doc/plans/2026-02-06-ccdi_purchase_transaction-verification.md` - 验证清单: `doc/plans/2026-02-06-ccdi_purchase_transaction-verification.md`
**关键文件**: **关键文件**:
- 后端Controller: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiPurchaseTransactionController.java` - 后端Controller: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiPurchaseTransactionController.java`
- 异步Service: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiPurchaseTransactionImportServiceImpl.java` - 异步Service: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiPurchaseTransactionImportServiceImpl.java`
- 前端页面: `ruoyi-ui/src/views/ccdiPurchaseTransaction/index.vue` - 前端页面: `ruoyi-ui/src/views/ccdiPurchaseTransaction/index.vue`
**测试账号**: **测试账号**:

View File

@@ -16,8 +16,8 @@
## 前置条件 ## 前置条件
### 参考文档 ### 参考文档
- 员工招聘信息模块: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/**/CcdiStaffRecruitment*` - 员工招聘信息模块: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/**/CcdiStaffRecruitment*`
- 员工异步导入实现: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiEmployeeImportServiceImpl.java` - 员工异步导入实现: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiEmployeeImportServiceImpl.java`
- 数据库表定义: `doc/docs/ccdi_purchase_transaction.csv` - 数据库表定义: `doc/docs/ccdi_purchase_transaction.csv`
### 数据库表结构 ### 数据库表结构
@@ -98,7 +98,7 @@ git commit -m "feat: 添加员工采购交易信息表"
## Task 2: 创建实体类 ## Task 2: 创建实体类
**Files:** **Files:**
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/CcdiPurchaseTransaction.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/CcdiPurchaseTransaction.java`
**Step 1: 创建实体类** **Step 1: 创建实体类**
@@ -247,7 +247,7 @@ public class CcdiPurchaseTransaction implements Serializable {
**Step 2: 验证编译** **Step 2: 验证编译**
```bash ```bash
cd ruoyi-ccdi cd ruoyi-info-collection
mvn compile -pl . -am mvn compile -pl . -am
``` ```
@@ -256,7 +256,7 @@ Expected: 编译成功,无错误
**Step 3: Commit** **Step 3: Commit**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/CcdiPurchaseTransaction.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/CcdiPurchaseTransaction.java
git commit -m "feat: 添加采购交易信息实体类" git commit -m "feat: 添加采购交易信息实体类"
``` ```
@@ -265,7 +265,7 @@ git commit -m "feat: 添加采购交易信息实体类"
## Task 3: 创建查询DTO ## Task 3: 创建查询DTO
**Files:** **Files:**
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiPurchaseTransactionQueryDTO.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiPurchaseTransactionQueryDTO.java`
**Step 1: 创建查询DTO** **Step 1: 创建查询DTO**
@@ -324,7 +324,7 @@ public class CcdiPurchaseTransactionQueryDTO implements Serializable {
**Step 2: Commit** **Step 2: Commit**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiPurchaseTransactionQueryDTO.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiPurchaseTransactionQueryDTO.java
git commit -m "feat: 添加采购交易查询DTO" git commit -m "feat: 添加采购交易查询DTO"
``` ```
@@ -333,7 +333,7 @@ git commit -m "feat: 添加采购交易查询DTO"
## Task 4: 创建新增DTO ## Task 4: 创建新增DTO
**Files:** **Files:**
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiPurchaseTransactionAddDTO.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiPurchaseTransactionAddDTO.java`
**Step 1: 创建新增DTO包含验证注解** **Step 1: 创建新增DTO包含验证注解**
@@ -505,7 +505,7 @@ public class CcdiPurchaseTransactionAddDTO implements Serializable {
**Step 2: Commit** **Step 2: Commit**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiPurchaseTransactionAddDTO.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiPurchaseTransactionAddDTO.java
git commit -m "feat: 添加采购交易新增DTO" git commit -m "feat: 添加采购交易新增DTO"
``` ```
@@ -514,7 +514,7 @@ git commit -m "feat: 添加采购交易新增DTO"
## Task 5: 创建编辑DTO ## Task 5: 创建编辑DTO
**Files:** **Files:**
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiPurchaseTransactionEditDTO.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiPurchaseTransactionEditDTO.java`
**Step 1: 创建编辑DTO** **Step 1: 创建编辑DTO**
@@ -523,7 +523,7 @@ git commit -m "feat: 添加采购交易新增DTO"
**Step 2: Commit** **Step 2: Commit**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiPurchaseTransactionEditDTO.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiPurchaseTransactionEditDTO.java
git commit -m "feat: 添加采购交易编辑DTO" git commit -m "feat: 添加采购交易编辑DTO"
``` ```
@@ -532,7 +532,7 @@ git commit -m "feat: 添加采购交易编辑DTO"
## Task 6: 创建VO类 ## Task 6: 创建VO类
**Files:** **Files:**
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/CcdiPurchaseTransactionVO.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/CcdiPurchaseTransactionVO.java`
**Step 1: 创建VO类** **Step 1: 创建VO类**
@@ -686,7 +686,7 @@ public class CcdiPurchaseTransactionVO implements Serializable {
**Step 2: Commit** **Step 2: Commit**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/CcdiPurchaseTransactionVO.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/CcdiPurchaseTransactionVO.java
git commit -m "feat: 添加采购交易VO类" git commit -m "feat: 添加采购交易VO类"
``` ```
@@ -695,7 +695,7 @@ git commit -m "feat: 添加采购交易VO类"
## Task 7: 创建Excel导入导出类 ## Task 7: 创建Excel导入导出类
**Files:** **Files:**
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/excel/CcdiPurchaseTransactionExcel.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/excel/CcdiPurchaseTransactionExcel.java`
**Step 1: 创建Excel类** **Step 1: 创建Excel类**
@@ -704,7 +704,7 @@ git commit -m "feat: 添加采购交易VO类"
**Step 2: Commit** **Step 2: Commit**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/excel/CcdiPurchaseTransactionExcel.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/excel/CcdiPurchaseTransactionExcel.java
git commit -m "feat: 添加采购交易Excel类" git commit -m "feat: 添加采购交易Excel类"
``` ```
@@ -713,7 +713,7 @@ git commit -m "feat: 添加采购交易Excel类"
## Task 8: 创建Mapper接口 ## Task 8: 创建Mapper接口
**Files:** **Files:**
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiPurchaseTransactionMapper.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiPurchaseTransactionMapper.java`
**Step 1: 创建Mapper接口** **Step 1: 创建Mapper接口**
@@ -763,7 +763,7 @@ public interface CcdiPurchaseTransactionMapper extends BaseMapper<CcdiPurchaseTr
**Step 2: Commit** **Step 2: Commit**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiPurchaseTransactionMapper.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiPurchaseTransactionMapper.java
git commit -m "feat: 添加采购交易Mapper接口" git commit -m "feat: 添加采购交易Mapper接口"
``` ```
@@ -772,7 +772,7 @@ git commit -m "feat: 添加采购交易Mapper接口"
## Task 9: 创建Mapper XML文件 ## Task 9: 创建Mapper XML文件
**Files:** **Files:**
- Create: `ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiPurchaseTransactionMapper.xml` - Create: `ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiPurchaseTransactionMapper.xml`
**Step 1: 创建XML映射文件** **Step 1: 创建XML映射文件**
@@ -785,7 +785,7 @@ git commit -m "feat: 添加采购交易Mapper接口"
**Step 2: Commit** **Step 2: Commit**
```bash ```bash
git add ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiPurchaseTransactionMapper.xml git add ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiPurchaseTransactionMapper.xml
git commit -m "feat: 添加采购交易Mapper XML" git commit -m "feat: 添加采购交易Mapper XML"
``` ```
@@ -794,7 +794,7 @@ git commit -m "feat: 添加采购交易Mapper XML"
## Task 10: 创建Service接口 ## Task 10: 创建Service接口
**Files:** **Files:**
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/ICcdiPurchaseTransactionService.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/ICcdiPurchaseTransactionService.java`
**Step 1: 创建Service接口** **Step 1: 创建Service接口**
@@ -811,7 +811,7 @@ git commit -m "feat: 添加采购交易Mapper XML"
**Step 2: Commit** **Step 2: Commit**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/ICcdiPurchaseTransactionService.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/ICcdiPurchaseTransactionService.java
git commit -m "feat: 添加采购交易Service接口" git commit -m "feat: 添加采购交易Service接口"
``` ```
@@ -820,7 +820,7 @@ git commit -m "feat: 添加采购交易Service接口"
## Task 11: 创建异步导入Service接口 ## Task 11: 创建异步导入Service接口
**Files:** **Files:**
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/ICcdiPurchaseTransactionImportService.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/ICcdiPurchaseTransactionImportService.java`
**Step 1: 创建异步导入Service接口** **Step 1: 创建异步导入Service接口**
@@ -832,7 +832,7 @@ git commit -m "feat: 添加采购交易Service接口"
**Step 2: Commit** **Step 2: Commit**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/ICcdiPurchaseTransactionImportService.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/ICcdiPurchaseTransactionImportService.java
git commit -m "feat: 添加采购交易异步导入Service接口" git commit -m "feat: 添加采购交易异步导入Service接口"
``` ```
@@ -841,7 +841,7 @@ git commit -m "feat: 添加采购交易异步导入Service接口"
## Task 12: 创建Service实现类 ## Task 12: 创建Service实现类
**Files:** **Files:**
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiPurchaseTransactionServiceImpl.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiPurchaseTransactionServiceImpl.java`
**Step 1: 创建Service实现** **Step 1: 创建Service实现**
@@ -850,7 +850,7 @@ git commit -m "feat: 添加采购交易异步导入Service接口"
**Step 2: Commit** **Step 2: Commit**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiPurchaseTransactionServiceImpl.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiPurchaseTransactionServiceImpl.java
git commit -m "feat: 添加采购交易Service实现" git commit -m "feat: 添加采购交易Service实现"
``` ```
@@ -859,7 +859,7 @@ git commit -m "feat: 添加采购交易Service实现"
## Task 13: 创建异步导入Service实现类 ## Task 13: 创建异步导入Service实现类
**Files:** **Files:**
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiPurchaseTransactionImportServiceImpl.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiPurchaseTransactionImportServiceImpl.java`
**Step 1: 创建异步导入实现** **Step 1: 创建异步导入实现**
@@ -874,7 +874,7 @@ git commit -m "feat: 添加采购交易Service实现"
**Step 2: Commit** **Step 2: Commit**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiPurchaseTransactionImportServiceImpl.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiPurchaseTransactionImportServiceImpl.java
git commit -m "feat: 添加采购交易异步导入Service实现" git commit -m "feat: 添加采购交易异步导入Service实现"
``` ```
@@ -883,7 +883,7 @@ git commit -m "feat: 添加采购交易异步导入Service实现"
## Task 14: 创建Controller控制器 ## Task 14: 创建Controller控制器
**Files:** **Files:**
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiPurchaseTransactionController.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiPurchaseTransactionController.java`
**Step 1: 创建Controller** **Step 1: 创建Controller**
@@ -904,7 +904,7 @@ git commit -m "feat: 添加采购交易异步导入Service实现"
**Step 2: Commit** **Step 2: Commit**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiPurchaseTransactionController.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiPurchaseTransactionController.java
git commit -m "feat: 添加采购交易Controller" git commit -m "feat: 添加采购交易Controller"
``` ```
@@ -1204,7 +1204,7 @@ git commit -m "feat: 完成采购交易信息管理功能开发"
## 参考文件 ## 参考文件
- 员工招聘信息模块: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/**/CcdiStaffRecruitment*` - 员工招聘信息模块: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/**/CcdiStaffRecruitment*`
- 员工异步导入: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiEmployeeImportServiceImpl.java` - 员工异步导入: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiEmployeeImportServiceImpl.java`
- 前端页面: `ruoyi-ui/src/views/ccdiStaffRecruitment/index.vue` - 前端页面: `ruoyi-ui/src/views/ccdiStaffRecruitment/index.vue`
- 测试脚本: `test/test_employee_api.ps1` - 测试脚本: `test/test_employee_api.ps1`

View File

@@ -725,15 +725,15 @@ import:employee:{taskId}:failures # 失败记录列表
### C. 相关文件清单 ### C. 相关文件清单
**后端**: **后端**:
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/config/AsyncConfig.java` - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/config/AsyncConfig.java`
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/ImportResultVO.java` - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/ImportResultVO.java`
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/ImportStatusVO.java` - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/ImportStatusVO.java`
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/ImportFailureVO.java` - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/ImportFailureVO.java`
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/ICcdiEmployeeService.java` - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/ICcdiEmployeeService.java`
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiEmployeeServiceImpl.java` - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiEmployeeServiceImpl.java`
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiEmployeeMapper.java` - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiEmployeeMapper.java`
- `ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiEmployeeMapper.xml` - `ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiEmployeeMapper.xml`
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiEmployeeController.java` - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiEmployeeController.java`
**前端**: **前端**:
- `ruoyi-ui/src/api/ccdiEmployee.js` - `ruoyi-ui/src/api/ccdiEmployee.js`

View File

@@ -15,7 +15,7 @@
**目标:** 创建异步配置类,设置专用线程池处理导入任务 **目标:** 创建异步配置类,设置专用线程池处理导入任务
**文件:** **文件:**
- 创建: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/config/AsyncConfig.java` - 创建: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/config/AsyncConfig.java`
**步骤 1: 创建AsyncConfig配置类** **步骤 1: 创建AsyncConfig配置类**
@@ -72,7 +72,7 @@ public class AsyncConfig {
**步骤 3: 提交配置** **步骤 3: 提交配置**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/config/AsyncConfig.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/config/AsyncConfig.java
git commit -m "feat: 添加异步配置类,配置导入任务专用线程池" git commit -m "feat: 添加异步配置类,配置导入任务专用线程池"
``` ```
@@ -83,9 +83,9 @@ git commit -m "feat: 添加异步配置类,配置导入任务专用线程池"
**目标:** 创建导入结果、状态和失败记录的VO类 **目标:** 创建导入结果、状态和失败记录的VO类
**文件:** **文件:**
- 创建: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/ImportResultVO.java` - 创建: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/ImportResultVO.java`
- 创建: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/ImportStatusVO.java` - 创建: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/ImportStatusVO.java`
- 创建: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/ImportFailureVO.java` - 创建: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/ImportFailureVO.java`
**步骤 1: 创建ImportResultVO** **步骤 1: 创建ImportResultVO**
@@ -207,7 +207,7 @@ public class ImportFailureVO {
**步骤 4: 提交VO类** **步骤 4: 提交VO类**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/ git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/
git commit -m "feat: 添加导入相关VO类(ImportResultVO, ImportStatusVO, ImportFailureVO)" git commit -m "feat: 添加导入相关VO类(ImportResultVO, ImportStatusVO, ImportFailureVO)"
``` ```
@@ -270,8 +270,8 @@ git commit -m "feat: 添加员工表柜员号唯一索引,支持批量更新"
**目标:** 在Mapper接口和XML中添加批量查询和批量插入更新的方法 **目标:** 在Mapper接口和XML中添加批量查询和批量插入更新的方法
**文件:** **文件:**
- 修改: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiEmployeeMapper.java` - 修改: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiEmployeeMapper.java`
- 修改: `ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiEmployeeMapper.xml` - 修改: `ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiEmployeeMapper.xml`
**步骤 1: 在Mapper接口中添加方法** **步骤 1: 在Mapper接口中添加方法**
@@ -319,8 +319,8 @@ int insertOrUpdateBatch(@Param("list") List<CcdiEmployee> list);
**步骤 3: 提交Mapper变更** **步骤 3: 提交Mapper变更**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiEmployeeMapper.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiEmployeeMapper.java
git add ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiEmployeeMapper.xml git add ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiEmployeeMapper.xml
git commit -m "feat: 添加批量插入或更新员工信息方法" git commit -m "feat: 添加批量插入或更新员工信息方法"
``` ```
@@ -331,8 +331,8 @@ git commit -m "feat: 添加批量插入或更新员工信息方法"
**目标:** 实现异步导入逻辑,包括数据分类、批量操作、Redis存储 **目标:** 实现异步导入逻辑,包括数据分类、批量操作、Redis存储
**文件:** **文件:**
- 修改: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/ICcdiEmployeeService.java` - 修改: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/ICcdiEmployeeService.java`
- 修改: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiEmployeeServiceImpl.java` - 修改: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiEmployeeServiceImpl.java`
**步骤 1: 在Service接口中添加方法声明** **步骤 1: 在Service接口中添加方法声明**
@@ -625,7 +625,7 @@ public List<ImportFailureVO> getImportFailures(String taskId) {
**步骤 6: 提交Service层代码** **步骤 6: 提交Service层代码**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/ git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/
git commit -m "feat: 实现员工信息异步导入服务" git commit -m "feat: 实现员工信息异步导入服务"
``` ```
@@ -636,7 +636,7 @@ git commit -m "feat: 实现员工信息异步导入服务"
**目标:** 修改导入接口为异步,添加状态查询和失败记录查询接口 **目标:** 修改导入接口为异步,添加状态查询和失败记录查询接口
**文件:** **文件:**
- 修改: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiEmployeeController.java` - 修改: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiEmployeeController.java`
**步骤 1: 添加Resource注入** **步骤 1: 添加Resource注入**
@@ -722,7 +722,7 @@ public TableDataInfo getImportFailures(
**步骤 5: 提交Controller变更** **步骤 5: 提交Controller变更**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiEmployeeController.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiEmployeeController.java
git commit -m "feat: 修改导入接口为异步,添加状态和失败记录查询接口" git commit -m "feat: 修改导入接口为异步,添加状态和失败记录查询接口"
``` ```
@@ -1411,15 +1411,15 @@ git push origin v1.x.x
### A. 相关文件清单 ### A. 相关文件清单
**后端:** **后端:**
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/config/AsyncConfig.java` - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/config/AsyncConfig.java`
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/ImportResultVO.java` - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/ImportResultVO.java`
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/ImportStatusVO.java` - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/ImportStatusVO.java`
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/ImportFailureVO.java` - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/ImportFailureVO.java`
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/ICcdiEmployeeService.java` - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/ICcdiEmployeeService.java`
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiEmployeeServiceImpl.java` - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiEmployeeServiceImpl.java`
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiEmployeeMapper.java` - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiEmployeeMapper.java`
- `ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiEmployeeMapper.xml` - `ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiEmployeeMapper.xml`
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiEmployeeController.java` - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiEmployeeController.java`
**前端:** **前端:**
- `ruoyi-ui/src/api/ccdiEmployee.js` - `ruoyi-ui/src/api/ccdiEmployee.js`

View File

@@ -869,19 +869,19 @@ private void updateImportStatus(String taskType, String taskId, String status, I
| 文件路径 | 说明 | | 文件路径 | 说明 |
|---------|------| |---------|------|
| `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/IntermediaryPersonImportFailureVO.java` | 个人中介导入失败记录VO | | `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/IntermediaryPersonImportFailureVO.java` | 个人中介导入失败记录VO |
| `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/IntermediaryEntityImportFailureVO.java` | 实体中介导入失败记录VO | | `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/IntermediaryEntityImportFailureVO.java` | 实体中介导入失败记录VO |
| `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/ICcdiIntermediaryPersonImportService.java` | 个人中介异步导入Service接口 | | `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/ICcdiIntermediaryPersonImportService.java` | 个人中介异步导入Service接口 |
| `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/ICcdiIntermediaryEntityImportService.java` | 实体中介异步导入Service接口 | | `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/ICcdiIntermediaryEntityImportService.java` | 实体中介异步导入Service接口 |
| `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryPersonImportServiceImpl.java` | 个人中介异步导入Service实现 | | `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryPersonImportServiceImpl.java` | 个人中介异步导入Service实现 |
| `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryEntityImportServiceImpl.java` | 实体中介异步导入Service实现 | | `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryEntityImportServiceImpl.java` | 实体中介异步导入Service实现 |
| `test/test_intermediary_import.py` | 测试脚本 | | `test/test_intermediary_import.py` | 测试脚本 |
### 5.2 修改文件 ### 5.2 修改文件
| 文件路径 | 修改内容 | | 文件路径 | 修改内容 |
|---------|---------| |---------|---------|
| `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java` | 修改导入接口,添加状态查询和失败记录查询接口(个人+实体共6个接口) | | `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java` | 修改导入接口,添加状态查询和失败记录查询接口(个人+实体共6个接口) |
| `ruoyi-ui/src/api/ccdiIntermediary.js` | 添加导入状态和失败记录查询API(4个新方法) | | `ruoyi-ui/src/api/ccdiIntermediary.js` | 添加导入状态和失败记录查询API(4个新方法) |
| `ruoyi-ui/src/views/ccdiIntermediary/index.vue` | 添加轮询逻辑、失败记录UI(两套独立组件) | | `ruoyi-ui/src/views/ccdiIntermediary/index.vue` | 添加轮询逻辑、失败记录UI(两套独立组件) |
| `doc/api/ccdi_intermediary_api.md` | 更新API文档(新增导入相关接口文档) | | `doc/api/ccdi_intermediary_api.md` | 更新API文档(新增导入相关接口文档) |
@@ -904,20 +904,20 @@ private void updateImportStatus(String taskType, String taskId, String status, I
#### 步骤1: 创建失败记录VO类 #### 步骤1: 创建失败记录VO类
**文件:** **文件:**
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/IntermediaryPersonImportFailureVO.java` - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/IntermediaryPersonImportFailureVO.java`
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/IntermediaryEntityImportFailureVO.java` - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/IntermediaryEntityImportFailureVO.java`
#### 步骤2: 创建Service接口 #### 步骤2: 创建Service接口
**文件:** **文件:**
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/ICcdiIntermediaryPersonImportService.java` - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/ICcdiIntermediaryPersonImportService.java`
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/ICcdiIntermediaryEntityImportService.java` - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/ICcdiIntermediaryEntityImportService.java`
#### 步骤3: 实现Service #### 步骤3: 实现Service
**文件:** **文件:**
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryPersonImportServiceImpl.java` - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryPersonImportServiceImpl.java`
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryEntityImportServiceImpl.java` - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryEntityImportServiceImpl.java`
**操作:** **操作:**
- 实现`ICcdiIntermediaryPersonImportService`接口 - 实现`ICcdiIntermediaryPersonImportService`接口
@@ -931,7 +931,7 @@ private void updateImportStatus(String taskType, String taskId, String status, I
#### 步骤4: 修改Controller #### 步骤4: 修改Controller
**文件:** **文件:**
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java` - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java`
**操作:** **操作:**
- 注入两个导入Service - 注入两个导入Service

View File

@@ -14,8 +14,8 @@
**参考资料:** **参考资料:**
- 设计文档: `doc/plans/2026-02-06-intermediary-async-import-design.md` - 设计文档: `doc/plans/2026-02-06-intermediary-async-import-design.md`
- 员工导入实现: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiEmployeeImportServiceImpl.java` - 员工导入实现: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiEmployeeImportServiceImpl.java`
- 招聘导入实现: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiStaffRecruitmentImportServiceImpl.java` - 招聘导入实现: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiStaffRecruitmentImportServiceImpl.java`
**关键依赖:** **关键依赖:**
- `ImportResultVO` - 导入结果VO(已存在,复用) - `ImportResultVO` - 导入结果VO(已存在,复用)
@@ -32,7 +32,7 @@
## Task 1: 创建个人中介导入失败记录VO ## Task 1: 创建个人中介导入失败记录VO
**文件:** **文件:**
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/IntermediaryPersonImportFailureVO.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/IntermediaryPersonImportFailureVO.java`
**Step 1: 创建VO类** **Step 1: 创建VO类**
@@ -84,13 +84,13 @@ public class IntermediaryPersonImportFailureVO implements Serializable {
**Step 2: 编译验证** **Step 2: 编译验证**
Run: `mvn compile -pl ruoyi-ccdi` Run: `mvn compile -pl ruoyi-info-collection`
Expected: BUILD SUCCESS Expected: BUILD SUCCESS
**Step 3: 提交** **Step 3: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/IntermediaryPersonImportFailureVO.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/IntermediaryPersonImportFailureVO.java
git commit -m "feat: 添加个人中介导入失败记录VO" git commit -m "feat: 添加个人中介导入失败记录VO"
``` ```
@@ -99,7 +99,7 @@ git commit -m "feat: 添加个人中介导入失败记录VO"
## Task 2: 创建实体中介导入失败记录VO ## Task 2: 创建实体中介导入失败记录VO
**文件:** **文件:**
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/IntermediaryEntityImportFailureVO.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/IntermediaryEntityImportFailureVO.java`
**Step 1: 创建VO类** **Step 1: 创建VO类**
@@ -152,13 +152,13 @@ public class IntermediaryEntityImportFailureVO implements Serializable {
**Step 2: 编译验证** **Step 2: 编译验证**
Run: `mvn compile -pl ruoyi-ccdi` Run: `mvn compile -pl ruoyi-info-collection`
Expected: BUILD SUCCESS Expected: BUILD SUCCESS
**Step 3: 提交** **Step 3: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/IntermediaryEntityImportFailureVO.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/IntermediaryEntityImportFailureVO.java
git commit -m "feat: 添加实体中介导入失败记录VO" git commit -m "feat: 添加实体中介导入失败记录VO"
``` ```
@@ -167,7 +167,7 @@ git commit -m "feat: 添加实体中介导入失败记录VO"
## Task 3: 创建个人中介导入Service接口 ## Task 3: 创建个人中介导入Service接口
**文件:** **文件:**
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/ICcdiIntermediaryPersonImportService.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/ICcdiIntermediaryPersonImportService.java`
**Step 1: 创建Service接口** **Step 1: 创建Service接口**
@@ -222,13 +222,13 @@ public interface ICcdiIntermediaryPersonImportService {
**Step 2: 编译验证** **Step 2: 编译验证**
Run: `mvn compile -pl ruoyi-ccdi` Run: `mvn compile -pl ruoyi-info-collection`
Expected: BUILD SUCCESS Expected: BUILD SUCCESS
**Step 3: 提交** **Step 3: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/ICcdiIntermediaryPersonImportService.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/ICcdiIntermediaryPersonImportService.java
git commit -m "feat: 添加个人中介异步导入Service接口" git commit -m "feat: 添加个人中介异步导入Service接口"
``` ```
@@ -237,7 +237,7 @@ git commit -m "feat: 添加个人中介异步导入Service接口"
## Task 4: 创建实体中介导入Service接口 ## Task 4: 创建实体中介导入Service接口
**文件:** **文件:**
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/ICcdiIntermediaryEntityImportService.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/ICcdiIntermediaryEntityImportService.java`
**Step 1: 创建Service接口** **Step 1: 创建Service接口**
@@ -292,13 +292,13 @@ public interface ICcdiIntermediaryEntityImportService {
**Step 2: 编译验证** **Step 2: 编译验证**
Run: `mvn compile -pl ruoyi-ccdi` Run: `mvn compile -pl ruoyi-info-collection`
Expected: BUILD SUCCESS Expected: BUILD SUCCESS
**Step 3: 提交** **Step 3: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/ICcdiIntermediaryEntityImportService.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/ICcdiIntermediaryEntityImportService.java
git commit -m "feat: 添加实体中介异步导入Service接口" git commit -m "feat: 添加实体中介异步导入Service接口"
``` ```
@@ -307,7 +307,7 @@ git commit -m "feat: 添加实体中介异步导入Service接口"
## Task 5: 实现个人中介异步导入Service ## Task 5: 实现个人中介异步导入Service
**文件:** **文件:**
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryPersonImportServiceImpl.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryPersonImportServiceImpl.java`
**Step 1: 创建Service实现类** **Step 1: 创建Service实现类**
@@ -515,13 +515,13 @@ public class CcdiIntermediaryPersonImportServiceImpl implements ICcdiIntermediar
**Step 2: 编译验证** **Step 2: 编译验证**
Run: `mvn compile -pl ruoyi-ccdi` Run: `mvn compile -pl ruoyi-info-collection`
Expected: BUILD SUCCESS Expected: BUILD SUCCESS
**Step 3: 提交** **Step 3: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryPersonImportServiceImpl.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryPersonImportServiceImpl.java
git commit -m "feat: 实现个人中介异步导入Service" git commit -m "feat: 实现个人中介异步导入Service"
``` ```
@@ -530,7 +530,7 @@ git commit -m "feat: 实现个人中介异步导入Service"
## Task 6: 实现实体中介异步导入Service ## Task 6: 实现实体中介异步导入Service
**文件:** **文件:**
- Create: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryEntityImportServiceImpl.java` - Create: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryEntityImportServiceImpl.java`
**Step 1: 创建Service实现类** **Step 1: 创建Service实现类**
@@ -737,13 +737,13 @@ public class CcdiIntermediaryEntityImportServiceImpl implements ICcdiIntermediar
**Step 2: 编译验证** **Step 2: 编译验证**
Run: `mvn compile -pl ruoyi-ccdi` Run: `mvn compile -pl ruoyi-info-collection`
Expected: BUILD SUCCESS Expected: BUILD SUCCESS
**Step 3: 提交** **Step 3: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryEntityImportServiceImpl.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryEntityImportServiceImpl.java
git commit -m "feat: 实现实体中介异步导入Service" git commit -m "feat: 实现实体中介异步导入Service"
``` ```
@@ -752,7 +752,7 @@ git commit -m "feat: 实现实体中介异步导入Service"
## Task 7: 修改Controller - 注入Service和添加辅助方法 ## Task 7: 修改Controller - 注入Service和添加辅助方法
**文件:** **文件:**
- Modify: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java` - Modify: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java`
**Step 1: 添加导入Service注入** **Step 1: 添加导入Service注入**
@@ -801,13 +801,13 @@ private RedisTemplate<String, Object> redisTemplate;
**Step 4: 编译验证** **Step 4: 编译验证**
Run: `mvn compile -pl ruoyi-ccdi` Run: `mvn compile -pl ruoyi-info-collection`
Expected: BUILD SUCCESS Expected: BUILD SUCCESS
**Step 5: 提交** **Step 5: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java
git commit -m "feat: Controller添加导入Service注入和辅助方法" git commit -m "feat: Controller添加导入Service注入和辅助方法"
``` ```
@@ -816,7 +816,7 @@ git commit -m "feat: Controller添加导入Service注入和辅助方法"
## Task 8: 修改Controller - 改造个人中介导入接口为异步 ## Task 8: 修改Controller - 改造个人中介导入接口为异步
**文件:** **文件:**
- Modify: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java` - Modify: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java`
**Step 1: 修改importPersonData方法** **Step 1: 修改importPersonData方法**
@@ -865,13 +865,13 @@ public AjaxResult importPersonData(MultipartFile file,
**Step 2: 编译验证** **Step 2: 编译验证**
Run: `mvn compile -pl ruoyi-ccdi` Run: `mvn compile -pl ruoyi-info-collection`
Expected: BUILD SUCCESS Expected: BUILD SUCCESS
**Step 3: 提交** **Step 3: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java
git commit -m "feat: 改造个人中介导入接口为异步" git commit -m "feat: 改造个人中介导入接口为异步"
``` ```
@@ -880,7 +880,7 @@ git commit -m "feat: 改造个人中介导入接口为异步"
## Task 9: 修改Controller - 添加个人中介状态查询接口 ## Task 9: 修改Controller - 添加个人中介状态查询接口
**文件:** **文件:**
- Modify: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java` - Modify: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java`
**Step 1: 添加getPersonImportStatus方法** **Step 1: 添加getPersonImportStatus方法**
@@ -903,13 +903,13 @@ public AjaxResult getPersonImportStatus(@PathVariable String taskId) {
**Step 2: 编译验证** **Step 2: 编译验证**
Run: `mvn compile -pl ruoyi-ccdi` Run: `mvn compile -pl ruoyi-info-collection`
Expected: BUILD SUCCESS Expected: BUILD SUCCESS
**Step 3: 提交** **Step 3: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java
git commit -m "feat: 添加个人中介导入状态查询接口" git commit -m "feat: 添加个人中介导入状态查询接口"
``` ```
@@ -918,7 +918,7 @@ git commit -m "feat: 添加个人中介导入状态查询接口"
## Task 10: 修改Controller - 添加个人中介失败记录查询接口 ## Task 10: 修改Controller - 添加个人中介失败记录查询接口
**文件:** **文件:**
- Modify: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java` - Modify: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java`
**Step 1: 添加getPersonImportFailures方法** **Step 1: 添加getPersonImportFailures方法**
@@ -949,13 +949,13 @@ public TableDataInfo getPersonImportFailures(
**Step 2: 编译验证** **Step 2: 编译验证**
Run: `mvn compile -pl ruoyi-ccdi` Run: `mvn compile -pl ruoyi-info-collection`
Expected: BUILD SUCCESS Expected: BUILD SUCCESS
**Step 3: 提交** **Step 3: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java
git commit -m "feat: 添加个人中介导入失败记录查询接口" git commit -m "feat: 添加个人中介导入失败记录查询接口"
``` ```
@@ -964,7 +964,7 @@ git commit -m "feat: 添加个人中介导入失败记录查询接口"
## Task 11: 修改Controller - 改造实体中介导入接口为异步 ## Task 11: 修改Controller - 改造实体中介导入接口为异步
**文件:** **文件:**
- Modify: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java` - Modify: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java`
**Step 1: 修改importEntityData方法** **Step 1: 修改importEntityData方法**
@@ -1013,13 +1013,13 @@ public AjaxResult importEntityData(MultipartFile file,
**Step 2: 编译验证** **Step 2: 编译验证**
Run: `mvn compile -pl ruoyi-ccdi` Run: `mvn compile -pl ruoyi-info-collection`
Expected: BUILD SUCCESS Expected: BUILD SUCCESS
**Step 3: 提交** **Step 3: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java
git commit -m "feat: 改造实体中介导入接口为异步" git commit -m "feat: 改造实体中介导入接口为异步"
``` ```
@@ -1028,7 +1028,7 @@ git commit -m "feat: 改造实体中介导入接口为异步"
## Task 12: 修改Controller - 添加实体中介状态查询接口 ## Task 12: 修改Controller - 添加实体中介状态查询接口
**文件:** **文件:**
- Modify: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java` - Modify: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java`
**Step 1: 添加getEntityImportStatus方法** **Step 1: 添加getEntityImportStatus方法**
@@ -1051,13 +1051,13 @@ public AjaxResult getEntityImportStatus(@PathVariable String taskId) {
**Step 2: 编译验证** **Step 2: 编译验证**
Run: `mvn compile -pl ruoyi-ccdi` Run: `mvn compile -pl ruoyi-info-collection`
Expected: BUILD SUCCESS Expected: BUILD SUCCESS
**Step 3: 提交** **Step 3: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java
git commit -m "feat: 添加实体中介导入状态查询接口" git commit -m "feat: 添加实体中介导入状态查询接口"
``` ```
@@ -1066,7 +1066,7 @@ git commit -m "feat: 添加实体中介导入状态查询接口"
## Task 13: 修改Controller - 添加实体中介失败记录查询接口 ## Task 13: 修改Controller - 添加实体中介失败记录查询接口
**文件:** **文件:**
- Modify: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java` - Modify: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java`
**Step 1: 添加getEntityImportFailures方法** **Step 1: 添加getEntityImportFailures方法**
@@ -1097,13 +1097,13 @@ public TableDataInfo getEntityImportFailures(
**Step 2: 编译验证** **Step 2: 编译验证**
Run: `mvn compile -pl ruoyi-ccdi` Run: `mvn compile -pl ruoyi-info-collection`
Expected: BUILD SUCCESS Expected: BUILD SUCCESS
**Step 3: 提交** **Step 3: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java
git commit -m "feat: 添加实体中介导入失败记录查询接口" git commit -m "feat: 添加实体中介导入失败记录查询接口"
``` ```
@@ -1924,7 +1924,7 @@ git commit -m "test: 添加中介导入测试脚本"
**Step 1: 编译后端** **Step 1: 编译后端**
Run: `mvn clean compile -pl ruoyi-ccdi` Run: `mvn clean compile -pl ruoyi-info-collection`
Expected: BUILD SUCCESS Expected: BUILD SUCCESS
**Step 2: 检查前端语法** **Step 2: 检查前端语法**

View File

@@ -695,7 +695,7 @@ methods: {
#### 步骤1: 创建VO类 #### 步骤1: 创建VO类
**文件:** **文件:**
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/RecruitmentImportFailureVO.java` - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/RecruitmentImportFailureVO.java`
**操作:** **操作:**
- 创建`RecruitmentImportFailureVO` - 创建`RecruitmentImportFailureVO`
@@ -705,7 +705,7 @@ methods: {
#### 步骤2: 创建Service接口 #### 步骤2: 创建Service接口
**文件:** **文件:**
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/ICcdiStaffRecruitmentImportService.java` - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/ICcdiStaffRecruitmentImportService.java`
**操作:** **操作:**
- 创建Service接口 - 创建Service接口
@@ -714,7 +714,7 @@ methods: {
#### 步骤3: 实现Service #### 步骤3: 实现Service
**文件:** **文件:**
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiStaffRecruitmentImportServiceImpl.java` - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiStaffRecruitmentImportServiceImpl.java`
**操作:** **操作:**
- 实现`ICcdiStaffRecruitmentImportService`接口 - 实现`ICcdiStaffRecruitmentImportService`接口
@@ -727,7 +727,7 @@ methods: {
#### 步骤4: 修改Controller #### 步骤4: 修改Controller
**文件:** **文件:**
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiStaffRecruitmentController.java` - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiStaffRecruitmentController.java`
**操作:** **操作:**
- 注入`ICcdiStaffRecruitmentImportService` - 注入`ICcdiStaffRecruitmentImportService`
@@ -807,16 +807,16 @@ git commit -m "feat: 实现招聘信息异步导入功能"
| 文件路径 | 说明 | | 文件路径 | 说明 |
|---------|------| |---------|------|
| `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/RecruitmentImportFailureVO.java` | 招聘信息导入失败记录VO | | `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/RecruitmentImportFailureVO.java` | 招聘信息导入失败记录VO |
| `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/ICcdiStaffRecruitmentImportService.java` | 招聘信息异步导入Service接口 | | `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/ICcdiStaffRecruitmentImportService.java` | 招聘信息异步导入Service接口 |
| `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiStaffRecruitmentImportServiceImpl.java` | 招聘信息异步导入Service实现 | | `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiStaffRecruitmentImportServiceImpl.java` | 招聘信息异步导入Service实现 |
| `test/test_recruitment_import.py` | 测试脚本 | | `test/test_recruitment_import.py` | 测试脚本 |
### 7.2 修改文件 ### 7.2 修改文件
| 文件路径 | 修改内容 | | 文件路径 | 修改内容 |
|---------|---------| |---------|---------|
| `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiStaffRecruitmentController.java` | 修改导入接口,添加状态查询和失败记录查询接口 | | `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiStaffRecruitmentController.java` | 修改导入接口,添加状态查询和失败记录查询接口 |
| `ruoyi-ui/src/api/ccdiStaffRecruitment.js` | 添加导入状态和失败记录查询API | | `ruoyi-ui/src/api/ccdiStaffRecruitment.js` | 添加导入状态和失败记录查询API |
| `ruoyi-ui/src/views/ccdiStaffRecruitment/index.vue` | 添加轮询逻辑和失败记录UI | | `ruoyi-ui/src/views/ccdiStaffRecruitment/index.vue` | 添加轮询逻辑和失败记录UI |
| `doc/api/ccdi_staff_recruitment_api.md` | 更新API文档 | | `doc/api/ccdi_staff_recruitment_api.md` | 更新API文档 |

View File

@@ -60,7 +60,7 @@ ALTER TABLE cdi_biz_intermediary ADD UNIQUE KEY uk_person_id (person_id);
### Task 1: 添加个人中介批量导入方法接口 ### Task 1: 添加个人中介批量导入方法接口
**文件:** **文件:**
- 修改: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiBizIntermediaryMapper.java` - 修改: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiBizIntermediaryMapper.java`
**Step 1: 添加方法签名到接口** **Step 1: 添加方法签名到接口**
@@ -81,7 +81,7 @@ void importPersonBatch(@Param("list") List<CcdiBizIntermediary> list);
```bash ```bash
cd .worktrees/intermediary-import-upsert cd .worktrees/intermediary-import-upsert
mvn compile -pl ruoyi-ccdi -am mvn compile -pl ruoyi-info-collection -am
``` ```
预期: 编译成功,无错误 预期: 编译成功,无错误
@@ -89,7 +89,7 @@ mvn compile -pl ruoyi-ccdi -am
**Step 3: 提交** **Step 3: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiBizIntermediaryMapper.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiBizIntermediaryMapper.java
git commit -m "feat: 添加个人中介批量导入方法签名 git commit -m "feat: 添加个人中介批量导入方法签名
添加importPersonBatch方法到Mapper接口,用于支持ON DUPLICATE KEY UPDATE的批量导入操作。 添加importPersonBatch方法到Mapper接口,用于支持ON DUPLICATE KEY UPDATE的批量导入操作。
@@ -102,7 +102,7 @@ Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
### Task 2: 实现个人中介批量导入SQL ### Task 2: 实现个人中介批量导入SQL
**文件:** **文件:**
- 修改: `ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiBizIntermediaryMapper.xml` - 修改: `ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiBizIntermediaryMapper.xml`
**Step 1: 在XML文件中添加SQL实现** **Step 1: 在XML文件中添加SQL实现**
@@ -137,7 +137,7 @@ Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
```bash ```bash
# 检查XML格式是否正确 # 检查XML格式是否正确
xmllint --noout ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiBizIntermediaryMapper.xml xmllint --noout ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiBizIntermediaryMapper.xml
``` ```
预期: 无输出表示格式正确 预期: 无输出表示格式正确
@@ -145,7 +145,7 @@ xmllint --noout ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiBizIntermediaryMap
**Step 3: 验证编译** **Step 3: 验证编译**
```bash ```bash
mvn compile -pl ruoyi-ccdi -am mvn compile -pl ruoyi-info-collection -am
``` ```
预期: 编译成功 预期: 编译成功
@@ -153,7 +153,7 @@ mvn compile -pl ruoyi-ccdi -am
**Step 4: 提交** **Step 4: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiBizIntermediaryMapper.xml git add ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiBizIntermediaryMapper.xml
git commit -m "feat: 实现个人中介批量导入ON DUPLICATE KEY UPDATE SQL git commit -m "feat: 实现个人中介批量导入ON DUPLICATE KEY UPDATE SQL
使用INSERT ... ON DUPLICATE KEY UPDATE实现单次SQL完成插入或更新操作。 使用INSERT ... ON DUPLICATE KEY UPDATE实现单次SQL完成插入或更新操作。
@@ -169,7 +169,7 @@ Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
### Task 3: 添加实体中介批量导入方法接口 ### Task 3: 添加实体中介批量导入方法接口
**文件:** **文件:**
- 修改: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiEnterpriseBaseInfoMapper.java` - 修改: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiEnterpriseBaseInfoMapper.java`
**Step 1: 添加方法签名到接口** **Step 1: 添加方法签名到接口**
@@ -185,13 +185,13 @@ void importEntityBatch(@Param("list") List<CcdiEnterpriseBaseInfo> list);
**Step 2: 验证编译** **Step 2: 验证编译**
```bash ```bash
mvn compile -pl ruoyi-ccdi -am mvn compile -pl ruoyi-info-collection -am
``` ```
**Step 3: 提交** **Step 3: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiEnterpriseBaseInfoMapper.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiEnterpriseBaseInfoMapper.java
git commit -m "feat: 添加实体中介批量导入方法签名 git commit -m "feat: 添加实体中介批量导入方法签名
添加importEntityBatch方法到Mapper接口。 添加importEntityBatch方法到Mapper接口。
@@ -204,7 +204,7 @@ Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
### Task 4: 实现实体中介批量导入SQL ### Task 4: 实现实体中介批量导入SQL
**文件:** **文件:**
- 修改: `ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiEnterpriseBaseInfoMapper.xml` - 修改: `ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiEnterpriseBaseInfoMapper.xml`
**Step 1: 在XML文件中添加SQL实现** **Step 1: 在XML文件中添加SQL实现**
@@ -237,19 +237,19 @@ Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
**Step 2: 验证XML语法** **Step 2: 验证XML语法**
```bash ```bash
xmllint --noout ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiEnterpriseBaseInfoMapper.xml xmllint --noout ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiEnterpriseBaseInfoMapper.xml
``` ```
**Step 3: 验证编译** **Step 3: 验证编译**
```bash ```bash
mvn compile -pl ruoyi-ccdi -am mvn compile -pl ruoyi-info-collection -am
``` ```
**Step 4: 提交** **Step 4: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiEnterpriseBaseInfoMapper.xml git add ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiEnterpriseBaseInfoMapper.xml
git commit -m "feat: 实现实体中介批量导入ON DUPLICATE KEY UPDATE SQL git commit -m "feat: 实现实体中介批量导入ON DUPLICATE KEY UPDATE SQL
使用INSERT ... ON DUPLICATE KEY UPDATE实现单次SQL完成插入或更新操作。 使用INSERT ... ON DUPLICATE KEY UPDATE实现单次SQL完成插入或更新操作。
@@ -266,7 +266,7 @@ Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
### Task 5: 重构个人中介导入Service - 更新模式 ### Task 5: 重构个人中介导入Service - 更新模式
**文件:** **文件:**
- 修改: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryPersonImportServiceImpl.java` - 修改: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryPersonImportServiceImpl.java`
**Step 1: 修改 importPersonAsync 方法的核心导入逻辑** **Step 1: 修改 importPersonAsync 方法的核心导入逻辑**
@@ -361,13 +361,13 @@ private CcdiIntermediaryPersonExcel convertToExcel(CcdiBizIntermediary entity) {
**Step 4: 验证编译** **Step 4: 验证编译**
```bash ```bash
mvn compile -pl ruoyi-ccdi -am mvn compile -pl ruoyi-info-collection -am
``` ```
**Step 5: 提交** **Step 5: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryPersonImportServiceImpl.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryPersonImportServiceImpl.java
git commit -m "refactor: 重构个人中介导入Service使用ON DUPLICATE KEY UPDATE git commit -m "refactor: 重构个人中介导入Service使用ON DUPLICATE KEY UPDATE
主要变更: 主要变更:
@@ -384,7 +384,7 @@ Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
### Task 6: 重构实体中介导入Service - 更新模式 ### Task 6: 重构实体中介导入Service - 更新模式
**文件:** **文件:**
- 修改: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryEntityImportServiceImpl.java` - 修改: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryEntityImportServiceImpl.java`
**Step 1: 修改 importEntityAsync 方法的核心导入逻辑** **Step 1: 修改 importEntityAsync 方法的核心导入逻辑**
@@ -475,13 +475,13 @@ private CcdiIntermediaryEntityExcel convertToExcel(CcdiEnterpriseBaseInfo entity
**Step 4: 验证编译** **Step 4: 验证编译**
```bash ```bash
mvn compile -pl ruoyi-ccdi -am mvn compile -pl ruoyi-info-collection -am
``` ```
**Step 5: 提交** **Step 5: 提交**
```bash ```bash
git add ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryEntityImportServiceImpl.java git add ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryEntityImportServiceImpl.java
git commit -m "refactor: 重构实体中介导入Service使用ON DUPLICATE KEY UPDATE git commit -m "refactor: 重构实体中介导入Service使用ON DUPLICATE KEY UPDATE
与个人中介导入保持一致的实现方式。 与个人中介导入保持一致的实现方式。
@@ -496,7 +496,7 @@ Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
### Task 7: 编写个人中介导入单元测试 ### Task 7: 编写个人中介导入单元测试
**文件:** **文件:**
- 创建: `ruoyi-ccdi/src/test/java/com/ruoyi/ccdi/mapper/CcdiBizIntermediaryMapperTest.java` - 创建: `ruoyi-info-collection/src/test/java/com/ruoyi/ccdi/mapper/CcdiBizIntermediaryMapperTest.java`
**Step 1: 创建测试类** **Step 1: 创建测试类**
@@ -643,7 +643,7 @@ class CcdiBizIntermediaryMapperTest {
**Step 2: 运行测试** **Step 2: 运行测试**
```bash ```bash
mvn test -pl ruoyi-ccdi -Dtest=CcdiBizIntermediaryMapperTest mvn test -pl ruoyi-info-collection -Dtest=CcdiBizIntermediaryMapperTest
``` ```
预期: 所有测试通过 (3 tests, 0 failures) 预期: 所有测试通过 (3 tests, 0 failures)
@@ -651,7 +651,7 @@ mvn test -pl ruoyi-ccdi -Dtest=CcdiBizIntermediaryMapperTest
**Step 3: 提交** **Step 3: 提交**
```bash ```bash
git add ruoyi-ccdi/src/test/java/com/ruoyi/ccdi/mapper/CcdiBizIntermediaryMapperTest.java git add ruoyi-info-collection/src/test/java/com/ruoyi/ccdi/mapper/CcdiBizIntermediaryMapperTest.java
git commit -m "test: 添加个人中介批量导入单元测试 git commit -m "test: 添加个人中介批量导入单元测试
覆盖场景: 覆盖场景:
@@ -668,7 +668,7 @@ Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
### Task 8: 编写实体中介导入单元测试 ### Task 8: 编写实体中介导入单元测试
**文件:** **文件:**
- 创建: `ruoyi-ccdi/src/test/java/com/ruoyi/ccdi/mapper/CcdiEnterpriseBaseInfoMapperTest.java` - 创建: `ruoyi-info-collection/src/test/java/com/ruoyi/ccdi/mapper/CcdiEnterpriseBaseInfoMapperTest.java`
**Step 1: 创建测试类** **Step 1: 创建测试类**
@@ -797,7 +797,7 @@ class CcdiEnterpriseBaseInfoMapperTest {
**Step 2: 运行测试** **Step 2: 运行测试**
```bash ```bash
mvn test -pl ruoyi-ccdi -Dtest=CcdiEnterpriseBaseInfoMapperTest mvn test -pl ruoyi-info-collection -Dtest=CcdiEnterpriseBaseInfoMapperTest
``` ```
预期: 所有测试通过 预期: 所有测试通过
@@ -805,7 +805,7 @@ mvn test -pl ruoyi-ccdi -Dtest=CcdiEnterpriseBaseInfoMapperTest
**Step 3: 提交** **Step 3: 提交**
```bash ```bash
git add ruoyi-ccdi/src/test/java/com/ruoyi/ccdi/mapper/CcdiEnterpriseBaseInfoMapperTest.java git add ruoyi-info-collection/src/test/java/com/ruoyi/ccdi/mapper/CcdiEnterpriseBaseInfoMapperTest.java
git commit -m "test: 添加实体中介批量导入单元测试 git commit -m "test: 添加实体中介批量导入单元测试
覆盖场景与个人中介测试一致。 覆盖场景与个人中介测试一致。
@@ -818,7 +818,7 @@ Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
### Task 9: 集成测试 - 使用真实Excel文件 ### Task 9: 集成测试 - 使用真实Excel文件
**文件:** **文件:**
- 创建: `ruoyi-ccdi/src/test/java/com/ruoyi/ccdi/service/CcdiIntermediaryImportIntegrationTest.java` - 创建: `ruoyi-info-collection/src/test/java/com/ruoyi/ccdi/service/CcdiIntermediaryImportIntegrationTest.java`
**Step 1: 创建集成测试** **Step 1: 创建集成测试**
@@ -927,13 +927,13 @@ class CcdiIntermediaryImportIntegrationTest {
**Step 2: 运行集成测试** **Step 2: 运行集成测试**
```bash ```bash
mvn test -pl ruoyi-ccdi -Dtest=CcdiIntermediaryImportIntegrationTest mvn test -pl ruoyi-info-collection -Dtest=CcdiIntermediaryImportIntegrationTest
``` ```
**Step 3: 提交** **Step 3: 提交**
```bash ```bash
git add ruoyi-ccdi/src/test/java/com/ruoyi/ccdi/service/CcdiIntermediaryImportIntegrationTest.java git add ruoyi-info-collection/src/test/java/com/ruoyi/ccdi/service/CcdiIntermediaryImportIntegrationTest.java
git commit -m "test: 添加中介导入集成测试 git commit -m "test: 添加中介导入集成测试
测试端到端的导入流程,包括: 测试端到端的导入流程,包括:
@@ -1011,7 +1011,7 @@ Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
```bash ```bash
cd .worktrees/intermediary-import-upsert cd .worktrees/intermediary-import-upsert
mvn test -pl ruoyi-ccdi mvn test -pl ruoyi-info-collection
``` ```
预期: 所有测试通过,包括新增的测试和现有的回归测试 预期: 所有测试通过,包括新增的测试和现有的回归测试
@@ -1019,10 +1019,10 @@ mvn test -pl ruoyi-ccdi
**Step 2: 检查测试覆盖率(可选)** **Step 2: 检查测试覆盖率(可选)**
```bash ```bash
mvn jacoco:report -pl ruoyi-ccdi mvn jacoco:report -pl ruoyi-info-collection
``` ```
查看覆盖率报告: `ruoyi-ccdi/target/site/jacoco/index.html` 查看覆盖率报告: `ruoyi-info-collection/target/site/jacoco/index.html`
**Step 3: 记录测试结果** **Step 3: 记录测试结果**
@@ -1082,7 +1082,7 @@ Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
```bash ```bash
# 运行代码检查(如果项目配置了checkstyle或spotbugs) # 运行代码检查(如果项目配置了checkstyle或spotbugs)
mvn checkstyle:check -pl ruoyi-ccdi mvn checkstyle:check -pl ruoyi-info-collection
``` ```
**Step 2: 检查未使用的导入** **Step 2: 检查未使用的导入**
@@ -1096,7 +1096,7 @@ mvn checkstyle:check -pl ruoyi-ccdi
**Step 4: 最终构建验证** **Step 4: 最终构建验证**
```bash ```bash
mvn clean package -pl ruoyi-ccdi -am -DskipTests mvn clean package -pl ruoyi-info-collection -am -DskipTests
``` ```
预期: 构建成功,生成jar文件 预期: 构建成功,生成jar文件
@@ -1174,10 +1174,10 @@ Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
### 影响范围 ### 影响范围
**影响的模块:** **影响的模块:**
- `ruoyi-ccdi/mapper/CcdiBizIntermediaryMapper` - `ruoyi-info-collection/mapper/CcdiBizIntermediaryMapper`
- `ruoyi-ccdi/mapper/CcdiEnterpriseBaseInfoMapper` - `ruoyi-info-collection/mapper/CcdiEnterpriseBaseInfoMapper`
- `ruoyi-ccdi/service/impl/CcdiIntermediaryPersonImportServiceImpl` - `ruoyi-info-collection/service/impl/CcdiIntermediaryPersonImportServiceImpl`
- `ruoyi-ccdi/service/impl/CcdiIntermediaryEntityImportServiceImpl` - `ruoyi-info-collection/service/impl/CcdiIntermediaryEntityImportServiceImpl`
**不影响:** **不影响:**
- Controller层 (无变更) - Controller层 (无变更)
@@ -1318,7 +1318,7 @@ git worktree remove .worktrees/intermediary-import-upsert
**实施完成后,请在worktree中运行:** **实施完成后,请在worktree中运行:**
```bash ```bash
mvn clean package -pl ruoyi-ccdi -am mvn clean package -pl ruoyi-info-collection -am
``` ```
验证构建成功后,即可合并分支或创建Pull Request。 验证构建成功后,即可合并分支或创建Pull Request。

View File

@@ -21,7 +21,7 @@
修改 `CcdiPurchaseTransactionExcel.java`,将数值字段类型从 String 改为 BigDecimal 修改 `CcdiPurchaseTransactionExcel.java`,将数值字段类型从 String 改为 BigDecimal
**修改文件**: **修改文件**:
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/excel/CcdiPurchaseTransactionExcel.java:52-82` - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/excel/CcdiPurchaseTransactionExcel.java:52-82`
**修改内容**: **修改内容**:
```java ```java
@@ -59,7 +59,7 @@ private BigDecimal bidAmount;
4. 使用 `getDataTable()` 方法返回分页格式 4. 使用 `getDataTable()` 方法返回分页格式
**修改文件**: **修改文件**:
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiPurchaseTransactionController.java:173-196` - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiPurchaseTransactionController.java:173-196`
**修改内容**: **修改内容**:
```java ```java
@@ -197,11 +197,11 @@ protected TableDataInfo getDataTable(List<?> list, long total) {
## 附录:相关文件 ## 附录:相关文件
### 修改的文件 ### 修改的文件
1. `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/excel/CcdiPurchaseTransactionExcel.java` 1. `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/excel/CcdiPurchaseTransactionExcel.java`
2. `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiPurchaseTransactionController.java` 2. `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiPurchaseTransactionController.java`
### 参考文件 ### 参考文件
1. `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiEmployeeController.java` (员工信息管理,作为参考) 1. `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiEmployeeController.java` (员工信息管理,作为参考)
### 测试文件 ### 测试文件
1. `doc/test-data/purchase_transaction/generate-test-data.js` (测试数据生成脚本) 1. `doc/test-data/purchase_transaction/generate-test-data.js` (测试数据生成脚本)

View File

@@ -268,7 +268,7 @@ Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
```bash ```bash
cd D:\ccdi\ccdi\.worktrees\intermediary-import-upsert cd D:\ccdi\ccdi\.worktrees\intermediary-import-upsert
mvn compile -pl ruoyi-ccdi -am -q mvn compile -pl ruoyi-info-collection -am -q
``` ```
**结果:** ✅ 编译成功,无错误无警告 **结果:** ✅ 编译成功,无错误无警告

View File

@@ -130,7 +130,7 @@ Controller解析Excel
#### 文件1: CcdiIntermediaryServiceImpl.java #### 文件1: CcdiIntermediaryServiceImpl.java
**路径**: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java` **路径**: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java`
**需要添加的依赖注入**: **需要添加的依赖注入**:
```java ```java
@@ -200,7 +200,7 @@ public String importIntermediaryPerson(List<CcdiIntermediaryPersonExcel> list,
#### 文件2: CcdiIntermediaryController.java #### 文件2: CcdiIntermediaryController.java
**路径**: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java` **路径**: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiIntermediaryController.java`
**需要添加的依赖注入**: **需要添加的依赖注入**:
```java ```java
@@ -614,7 +614,7 @@ ab -n 100 -c 10 -T "multipart/form-data; boundary=----WebKitFormBoundary" \
2. **编译打包** 2. **编译打包**
```bash ```bash
# 后端 # 后端
cd ruoyi-ccdi cd ruoyi-info-collection
mvn clean package mvn clean package
# 前端 # 前端

View File

@@ -528,7 +528,7 @@ CREATE TABLE ccdi_transaction_category (
### 3.1 后端模块划分 ### 3.1 后端模块划分
``` ```
ruoyi-ccdi/ (新建模块) ruoyi-info-collection/ (新建模块)
├── controller/ ├── controller/
│ ├── CcdiProjectController.java # 项目管理 │ ├── CcdiProjectController.java # 项目管理
│ ├── CcdiDataUploadController.java # 数据上传 │ ├── CcdiDataUploadController.java # 数据上传

View File

@@ -8,7 +8,7 @@
### CcdiStaffEnterpriseRelationVO.java ### CcdiStaffEnterpriseRelationVO.java
文件位置: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/CcdiStaffEnterpriseRelationVO.java` 文件位置: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/CcdiStaffEnterpriseRelationVO.java`
| 检查项 | 状态 | 说明 | | 检查项 | 状态 | 说明 |
|--------|------|------| |--------|------|------|
@@ -29,7 +29,7 @@ private String personName;
### CcdiStaffEnterpriseRelationMapper.xml ### CcdiStaffEnterpriseRelationMapper.xml
文件位置: `ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiStaffEnterpriseRelationMapper.xml` 文件位置: `ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiStaffEnterpriseRelationMapper.xml`
| 检查项 | 状态 | 说明 | | 检查项 | 状态 | 说明 |
|--------|------|------| |--------|------|------|
@@ -295,8 +295,8 @@ eec2f8c feat(staff-enterprise-relation): Task 6完成后端编译验证
### 文件变更统计 ### 文件变更统计
**后端文件:** **后端文件:**
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/CcdiStaffEnterpriseRelationVO.java` (添加personName字段) - `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/CcdiStaffEnterpriseRelationVO.java` (添加personName字段)
- `ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiStaffEnterpriseRelationMapper.xml` (添加LEFT JOIN和ResultMap映射) - `ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiStaffEnterpriseRelationMapper.xml` (添加LEFT JOIN和ResultMap映射)
**前端文件:** **前端文件:**
- `ruoyi-ui/src/views/ccdiStaffEnterpriseRelation/index.vue` (添加员工姓名列) - `ruoyi-ui/src/views/ccdiStaffEnterpriseRelation/index.vue` (添加员工姓名列)

View File

@@ -3,7 +3,7 @@
**审查日期:** 2026-02-11 **审查日期:** 2026-02-11
**审查人:** Code Review Agent **审查人:** Code Review Agent
**修复提交:** af7ec6f43dc1c8a80fe23cb5a437eef27ea5002d **修复提交:** af7ec6f43dc1c8a80fe23cb5a437eef27ea5002d
**审查文件:** `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiStaffEnterpriseRelationImportServiceImpl.java` **审查文件:** `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiStaffEnterpriseRelationImportServiceImpl.java`
--- ---

View File

@@ -30,7 +30,7 @@
```bash ```bash
# 在采购交易导入服务中搜索身份证号存在性检查 # 在采购交易导入服务中搜索身份证号存在性检查
grep -n "CcdiBaseStaff\|existingPersonIds\|身份证.*存在" \ grep -n "CcdiBaseStaff\|existingPersonIds\|身份证.*存在" \
ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiPurchaseTransactionImportServiceImpl.java ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiPurchaseTransactionImportServiceImpl.java
# 结果No matches found # 结果No matches found
``` ```
@@ -251,4 +251,4 @@ if (!addDTO.getPersonId().matches("^[1-9]\\d{5}(18|19|20)\\d{2}(0[1-9]|1[0-2])(0
- [员工实体关系信息维护功能设计文档](../design/staff-enterprise-relation/员工实体关系信息维护功能设计文档.md) - [员工实体关系信息维护功能设计文档](../design/staff-enterprise-relation/员工实体关系信息维护功能设计文档.md)
- [2026-02-11 员工实体关系导入代码审查报告(修复后复审)](./2026-02-11-staff-relation-import-fix-review.md) - [2026-02-11 员工实体关系导入代码审查报告(修复后复审)](./2026-02-11-staff-relation-import-fix-review.md)
- [采购交易管理功能实现](../../ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiPurchaseTransactionImportServiceImpl.java) - [采购交易管理功能实现](../../ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiPurchaseTransactionImportServiceImpl.java)

View File

@@ -374,12 +374,12 @@ ccdi_base_staff.name → 映射为 VO.personName
### 8.1 项目内参考实现 ### 8.1 项目内参考实现
1. **员工亲属关系模块** (正确实现): 1. **员工亲属关系模块** (正确实现):
- 文件: `ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiStaffFmyRelationMapper.xml` - 文件: `ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiStaffFmyRelationMapper.xml`
- 提交: 历史提交记录 - 提交: 历史提交记录
- 特点: 完整实现personName字段的查询和映射 - 特点: 完整实现personName字段的查询和映射
2. **员工调动模块** (正确实现): 2. **员工调动模块** (正确实现):
- 文件: `ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiStaffTransferMapper.xml` - 文件: `ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiStaffTransferMapper.xml`
- 特点: 类似的staffName字段实现 - 特点: 类似的staffName字段实现
### 8.2 数据库文档 ### 8.2 数据库文档

View File

@@ -129,7 +129,7 @@ doc/数据库文档/员工调动记录/04_add_unique_index.sql
### Java源码 ### Java源码
``` ```
ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/ ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/
├── domain/dto/ ├── domain/dto/
│ └── TransferUniqueKey.java [新增] │ └── TransferUniqueKey.java [新增]
├── mapper/ ├── mapper/

View File

@@ -34,7 +34,7 @@
### 2. 后端代码 ✓ ### 2. 后端代码 ✓
**文件位置**: `D:\ccdi\ccdi\ruoyi-ccdi\src\main\java\com\ruoyi\ccdi\` **文件位置**: `D:\ccdi\ccdi\ruoyi-info-collection\src\main\java\com\ruoyi\ccdi\`
#### 2.1 实体类 (1个) #### 2.1 实体类 (1个)
- `CcdiStaffTransfer.java` - 员工调动记录实体 - `CcdiStaffTransfer.java` - 员工调动记录实体

View File

@@ -201,10 +201,10 @@
<version>${ruoyi.version}</version> <version>${ruoyi.version}</version>
</dependency> </dependency>
<!-- 纪检初核系统模块--> <!-- 信息采集模块-->
<dependency> <dependency>
<groupId>com.ruoyi</groupId> <groupId>com.ruoyi</groupId>
<artifactId>ruoyi-ccdi</artifactId> <artifactId>ruoyi-info-collection</artifactId>
<version>${ruoyi.version}</version> <version>${ruoyi.version}</version>
</dependency> </dependency>
@@ -218,7 +218,7 @@
<module>ruoyi-quartz</module> <module>ruoyi-quartz</module>
<module>ruoyi-generator</module> <module>ruoyi-generator</module>
<module>ruoyi-common</module> <module>ruoyi-common</module>
<module>ruoyi-ccdi</module> <module>ruoyi-info-collection</module>
</modules> </modules>
<packaging>pom</packaging> <packaging>pom</packaging>

View File

@@ -54,10 +54,10 @@
<artifactId>ruoyi-generator</artifactId> <artifactId>ruoyi-generator</artifactId>
</dependency> </dependency>
<!-- 纪检初核系统模块--> <!-- 信息采集模块-->
<dependency> <dependency>
<groupId>com.ruoyi</groupId> <groupId>com.ruoyi</groupId>
<artifactId>ruoyi-ccdi</artifactId> <artifactId>ruoyi-info-collection</artifactId>
</dependency> </dependency>
</dependencies> </dependencies>

View File

@@ -9,10 +9,10 @@
</parent> </parent>
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<artifactId>ruoyi-ccdi</artifactId> <artifactId>ruoyi-info-collection</artifactId>
<description> <description>
纪检初核系统模块 信息采集模块
</description> </description>
<dependencies> <dependencies>

View File

@@ -1,6 +1,6 @@
package com.ruoyi.ccdi.annotation; package com.ruoyi.info.collection.annotation;
import com.ruoyi.ccdi.validation.EnumValidator; import com.ruoyi.info.collection.validation.EnumValidator;
import jakarta.validation.Constraint; import jakarta.validation.Constraint;
import jakarta.validation.Payload; import jakarta.validation.Payload;

View File

@@ -1,14 +1,14 @@
package com.ruoyi.ccdi.controller; package com.ruoyi.info.collection.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.ccdi.domain.dto.CcdiBaseStaffAddDTO; import com.ruoyi.info.collection.domain.dto.CcdiBaseStaffAddDTO;
import com.ruoyi.ccdi.domain.dto.CcdiBaseStaffEditDTO; import com.ruoyi.info.collection.domain.dto.CcdiBaseStaffEditDTO;
import com.ruoyi.ccdi.domain.dto.CcdiBaseStaffQueryDTO; import com.ruoyi.info.collection.domain.dto.CcdiBaseStaffQueryDTO;
import com.ruoyi.ccdi.domain.excel.CcdiBaseStaffExcel; import com.ruoyi.info.collection.domain.excel.CcdiBaseStaffExcel;
import com.ruoyi.ccdi.domain.vo.*; import com.ruoyi.info.collection.domain.vo.*;
import com.ruoyi.ccdi.service.ICcdiBaseStaffImportService; import com.ruoyi.info.collection.service.ICcdiBaseStaffImportService;
import com.ruoyi.ccdi.service.ICcdiBaseStaffService; import com.ruoyi.info.collection.service.ICcdiBaseStaffService;
import com.ruoyi.ccdi.utils.EasyExcelUtil; import com.ruoyi.info.collection.utils.EasyExcelUtil;
import com.ruoyi.common.annotation.Log; import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.AjaxResult;

View File

@@ -1,17 +1,17 @@
package com.ruoyi.ccdi.controller; package com.ruoyi.info.collection.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.ccdi.domain.dto.CcdiCustEnterpriseRelationAddDTO; import com.ruoyi.info.collection.domain.dto.CcdiCustEnterpriseRelationAddDTO;
import com.ruoyi.ccdi.domain.dto.CcdiCustEnterpriseRelationEditDTO; import com.ruoyi.info.collection.domain.dto.CcdiCustEnterpriseRelationEditDTO;
import com.ruoyi.ccdi.domain.dto.CcdiCustEnterpriseRelationQueryDTO; import com.ruoyi.info.collection.domain.dto.CcdiCustEnterpriseRelationQueryDTO;
import com.ruoyi.ccdi.domain.excel.CcdiCustEnterpriseRelationExcel; import com.ruoyi.info.collection.domain.excel.CcdiCustEnterpriseRelationExcel;
import com.ruoyi.ccdi.domain.vo.CcdiCustEnterpriseRelationVO; import com.ruoyi.info.collection.domain.vo.CcdiCustEnterpriseRelationVO;
import com.ruoyi.ccdi.domain.vo.CustEnterpriseRelationImportFailureVO; import com.ruoyi.info.collection.domain.vo.CustEnterpriseRelationImportFailureVO;
import com.ruoyi.ccdi.domain.vo.ImportResultVO; import com.ruoyi.info.collection.domain.vo.ImportResultVO;
import com.ruoyi.ccdi.domain.vo.ImportStatusVO; import com.ruoyi.info.collection.domain.vo.ImportStatusVO;
import com.ruoyi.ccdi.service.ICcdiCustEnterpriseRelationImportService; import com.ruoyi.info.collection.service.ICcdiCustEnterpriseRelationImportService;
import com.ruoyi.ccdi.service.ICcdiCustEnterpriseRelationService; import com.ruoyi.info.collection.service.ICcdiCustEnterpriseRelationService;
import com.ruoyi.ccdi.utils.EasyExcelUtil; import com.ruoyi.info.collection.utils.EasyExcelUtil;
import com.ruoyi.common.annotation.Log; import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.AjaxResult;

View File

@@ -1,17 +1,17 @@
package com.ruoyi.ccdi.controller; package com.ruoyi.info.collection.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.ccdi.domain.dto.CcdiCustFmyRelationAddDTO; import com.ruoyi.info.collection.domain.dto.CcdiCustFmyRelationAddDTO;
import com.ruoyi.ccdi.domain.dto.CcdiCustFmyRelationEditDTO; import com.ruoyi.info.collection.domain.dto.CcdiCustFmyRelationEditDTO;
import com.ruoyi.ccdi.domain.dto.CcdiCustFmyRelationQueryDTO; import com.ruoyi.info.collection.domain.dto.CcdiCustFmyRelationQueryDTO;
import com.ruoyi.ccdi.domain.excel.CcdiCustFmyRelationExcel; import com.ruoyi.info.collection.domain.excel.CcdiCustFmyRelationExcel;
import com.ruoyi.ccdi.domain.vo.CcdiCustFmyRelationVO; import com.ruoyi.info.collection.domain.vo.CcdiCustFmyRelationVO;
import com.ruoyi.ccdi.domain.vo.CustFmyRelationImportFailureVO; import com.ruoyi.info.collection.domain.vo.CustFmyRelationImportFailureVO;
import com.ruoyi.ccdi.domain.vo.ImportResultVO; import com.ruoyi.info.collection.domain.vo.ImportResultVO;
import com.ruoyi.ccdi.domain.vo.ImportStatusVO; import com.ruoyi.info.collection.domain.vo.ImportStatusVO;
import com.ruoyi.ccdi.service.ICcdiCustFmyRelationImportService; import com.ruoyi.info.collection.service.ICcdiCustFmyRelationImportService;
import com.ruoyi.ccdi.service.ICcdiCustFmyRelationService; import com.ruoyi.info.collection.service.ICcdiCustFmyRelationService;
import com.ruoyi.ccdi.utils.EasyExcelUtil; import com.ruoyi.info.collection.utils.EasyExcelUtil;
import com.ruoyi.common.annotation.Log; import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.AjaxResult;

View File

@@ -1,7 +1,7 @@
package com.ruoyi.ccdi.controller; package com.ruoyi.info.collection.controller;
import com.ruoyi.ccdi.domain.vo.EnumOptionVO; import com.ruoyi.info.collection.domain.vo.EnumOptionVO;
import com.ruoyi.ccdi.enums.*; import com.ruoyi.info.collection.enums.*;
import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.AjaxResult;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;

View File

@@ -1,14 +1,14 @@
package com.ruoyi.ccdi.controller; package com.ruoyi.info.collection.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.ccdi.domain.dto.*; import com.ruoyi.info.collection.domain.dto.*;
import com.ruoyi.ccdi.domain.excel.CcdiIntermediaryEntityExcel; import com.ruoyi.info.collection.domain.excel.CcdiIntermediaryEntityExcel;
import com.ruoyi.ccdi.domain.excel.CcdiIntermediaryPersonExcel; import com.ruoyi.info.collection.domain.excel.CcdiIntermediaryPersonExcel;
import com.ruoyi.ccdi.domain.vo.*; import com.ruoyi.info.collection.domain.vo.*;
import com.ruoyi.ccdi.service.ICcdiIntermediaryEntityImportService; import com.ruoyi.info.collection.service.ICcdiIntermediaryEntityImportService;
import com.ruoyi.ccdi.service.ICcdiIntermediaryPersonImportService; import com.ruoyi.info.collection.service.ICcdiIntermediaryPersonImportService;
import com.ruoyi.ccdi.service.ICcdiIntermediaryService; import com.ruoyi.info.collection.service.ICcdiIntermediaryService;
import com.ruoyi.ccdi.utils.EasyExcelUtil; import com.ruoyi.info.collection.utils.EasyExcelUtil;
import com.ruoyi.common.annotation.Log; import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.AjaxResult;

View File

@@ -1,17 +1,17 @@
package com.ruoyi.ccdi.controller; package com.ruoyi.info.collection.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.ccdi.domain.dto.CcdiPurchaseTransactionAddDTO; import com.ruoyi.info.collection.domain.dto.CcdiPurchaseTransactionAddDTO;
import com.ruoyi.ccdi.domain.dto.CcdiPurchaseTransactionEditDTO; import com.ruoyi.info.collection.domain.dto.CcdiPurchaseTransactionEditDTO;
import com.ruoyi.ccdi.domain.dto.CcdiPurchaseTransactionQueryDTO; import com.ruoyi.info.collection.domain.dto.CcdiPurchaseTransactionQueryDTO;
import com.ruoyi.ccdi.domain.excel.CcdiPurchaseTransactionExcel; import com.ruoyi.info.collection.domain.excel.CcdiPurchaseTransactionExcel;
import com.ruoyi.ccdi.domain.vo.CcdiPurchaseTransactionVO; import com.ruoyi.info.collection.domain.vo.CcdiPurchaseTransactionVO;
import com.ruoyi.ccdi.domain.vo.ImportResultVO; import com.ruoyi.info.collection.domain.vo.ImportResultVO;
import com.ruoyi.ccdi.domain.vo.ImportStatusVO; import com.ruoyi.info.collection.domain.vo.ImportStatusVO;
import com.ruoyi.ccdi.domain.vo.PurchaseTransactionImportFailureVO; import com.ruoyi.info.collection.domain.vo.PurchaseTransactionImportFailureVO;
import com.ruoyi.ccdi.service.ICcdiPurchaseTransactionImportService; import com.ruoyi.info.collection.service.ICcdiPurchaseTransactionImportService;
import com.ruoyi.ccdi.service.ICcdiPurchaseTransactionService; import com.ruoyi.info.collection.service.ICcdiPurchaseTransactionService;
import com.ruoyi.ccdi.utils.EasyExcelUtil; import com.ruoyi.info.collection.utils.EasyExcelUtil;
import com.ruoyi.common.annotation.Log; import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.AjaxResult;

View File

@@ -1,17 +1,17 @@
package com.ruoyi.ccdi.controller; package com.ruoyi.info.collection.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.ccdi.domain.dto.CcdiStaffEnterpriseRelationAddDTO; import com.ruoyi.info.collection.domain.dto.CcdiStaffEnterpriseRelationAddDTO;
import com.ruoyi.ccdi.domain.dto.CcdiStaffEnterpriseRelationEditDTO; import com.ruoyi.info.collection.domain.dto.CcdiStaffEnterpriseRelationEditDTO;
import com.ruoyi.ccdi.domain.dto.CcdiStaffEnterpriseRelationQueryDTO; import com.ruoyi.info.collection.domain.dto.CcdiStaffEnterpriseRelationQueryDTO;
import com.ruoyi.ccdi.domain.excel.CcdiStaffEnterpriseRelationExcel; import com.ruoyi.info.collection.domain.excel.CcdiStaffEnterpriseRelationExcel;
import com.ruoyi.ccdi.domain.vo.CcdiStaffEnterpriseRelationVO; import com.ruoyi.info.collection.domain.vo.CcdiStaffEnterpriseRelationVO;
import com.ruoyi.ccdi.domain.vo.ImportResultVO; import com.ruoyi.info.collection.domain.vo.ImportResultVO;
import com.ruoyi.ccdi.domain.vo.ImportStatusVO; import com.ruoyi.info.collection.domain.vo.ImportStatusVO;
import com.ruoyi.ccdi.domain.vo.StaffEnterpriseRelationImportFailureVO; import com.ruoyi.info.collection.domain.vo.StaffEnterpriseRelationImportFailureVO;
import com.ruoyi.ccdi.service.ICcdiStaffEnterpriseRelationImportService; import com.ruoyi.info.collection.service.ICcdiStaffEnterpriseRelationImportService;
import com.ruoyi.ccdi.service.ICcdiStaffEnterpriseRelationService; import com.ruoyi.info.collection.service.ICcdiStaffEnterpriseRelationService;
import com.ruoyi.ccdi.utils.EasyExcelUtil; import com.ruoyi.info.collection.utils.EasyExcelUtil;
import com.ruoyi.common.annotation.Log; import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.AjaxResult;

View File

@@ -1,17 +1,17 @@
package com.ruoyi.ccdi.controller; package com.ruoyi.info.collection.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.ccdi.domain.dto.CcdiStaffFmyRelationAddDTO; import com.ruoyi.info.collection.domain.dto.CcdiStaffFmyRelationAddDTO;
import com.ruoyi.ccdi.domain.dto.CcdiStaffFmyRelationEditDTO; import com.ruoyi.info.collection.domain.dto.CcdiStaffFmyRelationEditDTO;
import com.ruoyi.ccdi.domain.dto.CcdiStaffFmyRelationQueryDTO; import com.ruoyi.info.collection.domain.dto.CcdiStaffFmyRelationQueryDTO;
import com.ruoyi.ccdi.domain.excel.CcdiStaffFmyRelationExcel; import com.ruoyi.info.collection.domain.excel.CcdiStaffFmyRelationExcel;
import com.ruoyi.ccdi.domain.vo.CcdiStaffFmyRelationVO; import com.ruoyi.info.collection.domain.vo.CcdiStaffFmyRelationVO;
import com.ruoyi.ccdi.domain.vo.ImportResultVO; import com.ruoyi.info.collection.domain.vo.ImportResultVO;
import com.ruoyi.ccdi.domain.vo.ImportStatusVO; import com.ruoyi.info.collection.domain.vo.ImportStatusVO;
import com.ruoyi.ccdi.domain.vo.StaffFmyRelationImportFailureVO; import com.ruoyi.info.collection.domain.vo.StaffFmyRelationImportFailureVO;
import com.ruoyi.ccdi.service.ICcdiStaffFmyRelationImportService; import com.ruoyi.info.collection.service.ICcdiStaffFmyRelationImportService;
import com.ruoyi.ccdi.service.ICcdiStaffFmyRelationService; import com.ruoyi.info.collection.service.ICcdiStaffFmyRelationService;
import com.ruoyi.ccdi.utils.EasyExcelUtil; import com.ruoyi.info.collection.utils.EasyExcelUtil;
import com.ruoyi.common.annotation.Log; import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.AjaxResult;

View File

@@ -1,17 +1,17 @@
package com.ruoyi.ccdi.controller; package com.ruoyi.info.collection.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.ccdi.domain.dto.CcdiStaffRecruitmentAddDTO; import com.ruoyi.info.collection.domain.dto.CcdiStaffRecruitmentAddDTO;
import com.ruoyi.ccdi.domain.dto.CcdiStaffRecruitmentEditDTO; import com.ruoyi.info.collection.domain.dto.CcdiStaffRecruitmentEditDTO;
import com.ruoyi.ccdi.domain.dto.CcdiStaffRecruitmentQueryDTO; import com.ruoyi.info.collection.domain.dto.CcdiStaffRecruitmentQueryDTO;
import com.ruoyi.ccdi.domain.excel.CcdiStaffRecruitmentExcel; import com.ruoyi.info.collection.domain.excel.CcdiStaffRecruitmentExcel;
import com.ruoyi.ccdi.domain.vo.CcdiStaffRecruitmentVO; import com.ruoyi.info.collection.domain.vo.CcdiStaffRecruitmentVO;
import com.ruoyi.ccdi.domain.vo.ImportResultVO; import com.ruoyi.info.collection.domain.vo.ImportResultVO;
import com.ruoyi.ccdi.domain.vo.ImportStatusVO; import com.ruoyi.info.collection.domain.vo.ImportStatusVO;
import com.ruoyi.ccdi.domain.vo.RecruitmentImportFailureVO; import com.ruoyi.info.collection.domain.vo.RecruitmentImportFailureVO;
import com.ruoyi.ccdi.service.ICcdiStaffRecruitmentImportService; import com.ruoyi.info.collection.service.ICcdiStaffRecruitmentImportService;
import com.ruoyi.ccdi.service.ICcdiStaffRecruitmentService; import com.ruoyi.info.collection.service.ICcdiStaffRecruitmentService;
import com.ruoyi.ccdi.utils.EasyExcelUtil; import com.ruoyi.info.collection.utils.EasyExcelUtil;
import com.ruoyi.common.annotation.Log; import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.AjaxResult;

View File

@@ -1,17 +1,17 @@
package com.ruoyi.ccdi.controller; package com.ruoyi.info.collection.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.ccdi.domain.dto.CcdiStaffTransferAddDTO; import com.ruoyi.info.collection.domain.dto.CcdiStaffTransferAddDTO;
import com.ruoyi.ccdi.domain.dto.CcdiStaffTransferEditDTO; import com.ruoyi.info.collection.domain.dto.CcdiStaffTransferEditDTO;
import com.ruoyi.ccdi.domain.dto.CcdiStaffTransferQueryDTO; import com.ruoyi.info.collection.domain.dto.CcdiStaffTransferQueryDTO;
import com.ruoyi.ccdi.domain.excel.CcdiStaffTransferExcel; import com.ruoyi.info.collection.domain.excel.CcdiStaffTransferExcel;
import com.ruoyi.ccdi.domain.vo.CcdiStaffTransferVO; import com.ruoyi.info.collection.domain.vo.CcdiStaffTransferVO;
import com.ruoyi.ccdi.domain.vo.ImportResultVO; import com.ruoyi.info.collection.domain.vo.ImportResultVO;
import com.ruoyi.ccdi.domain.vo.ImportStatusVO; import com.ruoyi.info.collection.domain.vo.ImportStatusVO;
import com.ruoyi.ccdi.domain.vo.StaffTransferImportFailureVO; import com.ruoyi.info.collection.domain.vo.StaffTransferImportFailureVO;
import com.ruoyi.ccdi.service.ICcdiStaffTransferImportService; import com.ruoyi.info.collection.service.ICcdiStaffTransferImportService;
import com.ruoyi.ccdi.service.ICcdiStaffTransferService; import com.ruoyi.info.collection.service.ICcdiStaffTransferService;
import com.ruoyi.ccdi.utils.EasyExcelUtil; import com.ruoyi.info.collection.utils.EasyExcelUtil;
import com.ruoyi.common.annotation.Log; import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.AjaxResult;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain; package com.ruoyi.info.collection.domain;
import com.baomidou.mybatisplus.annotation.*; import com.baomidou.mybatisplus.annotation.*;
import lombok.Data; import lombok.Data;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain; package com.ruoyi.info.collection.domain;
import com.baomidou.mybatisplus.annotation.*; import com.baomidou.mybatisplus.annotation.*;
import lombok.Data; import lombok.Data;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain; package com.ruoyi.info.collection.domain;
import com.baomidou.mybatisplus.annotation.*; import com.baomidou.mybatisplus.annotation.*;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain; package com.ruoyi.info.collection.domain;
import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.IdType;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain; package com.ruoyi.info.collection.domain;
import com.baomidou.mybatisplus.annotation.*; import com.baomidou.mybatisplus.annotation.*;
import lombok.Data; import lombok.Data;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain; package com.ruoyi.info.collection.domain;
import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.IdType;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain; package com.ruoyi.info.collection.domain;
import com.baomidou.mybatisplus.annotation.*; import com.baomidou.mybatisplus.annotation.*;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain; package com.ruoyi.info.collection.domain;
import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.IdType;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain; package com.ruoyi.info.collection.domain;
import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.IdType;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain; package com.ruoyi.info.collection.domain;
import com.baomidou.mybatisplus.annotation.*; import com.baomidou.mybatisplus.annotation.*;
import lombok.Data; import lombok.Data;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.dto; package com.ruoyi.info.collection.domain.dto;
import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.NotNull;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.dto; package com.ruoyi.info.collection.domain.dto;
import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.NotNull;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.dto; package com.ruoyi.info.collection.domain.dto;
import lombok.Data; import lombok.Data;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.dto; package com.ruoyi.info.collection.domain.dto;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotBlank;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.dto; package com.ruoyi.info.collection.domain.dto;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotBlank;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.dto; package com.ruoyi.info.collection.domain.dto;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.dto; package com.ruoyi.info.collection.domain.dto;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.dto; package com.ruoyi.info.collection.domain.dto;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.dto; package com.ruoyi.info.collection.domain.dto;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.dto; package com.ruoyi.info.collection.domain.dto;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotBlank;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.dto; package com.ruoyi.info.collection.domain.dto;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotBlank;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.dto; package com.ruoyi.info.collection.domain.dto;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotBlank;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.dto; package com.ruoyi.info.collection.domain.dto;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotBlank;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.dto; package com.ruoyi.info.collection.domain.dto;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.dto; package com.ruoyi.info.collection.domain.dto;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.dto; package com.ruoyi.info.collection.domain.dto;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.dto; package com.ruoyi.info.collection.domain.dto;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.dto; package com.ruoyi.info.collection.domain.dto;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotBlank;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.dto; package com.ruoyi.info.collection.domain.dto;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotBlank;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.dto; package com.ruoyi.info.collection.domain.dto;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.dto; package com.ruoyi.info.collection.domain.dto;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.dto; package com.ruoyi.info.collection.domain.dto;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.dto; package com.ruoyi.info.collection.domain.dto;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;

View File

@@ -1,7 +1,7 @@
package com.ruoyi.ccdi.domain.dto; package com.ruoyi.info.collection.domain.dto;
import com.ruoyi.ccdi.annotation.EnumValid; import com.ruoyi.info.collection.annotation.EnumValid;
import com.ruoyi.ccdi.enums.AdmitStatus; import com.ruoyi.info.collection.enums.AdmitStatus;
import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Pattern; import jakarta.validation.constraints.Pattern;
import jakarta.validation.constraints.Size; import jakarta.validation.constraints.Size;

View File

@@ -1,7 +1,7 @@
package com.ruoyi.ccdi.domain.dto; package com.ruoyi.info.collection.domain.dto;
import com.ruoyi.ccdi.annotation.EnumValid; import com.ruoyi.info.collection.annotation.EnumValid;
import com.ruoyi.ccdi.enums.AdmitStatus; import com.ruoyi.info.collection.enums.AdmitStatus;
import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Pattern; import jakarta.validation.constraints.Pattern;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.dto; package com.ruoyi.info.collection.domain.dto;
import lombok.Data; import lombok.Data;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.dto; package com.ruoyi.info.collection.domain.dto;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.dto; package com.ruoyi.info.collection.domain.dto;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.dto; package com.ruoyi.info.collection.domain.dto;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.dto; package com.ruoyi.info.collection.domain.dto;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.excel; package com.ruoyi.info.collection.domain.excel;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth; import com.alibaba.excel.annotation.write.style.ColumnWidth;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.excel; package com.ruoyi.info.collection.domain.excel;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth; import com.alibaba.excel.annotation.write.style.ColumnWidth;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.excel; package com.ruoyi.info.collection.domain.excel;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth; import com.alibaba.excel.annotation.write.style.ColumnWidth;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.excel; package com.ruoyi.info.collection.domain.excel;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth; import com.alibaba.excel.annotation.write.style.ColumnWidth;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.excel; package com.ruoyi.info.collection.domain.excel;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth; import com.alibaba.excel.annotation.write.style.ColumnWidth;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.excel; package com.ruoyi.info.collection.domain.excel;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth; import com.alibaba.excel.annotation.write.style.ColumnWidth;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.excel; package com.ruoyi.info.collection.domain.excel;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth; import com.alibaba.excel.annotation.write.style.ColumnWidth;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.excel; package com.ruoyi.info.collection.domain.excel;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth; import com.alibaba.excel.annotation.write.style.ColumnWidth;

View File

@@ -1,4 +1,4 @@
package com.ruoyi.ccdi.domain.excel; package com.ruoyi.info.collection.domain.excel;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth; import com.alibaba.excel.annotation.write.style.ColumnWidth;

Some files were not shown because too many files have changed in this diff Show More