|
@ -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.ConvertUtils; |
|
|
import com.epmet.commons.tools.utils.DateUtils; |
|
|
import com.epmet.commons.tools.utils.DateUtils; |
|
|
import com.epmet.commons.tools.utils.YtHsResUtils; |
|
|
import com.epmet.commons.tools.utils.YtHsResUtils; |
|
|
|
|
|
import com.epmet.constant.EpidemicConstant; |
|
|
import com.epmet.dao.DataSyncConfigDao; |
|
|
import com.epmet.dao.DataSyncConfigDao; |
|
|
import com.epmet.dao.IcNatDao; |
|
|
import com.epmet.dao.IcNatDao; |
|
|
import com.epmet.dto.DataSyncConfigDTO; |
|
|
import com.epmet.dto.DataSyncConfigDTO; |
|
@ -134,7 +135,7 @@ public class DataSyncConfigServiceImpl extends BaseServiceImpl<DataSyncConfigDao |
|
|
public PageData list(TokenDto tokenDto, PageFormDTO formDTO) { |
|
|
public PageData list(TokenDto tokenDto, PageFormDTO formDTO) { |
|
|
PageData<DataSyncConfigDTO> result = new PageData<>(new ArrayList<>(), NumConstant.ZERO_L); |
|
|
PageData<DataSyncConfigDTO> result = new PageData<>(new ArrayList<>(), NumConstant.ZERO_L); |
|
|
PageInfo<DataSyncConfigDTO> pageInfo = PageHelper.startPage(formDTO.getPageNo(), formDTO.getPageSize()) |
|
|
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())) { |
|
|
if (CollectionUtils.isNotEmpty(pageInfo.getList())) { |
|
|
result.setList(pageInfo.getList()); |
|
|
result.setList(pageInfo.getList()); |
|
|
result.setTotal(Integer.parseInt(String.valueOf(pageInfo.getTotal()))); |
|
|
result.setTotal(Integer.parseInt(String.valueOf(pageInfo.getTotal()))); |
|
@ -189,7 +190,7 @@ public class DataSyncConfigServiceImpl extends BaseServiceImpl<DataSyncConfigDao |
|
|
*/ |
|
|
*/ |
|
|
@Override |
|
|
@Override |
|
|
public void dataSyncForYanTaiTask(DataSyncTaskParam formDTO) { |
|
|
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)) { |
|
|
if (CollectionUtils.isEmpty(allConfigList)) { |
|
|
return; |
|
|
return; |
|
|
} |
|
|
} |
|
@ -233,7 +234,43 @@ public class DataSyncConfigServiceImpl extends BaseServiceImpl<DataSyncConfigDao |
|
|
*/ |
|
|
*/ |
|
|
@Override |
|
|
@Override |
|
|
public void deathInfoScanTask(DataSyncTaskParam formDTO) { |
|
|
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 |
|
|
@Override |
|
|
public void disabilityInfoScanTask(DataSyncTaskParam formDTO) { |
|
|
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) { |
|
|
private void dataSyncYanTaiParallel(List<DataSyncConfigDTO> configList, DataSyncTaskParam formDTO) { |
|
|