diff --git a/excel-handle/src/main/java/com/ruoyi/excel/wecom/domain/CorpDepartment.java b/excel-handle/src/main/java/com/ruoyi/excel/wecom/domain/CorpDepartment.java index 135840c..6977f19 100644 --- a/excel-handle/src/main/java/com/ruoyi/excel/wecom/domain/CorpDepartment.java +++ b/excel-handle/src/main/java/com/ruoyi/excel/wecom/domain/CorpDepartment.java @@ -6,6 +6,7 @@ import lombok.Getter; import lombok.Setter; import java.io.Serializable; +import java.util.Date; @Getter @Setter @@ -22,5 +23,11 @@ public class CorpDepartment implements Serializable { private Long orderNo; + private String unitId; + private String name; + + private Date createTime; + + private Date updateTime; } diff --git a/excel-handle/src/main/java/com/ruoyi/excel/wecom/domain/CorpUser.java b/excel-handle/src/main/java/com/ruoyi/excel/wecom/domain/CorpUser.java index aa5c64b..bd382c0 100644 --- a/excel-handle/src/main/java/com/ruoyi/excel/wecom/domain/CorpUser.java +++ b/excel-handle/src/main/java/com/ruoyi/excel/wecom/domain/CorpUser.java @@ -6,6 +6,7 @@ import lombok.Getter; import lombok.Setter; import java.io.Serializable; +import java.util.Date; @Getter @Setter @@ -26,4 +27,8 @@ public class CorpUser implements Serializable { private String alias; private String openUserid; + + private Date createTime; + + private Date updateTime; } \ No newline at end of file diff --git a/excel-handle/src/main/java/com/ruoyi/excel/wecom/service/CustomerExportService.java b/excel-handle/src/main/java/com/ruoyi/excel/wecom/service/CustomerExportService.java index 8b9a7f9..f9d6d8c 100644 --- a/excel-handle/src/main/java/com/ruoyi/excel/wecom/service/CustomerExportService.java +++ b/excel-handle/src/main/java/com/ruoyi/excel/wecom/service/CustomerExportService.java @@ -39,7 +39,7 @@ public class CustomerExportService { // 缓存映射 private Map userIdToUserMap = new HashMap<>(); - private Map departmentIdToNameMap = new HashMap<>(); + private Map departmentIdToNameMap = new HashMap<>(); private Map tagIdToTagMap = new HashMap<>(); private Map tagGroupIdToGroupMap = new HashMap<>(); private Map> tagGroupIdToTagsMap = new HashMap<>(); @@ -55,25 +55,25 @@ public class CustomerExportService { // 1. 加载用户数据 List userList = corpUserMapper.selectList(null); userIdToUserMap = userList.stream() - .collect(Collectors.toMap(CorpUser::getUserid, user -> user, (v1, v2) -> v1)); + .collect(Collectors.toMap(CorpUser::getUserid, user -> user, (v1, v2) -> v1.getUpdateTime().compareTo(v2.getUpdateTime()) >= 0 ? v1 : v2)); log.debug("已加载 " + userIdToUserMap.size() + " 个用户"); // 2. 加载部门数据 List departmentList = corpDepartmentMapper.selectList(null); departmentIdToNameMap = departmentList.stream() - .collect(Collectors.toMap(CorpDepartment::getId, CorpDepartment::getName, (v1, v2) -> v1)); + .collect(Collectors.toMap(CorpDepartment::getId, department->department, (v1, v2) -> v1.getUpdateTime().compareTo(v2.getUpdateTime()) >= 0 ? v1 : v2)); log.debug("已加载 " + departmentIdToNameMap.size() + " 个部门"); // 3. 加载标签数据 List tagList = wecomTagMapper.selectList(null); tagIdToTagMap = tagList.stream() - .collect(Collectors.toMap(WecomTagDomain::getTagId, tag -> tag, (v1, v2) -> v1)); + .collect(Collectors.toMap(WecomTagDomain::getTagId, tag -> tag, (v1, v2) -> v2)); log.debug("已加载 " + tagIdToTagMap.size() + " 个标签"); // 4. 加载标签组数据 List tagGroupList = wecomTagGroupMapper.selectList(null); tagGroupIdToGroupMap = tagGroupList.stream() - .collect(Collectors.toMap(WecomTagGroupDomain::getTagGroupId, group -> group, (v1, v2) -> v1)); + .collect(Collectors.toMap(WecomTagGroupDomain::getTagGroupId, group -> group, (v1, v2) -> v2)); log.debug("已加载 " + tagGroupIdToGroupMap.size() + " 个标签组"); // 5. 构建标签组到标签列表的映射