Browse Source

暂提一波

master
zxc 3 years ago
parent
commit
5c3aad5f2c
  1. 11
      epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java
  2. 15
      epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java
  3. 15
      epmet-user/epmet-user-server/src/main/java/com/epmet/constant/EpidemicConstant.java
  4. 26
      epmet-user/epmet-user-server/src/main/java/com/epmet/controller/DataSyncConfigController.java
  5. 4
      epmet-user/epmet-user-server/src/main/java/com/epmet/dao/DataSyncConfigDao.java
  6. 20
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/DataSyncConfigService.java
  7. 152
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/DataSyncConfigServiceImpl.java
  8. 11
      epmet-user/epmet-user-server/src/main/resources/mapper/DataSyncConfigDao.xml

11
epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java

@ -922,7 +922,7 @@ public interface EpmetUserOpenFeignClient {
@PostMapping("/epmetuser/userbaseinfo/dingResiLogin")
Result<DingLoginResiResDTO> dingResiLogin(@RequestBody DingLoginResiFormDTO formDTO);
@PostMapping("/epmetuser/dataSyncConfig/natInfoScanTask")
@PostMapping("/epmetuser/dataSyncConfig/dataSyncForYanTaiTask")
Result natInfoScanTask(@RequestBody DataSyncTaskParam formDTO);
/**
@ -943,4 +943,13 @@ public interface EpmetUserOpenFeignClient {
*/
@PostMapping("/epmetuser/registerrelation/getAllResiByGrid")
Result<Integer> getAllResiByGrid(@RequestBody AllResiByGridFormDTO formDTO);
@PostMapping("/epmetuser/dataSyncConfig/natInfoScanTask")
Result natInfoScanTaskV2(@RequestBody DataSyncTaskParam formDTO);
@PostMapping("/epmetuser/dataSyncConfig/deathInfoScanTask")
Result deathInfoScanTask(@RequestBody DataSyncTaskParam formDTO);
@PostMapping("/epmetuser/dataSyncConfig/disabilityInfoScanTask")
Result disabilityInfoScanTask(@RequestBody DataSyncTaskParam formDTO);
}

15
epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java

@ -726,4 +726,19 @@ public class EpmetUserOpenFeignClientFallback implements EpmetUserOpenFeignClien
public Result<Integer> getAllResiByGrid(AllResiByGridFormDTO formDTO) {
return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "getAllResiByGrid", formDTO);
}
@Override
public Result natInfoScanTaskV2(DataSyncTaskParam formDTO) {
return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "natInfoScanTaskV2", formDTO);
}
@Override
public Result deathInfoScanTask(DataSyncTaskParam formDTO) {
return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "deathInfoScanTask", formDTO);
}
@Override
public Result disabilityInfoScanTask(DataSyncTaskParam formDTO) {
return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "disabilityInfoScanTask", formDTO);
}
}

15
epmet-user/epmet-user-server/src/main/java/com/epmet/constant/EpidemicConstant.java

@ -0,0 +1,15 @@
package com.epmet.constant;
public interface EpidemicConstant {
/**
* 数据配置的dataCode
* 核酸检测
* 残疾人
* 死亡
*/
String DATA_CODE_NAT = "hesuan";
String DATA_CODE_DISABILITY = "canji";
String DATA_CODE_DEATH = "siwang";
}

26
epmet-user/epmet-user-server/src/main/java/com/epmet/controller/DataSyncConfigController.java

