|
|
@@ -90,10 +90,11 @@ public class PatientController extends AppBaseController {
|
|
|
|
|
|
String idCardNumber = param.getIdCard(); // 替换为要验证的身份证号码
|
|
|
String mobile = param.getMobile();
|
|
|
- if (idCardNumber == null || idCardNumber.trim().isEmpty()) {
|
|
|
- return R.error("身份证号码不合法");
|
|
|
- }
|
|
|
- if (idCardNumber.length() != 18) {
|
|
|
+// if (idCardNumber == null || idCardNumber.trim().isEmpty()) {
|
|
|
+// return R.error("身份证号码不合法");
|
|
|
+// }
|
|
|
+ if (StringUtils.isNotEmpty(idCardNumber)) {
|
|
|
+ if (idCardNumber.length() != 18) {
|
|
|
// //大陆身份证是18位
|
|
|
// if (isIdVerification != 1) {
|
|
|
// return R.error("身份证号码不合法");
|
|
|
@@ -103,21 +104,23 @@ public class PatientController extends AppBaseController {
|
|
|
// R.error("手机号不能为空");
|
|
|
// }
|
|
|
// }
|
|
|
- //暂时仅支持大陆身份证
|
|
|
- return R.error("身份证号码不合法");
|
|
|
- } else {
|
|
|
- String regex = "\\d{17}[0-9Xx]";
|
|
|
- if (!Pattern.matches(regex, idCardNumber)) {
|
|
|
- return R.error("身份证号码不合法");
|
|
|
+ //暂时仅支持大陆身份证
|
|
|
+ return R.error("身份证号码不合法");
|
|
|
+ } else {
|
|
|
+ String regex = "\\d{17}[0-9Xx]";
|
|
|
+ if (!Pattern.matches(regex, idCardNumber)) {
|
|
|
+ return R.error("身份证号码不合法");
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+
|
|
|
if (param.getPatientName().length()<2||param.getPatientName().length()>30||!param.getPatientName().matches("^[\u4e00-\u9fa5]+$")) {
|
|
|
return R.error("就诊人名称不合法");
|
|
|
}
|
|
|
|
|
|
try {
|
|
|
- if (idCardNumber != null) {
|
|
|
+ if (StringUtils.isNotEmpty(idCardNumber)) {
|
|
|
String birthDateString = idCardNumber.substring(6, 14);
|
|
|
LocalDate birthDate = LocalDate.parse(birthDateString, DateTimeFormatter.ofPattern("yyyyMMdd"));
|
|
|
LocalDate currentDate = LocalDate.now();
|
|
|
@@ -158,14 +161,16 @@ public class PatientController extends AppBaseController {
|
|
|
|
|
|
//三方校验
|
|
|
if (isIdVerification!=null&&isIdVerification == 1){
|
|
|
- boolean match = true;
|
|
|
- if (idCardNumber.length() != 18) {
|
|
|
- match = IdCardUtil.isMatchByMobile(storeConfig,param.getPatientName(), mobile);
|
|
|
- } else {
|
|
|
- match = IdCardUtil.isMatchById(storeConfig,param.getPatientName(), param.getIdCard());
|
|
|
- }
|
|
|
- if (!match){
|
|
|
- return R.error("身份证校验错误");
|
|
|
+ if (StringUtils.isNotEmpty(idCardNumber)) {
|
|
|
+ boolean match = true;
|
|
|
+ if (idCardNumber.length() != 18) {
|
|
|
+ match = IdCardUtil.isMatchByMobile(storeConfig,param.getPatientName(), mobile);
|
|
|
+ } else {
|
|
|
+ match = IdCardUtil.isMatchById(storeConfig,param.getPatientName(), param.getIdCard());
|
|
|
+ }
|
|
|
+ if (!match){
|
|
|
+ return R.error("身份证校验错误");
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -196,10 +201,11 @@ public class PatientController extends AppBaseController {
|
|
|
String mobile = param.getMobile();
|
|
|
|
|
|
String idCardNumber = param.getIdCard(); // 替换为要验证的身份证号码
|
|
|
- if (idCardNumber == null || idCardNumber.trim().isEmpty()) {
|
|
|
- return R.error("身份证号码不合法");
|
|
|
- }
|
|
|
- if (idCardNumber.length() != 18) {
|
|
|
+// if (idCardNumber == null || idCardNumber.trim().isEmpty()) {
|
|
|
+// return R.error("身份证号码不合法");
|
|
|
+// }
|
|
|
+ if (StringUtils.isNotEmpty(idCardNumber)) {
|
|
|
+ if (idCardNumber.length() != 18) {
|
|
|
// //大陆身份证是18位
|
|
|
// if (isIdVerification != 1) {
|
|
|
// return R.error("身份证号码不合法");
|
|
|
@@ -209,15 +215,17 @@ public class PatientController extends AppBaseController {
|
|
|
// R.error("手机号不能为空");
|
|
|
// }
|
|
|
// }
|
|
|
- //暂时仅支持大陆身份证
|
|
|
- return R.error("身份证号码不合法");
|
|
|
- } else {
|
|
|
- String regex = "\\d{17}[0-9Xx]";
|
|
|
- if (!Pattern.matches(regex, idCardNumber)) {
|
|
|
- return R.error("身份证号码不合法");
|
|
|
+ //暂时仅支持大陆身份证
|
|
|
+ return R.error("身份证号码不合法");
|
|
|
+ } else {
|
|
|
+ String regex = "\\d{17}[0-9Xx]";
|
|
|
+ if (!Pattern.matches(regex, idCardNumber)) {
|
|
|
+ return R.error("身份证号码不合法");
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+
|
|
|
if (param.getPatientName().length()<2||param.getPatientName().length()>30||!param.getPatientName().matches("^[\u4e00-\u9fa5]+$")) {
|
|
|
return R.error("就诊人名称不合法");
|
|
|
}
|
|
|
@@ -256,14 +264,16 @@ public class PatientController extends AppBaseController {
|
|
|
|
|
|
//三方校验
|
|
|
if (isIdVerification!=null&&isIdVerification == 1){
|
|
|
- boolean match = true;
|
|
|
- if (idCardNumber.length() != 18) {
|
|
|
- match = IdCardUtil.isMatchByMobile(storeConfig,param.getPatientName(), mobile);
|
|
|
- } else {
|
|
|
- match = IdCardUtil.isMatchById(storeConfig,param.getPatientName(), param.getIdCard());
|
|
|
- }
|
|
|
- if (!match){
|
|
|
- return R.error("身份证校验错误");
|
|
|
+ if (StringUtils.isNotEmpty(idCardNumber)) {
|
|
|
+ boolean match = true;
|
|
|
+ if (idCardNumber.length() != 18) {
|
|
|
+ match = IdCardUtil.isMatchByMobile(storeConfig,param.getPatientName(), mobile);
|
|
|
+ } else {
|
|
|
+ match = IdCardUtil.isMatchById(storeConfig,param.getPatientName(), param.getIdCard());
|
|
|
+ }
|
|
|
+ if (!match){
|
|
|
+ return R.error("身份证校验错误");
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|