Browse Source

优化病案首页校验和导出。

lighter 2 years ago
parent
commit
94133859f5

+ 23 - 0
src/main/java/thyyxxk/webserver/service/casefrontsheet/CaseFrontSheetExportService.java

@@ -47,6 +47,8 @@ public class CaseFrontSheetExportService {
             item.setZyDismissWay(DismissWay.getWjwCodeByHisCode(item.getZyDismissWay()));
             item.setHbsAg(Hbsag.getWjwCodeByHisCode(item.getHbsAg()));
             String ntvplc = item.getNativePlace().substring(0, 2);
+            item.setPayMethod(filterPayMethod(item.getPayMethod(), item.getSocialNo()));
+            item.setRh(filterRh(item.getRh()));
             item.setNativePlace(Provinces.getWjwCodeByHisCode(ntvplc));
             item.setCountry(redis.getCountryName(item.getCountry()));
             item.setAdmissDeptCode(redis.getWjwDepartment(item.getAdmissDeptCode()));
@@ -77,6 +79,27 @@ public class CaseFrontSheetExportService {
         return list;
     }
 
+    private String filterPayMethod(String method, String idNumber) {
+        if (StringUtil.isBlank(method)) {
+            return "9";
+        }
+        int tempVal = Integer.parseInt(method);
+        if (tempVal > 3) {
+            return method;
+        }
+        if (idNumber.startsWith("4301")) {
+            return method + ".1";
+        }
+        return method + ".2";
+    }
+
+    private String filterRh(String rh) {
+        if (StringUtil.isBlank(rh) || rh.equals("0")) {
+            return "4";
+        }
+        return rh;
+    }
+
     private int negationCalculatingResidue(int source) {
         return source % 2 == 0 ? 1 : 0;
     }

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

@@ -75,6 +75,9 @@ public class VerifyCaseFrontSheet {
 
     public List<CodeName> printVerify(CaseFrontsheetMain info, Integer opType) {
         List<CodeName> array = new ArrayList<>();
+        if (StringUtil.isBlank(info.getPayMethod())) {
+            array.add(new CodeName("payMethod", "医疗付费方式不能为空!"));
+        }
         if (StringUtil.invalidValue(info.getName())) {
             array.add(new CodeName("name", "患者姓名不能为空!"));
         }
@@ -212,6 +215,9 @@ public class VerifyCaseFrontSheet {
         if (StringUtil.invalidValue(info.getDutyNurse())) {
             array.add(new CodeName("dutyNurseName","责任护士不能为空!"));
         }
+        if (StringUtil.invalidValue(info.getCoder())) {
+            array.add(new CodeName("coderName","编码员不能为空!"));
+        }
         if (StringUtil.invalidValue(info.getQualityControlLevel())) {
             array.add(new CodeName("qualityControlLevel","病案质量不能为空!"));
         }