Bladeren bron

放松病案首页主诊断校验

lighter 2 jaren geleden
bovenliggende
commit
76dec9f8d8

+ 2 - 1
src/main/java/thyyxxk/webserver/service/casefrontsheet/CaseFrontSheetMainService.java

@@ -593,7 +593,8 @@ public class CaseFrontSheetMainService {
         sheet.setAddressMember(getStandardAddress(sheet.getStandardAddress()));
         sheet.setIsDoctorPrint(true);
         List<CodeName> force = VerifyCaseFrontSheet.getInstance().printVerify(sheet, param.getOpType());
-        List<CodeName> advice = VerifyCaseFrontSheet.getInstance().adviseVerification(sheet.getSocialNo());
+        CaseFrontsheetDisdiag disdiag = sheet.getDisdiagList().get(0);
+        List<CodeName> advice = VerifyCaseFrontSheet.getInstance().adviseVerification(sheet.getSocialNo(), disdiag.getCode());
         JSONObject powersi = qualityControl(sheet);
         if (null != powersi) {
             JSONObject responseEntity = powersi.getJSONObject("responseEntity");

+ 6 - 2
src/main/java/thyyxxk/webserver/service/casefrontsheet/VerifyCaseFrontSheet.java

@@ -61,7 +61,7 @@ public class VerifyCaseFrontSheet {
         return connectedVerify(array, sheet, 1);
     }
 
-    public List<CodeName> adviseVerification(String socialNo) {
+    public List<CodeName> adviseVerification(String socialNo, String mainDisdiagCode) {
         List<CodeName> array = new ArrayList<>();
         if (StringUtil.invalidValue(socialNo)) {
             array.add(new CodeName("socialNo","请补全患者身份证!"));
@@ -69,6 +69,7 @@ public class VerifyCaseFrontSheet {
         if (!IdCardUtil.isValidatedIdCard(socialNo)) {
             array.add(new CodeName("socialNo","患者身份证不合法!"));
         }
+        validateMainDiagnose(mainDisdiagCode, array);
         return array;
     }
 
@@ -182,7 +183,7 @@ public class VerifyCaseFrontSheet {
         if (StringUtil.isBlank(disdiag.getName())) {
             array.add(new CodeName("disdiagMain","患者主要诊断不能为空!"));
         } else {
-            validateMainDiagnose(disdiag.getCode(), array);
+//            validateMainDiagnose(disdiag.getCode(), array);
         }
         if (null == info.getDisdiagList().get(0).getAdmissStatus()) {
             array.add(new CodeName("disdiagMainAdmStatus","患者主要诊断入院病情不能为空!"));
@@ -483,6 +484,9 @@ public class VerifyCaseFrontSheet {
     }
 
     private void validateMainDiagnose(String code, List<CodeName> errors) {
+        if (StringUtil.isBlank(code)) {
+            return;
+        }
         String header = code.substring(0, 3);
         String tail = header.substring(1);
         if (isNumeric(tail)) {