Browse Source

/epmetuser/statsresiwarn/queryuserwarnnotice

master
yinzuomei 4 years ago
parent
commit
92da5a13d5
  1. 12
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/feign/CommonAggFeignClient.java
  2. 13
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/feign/fallback/CommonAggFeignClientFallback.java
  3. 9
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisKeys.java
  4. 65
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/common/CustomerIcHouseRedis.java
  5. 5
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/common/CustomerOrgRedis.java
  6. 44
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/common/bean/BuildingInfoCache.java
  7. 14
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/GovOrgController.java
  8. 15
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/IcBuildingDao.java
  9. 8
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/GovOrgService.java
  10. 21
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/impl/GovOrgServiceImpl.java
  11. 24
      epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/IcBuildingDao.xml
  12. 27
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcUserWarnNoticeFormDTO.java
  13. 4
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/IcStatsResiWarnBuildingResultDTO.java
  14. 23
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/IcUserWarnNoticeResultDTO.java
  15. 15
      epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StatsResiWarnController.java
  16. 11
      epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcStatsResiWarnDao.java
  17. 9
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/StatsResiWarnService.java
  18. 40
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StatsResiWarnServiceImpl.java
  19. 16
      epmet-user/epmet-user-server/src/main/resources/mapper/IcStatsResiWarnDao.xml

12
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/feign/CommonAggFeignClient.java

@ -3,6 +3,7 @@ package com.epmet.commons.tools.feign;
import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.feign.fallback.CommonAggFeignClientFallBackFactory;
import com.epmet.commons.tools.redis.common.bean.AgencyInfoCache;
import com.epmet.commons.tools.redis.common.bean.BuildingInfoCache;
import com.epmet.commons.tools.redis.common.bean.CustomerStaffInfoCache;
import com.epmet.commons.tools.redis.common.bean.GridInfoCache;
import com.epmet.commons.tools.utils.Result;
@ -17,7 +18,8 @@ import org.springframework.web.bind.annotation.RequestParam;
* @Description
* @Author sun
*/
@FeignClient(name = ServiceConstant.DATA_AGGREGATOR_SERVER, fallbackFactory = CommonAggFeignClientFallBackFactory.class)
// @FeignClient(name = ServiceConstant.DATA_AGGREGATOR_SERVER, fallbackFactory = CommonAggFeignClientFallBackFactory.class)
@FeignClient(name = ServiceConstant.DATA_AGGREGATOR_SERVER, fallbackFactory = CommonAggFeignClientFallBackFactory.class,url = "localhost:8114")
public interface CommonAggFeignClient {
/**
@ -45,4 +47,12 @@ public interface CommonAggFeignClient {
*/
@PostMapping("/data/aggregator/org/grid")
Result<GridInfoCache> getGridInfo(@RequestParam("gridId")String gridId);
/**
* 查询楼栋信息
* @param buildingId
* @return
*/
@PostMapping("/data/aggregator/org/querybuildinginfo")
Result<BuildingInfoCache> queryBuildingInfo(@RequestParam("buildingId")String buildingId);
}

13
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/feign/fallback/CommonAggFeignClientFallback.java

@ -3,6 +3,7 @@ package com.epmet.commons.tools.feign.fallback;
import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.feign.CommonAggFeignClient;
import com.epmet.commons.tools.redis.common.bean.AgencyInfoCache;
import com.epmet.commons.tools.redis.common.bean.BuildingInfoCache;
import com.epmet.commons.tools.redis.common.bean.CustomerStaffInfoCache;
import com.epmet.commons.tools.redis.common.bean.GridInfoCache;
import com.epmet.commons.tools.utils.ModuleUtils;
@ -32,4 +33,16 @@ public class CommonAggFeignClientFallback implements CommonAggFeignClient {
public Result<GridInfoCache> getGridInfo(String gridId) {
return ModuleUtils.feignConError(ServiceConstant.DATA_AGGREGATOR_SERVER, "getGridInfo", gridId);
}
/**
* 查询楼栋信息
*
* @param buildingId
* @return
*/
@Override
public Result<BuildingInfoCache> queryBuildingInfo(String buildingId) {
return ModuleUtils.feignConError(ServiceConstant.DATA_AGGREGATOR_SERVER, "queryBuildingInfo", buildingId);
}
}

9
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisKeys.java

