|
|
@ -8,11 +8,13 @@ import com.epmet.commons.tools.constant.NumConstant; |
|
|
|
import com.epmet.commons.tools.constant.StrConstant; |
|
|
|
import com.epmet.commons.tools.dto.form.PageFormDTO; |
|
|
|
import com.epmet.commons.tools.dto.result.YtDataSyncResDTO; |
|
|
|
import com.epmet.commons.tools.dto.result.YtHscyResDTO; |
|
|
|
import com.epmet.commons.tools.dto.result.YtHsjcResDTO; |
|
|
|
import com.epmet.commons.tools.enums.GenderEnum; |
|
|
|
import com.epmet.commons.tools.exception.EpmetException; |
|
|
|
import com.epmet.commons.tools.page.PageData; |
|
|
|
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.GridInfoCache; |
|
|
|
import com.epmet.commons.tools.security.dto.TokenDto; |
|
|
@ -178,58 +180,66 @@ public class DataSyncConfigServiceImpl extends BaseServiceImpl<DataSyncConfigDao |
|
|
|
return; |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
//TODO 根据dataCode 调用不同的方法 抽取数据
|
|
|
|
if (CollectionUtils.isEmpty(allConfigList)) { |
|
|
|
log.warn("dataSyncForYanTaiTask don't have any resi data to pull data form YanTai interface"); |
|
|
|
return; |
|
|
|
} |
|
|
|
for (DataSyncConfigDTO config : allConfigList) { |
|
|
|
|
|
|
|
//没有配置 数据拉取范围 继续下次循环
|
|
|
|
if (CollectionUtils.isEmpty(config.getScopeList())) { |
|
|
|
continue; |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
//没传具体参数 则 按照
|
|
|
|
int pageNo = NumConstant.ONE; |
|
|
|
int pageSize = 1;//todo fangkaita NumConstant.ONE_THOUSAND;
|
|
|
|
//ToDo 去掉
|
|
|
|
formDTO.setIdCards(Collections.singletonList("370283199912010302")); |
|
|
|
List<NatUserInfoResultDTO> dbResiList = null; |
|
|
|
//设置查询数据范围
|
|
|
|
formDTO.setOrgList(config.getScopeList()); |
|
|
|
DataSyncEnum anEnum = DataSyncEnum.getEnum(config.getDataCode()); |
|
|
|
|
|
|
|
do { |
|
|
|
switch (anEnum) { |
|
|
|
case HE_SUAN: |
|
|
|
//查询正常状态的居民
|
|
|
|
dbResiList = getNatUserInfoFromDb(formDTO, pageNo, pageSize); |
|
|
|
if (CollectionUtils.isEmpty(dbResiList)) { |
|
|
|
break; |
|
|
|
} |
|
|
|
hsjc(dbResiList, config.getCustomerId()); |
|
|
|
break; |
|
|
|
case CAN_JI: |
|
|
|
//查询正常状态的居民 并回显 残疾状态
|
|
|
|
formDTO.setCategoryColumn("IS_CJ"); |
|
|
|
dbResiList = getNatUserInfoFromDb(formDTO, pageNo, pageSize); |
|
|
|
canJi(dbResiList); |
|
|
|
break; |
|
|
|
case SI_WANG: |
|
|
|
//查询正常状态的居民
|
|
|
|
dbResiList = getNatUserInfoFromDb(formDTO, pageNo, pageSize); |
|
|
|
siWang(dbResiList); |
|
|
|
break; |
|
|
|
default: |
|
|
|
log.warn("没有要处理的数据"); |
|
|
|
if (StringUtils.isNotBlank(formDTO.getDataCode())){ |
|
|
|
allConfigList.forEach(c -> { |
|
|
|
if (c.getDataCode().equals(formDTO.getDataCode())){ |
|
|
|
disAllData(c,formDTO); |
|
|
|
return; |
|
|
|
} |
|
|
|
pageNo++; |
|
|
|
} while (false);//todo fangkaita(dbResiList != null && dbResiList.size() == pageSize);
|
|
|
|
}); |
|
|
|
}else { |
|
|
|
for (DataSyncConfigDTO config : allConfigList) { |
|
|
|
//没有配置 数据拉取范围 继续下次循环
|
|
|
|
if (CollectionUtils.isEmpty(config.getScopeList())) { |
|
|
|
continue; |
|
|
|
} |
|
|
|
disAllData(config,formDTO); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
private void disAllData(DataSyncConfigDTO config,DataSyncTaskParam formDTO){ |
|
|
|
//没传具体参数 则 按照
|
|
|
|
int pageNo = NumConstant.ONE; |
|
|
|
int pageSize = 1;//todo fangkaita NumConstant.ONE_THOUSAND;
|
|
|
|
//ToDo 去掉
|
|
|
|
formDTO.setIdCards(Collections.singletonList("370283199912010302")); |
|
|
|
List<NatUserInfoResultDTO> dbResiList = null; |
|
|
|
//设置查询数据范围
|
|
|
|
formDTO.setOrgList(config.getScopeList()); |
|
|
|
DataSyncEnum anEnum = DataSyncEnum.getEnum(config.getDataCode()); |
|
|
|
|
|
|
|
do { |
|
|
|
switch (anEnum) { |
|
|
|
case HE_SUAN: |
|
|
|
//查询正常状态的居民
|
|
|
|
dbResiList = getNatUserInfoFromDb(formDTO, pageNo, pageSize); |
|
|
|
if (CollectionUtils.isEmpty(dbResiList)) { |
|
|
|
break; |
|
|
|
} |
|
|
|
hsjc(dbResiList, config.getCustomerId()); |
|
|
|
break; |
|
|
|
case CAN_JI: |
|
|
|
//查询正常状态的居民 并回显 残疾状态
|
|
|
|
formDTO.setCategoryColumn("IS_CJ"); |
|
|
|
dbResiList = getNatUserInfoFromDb(formDTO, pageNo, pageSize); |
|
|
|
canJi(dbResiList); |
|
|
|
break; |
|
|
|
case SI_WANG: |
|
|
|
//查询正常状态的居民
|
|
|
|
dbResiList = getNatUserInfoFromDb(formDTO, pageNo, pageSize); |
|
|
|
siWang(dbResiList); |
|
|
|
break; |
|
|
|
default: |
|
|
|
log.warn("没有要处理的数据"); |
|
|
|
} |
|
|
|
pageNo++; |
|
|
|
} while (false);//todo fangkaita(dbResiList != null && dbResiList.size() == pageSize);
|
|
|
|
} |
|
|
|
|
|
|
|
private void siWang(List<NatUserInfoResultDTO> dbResiList) { |
|
|
@ -446,8 +456,9 @@ public class DataSyncConfigServiceImpl extends BaseServiceImpl<DataSyncConfigDao |
|
|
|
try { |
|
|
|
List<IcNatEntity> entities = new ArrayList<>(); |
|
|
|
idCards.forEach(idCard -> { |
|
|
|
YtHscyResDTO sampleResult = YtHsResUtils.hscy(idCard.getIdCard(), NumConstant.ONE, NumConstant.ONE); |
|
|
|
YtHsjcResDTO natInfoResult = YtHsResUtils.hsjc(idCard.getIdCard(), NumConstant.ONE, NumConstant.ONE); |
|
|
|
if (CollectionUtils.isNotEmpty(natInfoResult.getData())) { |
|
|
|
if ((CollectionUtils.isEmpty(sampleResult.getData()) && CollectionUtils.isNotEmpty(natInfoResult.getData())) || (CollectionUtils.isNotEmpty(sampleResult.getData()) && CollectionUtils.isNotEmpty(natInfoResult.getData()))) { |
|
|
|
natInfoResult.getData().forEach(natInfo -> { |
|
|
|
IcNatEntity e = new IcNatEntity(); |
|
|
|
e.setCustomerId(customerId); |
|
|
@ -458,6 +469,7 @@ public class DataSyncConfigServiceImpl extends BaseServiceImpl<DataSyncConfigDao |
|
|
|
e.setMobile(StringUtils.isNotBlank(natInfo.getTelephone()) ? natInfo.getTelephone() : ""); |
|
|
|
e.setIdCard(StringUtils.isNotBlank(natInfo.getCard_no()) ? natInfo.getCard_no() : ""); |
|
|
|
e.setNatTime(DateUtils.parseDate(natInfo.getTest_time(), DateUtils.DATE_TIME_PATTERN)); |
|
|
|
e.setSampleTime(DateUtils.parseDate(natInfo.getSample_time(), DateUtils.DATE_TIME_PATTERN)); |
|
|
|
String resultPcr = natInfo.getSample_result_pcr(); |
|
|
|
//检测结果 转换 我们 0:阴性 1:阳性, 他们 :1:阳性,2:阴性
|
|
|
|
e.setNatResult(NumConstant.ZERO_STR); |
|
|
|