@ -106,18 +106,42 @@ public class DataSyncConfigController {
return new Result();
}
@PostMapping("dataSyncForYanTaiTask")
public Result dataSyncForYanTaiTask(@RequestBody DataSyncTaskParam formDTO){
dataSyncConfigService.dataSyncForYanTaiTask(formDTO);
return new Result();
}
/**
* @Description 核酸检测信息定时拉取
* @param formDTO
* @Author zxc
* @Date 2022/11/8 10:37
*/
@PostMapping("natInfoScanTask")
public Result natInfoScanTask(@RequestBody DataSyncTaskParam formDTO){
dataSyncConfigService.dataSyncForYanTaiTask(formDTO);
dataSyncConfigService.natInfoScanTask(formDTO);
return new Result();
}
/**
* @Description 死亡信息定时拉取
* @param formDTO
* @Author zxc
* @Date 2022/11/8 09:01
*/
@PostMapping("deathInfoScanTask")
public Result deathInfoScanTask(@RequestBody DataSyncTaskParam formDTO){
dataSyncConfigService.deathInfoScanTask(formDTO);
return new Result();
}
/**
* @Description 残疾信息定时拉取
* @param formDTO
* @Author zxc
* @Date 2022/11/8 09:01
*/
@PostMapping("disabilityInfoScanTask")
public Result disabilityInfoScanTask(@RequestBody DataSyncTaskParam formDTO){
dataSyncConfigService.disabilityInfoScanTask(formDTO);

4
epmet-user/epmet-user-server/src/main/java/com/epmet/dao/DataSyncConfigDao.java

@ -38,7 +38,7 @@ public interface DataSyncConfigDao extends BaseDao<DataSyncConfigEntity> {
* @author zxc
* @date 2022/9/26 15:04
*/
List<DataSyncConfigDTO> list(@Param("customerId") String customerId, @Param("switchStatus") String switchStatus);
List<DataSyncConfigDTO> list(@Param("customerId") String customerId, @Param("switchStatus") String switchStatus, @Param("dataCode")String dataCode);
List<DataSyncScopeDTO> scopeList(@Param("id") String id);
@ -60,4 +60,6 @@ public interface DataSyncConfigDao extends BaseDao<DataSyncConfigEntity> {
*/
List<NatUserInfoResultDTO> getIdCardsByScope(DataSyncTaskParam formDTO);
DataSyncConfigDTO getConfigInfoByType(@Param("customerId") String customerId, @Param("switchStatus") String switchStatus,@Param("dataCode")String dataCode);
}

20
epmet-user/epmet-user-server/src/main/java/com/epmet/service/DataSyncConfigService.java

@ -84,8 +84,28 @@ public interface DataSyncConfigService extends BaseService<DataSyncConfigEntity>
void dataSyncForYanTaiTask(DataSyncTaskParam formDTO);
/**
* @Description 死亡信息定时拉取
* @param formDTO
* @Author zxc
* @Date 2022/11/8 09:01
*/
void deathInfoScanTask(DataSyncTaskParam formDTO);
/**
* @Description 残疾信息定时拉取
* @param formDTO
* @Author zxc
* @Date 2022/11/8 09:01
*/
void disabilityInfoScanTask(DataSyncTaskParam formDTO);
/**
* @Description 核酸检测信息定时拉取
* @param formDTO
* @Author zxc
* @Date 2022/11/8 10:37
*/
void natInfoScanTask(DataSyncTaskParam formDTO);
}

152
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/DataSyncConfigServiceImpl.java

@ -21,6 +21,7 @@ import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.DateUtils;
import com.epmet.commons.tools.utils.YtHsResUtils;
import com.epmet.constant.EpidemicConstant;
import com.epmet.dao.DataSyncConfigDao;
import com.epmet.dao.IcNatDao;
import com.epmet.dto.DataSyncConfigDTO;
@ -134,7 +135,7 @@ public class DataSyncConfigServiceImpl extends BaseServiceImpl<DataSyncConfigDao
public PageData list(TokenDto tokenDto, PageFormDTO formDTO) {
PageData<DataSyncConfigDTO> result = new PageData<>(new ArrayList<>(), NumConstant.ZERO_L);
PageInfo<DataSyncConfigDTO> pageInfo = PageHelper.startPage(formDTO.getPageNo(), formDTO.getPageSize())
.doSelectPageInfo(() -> baseDao.list(tokenDto.getCustomerId(), null));
.doSelectPageInfo(() -> baseDao.list(tokenDto.getCustomerId(), null,null));
if (CollectionUtils.isNotEmpty(pageInfo.getList())) {
result.setList(pageInfo.getList());
result.setTotal(Integer.parseInt(String.valueOf(pageInfo.getTotal())));
@ -189,7 +190,7 @@ public class DataSyncConfigServiceImpl extends BaseServiceImpl<DataSyncConfigDao
*/
@Override
public void dataSyncForYanTaiTask(DataSyncTaskParam formDTO) {
List<DataSyncConfigDTO> allConfigList = baseDao.list(formDTO.getCustomerId(), "open");
List<DataSyncConfigDTO> allConfigList = baseDao.list(formDTO.getCustomerId(), "open",null);
if (CollectionUtils.isEmpty(allConfigList)) {
return;
}
@ -233,7 +234,43 @@ public class DataSyncConfigServiceImpl extends BaseServiceImpl<DataSyncConfigDao
*/
@Override
public void deathInfoScanTask(DataSyncTaskParam formDTO) {
List<DataSyncConfigDTO> configData = getConfigData(null, EpidemicConstant.DATA_CODE_DEATH);
if (CollectionUtils.isEmpty(configData)){
log.warn("deathInfoScanTask not exists config data,customer is "+formDTO.getCustomerId());
return;
}
long count = configData.stream().filter(o -> CollectionUtils.isNotEmpty(o.getScopeList())).count();
if (count < 1) {
log.warn("deathInfoScanTask scopeList is null");
return;
}
int pageNo = NumConstant.ONE;
int pageSize = NumConstant.ONE_THOUSAND;
List<NatUserInfoResultDTO> dbResiList = null;
do {
for (DataSyncConfigDTO config : configData) {
// 设置查询数据范围
formDTO.setOrgList(config.getScopeList());
DataSyncEnum anEnum = DataSyncEnum.getEnum(config.getDataCode());
dbResiList = getNatUserInfoFromDb(formDTO, pageNo, pageSize);
if (CollectionUtils.isEmpty(dbResiList)) {
continue;
}
switch (anEnum) {
case SI_WANG:
try {
//查询正常状态的居民
siWang(dbResiList);
log.info("======siWang信息拉取结束======");
} catch (Exception e) {
log.error("death thread execute exception", e);
}
default:
log.warn("没有要处理的数据");
}
}
pageNo++;
} while (dbResiList != null && dbResiList.size() == pageSize);
}
/**
@ -244,7 +281,116 @@ public class DataSyncConfigServiceImpl extends BaseServiceImpl<DataSyncConfigDao
*/
@Override
public void disabilityInfoScanTask(DataSyncTaskParam formDTO) {
List<DataSyncConfigDTO> configData = getConfigData(null, EpidemicConstant.DATA_CODE_DISABILITY);
if (CollectionUtils.isEmpty(configData)){
log.warn("disabilityInfoScanTask not exists config data,customer is "+formDTO.getCustomerId());
return;
}
long count = configData.stream().filter(o -> CollectionUtils.isNotEmpty(o.getScopeList())).count();
if (count < 1) {
log.warn("disabilityInfoScanTask scopeList is null");
return;
}
int pageNo = NumConstant.ONE;
int pageSize = NumConstant.ONE_THOUSAND;
List<NatUserInfoResultDTO> dbResiList = null;
do {
for (DataSyncConfigDTO config : configData) {
// 设置查询数据范围
formDTO.setOrgList(config.getScopeList());
formDTO.setCategoryColumn("IS_CJ");
DataSyncEnum anEnum = DataSyncEnum.getEnum(config.getDataCode());
dbResiList = getNatUserInfoFromDb(formDTO, pageNo, pageSize);
if (CollectionUtils.isEmpty(dbResiList)) {
continue;
}
switch (anEnum) {
case CAN_JI:
try {
//查询正常状态的居民
canJi(dbResiList);
log.info("======canJi信息拉取结束======");
} catch (Exception e) {
log.error("disability thread execute exception", e);
}
break;
default:
log.warn("没有要处理的数据");
}
}
pageNo++;
} while (dbResiList != null && dbResiList.size() == pageSize);
}
/**
* @Description 核酸检测信息定时拉取
* @param formDTO
* @Author zxc
* @Date 2022/11/8 10:37
*/
@Override
public void natInfoScanTask(DataSyncTaskParam formDTO) {
List<DataSyncConfigDTO> configData = new ArrayList<>();
if (StringUtils.isBlank(formDTO.getAgencyId())){
configData = getConfigData(null, EpidemicConstant.DATA_CODE_DISABILITY);
if (CollectionUtils.isEmpty(configData)){
log.warn("natInfoScanTask not exists config data,customer is "+formDTO.getCustomerId());
return;
}
long count = configData.stream().filter(o -> CollectionUtils.isNotEmpty(o.getScopeList())).count();
if (count < 1) {
log.warn("natInfoScanTask scopeList is null");
return;
}
}
int pageNo = NumConstant.ONE;
int pageSize = NumConstant.ONE_THOUSAND;
List<NatUserInfoResultDTO> dbResiList = null;
do {
if (StringUtils.isBlank(formDTO.getAgencyId())){
for (DataSyncConfigDTO config : configData) {
// 设置查询数据范围
formDTO.setOrgList(config.getScopeList());
DataSyncEnum anEnum = DataSyncEnum.getEnum(config.getDataCode());
dbResiList = getNatUserInfoFromDb(formDTO, pageNo, pageSize);
if (CollectionUtils.isEmpty(dbResiList)) {
continue;
}
switch (anEnum) {
case HE_SUAN:
try {
//查询正常状态的居民
yantaiHsjcByDbView(dbResiList, config.getCustomerId(), formDTO.getIsSync());
log.info("======核酸检测信息拉取结束======");
} catch (Exception e) {
log.error("nat thread execute exception", e);
}
break;
default:
log.warn("没有要处理的数据");
}
}
}else {
dbResiList = getNatUserInfoFromDb(formDTO, pageNo, pageSize);
if (CollectionUtils.isEmpty(dbResiList)){
return;
}
yantaiHsjcByDbView(dbResiList, dbResiList.get(NumConstant.ZERO).getCustomerId(), formDTO.getIsSync());
}
pageNo++;
} while (dbResiList != null && dbResiList.size() == pageSize);
}
/**
* @Description 配置信息查询
* @param customerId
* @param dataCode
* @Author zxc
* @Date 2022/11/8 10:41
*/
public List<DataSyncConfigDTO> getConfigData(String customerId, String dataCode){
List<DataSyncConfigDTO> allConfigList = baseDao.list(customerId, "open",dataCode);
return CollectionUtils.isEmpty(allConfigList) ? new ArrayList<>() : allConfigList;
}
private void dataSyncYanTaiParallel(List<DataSyncConfigDTO> configList, DataSyncTaskParam formDTO) {

11
epmet-user/epmet-user-server/src/main/resources/mapper/DataSyncConfigDao.xml

@ -47,6 +47,9 @@
<if test='null != customerId and customerId != "" '>
AND CUSTOMER_ID = #{customerId}
</if>
<if test="dataCode != null and dataCode != ''">
AND data_code = #{dataCode}
</if>
order by sort
</select>
@ -103,4 +106,12 @@
</choose>
ORDER BY CREATED_TIME
</select>
<select id="getConfigInfoByType" resultType="com.epmet.dto.DataSyncConfigDTO">
select * FROM data_sync_config
WHERE DEL_FLAG = 0
AND switch_status = #{switchStatus}
AND CUSTOMER_ID = #{customerId}
AND data_code = #{dataCode}
</select>
</mapper>

Loading…
Cancel
Save