From 8c14b50773a1e582b652c03f5a63bb2233d069b8 Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期一, 13 七月 2026 08:55:20 +0800
Subject: [PATCH] 1.仓储物流-采购模块联动 2.仓储物流-销售模块联动 3.清理表数据

---
 yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/followup/CrmFollowUpRecordController.java |   36 ++++++++++++++++++++++++++++--------
 1 files changed, 28 insertions(+), 8 deletions(-)

diff --git a/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/followup/CrmFollowUpRecordController.java b/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/followup/CrmFollowUpRecordController.java
index b59ef80..6739ee2 100644
--- a/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/followup/CrmFollowUpRecordController.java
+++ b/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/followup/CrmFollowUpRecordController.java
@@ -28,7 +28,9 @@
 import org.springframework.web.bind.annotation.*;
 
 import java.util.ArrayList;
+import java.util.List;
 import java.util.Map;
+import java.util.stream.Stream;
 
 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
 import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
@@ -92,22 +94,40 @@
         PageResult<CrmFollowUpRecordDO> pageResult = followUpRecordService.getFollowUpRecordPage(pageReqVO);
         // 1.1 鏌ヨ鑱旂郴浜哄拰鍟嗘満
         Map<Long, CrmContactDO> contactMap = contactService.getContactMap(
-                convertSetByFlatMap(pageResult.getList(), item -> item.getContactIds().stream()));
+                convertSetByFlatMap(pageResult.getList(), item -> {
+                    List<Long> contactIds = item.getContactIds();
+                    return contactIds != null ? contactIds.stream() : Stream.empty();
+                }));
         Map<Long, CrmBusinessDO> businessMap = businessService.getBusinessMap(
-                convertSetByFlatMap(pageResult.getList(), item -> item.getBusinessIds().stream()));
+                convertSetByFlatMap(pageResult.getList(), item -> {
+                    List<Long> businessIds = item.getBusinessIds();
+                    return businessIds != null ? businessIds.stream() : Stream.empty();
+                }));
         // 1.2 鏌ヨ鐢ㄦ埛
         Map<Long, AdminUserRespDTO> userMap = adminUserApi.getUserMap(
-                convertSet(pageResult.getList(), item -> Long.valueOf(item.getCreator())));
+                convertSet(pageResult.getList(), item -> {
+                    String creator = item.getCreator();
+                    return creator != null && !creator.isEmpty() ? Long.valueOf(creator) : null;
+                }));
         // 2. 鎷兼帴鏁版嵁
         PageResult<CrmFollowUpRecordRespVO> voPageResult = BeanUtils.toBean(pageResult, CrmFollowUpRecordRespVO.class, record -> {
             // 2.1 璁剧疆鑱旂郴浜哄拰鍟嗘満淇℃伅
             record.setBusinesses(new ArrayList<>()).setContacts(new ArrayList<>());
-            record.getContactIds().forEach(id -> MapUtils.findAndThen(contactMap, id, contact ->
-                    record.getContacts().add(new CrmBusinessRespVO().setId(contact.getId()).setName(contact.getName()))));
-            record.getBusinessIds().forEach(id -> MapUtils.findAndThen(businessMap, id, business ->
-                    record.getBusinesses().add(new CrmBusinessRespVO().setId(business.getId()).setName(business.getName()))));
+            List<Long> contactIds = record.getContactIds();
+            if (contactIds != null) {
+                contactIds.forEach(id -> MapUtils.findAndThen(contactMap, id, contact ->
+                        record.getContacts().add(new CrmBusinessRespVO().setId(contact.getId()).setName(contact.getName()))));
+            }
+            List<Long> businessIds = record.getBusinessIds();
+            if (businessIds != null) {
+                businessIds.forEach(id -> MapUtils.findAndThen(businessMap, id, business ->
+                        record.getBusinesses().add(new CrmBusinessRespVO().setId(business.getId()).setName(business.getName()))));
+            }
             // 2.2 璁剧疆鐢ㄦ埛淇℃伅
-            MapUtils.findAndThen(userMap, Long.valueOf(record.getCreator()), user -> record.setCreatorName(user.getNickname()));
+            String creator = record.getCreator();
+            if (creator != null && !creator.isEmpty()) {
+                MapUtils.findAndThen(userMap, Long.valueOf(creator), user -> record.setCreatorName(user.getNickname()));
+            }
         });
         return success(voPageResult);
     }

--
Gitblit v1.9.3