Forráskód Böngészése

Merge branch 'hb/beilun' into hb/debug

# Conflicts:
#	dbanaly/src/main/resources/application-local.yml
rengb 3 éve
szülő
commit
57d77d3a5d

+ 1 - 1
dbanaly/src/main/resources/application-dev.yml

@@ -29,7 +29,7 @@ spring:
     database:
       cache: 10 # cache索引
       token: 10 # Token索引
-    host: 192.168.2.121  #Redis服务器地址
+    host: 192.168.2.125  #Redis服务器地址
     port: 6379 # Redis服务器连接端口(本地环境端口6378,其他环境端口是6379)
     password: lantone # Redis服务器连接密码(默认为空)
     lettuce:

+ 3 - 3
dbanaly/src/main/resources/application-local.yml

@@ -28,9 +28,9 @@ spring:
     database:
       cache: 10 # cache索引
       token: 10 # Token索引
-    host: 192.168.2.236  #Redis服务器地址
-    port: 6379 # Redis服务器连接端口(本地环境端口6378,其他环境端口是6379)
-    password: lantone # Redis服务器连接密码(默认为空)
+    host: 192.168.2.237 #Redis服务器地址
+    port: 63791 # Redis服务器连接端口(本地环境端口6378,其他环境端口是6379)
+    password: emrais # Redis服务器连接密码(默认为空)
     lettuce:
       pool:
         max-active: 8 # 连接池最大连接数(使用负值表示没有限制)

+ 4 - 4
dbanaly/src/main/resources/application-master.yml

@@ -5,9 +5,9 @@ spring:
     druid:
       lantone:
         driver-class-name: com.mysql.jdbc.Driver
-        url: jdbc:mysql://192.168.2.122:3306/qc?useUnicode=true&characterEncoding=utf8&useSSL=false
+        url: jdbc:mysql://192.168.2.125:3308/qc?useUnicode=true&characterEncoding=utf8&useSSL=false
         username: root
-        password: lantone
+        password: LangT0ng@122lt
         initial-size: 8
         min-idle: 1
         max-active: 20
@@ -28,8 +28,8 @@ spring:
     database:
       cache: 10 # cache索引
       token: 10 # Token索引
-    host: 192.168.2.122  #Redis服务器地址
-    port: 6379 # Redis服务器连接端口(本地环境端口6378,其他环境端口是6379)
+    host: 192.168.2.125 # Redis服务器地址
+    port: 63791 # Redis服务器连接端口(本地环境端口6378,其他环境端口是6379)
     password: lantone # Redis服务器连接密码(默认为空)
     lettuce:
       pool:

+ 5 - 5
dbanaly/src/main/resources/application-test.yml

@@ -5,9 +5,9 @@ spring:
     druid:
       lantone:
         driver-class-name: com.mysql.jdbc.Driver
-        url: jdbc:mysql://192.168.2.236:3306/stu?useUnicode=true&characterEncoding=utf8&useSSL=false
+        url: jdbc:mysql://192.168.2.126:3307/qc?useUnicode=true&characterEncoding=utf8&useSSL=false
         username: root
-        password: lantone
+        password: Lat0ne@tesT
         initial-size: 8
         min-idle: 1
         max-active: 20
@@ -28,9 +28,9 @@ spring:
     database:
       cache: 6 # cache索引
       token: 6 # Token索引
-    host: 192.168.2.237  #Redis服务器地址
-    port: 63791 # Redis服务器连接端口(本地环境端口6378,其他环境端口是6379)
-    password: emrais # Redis服务器连接密码(默认为空)
+    host: 192.168.2.126  #Redis服务器地址
+    port: 6379 # Redis服务器连接端口(本地环境端口6378,其他环境端口是6379)
+    password: lantone # Redis服务器连接密码(默认为空)
     lettuce:
       pool:
         max-active: 8 # 连接池最大连接数(使用负值表示没有限制)

+ 45 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/hospital/changshaxy/firstpagerecord/FIRP03180.java

