浏览代码

Merge remote-tracking branch 'origin/hb/beilun' into hb/beilun

chengyao 3 年之前
父节点
当前提交
12cb702c4c

+ 2 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/hospital/changshaxy/firstcourserecord/FIRC0093.java

@@ -45,6 +45,7 @@ public class FIRC0093 extends QCCatalogue {
                     }
                     }
                     boolean firc = CatalogueUtil.compareTime(date_in, date_out, 8 * 60L);
                     boolean firc = CatalogueUtil.compareTime(date_in, date_out, 8 * 60L);
                     if (firc) {
                     if (firc) {
+                        info.set("("+admisTime+"-"+couDate+")");
                         status.set("-1");
                         status.set("-1");
                     }
                     }
                 }
                 }
@@ -59,6 +60,7 @@ public class FIRC0093 extends QCCatalogue {
                     }
                     }
                     boolean firc = CatalogueUtil.compareTime(date_in, date_out, 8 * 60L);
                     boolean firc = CatalogueUtil.compareTime(date_in, date_out, 8 * 60L);
                     if (firc) {
                     if (firc) {
+                        info.set("("+admisTime+"-"+date_out.toString()+")");
                         status.set("-1");
                         status.set("-1");
                     }
                     }
                 }
                 }

+ 1 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/hospital/changshaxy/threelevelward/THR02900.java

