|
@@ -101,8 +101,10 @@ public class RshyJkManagerImpl implements RshyJkManager {
|
|
AtomicReference<RshyVo> quickRshyVo = new AtomicReference<>(new RshyVo());
|
|
AtomicReference<RshyVo> quickRshyVo = new AtomicReference<>(new RshyVo());
|
|
List<Runnable> taskList = new ArrayList<Runnable>() {
|
|
List<Runnable> taskList = new ArrayList<Runnable>() {
|
|
{
|
|
{
|
|
|
|
+ add(() -> resultDTO.setPctsfzResult(itfwServer.getPctsfz(rshyParam.getSfzh(), rshyParam.getTimeout())));
|
|
add(() -> resultDTO.setPctymDataDTOS(itfwServer.getPctym(rshyParam.getSfzh(), rshyParam.getTimeout())));
|
|
add(() -> resultDTO.setPctymDataDTOS(itfwServer.getPctym(rshyParam.getSfzh(), rshyParam.getTimeout())));
|
|
add(() -> resultDTO.setPcthsResultDTO(itfwServer.getPcths(rshyParam.getSfzh(), rshyParam.getTimeout())));
|
|
add(() -> resultDTO.setPcthsResultDTO(itfwServer.getPcths(rshyParam.getSfzh(), rshyParam.getTimeout())));
|
|
|
|
+ add(() -> resultDTO.setPctxcmResultDTO(itfwServer.getPctxcm(rshyParam.getSfzh(), rshyParam.getTimeout())));
|
|
if (StrUtil.isBlank(rshyParam.getXm())) { // 刷健康码或者手动输入身份证号码,获取证件照片
|
|
if (StrUtil.isBlank(rshyParam.getXm())) { // 刷健康码或者手动输入身份证号码,获取证件照片
|
|
add(() -> resultDTO.setPctzjzpResultDTO(itfwServer.getPctzjzp(rshyParam.getSfzh(), rshyParam.getTimeout())));
|
|
add(() -> resultDTO.setPctzjzpResultDTO(itfwServer.getPctzjzp(rshyParam.getSfzh(), rshyParam.getTimeout())));
|
|
}
|
|
}
|
|
@@ -145,8 +147,8 @@ public class RshyJkManagerImpl implements RshyJkManager {
|
|
|
|
|
|
//核酸报告
|
|
//核酸报告
|
|
rshyVo.setNucleic_acid(nucleicAcid(resultDTO.getPcthsResultDTO()));
|
|
rshyVo.setNucleic_acid(nucleicAcid(resultDTO.getPcthsResultDTO()));
|
|
- //行程卡(暂时没接口,默认0)
|
|
|
|
- rshyVo.setTravel_card(0);
|
|
|
|
|
|
+ //行程卡
|
|
|
|
+ rshyVo.setTravel_card(resultDTO.getPctxcmResultDTO() != null && resultDTO.getPctxcmResultDTO().getData() != null && resultDTO.getPctxcmResultDTO().getData().getResult().size() > 0 ? 1 : 0);
|
|
//性别 从身份证号码中获取
|
|
//性别 从身份证号码中获取
|
|
rshyVo.setXb(SexEnum.codeOf(IdcardUtil.getGenderByIdCard(rshyVo.getSfzh())).getDesc());
|
|
rshyVo.setXb(SexEnum.codeOf(IdcardUtil.getGenderByIdCard(rshyVo.getSfzh())).getDesc());
|
|
//出生日期 从身份证号码中获取
|
|
//出生日期 从身份证号码中获取
|
|
@@ -154,9 +156,10 @@ public class RshyJkManagerImpl implements RshyJkManager {
|
|
rshyVo.setBirthday(DateUtil.format(date, "yyyy-M-d"));
|
|
rshyVo.setBirthday(DateUtil.format(date, "yyyy-M-d"));
|
|
//不是刷身份证,取地址
|
|
//不是刷身份证,取地址
|
|
if (StrUtil.isBlank(rshyParam.getXm())) {
|
|
if (StrUtil.isBlank(rshyParam.getXm())) {
|
|
- if (rshyVo.getVaccine() != 0) {
|
|
|
|
- //有疫苗信息,从接种疫苗信息里取地址
|
|
|
|
- rshyVo.setAddress(resultDTO.getPctymDataDTOS().get(rshyVo.getVaccine() - 1).getResidentialAddress());
|
|
|
|
|
|
+ if (resultDTO.getPctsfzResult() != null) {
|
|
|
|
+ //有警察叔叔身份证接口返回数据,取地址
|
|
|
|
+ rshyVo.setAddress(resultDTO.getPctsfzResult().getCZRKZZ());
|
|
|
|
+ rshyVo.setMz(resultDTO.getPctsfzResult().getCZRKMZ());
|
|
} else {
|
|
} else {
|
|
//户籍省份 从身份证号码中获取
|
|
//户籍省份 从身份证号码中获取
|
|
rshyVo.setAddress(IdcardUtil.getProvinceByIdCard(rshyVo.getSfzh()));
|
|
rshyVo.setAddress(IdcardUtil.getProvinceByIdCard(rshyVo.getSfzh()));
|
|
@@ -166,9 +169,10 @@ public class RshyJkManagerImpl implements RshyJkManager {
|
|
String hcjg = resultDTO.getPctrchlDTO() == null ? "" : resultDTO.getPctrchlDTO().getHcjg();
|
|
String hcjg = resultDTO.getPctrchlDTO() == null ? "" : resultDTO.getPctrchlDTO().getHcjg();
|
|
|
|
|
|
|
|
|
|
- if (rshyVo.getNucleic_acid().getStatus() == 0) {
|
|
|
|
- rshyVo.setPassStatus(PassStatusEnum.NON_CONFORMANCE).setKind(PassStatusEnum.NON_CONFORMANCE.getDesc()).setWarning(PassStatusEnum.NON_CONFORMANCE.getDesc());
|
|
|
|
- } else if (PassStatusEnum.RED_CODE.getDesc().equalsIgnoreCase(jkmInfo.getColor_code_label())) {
|
|
|
|
|
|
+// if (rshyVo.getNucleic_acid().getStatus() == 0) {
|
|
|
|
+// rshyVo.setPassStatus(PassStatusEnum.NON_CONFORMANCE).setKind(PassStatusEnum.NON_CONFORMANCE.getDesc()).setWarning(PassStatusEnum.NON_CONFORMANCE.getDesc());
|
|
|
|
+// } else
|
|
|
|
+ if (PassStatusEnum.RED_CODE.getDesc().equalsIgnoreCase(jkmInfo.getColor_code_label())) {
|
|
//红码
|
|
//红码
|
|
rshyVo.setPass(PassStatusEnum.RED_CODE.getCode()).setTts(PassStatusEnum.RED_CODE.getTts()).setDisplayMsg(PassStatusEnum.RED_CODE.getDesc()).setWarning(PassStatusEnum.RED_CODE.getDesc()).setKind("健康码" + PassStatusEnum.RED_CODE.getDesc());
|
|
rshyVo.setPass(PassStatusEnum.RED_CODE.getCode()).setTts(PassStatusEnum.RED_CODE.getTts()).setDisplayMsg(PassStatusEnum.RED_CODE.getDesc()).setWarning(PassStatusEnum.RED_CODE.getDesc()).setKind("健康码" + PassStatusEnum.RED_CODE.getDesc());
|
|
} else if (PassStatusEnum.YELLOW_CODE.getDesc().equalsIgnoreCase(jkmInfo.getColor_code_label())) {
|
|
} else if (PassStatusEnum.YELLOW_CODE.getDesc().equalsIgnoreCase(jkmInfo.getColor_code_label())) {
|
|
@@ -218,6 +222,7 @@ public class RshyJkManagerImpl implements RshyJkManager {
|
|
|
|
|
|
if (pcthsResultDTO.getYU_CJSJ() != null) {
|
|
if (pcthsResultDTO.getYU_CJSJ() != null) {
|
|
DateTime parse = DateUtil.date(Long.parseLong(pcthsResultDTO.getYU_CJSJ()) * 1000);
|
|
DateTime parse = DateUtil.date(Long.parseLong(pcthsResultDTO.getYU_CJSJ()) * 1000);
|
|
|
|
+ log.info("最近一次核酸采样时间: {}", parse.toString());
|
|
long betweenMs = DateUtil.betweenMs(parse, DateUtil.date());
|
|
long betweenMs = DateUtil.betweenMs(parse, DateUtil.date());
|
|
//72h防疫规则
|
|
//72h防疫规则
|
|
if (betweenMs > 72 * 60 * 60 * 1000) {
|
|
if (betweenMs > 72 * 60 * 60 * 1000) {
|