@@ -0,0 +1,45 @@
+package com.lantone.qc.kernel.catalogue.hospital.changshaxy.firstpagerecord;
+
+import com.lantone.qc.kernel.catalogue.QCCatalogue;
+import com.lantone.qc.pub.Content;
+import com.lantone.qc.pub.model.InputInfo;
+import com.lantone.qc.pub.model.OutputInfo;
+import com.lantone.qc.pub.util.StringUtil;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @ClassName : FIRP03180
+ * @Description :出院主要诊断入院病情未填写
+ * @Author : wsy
+ * @Date: 2020-03-16 13:31
+ */
+@Component
+public class FIRP03180 extends QCCatalogue {
+    public void start(InputInfo inputInfo, OutputInfo outputInfo) {
+        status.set("0");
+        if (inputInfo.getFirstPageRecordDoc() != null && inputInfo.getFirstPageRecordDoc().getStructureExtMap() != null) {
+            Map<String, Object> firstpageStructureMap = inputInfo.getFirstPageRecordDoc().getStructureExtMap();
+            List<Map<String, String>> outpatientEmergencyDiag = (List) firstpageStructureMap.get(Content.dischargeDiag);
+            if (outpatientEmergencyDiag == null || outpatientEmergencyDiag.size() == 0) {
+                return;
+            }
+
+            long count = outpatientEmergencyDiag.stream().filter(diag -> {
+                boolean flag = false;
+                if (StringUtil.isNotBlank(diag.get("诊断类别"))
+                        && diag.get("诊断类别").contains("主要诊断")
+                        && StringUtil.isBlank(diag.get("入院情况"))) {
+                    flag = true;
+                }
+                return flag;
+            }).count();
+
+            if (count > 0) {
+                status.set("-1");
+            }
+        }
+    }
+}

+ 40 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/hospital/changshaxy/firstpagerecord/FIRP03187.java

@@ -0,0 +1,40 @@
+package com.lantone.qc.kernel.catalogue.hospital.changshaxy.firstpagerecord;
+
+import com.lantone.qc.kernel.catalogue.QCCatalogue;
+import com.lantone.qc.kernel.util.CatalogueUtil;
+import com.lantone.qc.pub.Content;
+import com.lantone.qc.pub.model.InputInfo;
+import com.lantone.qc.pub.model.OutputInfo;
+import com.lantone.qc.pub.util.StringUtil;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @ClassName : FIRP03187
+ * @Description : 其他手术及操作名称未填写
+ * @Author : wsy
+ * @Date: 2021-11-18 14:11
+ */
+@Component
+public class FIRP03187 extends QCCatalogue {
+    public void start(InputInfo inputInfo, OutputInfo outputInfo) {
+        status.set("0");
+        if (inputInfo.getFirstPageRecordDoc() == null) {
+            return;
+        }
+        if (inputInfo.getFirstPageRecordDoc().getStructureMap() != null) {
+            Map<String, Object> firstpageStructureMap = inputInfo.getFirstPageRecordDoc().getStructureExtMap();
+            List<Map<String, String>> operative_information = (List<Map<String, String>>) firstpageStructureMap.get(Content.operative_information);
+            if (operative_information != null && operative_information.size() > 0) {
+                for (int i = 1; i < operative_information.size(); i++) {
+                    if (CatalogueUtil.isEmpty(operative_information.get(i).get(Content.operative_name))) {
+                        status.set("-1");
+                        break;
+                    }
+                }
+            }
+        }
+    }
+}

+ 39 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/hospital/changshaxy/firstpagerecord/FIRP03188.java