@@ -113,6 +113,7 @@ public class THR02900 extends QCCatalogue {
                         .replace("总住院医师", "")
                         .replace("总住院医师", "")
                         .replace("住院医师", "")
                         .replace("住院医师", "")
                         .replace("主治医师", "")
                         .replace("主治医师", "")
+                        .replace("经治医师", "")
                         .replace(" ", "");
                         .replace(" ", "");
                 if(chiefSurgeon.contains("、")){
                 if(chiefSurgeon.contains("、")){
                     String[] split1 = chiefSurgeon.split("、");
                     String[] split1 = chiefSurgeon.split("、");

+ 20 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/hospital/changshaxy/threelevelward/THR03090.java

@@ -8,9 +8,11 @@ import com.lantone.qc.pub.model.doc.MedicalRecordInfoDoc;
 import com.lantone.qc.pub.model.doc.ThreeLevelWardDoc;
 import com.lantone.qc.pub.model.doc.ThreeLevelWardDoc;
 import com.lantone.qc.pub.model.doc.operation.OperationDoc;
 import com.lantone.qc.pub.model.doc.operation.OperationDoc;
 import com.lantone.qc.pub.util.DateUtil;
 import com.lantone.qc.pub.util.DateUtil;
+import com.lantone.qc.pub.util.ListUtil;
 import com.lantone.qc.pub.util.StringUtil;
 import com.lantone.qc.pub.util.StringUtil;
 import org.springframework.stereotype.Component;
 import org.springframework.stereotype.Component;
 
 
+import java.util.ArrayList;
 import java.util.List;
 import java.util.List;
 import java.util.Map;
 import java.util.Map;
 import java.util.Objects;
 import java.util.Objects;
@@ -85,12 +87,30 @@ public class THR03090 extends QCCatalogue {
                 if (operator.contains("(")) {
                 if (operator.contains("(")) {
                     operator = operator.substring(0, operator.indexOf("("));
                     operator = operator.substring(0, operator.indexOf("("));
                 }
                 }
+                List<String> chiefSurgeonList = new ArrayList<>();
                 operator = operator
                 operator = operator
                         .replace("&nbsp", "")
                         .replace("&nbsp", "")
                         .replace("副教授", "")
                         .replace("副教授", "")
                         .replace("副主任医师", "")
                         .replace("副主任医师", "")
                         .replace("主任医师", "")
                         .replace("主任医师", "")
+                        .replace("总住院医师", "")
+                        .replace("住院医师", "")
+                        .replace("主治医师", "")
+                        .replace("经治医师", "")
                         .replace(" ", "");
                         .replace(" ", "");
+                if(operator.contains("、")){
+                    String[] split1 = operator.split("、");
+                    for (String chiefSurgeons : split1) {
+                        chiefSurgeonList.add(chiefSurgeons);
+                    }
+                }
+                if(ListUtil.isNotEmpty(chiefSurgeonList)){
+                    for (String chiefSurgeons : chiefSurgeonList) {
+                        if(content.contains(chiefSurgeons)){
+                            return;
+                        }
+                    }
+                }
                 //比较病例内容
                 //比较病例内容
                 if (StringUtil.isNotBlank(content)) {
                 if (StringUtil.isNotBlank(content)) {
                     if (content.contains("。")) {
                     if (content.contains("。")) {

+ 45 - 0
kernel/src/main/java/com/lantone/qc/kernel/web/controller/PageShowController.java

@@ -0,0 +1,45 @@
+package com.lantone.qc.kernel.web.controller;
+
+import com.lantone.qc.dbanaly.lt.entity.MedicalRecordContent;
+import com.lantone.qc.dbanaly.lt.service.MedicalRecordContentService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * @Description:
+ * @author: rengb
+ * @time: 2021/12/17 14:05
+ */
+@Slf4j
+@Api(value = "文书页面显示控制", tags = { "文书页面显示控制" })
+@RestController
+@RequestMapping(value = "pageShow")
+public class PageShowController {
+
+    @Autowired
+    private MedicalRecordContentService medicalRecordContentService;
+
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "dataType", value = "文书数据类型,html或者xml", required = true, paramType = "path", dataType = "String"),
+            @ApiImplicitParam(name = "recId", value = "文书记录编号", required = true, paramType = "path", dataType = "String")
+    })
+    @GetMapping("/dataShow/{dataType}/{recId}")
+    public String dataShow(@PathVariable("recId") String recId, @PathVariable("dataType") String dataType) {
+        MedicalRecordContent medicalRecordContent = medicalRecordContentService.getById(recId);
+        if (dataType.equals("html")) {
+            return medicalRecordContent.getHtmlText();
+        } else if (dataType.equals("xml")) {
+            return medicalRecordContent.getXmlText();
+        } else {
+            return medicalRecordContent.getContentText();
+        }
+    }
+
+}

+ 10 - 9
trans/src/main/java/com/lantone/qc/trans/changshaxy/util/XyHtmlAnalysisUtil.java

@@ -147,15 +147,16 @@ public class XyHtmlAnalysisUtil {
         if (divElement == null) {
         if (divElement == null) {
             return "";
             return "";
         }
         }
-        StringBuffer sbf = new StringBuffer();
-        for (Element childElement : divElement.children()) {
-            if (isLineBreak) {
-                sbf.append(elementLayer1ToStr(childElement, true)).append("\n");
-            } else {
-                sbf.append(elementLayer1ToStr(childElement, false).trim());
-            }
-        }
-        return sbf.toString();
+//        StringBuffer sbf = new StringBuffer();
+//        for (Element childElement : divElement.children()) {
+//            if (isLineBreak) {
+//                sbf.append(elementLayer1ToStr(childElement, true)).append("\n");
+//            } else {
+//                sbf.append(elementLayer1ToStr(childElement, false).trim());
+//            }
+//        }
+        String text = divElement.text();
+        return text;
     }
     }
 
 
     /**
     /**

+ 6 - 1
trans/src/main/java/com/lantone/qc/trans/changshaxy/util/XyLeaveHospitalHtmlAnalysis.java

@@ -72,7 +72,12 @@ public class XyLeaveHospitalHtmlAnalysis implements XyHtmlAnalysis {
                 if (diagString.contains("。")) {
                 if (diagString.contains("。")) {
                     Integer index = diagString.indexOf("。");
                     Integer index = diagString.indexOf("。");
                     structureMap.put("入院诊断", diagString.substring(0, index));
                     structureMap.put("入院诊断", diagString.substring(0, index));
-                    structureMap.put("基本信息", diagString.substring(index, diagString.length()));
+                    if(diagString.contains("因") && diagString.contains("入院")) {
+                        if(diagString.indexOf("入院")>(diagString.lastIndexOf("因") + 1)) {
+                            structureMap.put("主诉", diagString.substring(diagString.lastIndexOf("因") + 1, diagString.indexOf("入院")));
+                        }
+                    }
+                    structureMap.put("基本信息",diagString.substring(index, diagString.length()));
                 }
                 }
             }
             }
             XyHtmlAnalysisUtil.insertModuleId(modeId, recTypeId, structureMap);
             XyHtmlAnalysisUtil.insertModuleId(modeId, recTypeId, structureMap);