From 56cc49958acccd0cf16723705d5d5909991632c6 Mon Sep 17 00:00:00 2001 From: MerCry Date: Sat, 14 Mar 2026 00:21:12 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=90=8C=E5=90=8D=E6=97=B6?= =?UTF-8?q?=20=E4=BD=BF=E7=94=A8=E6=9C=80=E6=96=B0=E7=9A=84=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/ruoyi/excel/wecom/domain/CorpDepartment.java | 7 +++++++ .../java/com/ruoyi/excel/wecom/domain/CorpUser.java | 5 +++++ .../excel/wecom/service/CustomerExportService.java | 10 +++++----- 3 files changed, 17 insertions(+), 5 deletions(-) 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. 构建标签组到标签列表的映射