@@ -0,0 +1,39 @@
+package com.lantone.qc.kernel.catalogue.hospital.changshaxy.firstpagerecord;
+
+import com.lantone.qc.kernel.catalogue.QCCatalogue;
+import com.lantone.qc.kernel.util.CatalogueUtil;
+import com.lantone.qc.pub.Content;
+import com.lantone.qc.pub.model.InputInfo;
+import com.lantone.qc.pub.model.OutputInfo;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @ClassName : FIRP03188
+ * @Description : 其他手术及操作编码未填写
+ * @Author : wsy
+ * @Date: 2021-11-18 14:11
+ */
+@Component
+public class FIRP03188 extends QCCatalogue {
+    public void start(InputInfo inputInfo, OutputInfo outputInfo) {
+        status.set("0");
+        if (inputInfo.getFirstPageRecordDoc() == null) {
+            return;
+        }
+        if (inputInfo.getFirstPageRecordDoc().getStructureMap() != null) {
+            Map<String, Object> firstpageStructureMap = inputInfo.getFirstPageRecordDoc().getStructureExtMap();
+            List<Map<String, String>> operative_information = (List<Map<String, String>>) firstpageStructureMap.get(Content.operative_information);
+            if (operative_information != null && operative_information.size() > 0) {
+                for (int i = 1; i < operative_information.size(); i++) {
+                    if (CatalogueUtil.isEmpty(operative_information.get(i).get(Content.operative_code))) {
+                        status.set("-1");
+                        break;
+                    }
+                }
+            }
+        }
+    }
+}

+ 39 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/hospital/changshaxy/firstpagerecord/FIRP03189.java

@@ -0,0 +1,39 @@
+package com.lantone.qc.kernel.catalogue.hospital.changshaxy.firstpagerecord;
+
+import com.lantone.qc.kernel.catalogue.QCCatalogue;
+import com.lantone.qc.kernel.util.CatalogueUtil;
+import com.lantone.qc.pub.Content;
+import com.lantone.qc.pub.model.InputInfo;
+import com.lantone.qc.pub.model.OutputInfo;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @ClassName : FIRP03189
+ * @Description : 手术级别未填写
+ * @Author : wsy
+ * @Date: 2021-11-18 14:11
+ */
+@Component
+public class FIRP03189 extends QCCatalogue {
+    public void start(InputInfo inputInfo, OutputInfo outputInfo) {
+        status.set("0");
+        if (inputInfo.getFirstPageRecordDoc() == null) {
+            return;
+        }
+        if (inputInfo.getFirstPageRecordDoc().getStructureMap() != null) {
+            Map<String, Object> firstpageStructureMap = inputInfo.getFirstPageRecordDoc().getStructureExtMap();
+            List<Map<String, String>> operative_information = (List<Map<String, String>>) firstpageStructureMap.get(Content.operative_information);
+            if (operative_information != null && operative_information.size() > 0) {
+                for (Map<String, String> opInfo : operative_information) {
+                    if (CatalogueUtil.isEmpty(opInfo.get(Content.operative_degree))) {
+                        status.set("-1");
+                        break;
+                    }
+                }
+            }
+        }
+    }
+}

+ 39 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/hospital/changshaxy/firstpagerecord/FIRP03190.java

@@ -0,0 +1,39 @@
+package com.lantone.qc.kernel.catalogue.hospital.changshaxy.firstpagerecord;
+
+import com.lantone.qc.kernel.catalogue.QCCatalogue;
+import com.lantone.qc.kernel.util.CatalogueUtil;
+import com.lantone.qc.pub.Content;
+import com.lantone.qc.pub.model.InputInfo;
+import com.lantone.qc.pub.model.OutputInfo;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @ClassName : FIRP03190
+ * @Description : 术者未填写
+ * @Author : wsy
+ * @Date: 2021-11-18 14:11
+ */
+@Component
+public class FIRP03190 extends QCCatalogue {
+    public void start(InputInfo inputInfo, OutputInfo outputInfo) {
+        status.set("0");
+        if (inputInfo.getFirstPageRecordDoc() == null) {
+            return;
+        }
+        if (inputInfo.getFirstPageRecordDoc().getStructureMap() != null) {
+            Map<String, Object> firstpageStructureMap = inputInfo.getFirstPageRecordDoc().getStructureExtMap();
+            List<Map<String, String>> operative_information = (List<Map<String, String>>) firstpageStructureMap.get(Content.operative_information);
+            if (operative_information != null && operative_information.size() > 0) {
+                for (Map<String, String> opInfo : operative_information) {
+                    if (CatalogueUtil.isEmpty(opInfo.get(Content.operative_user))) {
+                        status.set("-1");
+                        break;
+                    }
+                }
+            }
+        }
+    }
+}

