From c0a8544306be641f5aa38fdb81c8ddaac4386cbc Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Wed, 26 Jan 2022 10:00:10 +0800 Subject: [PATCH] bug --- .../com/epmet/dao/IcStatsResiWarnDao.java | 2 ++ .../impl/IcStatsResiWarnServiceImpl.java | 30 ++++++++++++++----- .../main/resources/mapper/IcResiUserDao.xml | 1 + .../resources/mapper/IcStatsResiWarnDao.xml | 30 ++++++++++++------- 4 files changed, 46 insertions(+), 17 deletions(-) diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcStatsResiWarnDao.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcStatsResiWarnDao.java index 086bf7ca0f..09c0d6979d 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcStatsResiWarnDao.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcStatsResiWarnDao.java @@ -74,4 +74,6 @@ public interface IcStatsResiWarnDao extends BaseDao { */ List selectCategoryCount(@Param("configIds") List configIds,@Param("agencyId")String agencyId); + List> selectCategoryCountByColumn(@Param("columnNames") List columnNames,@Param("agencyId")String agencyId); + } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcStatsResiWarnServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcStatsResiWarnServiceImpl.java index c540ac1723..42bf629675 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcStatsResiWarnServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcStatsResiWarnServiceImpl.java @@ -20,6 +20,7 @@ package com.epmet.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; +import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult; import com.epmet.commons.tools.exception.EpmetException; import com.epmet.commons.tools.page.PageData; @@ -44,10 +45,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; /** @@ -144,9 +142,27 @@ public class IcStatsResiWarnServiceImpl extends BaseServiceImpl dtos = baseDao.selectCategoryCount(configList.stream().map(m -> m.getWarnConfigId()).collect(Collectors.toList()), staffInfo.getAgencyId()); - if (CollectionUtils.isNotEmpty(dtos)){ - list.forEach(l -> dtos.stream().filter(d -> d.getConfigId().equals(l.getConfigId())).forEach(d -> l.setTypeCount(d.getCount()))); +// List dtos = baseDao.selectCategoryCount(configList.stream().map(m -> m.getWarnConfigId()).collect(Collectors.toList()), staffInfo.getAgencyId()); + List columns = configList.stream().map(m -> m.getColumnName()).collect(Collectors.toList()); + List> maps = baseDao.selectCategoryCountByColumn(columns, staffInfo.getAgencyId()); +// if (CollectionUtils.isNotEmpty(dtos)){ +// list.forEach(l -> dtos.stream().filter(d -> d.getConfigId().equals(l.getConfigId())).forEach(d -> l.setTypeCount(d.getCount()))); +// } + Map columnCount = new HashMap<>(16); + if (CollectionUtils.isNotEmpty(maps)){ + columns.forEach(c -> { + Map>> groupByColumn = maps.stream().collect(Collectors.groupingBy((Map m) -> m.get(c))); + columnCount.put(c,CollectionUtils.isNotEmpty(groupByColumn.get(NumConstant.ONE_STR)) ? groupByColumn.get(NumConstant.ONE_STR).size() : NumConstant.ZERO); + }); + } + if (!org.springframework.util.CollectionUtils.isEmpty(columnCount)){ + list.forEach(l -> { + columnCount.forEach((k,v) -> { + if (l.getTypeCode().equals(k)){ + l.setTypeCount(v); + } + }); + }); } result.setTotal(list.stream().collect(Collectors.summingInt(PersonWarnLeftPieResultDTO.PersonWarnLeftPie::getTypeCount))); result.setList(list); diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserDao.xml index 661f6729c4..685b7c8d39 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserDao.xml @@ -554,6 +554,7 @@ FROM ic_resi_user WHERE DEL_FLAG = 0 + AND STATUS = '0' AND CONCAT(PIDS,':',AGENCY_ID) LIKE CONCAT('%',#{orgId},'%') AND( diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/IcStatsResiWarnDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/IcStatsResiWarnDao.xml index 5e05bda2ef..608d10d5cd 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/IcStatsResiWarnDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/IcStatsResiWarnDao.xml @@ -151,26 +151,36 @@ + + \ No newline at end of file