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

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

View File

@@ -391,5 +391,5 @@ Element UI 的 MessageBox 组件有较高的CSS优先级必须使用 `!import
### 8.2 相关文件
- 前端组件: `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`

View File

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

View File

@@ -13,7 +13,7 @@
### 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行
@@ -31,7 +31,7 @@ private String dataSource;
### 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()`
@@ -40,7 +40,7 @@ private String dataSource;
### 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设计策略**
@@ -69,7 +69,7 @@ private String dataSource;
### 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
**文件:** `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
@@ -144,17 +144,17 @@ OFFSET #{pageNum} * #{pageSize}
## 五、文件清单
### 修改的文件
1. `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/CcdiBizIntermediary.java` - 删除冗余字段,修复字段映射
2. `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.java` - 重构查询逻辑
3. `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/dto/CcdiIntermediaryQueryDTO.java` - 添加分页参数
1. `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/CcdiBizIntermediary.java` - 删除冗余字段,修复字段映射
2. `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryServiceImpl.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接口
2. `ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiIntermediaryMapper.xml` - MyBatis XML Mapper
1. `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiIntermediaryMapper.java` - 联合查询Mapper接口
2. `ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiIntermediaryMapper.xml` - MyBatis XML Mapper
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回滚到之前的版本
```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文件即可恢复原状。

View File

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

View File

@@ -17,7 +17,7 @@
### 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 接口中添加方法声明**
@@ -40,7 +40,7 @@ int deleteBatchByIdCard(@Param("list") List<String> idCards);
**Step 3: 提交**
```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): 添加批量删除方法声明"
```
@@ -49,7 +49,7 @@ git commit -m "feat(employee): 添加批量删除方法声明"
### 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**
@@ -73,7 +73,7 @@ git commit -m "feat(employee): 添加批量删除方法声明"
**Step 3: 提交**
```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"
```
@@ -84,7 +84,7 @@ git commit -m "feat(employee): 实现批量删除SQL"
- [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 行)
**Step 1: 备份原方法**
@@ -183,7 +183,7 @@ public String importEmployee(List<CcdiEmployeeExcel> excelList, Boolean isUpdate
**Step 3: 提交**
```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): 重构导入方法为先删后插模式"
```
@@ -369,7 +369,7 @@ cd D:\ccdi\ccdi
- [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 接口中添加方法声明**
@@ -386,7 +386,7 @@ int deleteBatchByPersonId(@Param("list") List<String> personIds);
**Step 2: 提交**
```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): 添加个人批量删除方法声明"
```
@@ -395,7 +395,7 @@ git commit -m "feat(intermediary): 添加个人批量删除方法声明"
### 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**
@@ -413,7 +413,7 @@ git commit -m "feat(intermediary): 添加个人批量删除方法声明"
**Step 2: 提交**
```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"
```
@@ -422,7 +422,7 @@ git commit -m "feat(intermediary): 实现个人批量删除SQL"
### 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`
**Step 1: 找到 `importIntermediaryPerson` 方法**
@@ -511,7 +511,7 @@ public String importIntermediaryPerson(List<CcdiIntermediaryPersonExcel> excelLi
**Step 3: 提交**
```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): 重构个人导入方法为先删后插模式"
```
@@ -522,7 +522,7 @@ git commit -m "refactor(intermediary): 重构个人导入方法为先删后插
### 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 接口中添加方法声明**
@@ -539,7 +539,7 @@ int deleteBatchBySocialCreditCode(@Param("list") List<String> socialCreditCodes)
**Step 2: 提交**
```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): 添加实体批量删除方法声明"
```
@@ -548,7 +548,7 @@ git commit -m "feat(intermediary): 添加实体批量删除方法声明"
### 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**
@@ -566,7 +566,7 @@ git commit -m "feat(intermediary): 添加实体批量删除方法声明"
**Step 2: 提交**
```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"
```
@@ -575,7 +575,7 @@ git commit -m "feat(intermediary): 实现实体批量删除SQL"
### 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`
**Step 1: 找到 `importIntermediaryEntity` 方法**
@@ -664,7 +664,7 @@ public String importIntermediaryEntity(List<CcdiIntermediaryEntityExcel> excelLi
**Step 3: 提交**
```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): 重构实体导入方法为先删后插模式"
```
@@ -675,7 +675,7 @@ git commit -m "refactor(intermediary): 重构实体导入方法为先删后插
### 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 接口中添加方法声明**
@@ -692,7 +692,7 @@ int deleteBatchByRecruitId(@Param("list") List<String> recruitIds);
**Step 2: 提交**
```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): 添加批量删除方法声明"
```
@@ -701,7 +701,7 @@ git commit -m "feat(recruitment): 添加批量删除方法声明"
### 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**
@@ -719,7 +719,7 @@ git commit -m "feat(recruitment): 添加批量删除方法声明"
**Step 2: 提交**
```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"
```
@@ -728,7 +728,7 @@ git commit -m "feat(recruitment): 实现批量删除SQL"
### 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`
**Step 1: 找到 `importRecruitment` 方法**
@@ -817,7 +817,7 @@ public String importRecruitment(List<CcdiStaffRecruitmentExcel> excelList, Boole
**Step 3: 提交**
```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): 重构导入方法为先删后插模式"
```

View File

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

View File

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

View File

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

View File

@@ -725,15 +725,15 @@ import:employee:{taskId}:failures # 失败记录列表
### C. 相关文件清单
**后端**:
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/config/AsyncConfig.java`
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/ImportResultVO.java`
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/ImportStatusVO.java`
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/ImportFailureVO.java`
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/ICcdiEmployeeService.java`
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiEmployeeServiceImpl.java`
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiEmployeeMapper.java`
- `ruoyi-ccdi/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/config/AsyncConfig.java`
- `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/ImportResultVO.java`
- `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/ImportStatusVO.java`
- `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/ImportFailureVO.java`
- `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/ICcdiEmployeeService.java`
- `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiEmployeeServiceImpl.java`
- `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiEmployeeMapper.java`
- `ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiEmployeeMapper.xml`
- `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiEmployeeController.java`
**前端**:
- `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配置类**
@@ -72,7 +72,7 @@ public class AsyncConfig {
**步骤 3: 提交配置**
```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: 添加异步配置类,配置导入任务专用线程池"
```
@@ -83,9 +83,9 @@ git commit -m "feat: 添加异步配置类,配置导入任务专用线程池"
**目标:** 创建导入结果、状态和失败记录的VO类
**文件:**
- 创建: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/ImportResultVO.java`
- 创建: `ruoyi-ccdi/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/ImportResultVO.java`
- 创建: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/ImportStatusVO.java`
- 创建: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/ImportFailureVO.java`
**步骤 1: 创建ImportResultVO**
@@ -207,7 +207,7 @@ public class ImportFailureVO {
**步骤 4: 提交VO类**
```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)"
```
@@ -270,8 +270,8 @@ git commit -m "feat: 添加员工表柜员号唯一索引,支持批量更新"
**目标:** 在Mapper接口和XML中添加批量查询和批量插入更新的方法
**文件:**
- 修改: `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiEmployeeMapper.java`
- 修改: `ruoyi-ccdi/src/main/resources/mapper/ccdi/CcdiEmployeeMapper.xml`
- 修改: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiEmployeeMapper.java`
- 修改: `ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiEmployeeMapper.xml`
**步骤 1: 在Mapper接口中添加方法**
@@ -319,8 +319,8 @@ int insertOrUpdateBatch(@Param("list") List<CcdiEmployee> list);
**步骤 3: 提交Mapper变更**
```bash
git add ruoyi-ccdi/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/java/com/ruoyi/ccdi/mapper/CcdiEmployeeMapper.java
git add ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiEmployeeMapper.xml
git commit -m "feat: 添加批量插入或更新员工信息方法"
```
@@ -331,8 +331,8 @@ git commit -m "feat: 添加批量插入或更新员工信息方法"
**目标:** 实现异步导入逻辑,包括数据分类、批量操作、Redis存储
**文件:**
- 修改: `ruoyi-ccdi/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/ICcdiEmployeeService.java`
- 修改: `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiEmployeeServiceImpl.java`
**步骤 1: 在Service接口中添加方法声明**
@@ -625,7 +625,7 @@ public List<ImportFailureVO> getImportFailures(String taskId) {
**步骤 6: 提交Service层代码**
```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: 实现员工信息异步导入服务"
```
@@ -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注入**
@@ -722,7 +722,7 @@ public TableDataInfo getImportFailures(
**步骤 5: 提交Controller变更**
```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: 修改导入接口为异步,添加状态和失败记录查询接口"
```
@@ -1411,15 +1411,15 @@ git push origin v1.x.x
### A. 相关文件清单
**后端:**
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/config/AsyncConfig.java`
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/ImportResultVO.java`
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/ImportStatusVO.java`
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/ImportFailureVO.java`
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/ICcdiEmployeeService.java`
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiEmployeeServiceImpl.java`
- `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/mapper/CcdiEmployeeMapper.java`
- `ruoyi-ccdi/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/config/AsyncConfig.java`
- `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/ImportResultVO.java`
- `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/ImportStatusVO.java`
- `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/ImportFailureVO.java`
- `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/ICcdiEmployeeService.java`
- `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiEmployeeServiceImpl.java`
- `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/mapper/CcdiEmployeeMapper.java`
- `ruoyi-info-collection/src/main/resources/mapper/ccdi/CcdiEmployeeMapper.xml`
- `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/controller/CcdiEmployeeController.java`
**前端:**
- `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-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/IntermediaryEntityImportFailureVO.java` | 实体中介导入失败记录VO |
| `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/ICcdiIntermediaryPersonImportService.java` | 个人中介异步导入Service接口 |
| `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/ICcdiIntermediaryEntityImportService.java` | 实体中介异步导入Service接口 |
| `ruoyi-ccdi/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/domain/vo/IntermediaryPersonImportFailureVO.java` | 个人中介导入失败记录VO |
| `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/IntermediaryEntityImportFailureVO.java` | 实体中介导入失败记录VO |
| `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/ICcdiIntermediaryPersonImportService.java` | 个人中介异步导入Service接口 |
| `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/ICcdiIntermediaryEntityImportService.java` | 实体中介异步导入Service接口 |
| `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryPersonImportServiceImpl.java` | 个人中介异步导入Service实现 |
| `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryEntityImportServiceImpl.java` | 实体中介异步导入Service实现 |
| `test/test_intermediary_import.py` | 测试脚本 |
### 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/views/ccdiIntermediary/index.vue` | 添加轮询逻辑、失败记录UI(两套独立组件) |
| `doc/api/ccdi_intermediary_api.md` | 更新API文档(新增导入相关接口文档) |
@@ -904,20 +904,20 @@ private void updateImportStatus(String taskType, String taskId, String status, I
#### 步骤1: 创建失败记录VO类
**文件:**
- `ruoyi-ccdi/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/IntermediaryPersonImportFailureVO.java`
- `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/vo/IntermediaryEntityImportFailureVO.java`
#### 步骤2: 创建Service接口
**文件:**
- `ruoyi-ccdi/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/ICcdiIntermediaryPersonImportService.java`
- `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/ICcdiIntermediaryEntityImportService.java`
#### 步骤3: 实现Service
**文件:**
- `ruoyi-ccdi/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/CcdiIntermediaryPersonImportServiceImpl.java`
- `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiIntermediaryEntityImportServiceImpl.java`
**操作:**
- 实现`ICcdiIntermediaryPersonImportService`接口
@@ -931,7 +931,7 @@ private void updateImportStatus(String taskType, String taskId, String status, I
#### 步骤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

View File

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

View File

@@ -695,7 +695,7 @@ methods: {
#### 步骤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`
@@ -705,7 +705,7 @@ methods: {
#### 步骤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接口
@@ -714,7 +714,7 @@ methods: {
#### 步骤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`接口
@@ -727,7 +727,7 @@ methods: {
#### 步骤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`
@@ -807,16 +807,16 @@ git commit -m "feat: 实现招聘信息异步导入功能"
| 文件路径 | 说明 |
|---------|------|
| `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/RecruitmentImportFailureVO.java` | 招聘信息导入失败记录VO |
| `ruoyi-ccdi/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/domain/vo/RecruitmentImportFailureVO.java` | 招聘信息导入失败记录VO |
| `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/ICcdiStaffRecruitmentImportService.java` | 招聘信息异步导入Service接口 |
| `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/service/impl/CcdiStaffRecruitmentImportServiceImpl.java` | 招聘信息异步导入Service实现 |
| `test/test_recruitment_import.py` | 测试脚本 |
### 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/views/ccdiStaffRecruitment/index.vue` | 添加轮询逻辑和失败记录UI |
| `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: 添加个人中介批量导入方法接口
**文件:**
- 修改: `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: 添加方法签名到接口**
@@ -81,7 +81,7 @@ void importPersonBatch(@Param("list") List<CcdiBizIntermediary> list);
```bash
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: 提交**
```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: 添加个人中介批量导入方法签名
添加importPersonBatch方法到Mapper接口,用于支持ON DUPLICATE KEY UPDATE的批量导入操作。
@@ -102,7 +102,7 @@ Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
### 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实现**
@@ -137,7 +137,7 @@ Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
```bash
# 检查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: 验证编译**
```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: 提交**
```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
使用INSERT ... ON DUPLICATE KEY UPDATE实现单次SQL完成插入或更新操作。
@@ -169,7 +169,7 @@ Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
### 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: 添加方法签名到接口**
@@ -185,13 +185,13 @@ void importEntityBatch(@Param("list") List<CcdiEnterpriseBaseInfo> list);
**Step 2: 验证编译**
```bash
mvn compile -pl ruoyi-ccdi -am
mvn compile -pl ruoyi-info-collection -am
```
**Step 3: 提交**
```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: 添加实体中介批量导入方法签名
添加importEntityBatch方法到Mapper接口。
@@ -204,7 +204,7 @@ Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
### 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实现**
@@ -237,19 +237,19 @@ Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
**Step 2: 验证XML语法**
```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: 验证编译**
```bash
mvn compile -pl ruoyi-ccdi -am
mvn compile -pl ruoyi-info-collection -am
```
**Step 4: 提交**
```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
使用INSERT ... ON DUPLICATE KEY UPDATE实现单次SQL完成插入或更新操作。
@@ -266,7 +266,7 @@ Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
### 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 方法的核心导入逻辑**
@@ -361,13 +361,13 @@ private CcdiIntermediaryPersonExcel convertToExcel(CcdiBizIntermediary entity) {
**Step 4: 验证编译**
```bash
mvn compile -pl ruoyi-ccdi -am
mvn compile -pl ruoyi-info-collection -am
```
**Step 5: 提交**
```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
主要变更:
@@ -384,7 +384,7 @@ Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
### 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 方法的核心导入逻辑**
@@ -475,13 +475,13 @@ private CcdiIntermediaryEntityExcel convertToExcel(CcdiEnterpriseBaseInfo entity
**Step 4: 验证编译**
```bash
mvn compile -pl ruoyi-ccdi -am
mvn compile -pl ruoyi-info-collection -am
```
**Step 5: 提交**
```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
与个人中介导入保持一致的实现方式。
@@ -496,7 +496,7 @@ Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
### 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: 创建测试类**
@@ -643,7 +643,7 @@ class CcdiBizIntermediaryMapperTest {
**Step 2: 运行测试**
```bash
mvn test -pl ruoyi-ccdi -Dtest=CcdiBizIntermediaryMapperTest
mvn test -pl ruoyi-info-collection -Dtest=CcdiBizIntermediaryMapperTest
```
预期: 所有测试通过 (3 tests, 0 failures)
@@ -651,7 +651,7 @@ mvn test -pl ruoyi-ccdi -Dtest=CcdiBizIntermediaryMapperTest
**Step 3: 提交**
```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: 添加个人中介批量导入单元测试
覆盖场景:
@@ -668,7 +668,7 @@ Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
### 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: 创建测试类**
@@ -797,7 +797,7 @@ class CcdiEnterpriseBaseInfoMapperTest {
**Step 2: 运行测试**
```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: 提交**
```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: 添加实体中介批量导入单元测试
覆盖场景与个人中介测试一致。
@@ -818,7 +818,7 @@ Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
### 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: 创建集成测试**
@@ -927,13 +927,13 @@ class CcdiIntermediaryImportIntegrationTest {
**Step 2: 运行集成测试**
```bash
mvn test -pl ruoyi-ccdi -Dtest=CcdiIntermediaryImportIntegrationTest
mvn test -pl ruoyi-info-collection -Dtest=CcdiIntermediaryImportIntegrationTest
```
**Step 3: 提交**
```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: 添加中介导入集成测试
测试端到端的导入流程,包括:
@@ -1011,7 +1011,7 @@ Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
```bash
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: 检查测试覆盖率(可选)**
```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: 记录测试结果**
@@ -1082,7 +1082,7 @@ Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
```bash
# 运行代码检查(如果项目配置了checkstyle或spotbugs)
mvn checkstyle:check -pl ruoyi-ccdi
mvn checkstyle:check -pl ruoyi-info-collection
```
**Step 2: 检查未使用的导入**
@@ -1096,7 +1096,7 @@ mvn checkstyle:check -pl ruoyi-ccdi
**Step 4: 最终构建验证**
```bash
mvn clean package -pl ruoyi-ccdi -am -DskipTests
mvn clean package -pl ruoyi-info-collection -am -DskipTests
```
预期: 构建成功,生成jar文件
@@ -1174,10 +1174,10 @@ Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
### 影响范围
**影响的模块:**
- `ruoyi-ccdi/mapper/CcdiBizIntermediaryMapper`
- `ruoyi-ccdi/mapper/CcdiEnterpriseBaseInfoMapper`
- `ruoyi-ccdi/service/impl/CcdiIntermediaryPersonImportServiceImpl`
- `ruoyi-ccdi/service/impl/CcdiIntermediaryEntityImportServiceImpl`
- `ruoyi-info-collection/mapper/CcdiBizIntermediaryMapper`
- `ruoyi-info-collection/mapper/CcdiEnterpriseBaseInfoMapper`
- `ruoyi-info-collection/service/impl/CcdiIntermediaryPersonImportServiceImpl`
- `ruoyi-info-collection/service/impl/CcdiIntermediaryEntityImportServiceImpl`
**不影响:**
- Controller层 (无变更)
@@ -1318,7 +1318,7 @@ git worktree remove .worktrees/intermediary-import-upsert
**实施完成后,请在worktree中运行:**
```bash
mvn clean package -pl ruoyi-ccdi -am
mvn clean package -pl ruoyi-info-collection -am
```
验证构建成功后,即可合并分支或创建Pull Request。

View File

@@ -21,7 +21,7 @@
修改 `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
@@ -59,7 +59,7 @@ private BigDecimal bidAmount;
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
@@ -197,11 +197,11 @@ protected TableDataInfo getDataTable(List<?> list, long total) {
## 附录:相关文件
### 修改的文件
1. `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/excel/CcdiPurchaseTransactionExcel.java`
2. `ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/controller/CcdiPurchaseTransactionController.java`
1. `ruoyi-info-collection/src/main/java/com/ruoyi/ccdi/domain/excel/CcdiPurchaseTransactionExcel.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` (测试数据生成脚本)

View File

@@ -268,7 +268,7 @@ Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
```bash
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
**路径**: `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
@@ -200,7 +200,7 @@ public String importIntermediaryPerson(List<CcdiIntermediaryPersonExcel> list,
#### 文件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
@@ -614,7 +614,7 @@ ab -n 100 -c 10 -T "multipart/form-data; boundary=----WebKitFormBoundary" \
2. **编译打包**
```bash
# 后端
cd ruoyi-ccdi
cd ruoyi-info-collection
mvn clean package
# 前端

View File

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