+ 39 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/hospital/changshaxy/firstpagerecord/FIRP03191.java

@@ -0,0 +1,39 @@
+package com.lantone.qc.kernel.catalogue.hospital.changshaxy.firstpagerecord;
+
+import com.lantone.qc.kernel.catalogue.QCCatalogue;
+import com.lantone.qc.kernel.util.CatalogueUtil;
+import com.lantone.qc.pub.Content;
+import com.lantone.qc.pub.model.InputInfo;
+import com.lantone.qc.pub.model.OutputInfo;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @ClassName : FIRP03191
+ * @Description : 第一助手未填写
+ * @Author : wsy
+ * @Date: 2021-11-18 14:11
+ */
+@Component
+public class FIRP03191 extends QCCatalogue {
+    public void start(InputInfo inputInfo, OutputInfo outputInfo) {
+        status.set("0");
+        if (inputInfo.getFirstPageRecordDoc() == null) {
+            return;
+        }
+        if (inputInfo.getFirstPageRecordDoc().getStructureMap() != null) {
+            Map<String, Object> firstpageStructureMap = inputInfo.getFirstPageRecordDoc().getStructureExtMap();
+            List<Map<String, String>> operative_information = (List<Map<String, String>>) firstpageStructureMap.get(Content.operative_information);
+            if (operative_information != null && operative_information.size() > 0) {
+                for (Map<String, String> opInfo : operative_information) {
+                    if (CatalogueUtil.isEmpty(opInfo.get(Content.operative_assistant_first))) {
+                        status.set("-1");
+                        break;
+                    }
+                }
+            }
+        }
+    }
+}

+ 60 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/hospital/changshaxy/firstpagerecord/FIRP03192.java

@@ -0,0 +1,60 @@
+package com.lantone.qc.kernel.catalogue.hospital.changshaxy.firstpagerecord;
+
+import com.lantone.qc.kernel.catalogue.QCCatalogue;
+import com.lantone.qc.kernel.util.CatalogueUtil;
+import com.lantone.qc.pub.Content;
+import com.lantone.qc.pub.model.InputInfo;
+import com.lantone.qc.pub.model.OutputInfo;
+import com.lantone.qc.pub.model.doc.operation.OperationDiscussionDoc;
+import com.lantone.qc.pub.model.doc.operation.OperationDoc;
+import com.lantone.qc.pub.util.ListUtil;
+import com.lantone.qc.pub.util.StringUtil;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @ClassName : FIRP03192
+ * @Description : 麻醉方式填写错误
+ * @Author : wsy
+ * @Date: 2021-11-18 14:11
+ */
+@Component
+public class FIRP03192 extends QCCatalogue {
+    public void start(InputInfo inputInfo, OutputInfo outputInfo) {
+        status.set("0");
+        List<OperationDoc> operationDocs = inputInfo.getOperationDocs();
+        String operationsAnesthesia = "";
+        String operationsFirstAnesthesia = "";
+        if (ListUtil.isNotEmpty(operationDocs)) {
+            OperationDiscussionDoc operationDiscussionDoc = operationDocs.get(0).getOperationDiscussionDoc();
+            if (operationDiscussionDoc == null) {
+                return;
+            }
+            operationsAnesthesia = operationDiscussionDoc.getStructureMap().get("麻醉方法");
+        }
+        if (StringUtil.isBlank(operationsAnesthesia)) {
+            return;
+        }
+
+        if (inputInfo.getFirstPageRecordDoc() != null && inputInfo.getFirstPageRecordDoc().getStructureMap() != null) {
+            Map<String, Object> firstpageStructureMap = inputInfo.getFirstPageRecordDoc().getStructureExtMap();
+            List<Map<String, String>> operative_information = (List<Map<String, String>>) firstpageStructureMap.get(Content.operative_information);
+            if (operative_information != null && operative_information.size() > 0) {
+                operationsFirstAnesthesia = operative_information.get(0).get(Content.anesthesia_mode);
+                if (!CatalogueUtil.isEmpty(operative_information.get(0).get(Content.operative_name)) || CatalogueUtil.isEmpty(operationsFirstAnesthesia)) {
+                    return;
+                }
+            }
+        }
+        if (StringUtil.isBlank(operationsFirstAnesthesia)) {
+            return;
+        }
+
+        if (!operationsAnesthesia.contains(operationsFirstAnesthesia)) {
+            status.set("-1");
+            return;
+        }
+    }
+}

