This commit is contained in:
zhangchenbiao
2023-06-29 14:31:03 +08:00
parent f5ac5f4bc8
commit c2b8e4db95
3 changed files with 19 additions and 8 deletions

View File

@@ -64,8 +64,9 @@ public class OpenAreaTreeVO {
}
log.info("1#耗时:{}", System.currentTimeMillis() - startTime);
Map<Long, List<OpenAreaTreeVO>> childMap = allTree.stream().collect(Collectors.toMap(k -> k.getId(), v -> v.getChildNode()));
List<HyOpenAreaInfoDO> filterList = allOpenArea.stream().filter(o -> StringUtils.isNotBlank(keyword) && o.getAreaPath().contains(keyword))
.filter(o->Objects.nonNull(applyFlag) && AreaStatusEnum.OPEN.getCode().equals(o.getAreaStatus()) || AreaStatusEnum.OPEN.getCode().equals(o.getAreaStatus())).collect(Collectors.toList());
List<HyOpenAreaInfoDO> filterList = allOpenArea.stream().filter(o -> (StringUtils.isBlank(keyword) || o.getAreaPath().contains(keyword))
&& (Objects.isNull(applyFlag) || AreaStatusEnum.OPEN.getCode().equals(o.getAreaStatus()) || AreaStatusEnum.OPEN.getCode().equals(o.getAreaStatus())))
.collect(Collectors.toList());
Map<Long, HyOpenAreaInfoDO> openAreaMap = allOpenArea.stream().collect(Collectors.toMap(k -> k.getId(), Function.identity()));
List<HyOpenAreaInfoDO> list = new ArrayList<>();
//向上处理节点

View File

@@ -8,6 +8,7 @@ import com.cool.store.dto.partner.ApplyReservationProvinceDTO;
import com.cool.store.entity.HyOpenAreaInfoDO;
import com.cool.store.request.OpenAreaRequest;
import com.cool.store.service.OpenAreaService;
import com.cool.store.utils.RedisUtilPool;
import com.cool.store.vo.OpenAreaTreeVO;
import com.cool.store.vo.OpenAreaVO;
import com.cool.store.vo.OpenProvinceVO;
@@ -33,7 +34,9 @@ import java.util.stream.Collectors;
public class OpenAreaServiceImpl implements OpenAreaService {
@Resource
HyOpenAreaInfoDAO hyOpenAreaInfoDAO;
private HyOpenAreaInfoDAO hyOpenAreaInfoDAO;
@Resource
private RedisUtilPool redisUtilPool;
@Override
@@ -119,10 +122,17 @@ public class OpenAreaServiceImpl implements OpenAreaService {
@Override
public List<OpenAreaTreeVO> searchOpenArea(String keyword,Boolean applyFlag, Boolean flag) {
long startTime = System.currentTimeMillis();
//先查出所有的一级菜单
List<HyOpenAreaInfoDO> allOpenArea = hyOpenAreaInfoDAO.getAllOpenArea();
String cacheKey = "allOpenArea";
String allOpenAreaCache = redisUtilPool.getString(cacheKey);
List<HyOpenAreaInfoDO> allAreaList = null;
if(StringUtils.isBlank(allOpenAreaCache)){
allAreaList = hyOpenAreaInfoDAO.getAllOpenArea();
redisUtilPool.setString(cacheKey, JSONObject.toJSONString(allAreaList));
}else{
allAreaList = JSONObject.parseArray(allOpenAreaCache, HyOpenAreaInfoDO.class);
}
log.info("11耗时{}", System.currentTimeMillis() - startTime);
return OpenAreaTreeVO.convertTree(allOpenArea, keyword, applyFlag);
return OpenAreaTreeVO.convertTree(allAreaList, keyword, applyFlag);
}
@Override

View File

@@ -247,8 +247,8 @@ public class TestController {
}
@GetMapping("/searchOpenArea")
public ResponseResult searchOpenArea(@RequestParam(value = "keyword",required = false)String keyword){
return ResponseResult.success(openAreaService.searchOpenArea(keyword,null,Boolean.FALSE));
public ResponseResult searchOpenArea(@RequestParam(value = "keyword",required = false)String keyword, @RequestParam(value = "applyFlag",required = false)Boolean applyFlag){
return ResponseResult.success(openAreaService.searchOpenArea(keyword, applyFlag, Boolean.FALSE));
}
}