|
|
|
|
@ -120,28 +120,32 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService {
|
|
|
|
|
*/
|
|
|
|
|
@Override
|
|
|
|
|
public List<PurchaseCheckInfo> selectPurchaseCheckInfoList(PurchaseCheckInfo purchaseCheckInfo) {
|
|
|
|
|
List<PurchaseCheckInfo> purchaseCheckInfos = purchaseCheckInfoMapper.selectPurchaseCheckInfoList(purchaseCheckInfo);
|
|
|
|
|
Map<Long, PurchaseCheckInfo> taskIdInfoMap = new HashMap<>(); // 缓存查询结果,避免重复查询
|
|
|
|
|
for (PurchaseCheckInfo checkInfo : purchaseCheckInfos) {
|
|
|
|
|
// 判断是否已经查询过该taskId的结果,如果没有,进行查询并缓存
|
|
|
|
|
if (!taskIdInfoMap.containsKey(checkInfo.getTaskId())) {
|
|
|
|
|
List<PurchaseCheckInfo> taskInfoList = purchaseCheckInfoMapper.selectTypeNameAndManageTypeByTaskId(checkInfo.getTaskId());
|
|
|
|
|
if (!taskInfoList.isEmpty()) {
|
|
|
|
|
taskIdInfoMap.put(checkInfo.getTaskId(), taskInfoList.get(0));
|
|
|
|
|
try {
|
|
|
|
|
List<PurchaseCheckInfo> purchaseCheckInfos = purchaseCheckInfoMapper.selectPurchaseCheckInfoList(purchaseCheckInfo);
|
|
|
|
|
Map<Long, PurchaseCheckInfo> taskIdInfoMap = new HashMap<>(); // 缓存查询结果,避免重复查询
|
|
|
|
|
for (PurchaseCheckInfo checkInfo : purchaseCheckInfos) {
|
|
|
|
|
// 判断是否已经查询过该taskId的结果,如果没有,进行查询并缓存
|
|
|
|
|
if (!taskIdInfoMap.containsKey(checkInfo.getTaskId())) {
|
|
|
|
|
List<PurchaseCheckInfo> taskInfoList = purchaseCheckInfoMapper.selectTypeNameAndManageTypeByTaskId(checkInfo.getTaskId());
|
|
|
|
|
if (!taskInfoList.isEmpty()) {
|
|
|
|
|
taskIdInfoMap.put(checkInfo.getTaskId(), taskInfoList.get(0));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 获取缓存中的查询结果,进行处理
|
|
|
|
|
Optional<PurchaseCheckInfo> optionalInfo = Optional.ofNullable(taskIdInfoMap.get(checkInfo.getTaskId()));
|
|
|
|
|
if (optionalInfo.isPresent()) {
|
|
|
|
|
PurchaseCheckInfo taskInfo = optionalInfo.get();
|
|
|
|
|
String typeName = taskInfo.getPurchasingTypeName();
|
|
|
|
|
String manageType = taskInfo.getManageType().contains("0") ? "0" : "1";
|
|
|
|
|
checkInfo.setPurchasingTypeName(typeName);
|
|
|
|
|
checkInfo.setManageType(manageType);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 获取缓存中的查询结果,进行处理
|
|
|
|
|
Optional<PurchaseCheckInfo> optionalInfo = Optional.ofNullable(taskIdInfoMap.get(checkInfo.getTaskId()));
|
|
|
|
|
if (optionalInfo.isPresent()) {
|
|
|
|
|
PurchaseCheckInfo taskInfo = optionalInfo.get();
|
|
|
|
|
String typeName = taskInfo.getPurchasingTypeName();
|
|
|
|
|
String manageType = taskInfo.getManageType().contains("0") ? "0" : "1";
|
|
|
|
|
checkInfo.setPurchasingTypeName(typeName);
|
|
|
|
|
checkInfo.setManageType(manageType);
|
|
|
|
|
}
|
|
|
|
|
return purchaseCheckInfos;
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
throw new RuntimeException("显示出错,请联系管理员处理!");
|
|
|
|
|
}
|
|
|
|
|
return purchaseCheckInfos;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|