+ 43 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/hospital/changshaxy/firstpagerecord/FIRP03193.java

@@ -0,0 +1,43 @@
+package com.lantone.qc.kernel.catalogue.hospital.changshaxy.firstpagerecord;
+
+import com.lantone.qc.kernel.catalogue.QCCatalogue;
+import com.lantone.qc.kernel.util.CatalogueUtil;
+import com.lantone.qc.pub.Content;
+import com.lantone.qc.pub.model.InputInfo;
+import com.lantone.qc.pub.model.OutputInfo;
+import com.lantone.qc.pub.model.doc.operation.OperationDiscussionDoc;
+import com.lantone.qc.pub.model.doc.operation.OperationDoc;
+import com.lantone.qc.pub.util.ListUtil;
+import com.lantone.qc.pub.util.StringUtil;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @ClassName : FIRP03193
+ * @Description : 麻醉方式未填写
+ * @Author : wsy
+ * @Date: 2021-11-18 14:11
+ */
+@Component
+public class FIRP03193 extends QCCatalogue {
+    public void start(InputInfo inputInfo, OutputInfo outputInfo) {
+        status.set("0");
+        if (inputInfo.getFirstPageRecordDoc() == null) {
+            return;
+        }
+        if (inputInfo.getFirstPageRecordDoc().getStructureMap() != null) {
+            Map<String, Object> firstpageStructureMap = inputInfo.getFirstPageRecordDoc().getStructureExtMap();
+            List<Map<String, String>> operative_information = (List<Map<String, String>>) firstpageStructureMap.get(Content.operative_information);
+            if (operative_information != null && operative_information.size() > 0) {
+                for (Map<String, String> opInfo : operative_information) {
+                    if (CatalogueUtil.isEmpty(opInfo.get(Content.anesthesia_mode))) {
+                        status.set("-1");
+                        break;
+                    }
+                }
+            }
+        }
+    }
+}

+ 39 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/hospital/changshaxy/firstpagerecord/FIRP03194.java

@@ -0,0 +1,39 @@
+package com.lantone.qc.kernel.catalogue.hospital.changshaxy.firstpagerecord;
+
+import com.lantone.qc.kernel.catalogue.QCCatalogue;
+import com.lantone.qc.kernel.util.CatalogueUtil;
+import com.lantone.qc.pub.Content;
+import com.lantone.qc.pub.model.InputInfo;
+import com.lantone.qc.pub.model.OutputInfo;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @ClassName :  FIRP03194
+ * @Description :  手术及操作日期未填写
+ * @Author : wsy
+ * @Date: 2021-11-18 14:11
+ */
+@Component
+public class FIRP03194 extends QCCatalogue {
+    public void start(InputInfo inputInfo, OutputInfo outputInfo) {
+        status.set("0");
+        if (inputInfo.getFirstPageRecordDoc() == null) {
+            return;
+        }
+        if (inputInfo.getFirstPageRecordDoc().getStructureMap() != null) {
+            Map<String, Object> firstpageStructureMap = inputInfo.getFirstPageRecordDoc().getStructureExtMap();
+            List<Map<String, String>> operative_information = (List<Map<String, String>>) firstpageStructureMap.get(Content.operative_information);
+            if (operative_information != null && operative_information.size() > 0) {
+                for (Map<String, String> opInfo : operative_information) {
+                    if (CatalogueUtil.isEmpty(opInfo.get(Content.operative_date))) {
+                        status.set("-1");
+                        break;
+                    }
+                }
+            }
+        }
+    }
+}