联调解决客户信息的编辑 、动态获取数据等

This commit is contained in:
spllzh
2025-08-14 20:42:50 +08:00
parent 4b9b9a487c
commit b20832bdb2
2 changed files with 58 additions and 2 deletions

View File

@@ -3,7 +3,11 @@ package com.rj.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.rj.entity.CustomerManagement;
import com.rj.entity.Dealership;
import com.rj.entity.SalesManagement;
import com.rj.service.ICustomerManagementService;
import com.rj.service.IDealershipService;
import com.rj.service.ISalesManagementService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
@@ -15,6 +19,8 @@ import java.time.LocalDateTime;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.stream.Collectors;
/**
* <p>
@@ -115,6 +121,11 @@ public class CustomerManagementController {
}
}
@Autowired
private IDealershipService dealershipService;
@Autowired
private ISalesManagementService salesManagementService;
/**
* 分页查询客户列表
*/
@@ -148,10 +159,54 @@ public class CustomerManagementController {
}
// 按创建时间倒序排列
queryWrapper.orderByDesc(CustomerManagement::getCreateTime);
queryWrapper.orderByDesc(CustomerManagement::getUpdateTime);
Page<CustomerManagement> customerPage = customerManagementService.page(page, queryWrapper);
List<String> dealershipIds = customerPage.getRecords().stream()
.map(CustomerManagement::getDealershipId)
.filter(Objects::nonNull)
.distinct()
.collect(Collectors.toList());
List<String> saleIds = customerPage.getRecords().stream()
.map(CustomerManagement::getSalesId)
.filter(Objects::nonNull)
.distinct()
.collect(Collectors.toList());
// 批量获取门店信息
Map<String, String> dealershipNameMap;
if (!dealershipIds.isEmpty()) {
LambdaQueryWrapper<Dealership> dealershipQueryWrapper = new LambdaQueryWrapper<>();
dealershipQueryWrapper.in(Dealership::getId, dealershipIds);
List<Dealership> dealerships = dealershipService.list(dealershipQueryWrapper);
dealershipNameMap = dealerships.stream()
.collect(Collectors.toMap(Dealership::getId, Dealership::getDealershipName));
} else {
dealershipNameMap = new HashMap<>();
}
// 批量获取 销售信息
Map<String, String> saleNameMap;
if (!saleIds.isEmpty()) {
LambdaQueryWrapper<SalesManagement> salesQueryWrapper = new LambdaQueryWrapper<>();
salesQueryWrapper.in(SalesManagement::getId, saleIds);
List<SalesManagement> sales = salesManagementService.list(salesQueryWrapper);
saleNameMap = sales.stream()
.collect(Collectors.toMap(SalesManagement::getId, SalesManagement::getSalesName));
} else {
saleNameMap = new HashMap<>();
}
customerPage.getRecords().forEach(customer -> {
customer.setDealershipName(dealershipNameMap.get(customer.getDealershipId()));
customer.setSalesName(saleNameMap.get(customer.getSalesId()));
});
result.put("success", true);
result.put("message", "查询成功");
result.put("data", customerPage.getRecords());

View File

@@ -315,6 +315,7 @@ public class SalesManagementController {
}
boolean success = salesManagementService.removeByIds(ids);
result.put("data", "删除");
if (success) {
result.put("success", true);
result.put("message", "批量删除成功,共删除 " + ids.size() + " 条记录");