解决门店管理编辑报错

This commit is contained in:
spllzh
2025-08-14 16:32:43 +08:00
parent 1718a05ce8
commit 386eee9896
5 changed files with 90 additions and 32 deletions

View File

@@ -154,7 +154,7 @@ public class DealershipController {
}
// 按创建时间倒序排列
queryWrapper.orderByDesc(Dealership::getCreateTime);
queryWrapper.orderByDesc(Dealership::getUpdateTime);
Page<Dealership> dealershipPage = dealershipService.page(page, queryWrapper);

View File

@@ -152,8 +152,8 @@ public class DeviceManagementController {
queryWrapper.eq(DeviceManagement::getChargingStatus, chargingStatus);
}
// 按创建时间倒序排列
queryWrapper.orderByDesc(DeviceManagement::getCreateTime);
// 按getUpdateTime 时间倒序排列
queryWrapper.orderByDesc(DeviceManagement::getUpdateTime);
Page<DeviceManagement> devicePage = deviceManagementService.page(page, queryWrapper);

View File

@@ -2,7 +2,9 @@ package com.rj.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.rj.entity.Dealership;
import com.rj.entity.ProjectManagement;
import com.rj.service.IDealershipService;
import com.rj.service.IProjectManagementService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
@@ -16,6 +18,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>
@@ -33,6 +37,9 @@ public class ProjectManagementController {
@Autowired
private IProjectManagementService projectManagementService;
@Autowired
private IDealershipService dealershipService;
/**
* 新增项目
*/
@@ -138,7 +145,7 @@ public class ProjectManagementController {
try {
Page<ProjectManagement> page = new Page<>(current, size);
LambdaQueryWrapper<ProjectManagement> queryWrapper = new LambdaQueryWrapper<>();
// 添加查询条件
if (projectName != null && !projectName.trim().isEmpty()) {
queryWrapper.like(ProjectManagement::getProjectName, projectName);
@@ -152,20 +159,60 @@ public class ProjectManagementController {
if (groupName != null && !groupName.trim().isEmpty()) {
queryWrapper.eq(ProjectManagement::getGroupName, groupName);
}
// 按创建时间倒序排列
queryWrapper.orderByDesc(ProjectManagement::getCreateTime);
queryWrapper.orderByDesc(ProjectManagement::getUpdateTime);
Page<ProjectManagement> projectPage = projectManagementService.page(page, queryWrapper);
// 获取项目列表中的门店ID集合
List<ProjectManagement> records = projectPage.getRecords();
List<String> dealershipIds = records.stream()
.map(ProjectManagement::getDealershipId)
.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<>();
}
// 构造返回数据,包含门店名称
List<Map<String, Object>> projectDataList = records.stream().map(project -> {
Map<String, Object> projectMap = new HashMap<>();
projectMap.put("id", project.getId());
projectMap.put("dealershipId", project.getDealershipId());
projectMap.put("dealershipName", dealershipNameMap.get(project.getDealershipId()));
projectMap.put("projectName", project.getProjectName());
projectMap.put("scriptVersion", project.getScriptVersion());
projectMap.put("scriptPublishTime", project.getScriptPublishTime());
projectMap.put("salespersonCount", project.getSalespersonCount());
projectMap.put("avgRecordingDuration", project.getAvgRecordingDuration());
projectMap.put("step", project.getStep());
projectMap.put("groupName", project.getGroupName());
projectMap.put("createTime", project.getCreateTime());
projectMap.put("description", project.getDescription());
projectMap.put("status", project.getStatus());
projectMap.put("updateTime", project.getUpdateTime());
return projectMap;
}).collect(Collectors.toList());
result.put("success", true);
result.put("message", "查询成功");
result.put("data", projectPage.getRecords());
result.put("data", projectDataList);
result.put("total", projectPage.getTotal());
result.put("current", projectPage.getCurrent());
result.put("size", projectPage.getSize());
result.put("pages", projectPage.getPages());
return ResponseEntity.ok(result);
} catch (Exception e) {
result.put("success", false);

View File

@@ -1,21 +0,0 @@
package com.rj.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 前端控制器
* </p>
*
* @author 李中华 ,spllzh
* @since 2025-08-05
*/
@RestController
@RequestMapping("/reservation")
public class ReservationController {
}

View File

@@ -2,7 +2,10 @@ package com.rj.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.rj.entity.Dealership;
import com.rj.entity.ProjectManagement;
import com.rj.entity.SalesManagement;
import com.rj.service.IDealershipService;
import com.rj.service.ISalesManagementService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
@@ -16,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>
@@ -116,6 +121,10 @@ public class SalesManagementController {
}
}
@Autowired
private IDealershipService dealershipService;
/**
* 分页查询销售列表
*/
@@ -162,7 +171,30 @@ public class SalesManagementController {
queryWrapper.orderByDesc(SalesManagement::getCreateTime);
Page<SalesManagement> salesPage = salesManagementService.page(page, queryWrapper);
List<String> dealershipIds = salesPage.getRecords().stream()
.map(SalesManagement::getDealershipId)
.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<>();
}
salesPage.getRecords().forEach(sales -> {
sales.setDealershipName(dealershipNameMap.get(sales.getDealershipId()));
});
result.put("success", true);
result.put("message", "查询成功");
result.put("data", salesPage.getRecords());