package com.ruoyi.basic.service.impl;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.ruoyi.basic.dto.CustomerContactDto;
|
import com.ruoyi.basic.mapper.CustomerContactMapper;
|
import com.ruoyi.basic.pojo.CustomerContact;
|
import com.ruoyi.basic.service.CustomerContactService;
|
import com.ruoyi.common.utils.bean.BeanUtils;
|
import lombok.RequiredArgsConstructor;
|
import org.springframework.stereotype.Service;
|
|
import java.util.ArrayList;
|
import java.util.Arrays;
|
import java.util.List;
|
import java.util.Objects;
|
import java.util.stream.Collectors;
|
|
/**
|
* <p>
|
* 客户联系人表 服务实现类
|
* </p>
|
*
|
* @author 芯导软件(江苏)有限公司
|
* @since 2026-05-07 03:46:40
|
*/
|
@Service
|
@RequiredArgsConstructor
|
public class CustomerContactServiceImpl extends ServiceImpl<CustomerContactMapper, CustomerContact> implements CustomerContactService {
|
|
private final CustomerContactMapper customerContactMapper;
|
@Override
|
public IPage<CustomerContactDto> listPage(Page<CustomerContactDto> page, CustomerContactDto customerContactDto) {
|
return customerContactMapper.listPage(page,customerContactDto);
|
}
|
|
@Override
|
public Boolean add(CustomerContactDto customerContact) {
|
List<Long> idList = customerContact.getCustomerIdList();
|
if (idList != null && !idList.isEmpty()) {
|
String result = idList.stream()
|
.filter(Objects::nonNull)
|
.distinct()
|
.map(String::valueOf) // 将 Long 转换为 String
|
.collect(Collectors.joining(","));
|
customerContact.setCustomerId(result);
|
}
|
return save(customerContact);
|
|
}
|
|
@Override
|
public Boolean updateCustomerContact(CustomerContactDto customerContact) {
|
List<Long> idList = customerContact.getCustomerIdList();
|
if (idList != null && !idList.isEmpty()) {
|
String result = idList.stream()
|
.filter(Objects::nonNull)
|
.distinct()
|
.map(String::valueOf) // 将 Long 转换为 String
|
.collect(Collectors.joining(","));
|
customerContact.setCustomerId(result);
|
}
|
return updateById(customerContact);
|
}
|
|
@Override
|
public CustomerContactDto getCustomerContactDtoById(Long id) {
|
CustomerContact byId = getById(id);
|
CustomerContactDto customerContactDto = new CustomerContactDto();
|
BeanUtils.copyProperties(byId, customerContactDto);
|
if (byId != null && byId.getCustomerId() != null && !byId.getCustomerId().isEmpty()) {
|
List<Long> idList = Arrays.stream(byId.getCustomerId().split(","))
|
.map(String::trim) // 去除可能的空格
|
.filter(s -> !s.isEmpty()) // 过滤空字符串
|
.map(Long::parseLong) // 转换为 Long
|
.collect(Collectors.toList());
|
customerContactDto.setCustomerIdList(idList);
|
} else {
|
customerContactDto.setCustomerIdList(new ArrayList<>());
|
}
|
return customerContactDto;
|
}
|
}
|