public List<GdzlglVO> getQxLbTj(String xzqhdm) {
// 查询市级统计数据
List<Map<String, Object>> sumStatisticsCityMap = this.findSumStatisticsCity(xzqhdm);
if (sumStatisticsCityMap == null || sumStatisticsCityMap.isEmpty()) {
return Collections.emptyList();
}
// 查询占用管理和核销管理数据
List<SfYtgzjbxxbDTO> sfs = mapper.selectOccupy();
// 遍历 sumStatisticsCityMap,累加 jsydzmj 的值
sumStatisticsCityMap.forEach(map -> {
String name = Func.toStr(map.get("name"));
BigDecimal totalJsydzmj = sfs.stream()
.filter(sf -> sf.getXzqhmc() != null && sf.getXzqhmc().contains(name)) // 匹配区域名称
.map(SfYtgzjbxxbDTO::getJsydzmj) // 获取 jsydzmj
.filter(Objects::nonNull) // 过滤 null 值
.reduce(BigDecimal.ZERO, BigDecimal::add); // 累加 jsydzmj
map.put("jsydzmj", totalJsydzmj);
});
// 转换 sumStatisticsCityMap 为 GdzlglVO 列表
List<GdzlglVO> gdzlglVOS = sumStatisticsCityMap.stream()
.map(map -> {
GdzlglVO gdzlglVO = new GdzlglVO();
gdzlglVO.setName((String) map.get("name"));
gdzlglVO.setJsydzmj((BigDecimal) map.get("jsydzmj"));
gdzlglVO.setGdsl(Func.toStr(map.get("sygdzb")));
return gdzlglVO;
})
.collect(Collectors.toList());
return gdzlglVOS;
}
Java 遍历 过滤 求和
最新推荐文章于 2025-10-08 01:52:57 发布
1万+

被折叠的 条评论
为什么被折叠?



