|
@@ -24,6 +24,7 @@ import thyyxxk.webserver.utils.*;
|
|
|
|
|
|
import java.util.Date;
|
|
|
import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
|
|
|
/**
|
|
|
* @description: 住院医保交易
|
|
@@ -96,21 +97,18 @@ public class SiZyService {
|
|
|
MdtrtCertType mdtrtCertType = MdtrtCertType.getByLabel(p.getMdtrtCertType());
|
|
|
admMdtrtinfo.setMdtrtCertType(mdtrtCertType.getCode());
|
|
|
if (mdtrtCertType == MdtrtCertType.SOCIAL_SECURITY_CARD) {
|
|
|
- String[] out = p.getReadCardResult().split("\\|");
|
|
|
+ String[] out = p.getReadCardResult().toString().split("\\|");
|
|
|
if (!p.getName().trim().equals(out[4].trim())) {
|
|
|
- revokeDischarge(p);
|
|
|
return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "社保卡姓名与HIS姓名不一致,请确认是否人证相符。");
|
|
|
}
|
|
|
admMdtrtinfo.setMdtrtCertNo(out[2]);
|
|
|
admMdtrtinfo.setCardSn(out[3]);
|
|
|
} else if (mdtrtCertType == MdtrtCertType.MEDICAL_INSURANCE_ELECTRONIC_VOUCHER) {
|
|
|
- JSONObject qrinfo = JSONObject.parseObject(p.getReadCardResult());
|
|
|
+ JSONObject qrinfo = new JSONObject(FilterUtil.cast(p.getReadCardResult()));
|
|
|
if (!p.getName().trim().equals(qrinfo.getString("userName").trim())) {
|
|
|
- revokeDischarge(p);
|
|
|
return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "电子医保凭证姓名与HIS姓名不一致,请确认是否人证相符。");
|
|
|
}
|
|
|
if (!p.getSocialNo().trim().equals(qrinfo.getString("idNo").trim())) {
|
|
|
- revokeDischarge(p);
|
|
|
return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "电子医保凭证身份证与HIS身份证不一致,请确认是否人证相符。");
|
|
|
}
|
|
|
admMdtrtinfo.setMdtrtCertNo(qrinfo.getString("ecToken"));
|
|
@@ -404,7 +402,7 @@ public class SiZyService {
|
|
|
MdtrtCertType mdtrtCertType = MdtrtCertType.getByLabel(p.getMdtrtCertType());
|
|
|
preSetlmt.setMdtrtCertType(mdtrtCertType.getCode());
|
|
|
if (mdtrtCertType == MdtrtCertType.SOCIAL_SECURITY_CARD) {
|
|
|
- String[] out = p.getReadCardResult().split("\\|");
|
|
|
+ String[] out = p.getReadCardResult().toString().split("\\|");
|
|
|
if (!p.getName().trim().equals(out[4].trim())) {
|
|
|
revokeDischarge(p);
|
|
|
return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "社保卡姓名与HIS姓名不一致,请确认是否人证相符。");
|
|
@@ -412,7 +410,7 @@ public class SiZyService {
|
|
|
preSetlmt.setMdtrtCertNo(out[2]);
|
|
|
preSetlmt.setCardSn(out[3]);
|
|
|
} else if (mdtrtCertType == MdtrtCertType.MEDICAL_INSURANCE_ELECTRONIC_VOUCHER) {
|
|
|
- JSONObject qrinfo = JSONObject.parseObject(p.getReadCardResult());
|
|
|
+ JSONObject qrinfo = JSONObject.parseObject(p.getReadCardResult().toString());
|
|
|
if (!p.getName().trim().equals(qrinfo.getString("userName").trim())) {
|
|
|
revokeDischarge(p);
|
|
|
return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "电子医保凭证姓名与HIS姓名不一致,请确认是否人证相符。");
|