diff --git a/ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/StaffTransferImportFailureVO.java b/ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/StaffTransferImportFailureVO.java index 7a3139c..af8fd35 100644 --- a/ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/StaffTransferImportFailureVO.java +++ b/ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/domain/vo/StaffTransferImportFailureVO.java @@ -29,6 +29,14 @@ public class StaffTransferImportFailureVO implements Serializable { @Schema(description = "员工姓名") private String staffName; + /** 调动前部门ID */ + @Schema(description = "调动前部门ID") + private Long deptIdBefore; + + /** 调动后部门ID */ + @Schema(description = "调动后部门ID") + private Long deptIdAfter; + /** 调动类型 */ @Schema(description = "调动类型") private String transferType; diff --git a/ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiStaffTransferImportServiceImpl.java b/ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiStaffTransferImportServiceImpl.java index 86da3ea..141004f 100644 --- a/ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiStaffTransferImportServiceImpl.java +++ b/ruoyi-ccdi/src/main/java/com/ruoyi/ccdi/service/impl/CcdiStaffTransferImportServiceImpl.java @@ -373,4 +373,20 @@ public class CcdiStaffTransferImportServiceImpl implements ICcdiStaffTransferImp return existingStaffIds; } + + /** + * 检查某行数据是否已在失败列表中 + * + * @param excel Excel数据 + * @param failures 失败记录列表 + * @return true-已失败,false-未失败 + */ + private boolean isRowAlreadyFailed(CcdiStaffTransferExcel excel, + List failures) { + return failures.stream() + .anyMatch(f -> f.getStaffId().equals(excel.getStaffId()) + && Objects.equals(f.getTransferDate(), excel.getTransferDate()) + && Objects.equals(f.getDeptIdBefore(), excel.getDeptIdBefore()) + && Objects.equals(f.getDeptIdAfter(), excel.getDeptIdAfter())); + } }