@ -539,6 +539,15 @@ public class RedisKeys {
return rootPrefix.concat("gov:grid:").concat(gridId);
}
/**
* 楼栋信息缓存key
* @param buildingId
* @return
*/
public static String getBuildingInfoKey(String buildingId) {
return rootPrefix.concat("gov:building:").concat(buildingId);
}
/**
* @description 调查问卷accessKey
*

65
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/common/CustomerIcHouseRedis.java

@ -0,0 +1,65 @@
package com.epmet.commons.tools.redis.common;
import cn.hutool.core.bean.BeanUtil;
import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.feign.CommonAggFeignClient;
import com.epmet.commons.tools.redis.RedisKeys;
import com.epmet.commons.tools.redis.RedisUtils;
import com.epmet.commons.tools.redis.common.bean.BuildingInfoCache;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.Result;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.MapUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import javax.annotation.PostConstruct;
import java.util.Map;
/**
* 楼栋
* 房屋
* 小区这三个的缓存放这吧
*/
@Slf4j
@Component
public class CustomerIcHouseRedis {
@Autowired
private RedisUtils redisUtils;
@Autowired
private CommonAggFeignClient commonAggFeignClient;
private static CustomerIcHouseRedis customerIcHouseRedis;
@PostConstruct
public void init() {
customerIcHouseRedis = this;
customerIcHouseRedis.redisUtils = this.redisUtils;
customerIcHouseRedis.commonAggFeignClient = this.commonAggFeignClient;
}
/**
* @Description 获取楼栋信息
* @param buildingId
* @author yinzuomei
* @date 2022/03/09
*/
public static BuildingInfoCache getBuildingInfo(String buildingId){
String key = RedisKeys.getBuildingInfoKey(buildingId);
Map<String, Object> build = customerIcHouseRedis.redisUtils.hGetAll(key);
if (!MapUtils.isEmpty(build)) {
return ConvertUtils.mapToEntity(build, BuildingInfoCache.class);
}
Result<BuildingInfoCache> buildInfoResult = customerIcHouseRedis.commonAggFeignClient.queryBuildingInfo(buildingId);
if (!buildInfoResult.success()){
throw new RenException("查询楼栋信息失败...");
}
if (null == buildInfoResult.getData()){
return null;
}
Map<String, Object> map = BeanUtil.beanToMap(buildInfoResult.getData(), false, true);
customerIcHouseRedis.redisUtils.hMSet(key, map);
return buildInfoResult.getData();
}
}

5
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/common/CustomerOrgRedis.java

