2026-04-28 56b8b84689ccf5389ee02814bcb8bfe407f05a87
src/main/java/com/ruoyi/basic/service/impl/CustomerFollowUpFileServiceImpl.java
@@ -1,18 +1,15 @@
package com.ruoyi.basic.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.stream.CollectorUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.google.common.collect.Lists;
import com.ruoyi.basic.mapper.CustomerFollowUpFileMapper;
import com.ruoyi.basic.pojo.CustomerFollowUpFile;
import com.ruoyi.basic.service.CustomerFollowUpFileService;
import com.ruoyi.basic.service.CustomerFollowUpService;
import com.ruoyi.common.vo.SimpleFileVo;
import lombok.RequiredArgsConstructor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import java.util.*;
@@ -30,12 +27,10 @@
 * @since 2026/03/04 14:53
 */
@Service
@RequiredArgsConstructor
public class CustomerFollowUpFileServiceImpl extends ServiceImpl<CustomerFollowUpFileMapper, CustomerFollowUpFile> implements CustomerFollowUpFileService {
    @Autowired
    @Lazy
    private CustomerFollowUpService customerFollowUpService;
    private final CustomerFollowUpFileMapper customerFollowUpFileMapper;
    @Override
    public <T> void fillAttachment(List<T> list, Function<T, String> getAttachmentIds, BiConsumer<T, List<SimpleFileVo>> setAttachmentList) {
@@ -52,7 +47,7 @@
        List<CustomerFollowUpFile> followUpFilesByIds = new ArrayList<>();
        Lists.partition(Lists.newArrayList(ids), 999).forEach(it -> {
            followUpFilesByIds.addAll(
                    customerFollowUpService.getFollowUpFilesByIds(it)
                    getFollowUpFilesByIds(it)
            );
        });
        if (CollUtil.isEmpty(followUpFilesByIds)) {
@@ -74,4 +69,15 @@
            }
        });
    }
    private List<CustomerFollowUpFile> getFollowUpFilesByIds(Collection<Long> fileIds) {
        if (fileIds == null || fileIds.isEmpty()) {
            return new ArrayList<>(0);
        }
        LambdaQueryWrapper<CustomerFollowUpFile> queryWrapper = new LambdaQueryWrapper<>();
        queryWrapper.in(CustomerFollowUpFile::getId, fileIds)
                .select(CustomerFollowUpFile::getId, CustomerFollowUpFile::getFileUrl, CustomerFollowUpFile::getFileName);
        return customerFollowUpFileMapper.selectList(queryWrapper);
    }
}