@ -1,12 +1,12 @@
package com.epmet.commons.tools.redis.common;
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSON;
import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.feign.CommonAggFeignClient;
import com.epmet.commons.tools.redis.RedisKeys;
import com.epmet.commons.tools.redis.RedisUtils;
import com.epmet.commons.tools.redis.common.bean.*;
import com.epmet.commons.tools.redis.common.bean.AgencyInfoCache;
import com.epmet.commons.tools.redis.common.bean.GridInfoCache;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.Result;
import lombok.extern.slf4j.Slf4j;
@ -33,7 +33,6 @@ public class CustomerOrgRedis {
private CommonAggFeignClient commonAggFeignClient;
private static CustomerOrgRedis customerOrgRedis;
private static final String ROLE_MAP_KEY = "roleMap";
@PostConstruct
public void init() {

44
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/common/bean/BuildingInfoCache.java

@ -0,0 +1,44 @@
package com.epmet.commons.tools.redis.common.bean;
import lombok.Data;
import java.io.Serializable;
/**
* 楼栋信息缓存
*/
@Data
public class BuildingInfoCache implements Serializable {
/**
* !!!!!楼栋id
*/
private String buildingId;
/**
* 楼栋名称
*/
private String buildingName;
/**
* 网格id
*/
private String gridId;
/**
* XXX组织-网格名
*/
private String gridName;
/**
* 小区id
*/
private String neighborHoodId;
/**
* 小区名称
*/
private String neighborHoodName;
private String agencyId;
// 后续用到啥再加吧........
}

14
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/GovOrgController.java

@ -13,6 +13,7 @@ import com.epmet.commons.tools.exception.EpmetException;
import com.epmet.commons.tools.exception.ExceptionUtils;
import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.redis.common.bean.BuildingInfoCache;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.security.user.LoginUserUtil;
import com.epmet.commons.tools.utils.ConvertUtils;
@ -412,4 +413,17 @@ public class GovOrgController {
govOrgService.pcworkRecordListExportSendMsg(formDTO);
return new Result();
}
/**
* 查询楼栋信息
* @param buildingId
* @return
*/
@PostMapping("/querybuildinginfo")
public Result<BuildingInfoCache> queryBuildingInfo(@RequestParam("buildingId")String buildingId){
if(StringUtils.isBlank(buildingId)){
return new Result<>();
}
return new Result<BuildingInfoCache>().ok(govOrgService.queryBuildingInfo(buildingId));
}
}

15
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/IcBuildingDao.java

@ -0,0 +1,15 @@
package com.epmet.dataaggre.dao.govorg;
import com.epmet.commons.tools.redis.common.bean.BuildingInfoCache;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface IcBuildingDao {
/**
* 查询楼栋信息返回楼栋明小区名....简要信息
* @param buildingId
* @return
*/
BuildingInfoCache selectBuildInfo(String buildingId);
}

8
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/GovOrgService.java

@ -1,5 +1,6 @@
package com.epmet.dataaggre.service.govorg;
import com.epmet.commons.tools.redis.common.bean.BuildingInfoCache;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.dataaggre.dto.govorg.CustomerAgencyDTO;
import com.epmet.dataaggre.dto.govorg.CustomerDepartmentDTO;
@ -188,4 +189,11 @@ public interface GovOrgService {
* @Description 查询组织的直属下级组织下网格活跃度统计--文件导出
**/
void pcworkRecordListExportSendMsg(GridLivelyFormDTO formDTO);
/**
* 获取楼栋信息
* @param buildingId
* @return
*/
BuildingInfoCache queryBuildingInfo(String buildingId);
}

21
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/impl/GovOrgServiceImpl.java

@ -17,6 +17,8 @@ import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.redis.common.CustomerOrgRedis;
import com.epmet.commons.tools.redis.common.CustomerStaffRedis;
import com.epmet.commons.tools.redis.common.bean.AgencyInfoCache;
import com.epmet.commons.tools.redis.common.bean.BuildingInfoCache;
import com.epmet.commons.tools.redis.common.bean.GridInfoCache;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.HttpClientManager;
import com.epmet.commons.tools.utils.Result;
@ -88,6 +90,8 @@ public class GovOrgServiceImpl implements GovOrgService {
private DataStatsService dataStatsService;
@Autowired
private OssFeignClient ossFeignClient;
@Autowired
private IcBuildingDao icBuildingDao;
/**
* @param staffId
@ -990,5 +994,22 @@ public class GovOrgServiceImpl implements GovOrgService {
}
}
/**
* 获取楼栋信息
*
* @param buildingId
* @return
*/
@Override
public BuildingInfoCache queryBuildingInfo(String buildingId) {
BuildingInfoCache infoCache=icBuildingDao.selectBuildInfo(buildingId);
if(null!=infoCache){
GridInfoCache gridInfoCache= CustomerOrgRedis.getGridInfo(infoCache.getGridId());
//赋值 XXX-网格名
infoCache.setGridName(null == gridInfoCache || StringUtils.isBlank(gridInfoCache.getGridNamePath()) ? StrConstant.EPMETY_STR : gridInfoCache.getGridNamePath());
}
return infoCache;
}
}

24
epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/IcBuildingDao.xml

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.epmet.dataaggre.dao.govorg.IcBuildingDao">
<select id="selectBuildInfo" parameterType="java.lang.String" resultType="com.epmet.commons.tools.redis.common.bean.BuildingInfoCache">
SELECT
ib.id as buildingId,
ib.BUILDING_NAME as buildingName,
ib.NEIGHBOR_HOOD_ID as neighborHoodId,
ih.NEIGHBOR_HOOD_NAME as neighborHoodName,
ih.GRID_ID as gridId,
ih.AGENCY_ID as agencyId
FROM
ic_building ib
INNER JOIN ic_neighbor_hood ih ON ( ib.NEIGHBOR_HOOD_ID = ih.id )
WHERE
ib.id = #{buildingId}
AND ib.DEL_FLAG = '0'
AND ih.DEL_FLAG = '0'
</select>
</mapper>

27
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcUserWarnNoticeFormDTO.java

@ -0,0 +1,27 @@
package com.epmet.dto.form;
import com.epmet.commons.tools.dto.form.PageFormDTO;
import com.epmet.commons.tools.validator.group.AddGroup;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/**
* 人员预警通知入参
*/
@Data
public class IcUserWarnNoticeFormDTO implements Serializable {
/**
*
*/
@NotBlank(message = "组织id不能为空",groups = AddGroup.class)
private String agencyId;
/**
*
*/
@NotBlank(message = "客户id不能为空",groups = AddGroup.class)
private String customerId;
}

4
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/IcStatsResiWarnBuildingResultDTO.java

@ -84,6 +84,10 @@ public class IcStatsResiWarnBuildingResultDTO implements Serializable {
* 房屋显示分类图标
*/
private String houseShowIcon;
/**
* 当前类别符合预警的共多少栋楼
*/
private Integer count;
private List<String> buildingIdList1;

23
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/IcUserWarnNoticeResultDTO.java

@ -0,0 +1,23 @@
package com.epmet.dto.result;
import lombok.Data;
import java.io.Serializable;
/**
* 人员预警通知返参
*/
@Data
public class IcUserWarnNoticeResultDTO implements Serializable {
/**
* 预警配置id
*/
private String configId;
/**
* 预警内容南宁路社区第二网格亿联小区2号楼失业人员超出预警
*/
private String noticeContent;
// @JsonIgnore
private String buildingId;
}

15
epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StatsResiWarnController.java

@ -21,11 +21,14 @@ import com.epmet.commons.tools.annotation.LoginUser;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.commons.tools.validator.group.AddGroup;
import com.epmet.dto.form.IcUserWarnNoticeFormDTO;
import com.epmet.dto.form.StatsResiListFormDTO;
import com.epmet.dto.form.StatsResiWarnCountFormDTO;
import com.epmet.dto.form.StatsResiWarnFormDTO;
import com.epmet.dto.result.IcStatsResiResultDTO;
import com.epmet.dto.result.IcStatsResiWarnBuildingResultDTO;
import com.epmet.dto.result.IcUserWarnNoticeResultDTO;
import com.epmet.service.IcStatsResiWarnService;
import com.epmet.service.StatsResiWarnService;
import org.springframework.beans.factory.annotation.Autowired;
@ -128,4 +131,16 @@ public class StatsResiWarnController {
return new Result();
}
/**
* 人员预警通知列表
* @param tokenDto
* @param formDTO
* @return
*/
@PostMapping("queryuserwarnnotice")
public Result<List<IcUserWarnNoticeResultDTO>> queryUserWarnNotice(@LoginUser TokenDto tokenDto,@RequestBody IcUserWarnNoticeFormDTO formDTO){
formDTO.setCustomerId(tokenDto.getCustomerId());
ValidatorUtils.validateEntity(formDTO, AddGroup.class);
return new Result<List<IcUserWarnNoticeResultDTO>>().ok(statsResiWarnService.queryUserWarnNotice(formDTO));
}
}

11
epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcStatsResiWarnDao.java

@ -19,6 +19,7 @@ package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.PersonWarnLeftPieDTO;
import com.epmet.dto.result.IcUserWarnNoticeResultDTO;
import com.epmet.dto.result.UserWarnNameListResultDTO;
import com.epmet.entity.IcStatsResiWarnEntity;
import org.apache.ibatis.annotations.Mapper;
@ -76,4 +77,14 @@ public interface IcStatsResiWarnDao extends BaseDao<IcStatsResiWarnEntity> {
List<Map<String,String>> selectCategoryCountByColumn(@Param("columnNames") List<String> columnNames,@Param("agencyId")String agencyId);
/**
* 获取预警楼栋列表
* @param customerId
* @param agencyId
* @param configIds
* @return
*/
List<IcUserWarnNoticeResultDTO> queryUserWarnNotice(@Param("customerId") String customerId,
@Param("agencyId") String agencyId,
@Param("configIds") List<String> configIds);
}

9
epmet-user/epmet-user-server/src/main/java/com/epmet/service/StatsResiWarnService.java

@ -17,9 +17,11 @@
package com.epmet.service;
import com.epmet.dto.form.IcUserWarnNoticeFormDTO;
import com.epmet.dto.form.StatsResiListFormDTO;
import com.epmet.dto.result.IcStatsResiResultDTO;
import com.epmet.dto.result.IcStatsResiWarnBuildingResultDTO;
import com.epmet.dto.result.IcUserWarnNoticeResultDTO;
import java.util.List;
import java.util.Map;
@ -58,4 +60,11 @@ public interface StatsResiWarnService{
void resiWarn(String customerId);
void resiWarnByOne(String customerId,String userId);
/**
* 人员预警通知列表
* @param formDTO
* @return
*/
List<IcUserWarnNoticeResultDTO> queryUserWarnNotice(IcUserWarnNoticeFormDTO formDTO);
}

40
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StatsResiWarnServiceImpl.java

@ -3,7 +3,10 @@ package com.epmet.service.impl;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.constant.StrConstant;
import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.redis.common.CustomerIcHouseRedis;
import com.epmet.commons.tools.redis.common.bean.BuildingInfoCache;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dao.IcResiUserDao;
@ -11,6 +14,7 @@ import com.epmet.dao.IcStatsResiWarnDao;
import com.epmet.dto.IcResiCategoryStatsConfigDTO;
import com.epmet.dto.IcResiCategoryWarnConfigDTO;
import com.epmet.dto.form.IcResiCategoryStatsConfigFormDTO;
import com.epmet.dto.form.IcUserWarnNoticeFormDTO;
import com.epmet.dto.form.StatsResiListFormDTO;
import com.epmet.dto.result.*;
import com.epmet.entity.IcResiUserEntity;
@ -21,6 +25,7 @@ import com.epmet.service.IcStatsResiWarnService;
import com.epmet.service.StatsResiWarnService;
import com.github.pagehelper.PageHelper;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -338,5 +343,40 @@ public class StatsResiWarnServiceImpl implements StatsResiWarnService {
}
}
/**
* 人员预警通知列表
*
* @param formDTO
* @return
*/
@Override
public List<IcUserWarnNoticeResultDTO> queryUserWarnNotice(IcUserWarnNoticeFormDTO formDTO) {
//1、feign查询是否有配置的预警分类
Result<List<IcResiCategoryWarnConfigDTO>> warnResult = operCustomizeOpenFeignClient.resiCategoryWarnList(formDTO.getCustomerId());
if (!warnResult.success()) {
throw new RenException("预警配置查询失败:" + warnResult.getMsg());
}
if (CollectionUtils.isEmpty(warnResult.getData())) {
return new ArrayList<>();
}
//2、符合条件的楼栋
Map<String, String> configMap = warnResult.getData().stream().collect(Collectors.toMap(IcResiCategoryWarnConfigDTO::getId, IcResiCategoryWarnConfigDTO::getLabel));
List<String> configIds = warnResult.getData().stream().map(m -> m.getId()).collect(Collectors.toList());
List<IcUserWarnNoticeResultDTO> list = icStatsResiWarnDao.queryUserWarnNotice(formDTO.getCustomerId(), formDTO.getAgencyId(), configIds);
List<IcUserWarnNoticeResultDTO> resList = new ArrayList<>();
for (IcUserWarnNoticeResultDTO dto : list) {
//南宁路社区第二网格亿联小区2号楼失业人员超出预警!
BuildingInfoCache infoCache = CustomerIcHouseRedis.getBuildingInfo(dto.getBuildingId());
if (null == infoCache) {
log.error(String.format("获取楼栋信息为null,buildingId=%s", dto.getBuildingId()));
continue;
}
String categoryName = StringUtils.isBlank(configMap.get(dto.getConfigId())) ? StrConstant.EPMETY_STR : configMap.get(dto.getConfigId());
dto.setNoticeContent(String.format("%s%s%s%s超出预警!", infoCache.getGridName(), infoCache.getNeighborHoodName(), infoCache.getBuildingName(), categoryName));
resList.add(dto);
}
return resList;
}
}

16
epmet-user/epmet-user-server/src/main/resources/mapper/IcStatsResiWarnDao.xml

@ -184,4 +184,20 @@
AND CONCAT(PIDS,':',AGENCY_ID) LIKE CONCAT('%',#{agencyId},'%')
</select>
<select id="queryUserWarnNotice" parameterType="map" resultType="com.epmet.dto.result.IcUserWarnNoticeResultDTO">
SELECT
ir.BUILDING_ID,
ir.CONFIG_ID
FROM
ic_stats_resi_warn ir
WHERE
ir.CUSTOMER_ID = #{customerId}
AND (ir.AGENCY_ID=#{agencyId} or ir.AGENCY_PIDS like concat('%',#{agencyId},'%'))
AND ir.DEL_FLAG = '0'
AND (
<foreach collection="configIds" item="configId" separator=" OR ">
ir.CONFIG_ID = #{configId}
</foreach>
)
</select>
</mapper>
Loading…
Cancel
Save