Преглед на файлове

Merge branch 'shaoyf/dev' into shaoyf/master

rengb преди 5 години
родител
ревизия
2c5ea4e2c4

+ 2 - 1
dbanaly/src/main/java/com/lantone/qc/dbanaly/config/CacheDeleteInit.java

@@ -16,7 +16,7 @@ import org.springframework.stereotype.Component;
 @Component //把类交给spring容器管理
 @Order(100)  //使用order属性,设置该类在spring容器中的加载顺序
 @Slf4j
-public class CacheDeleteInit implements CommandLineRunner {
+public class CacheInit implements CommandLineRunner {
 
     @Autowired
     CacheFacade cacheFacade;
@@ -28,6 +28,7 @@ public class CacheDeleteInit implements CommandLineRunner {
     public void run(String... args) throws Exception {
         // 服务启动清除redis缓存
         cacheFacade.clear();
+        // 服务启动生成redis缓存
         clinicFacade.getClinicInfo();
 
         log.info("病历质控系统缓存启动初始化成功!");

+ 3 - 7
dbanaly/src/main/java/com/lantone/qc/dbanaly/lt/facade/ClinicFacade.java

@@ -1,7 +1,6 @@
 package com.lantone.qc.dbanaly.lt.facade;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.google.common.collect.Maps;
 import com.lantone.qc.dbanaly.lt.entity.Clinic;
 import com.lantone.qc.dbanaly.lt.service.impl.ClinicServiceImpl;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -30,24 +29,21 @@ public class ClinicFacade extends ClinicServiceImpl {
         return list(clinicQe).stream().collect(Collectors.toMap(Clinic::getConceptId, i -> i));
     }
 
-    public Map<String, Clinic> getClinicInfo() {
-        Map<String, Clinic> ret = Maps.newHashMap();
+    public void getClinicInfo() {
         Map<Long, Map<String, Long>> conceptIdInfo = libraryInfoFacade.getConceptIdInfo();
         Map<String, Long> conceptIdMap = conceptIdInfo.get(1l);
         Map<Long, Clinic> clinicMap = getClinicMap();
         conceptIdMap.keySet().forEach(conceptName -> {
-            ret.put(conceptName, clinicMap.get(conceptIdMap.get(conceptName)));
             clinicFacade.clinicCache(conceptName, clinicMap.get(conceptIdMap.get(conceptName)));
         });
-        return ret;
     }
 
-    @Cacheable(value = "cache", key = "#clinicName", unless = "#result == null")
+    @Cacheable(value = "clinicCache", key = "#clinicName", unless = "#result == null")
     public Clinic clinicCache(String clinicName, Clinic clinic) {
         return clinic;
     }
 
-    @Cacheable(value = "cache", key = "#clinicName", unless = "#result == null")
+    @Cacheable(value = "clinicCache", key = "#clinicName", unless = "#result == null")
     public Clinic clinicCache(String clinicName) {
         QueryWrapper<Clinic> clinicQe = new QueryWrapper<>();
         clinicQe.eq("is_deleted", "N");

+ 1 - 1
kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH0019.java

@@ -38,7 +38,7 @@ public class BEH0019 extends QCCatalogue {
                 long start = System.currentTimeMillis();
                 Clinic clinic = clinicFacade.clinicCache(clinicalName);
                 long end = System.currentTimeMillis();
-                System.out.println("取缓存时间:" + (end-start));
+                System.out.println("取kl_clinic缓存时间:" + (end-start));
                 if (clinic != null && clinic.getHasDegree() == 1) {
                     Degree degree = clinical.getDegree();
                     if (degree == null) {

+ 123 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/preoperativediscussion/PRE03064.java

@@ -0,0 +1,123 @@
+package com.lantone.qc.kernel.catalogue.preoperativediscussion;
+
+import com.google.common.collect.Lists;
+import com.google.common.collect.Maps;
+import com.lantone.qc.kernel.catalogue.QCCatalogue;
+import com.lantone.qc.pub.model.InputInfo;
+import com.lantone.qc.pub.model.OutputInfo;
+import com.lantone.qc.pub.model.doc.LisDoc;
+import com.lantone.qc.pub.model.doc.PacsDoc;
+import com.lantone.qc.pub.model.doc.operation.OperationDoc;
+import com.lantone.qc.pub.model.doc.operation.OperationRecordDoc;
+import com.lantone.qc.pub.util.StringUtil;
+import org.springframework.stereotype.Component;
+
+import java.text.ParseException;
+import java.util.*;
+import java.util.stream.Collectors;
+
+/**
+ * @Description: 术前未完成常规检查
+ * @author: HUJING
+ * @time: 2020/8/14 13:14
+ */
+@Component
+public class PRE03064 extends QCCatalogue {
+    private List<String> normalCheck = Lists.newArrayList("出凝血时间", "HBSAG", "血常规", "尿常规", "血型", "心电图");
+
+    @Override
+    protected void start(InputInfo inputInfo, OutputInfo outputInfo) throws ParseException {
+        status.set("0");
+        List<LisDoc> lisDocs = inputInfo.getLisDocs();
+        List<PacsDoc> pacsDocs = inputInfo.getPacsDocs();
+        List<OperationDoc> operationDocs = inputInfo.getOperationDocs();
+
+        if (operationDocs.size() == 0 || lisDocs.size() == 0 || pacsDocs.size() == 0) {
+            return;
+        }
+
+        //取化验名称
+        Map<String, String> lisRet = Maps.newHashMap();
+        lisDocs.stream().map(LisDoc::getStructureMap).forEach(x -> lisRet.put(x.get("报告名称"), x.get("报告创建时间")));
+        Map<String, String> newLisRet = processMap(lisRet);
+        //取辅检名称
+        Map<String, String> pacsRet = Maps.newHashMap();
+        pacsDocs.stream().map(PacsDoc::getStructureMap).forEach(x -> pacsRet.put(x.get("报告名称"), x.get("报告创建时间")));
+        Map<String, String> newPacsRet = processMap(pacsRet);
+
+        //取手术时间
+        List<String> operationDateList = operationDocs.stream().map(OperationDoc::getOperationRecordDoc)
+                .filter(Objects::nonNull)
+                .map(OperationRecordDoc::getStructureMap).map(x -> x.get("手术日期")).filter(StringUtil::isNotBlank).collect(Collectors.toList());
+
+        List<String> lisKey = new ArrayList<>(newLisRet.keySet());
+        List<String> pacsKey = new ArrayList<>(newPacsRet.keySet());
+        //lisKey.retainAll(normalCheck);//如果存在相同元素,lisKey中仅保留相同的元素。 如果不存在相同元素,lisKey会变为空。
+        //pacsKey.retainAll(normalCheck);//如果存在相同元素,pacsKey中仅保留相同的元素。 如果不存在相同元素,pacsKey会变为空。
+
+        if (operationDateList.size() > 0) {
+            String firstOperationDateStr = operationDateList.get(0);
+            Date firstOperationDate = StringUtil.parseDateTime(firstOperationDateStr);
+            int matchSum = 0;
+            List<String> missCheck = Lists.newArrayList();
+            getMatchSum(newLisRet, lisKey, firstOperationDate, matchSum, missCheck);
+            getMatchSum(newPacsRet, pacsKey, firstOperationDate, matchSum, missCheck);
+
+            if (matchSum < normalCheck.size()) {
+                status.set("-1");
+                info.set("未完成常规检查:" + missCheck.toString().replaceAll("[\\[\\]]", ""));
+            }
+        }
+//        for (String operationDateStr : operationDateList) {
+//            Date operationDate = StringUtil.parseDateTime(operationDateStr);
+//            if (operationDate == null) {
+//                continue;
+//            }
+//
+//        }
+//        System.out.println(operationDateList);
+
+    }
+
+    //获取检查中与必须要的检查匹配数
+    private void getMatchSum(Map<String, String> newRet, List<String> keySet, Date firstOperationDate, int matchSum, List<String> miss) {
+        for (String check : normalCheck) {
+            int checkMiss = 0;
+            for (String lis : keySet) {
+                if (lis.contains(check)) {
+                    String lisDateStr = newRet.get(lis);
+                    Date lisDate = StringUtil.parseDateTime(lisDateStr);
+                    if (lisDate.before(firstOperationDate)) {
+                        matchSum++;
+                        break;
+                    } else {
+                        checkMiss++;
+                    }
+                } else {
+                    checkMiss++;
+                }
+
+            }
+            //如果所有化验里都没有必要的当前检查(normalCheck里的检查)
+            if (checkMiss == keySet.size()) {
+                miss.add(check);
+            }
+        }
+    }
+
+    private Map<String, String> processMap(Map<String, String> ret) {
+        Map<String, String> newRet = Maps.newHashMap();
+        for (Map.Entry<String, String> enrty : ret.entrySet()) {
+            String key = enrty.getKey();
+            if (key.contains("=")) {
+                String pubName = key.split("=")[0];
+                if (StringUtil.isNotBlank(pubName)) {
+                    newRet.put(pubName, enrty.getValue());
+                }
+            } else {
+                newRet.put(key, enrty.getValue());
+            }
+        }
+        return newRet;
+    }
+}

+ 17 - 6
kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR02985.java

@@ -27,8 +27,19 @@ import java.util.Set;
  */
 @Component
 public class THR02985 extends QCCatalogue {
-    private static final String[] KSS = {"阿昔洛韦片","[国产]伐昔洛韦分散片","阿昔洛韦针","[进口]伐昔洛韦片"
-            ,"[浓缩型]双黄连口服液"};
+    private static final String[] KSS = {
+            "阿昔洛韦片",
+            "[国产]伐昔洛韦分散片",
+            "阿昔洛韦针",
+            "[进口]伐昔洛韦片"
+            , "[浓缩型]双黄连口服液",
+            "异烟肼片",
+            "[黄连素]小檗碱片",
+            "乙胺丁醇片",
+            "利福平胶囊",
+            "异烟肼针"
+    };
+
     public void start(InputInfo inputInfo, OutputInfo outputInfo) {
         List<DoctorAdviceDoc> doctorAdviceDocs = inputInfo.getDoctorAdviceDocs();
         List<ThreeLevelWardDoc> threeLevelWardDocs = inputInfo.getThreeLevelWardDocs();
@@ -44,8 +55,8 @@ public class THR02985 extends QCCatalogue {
             String startDateStr = adviceDocStructureMap.get("医嘱开始时间");
             if (StringUtil.isNotBlank(drugCategory) && drugCategory.equals("抗生素")) {
                 if (StringUtil.isNotBlank(name)) {
-                    if(Arrays.asList(KSS).contains(name)){
-                       continue;
+                    if (Arrays.asList(KSS).contains(name)) {
+                        continue;
                     }
                     doctorAdviceDrugMap.put(StringUtil.parseDateTime(startDateStr), name);
                 }
@@ -65,10 +76,10 @@ public class THR02985 extends QCCatalogue {
             boolean isFind = false;
             for (String drug : splitDrugs) {
                 int matchSum = 0;
-                if (drug.equals("合资") || drug.equals("进口") || drug.equals("国产") ) {
+                if (drug.equals("合资") || drug.equals("进口") || drug.equals("国产")) {
                     continue;
                 }
-                matchSum = getMatchSum(inputInfo.getFirstCourseRecordDoc(), allDoctorWradDocs, doctorAdviceDate, drug.replace("针",""), matchSum, 2);
+                matchSum = getMatchSum(inputInfo.getFirstCourseRecordDoc(), allDoctorWradDocs, doctorAdviceDate, drug.replace("针", ""), matchSum, 2);
                 if (matchSum > 0) {
                     isFind = true;
                 }

+ 87 - 9
kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR02986.java

@@ -12,7 +12,12 @@ import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Component;
 
 import java.text.SimpleDateFormat;
-import java.util.*;
+import java.util.Arrays;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
 
 /**
  * @ClassName : THR02986
@@ -23,11 +28,7 @@ import java.util.*;
  */
 @Component
 public class THR02986 extends QCCatalogue {
-    private static final String[] JS = {"瑞格列奈片","西格列汀片","维格列汀片","伏格列波糖片","[合资]二甲双胍片"
-            ,"[进口]硫辛酸针","[合资]阿卡波糖片","格列齐特缓释片","达格列净片","[合资]格列美脲片","[绿叶]阿卡波糖胶囊"
-            ,"[海汇]格列美脲片","格列吡嗪缓释胶囊","[国产]阿卡波糖片","格列吡嗪控释片","[国产]二甲双胍片","沙格列汀片"
-            ,"吡格列酮二甲双胍片","[艾可拓]吡格列酮片","阿仑膦酸钠维D3片","[卡司平]吡格列酮片","[国产]硫辛酸针"
-            ,"格列喹酮片","[国产]阿仑膦酸钠肠溶片","那格列奈片","[自备]格列齐特-II片"};
+
     public void start(InputInfo inputInfo, OutputInfo outputInfo) {
         List<DoctorAdviceDoc> doctorAdviceDocs = inputInfo.getDoctorAdviceDocs();
         List<ThreeLevelWardDoc> threeLevelWardDocs = inputInfo.getThreeLevelWardDocs();
@@ -44,7 +45,7 @@ public class THR02986 extends QCCatalogue {
             if (StringUtil.isNotBlank(drugCategory) && drugCategory.equals("激素")) {
 
                 if (StringUtil.isNotBlank(name)) {
-                    if(Arrays.asList(JS).contains(name)){
+                    if (Arrays.asList(JS).contains(name)) {
                         continue;
                     }
                     doctorAdviceDrugMap.put(StringUtil.parseDateTime(startDateStr), name);
@@ -68,7 +69,7 @@ public class THR02986 extends QCCatalogue {
             boolean isFind = false;
             for (String drug : splitDrugs) {
                 int matchSum = 0;
-                if (drug.equals("合资") || drug.equals("进口") || drug.equals("国产") ) {
+                if (drug.equals("合资") || drug.equals("进口") || drug.equals("国产")) {
                     continue;
                 }
                 matchSum = getMatchSum(inputInfo.getFirstCourseRecordDoc(), allDoctorWradDocs, doctorAdviceDate, drug, matchSum, 2);
@@ -103,7 +104,7 @@ public class THR02986 extends QCCatalogue {
         for (ThreeLevelWardDoc threeLevelWardDoc : allDoctorWradDocs) {
             Map<String, String> wardDocStructureMap = threeLevelWardDoc.getStructureMap();
             String wardDateStr = wardDocStructureMap.get("查房日期");
-            if(StringUtils.isNotBlank(wardDateStr)){
+            if (StringUtils.isNotBlank(wardDateStr)) {
                 wardDateStr = wardDateStr.split(" ")[0];
             }
             String content = wardDocStructureMap.get("病情记录") + wardDocStructureMap.get("治疗计划和措施");
@@ -116,4 +117,81 @@ public class THR02986 extends QCCatalogue {
         }
         return matchSum;
     }
+
+    private static final String[] JS = { "瑞格列奈片", "西格列汀片", "维格列汀片", "伏格列波糖片", "[合资]二甲双胍片"
+            , "[进口]硫辛酸针", "[合资]阿卡波糖片", "格列齐特缓释片", "达格列净片", "[合资]格列美脲片", "[绿叶]阿卡波糖胶囊"
+            , "[海汇]格列美脲片", "格列吡嗪缓释胶囊", "[国产]阿卡波糖片", "格列吡嗪控释片", "[国产]二甲双胍片", "沙格列汀片"
+            , "吡格列酮二甲双胍片", "[艾可拓]吡格列酮片", "阿仑膦酸钠维D3片", "[卡司平]吡格列酮片", "[国产]硫辛酸针"
+            , "格列喹酮片", "[国产]阿仑膦酸钠肠溶片", "那格列奈片", "[自备]格列齐特-II片",
+            "[特]门冬胰岛素针",
+            "[预填充]甘精胰岛素针",
+            "[优泌乐50]精蛋白锌赖脯胰岛素针",
+            "[特30]门冬胰岛素30针",
+            "左旋甲状腺素片",
+            "胰岛素针",
+            "[进口]奥曲肽针",
+            "[优泌乐25]精蛋白锌赖脯胰岛素针",
+            "[国产]生长抑素针",
+            "[国产]特利加压素针",
+            "[国产]奥曲肽针",
+            "[诺和灵30R]精蛋白生物合成人胰岛素针",
+            "谷赖胰岛素针",
+            "地特胰岛素针",
+            "[进口]生长抑素针",
+            "甲巯咪唑片",
+            "降钙素针",
+            "[优泌乐]赖脯胰岛素针",
+            "利拉鲁肽针",
+            "重组甘精胰岛素针",
+            "[70/30]精蛋白锌重组人胰岛素针",
+            "[预灌封优泌乐50]精蛋白锌赖脯胰岛素针",
+            "黄体酮针",
+            "地屈孕酮片",
+            "50/50混合重组人胰岛素针",
+            "炔诺酮片",
+            "[进口]特利加压素针",
+            "戊酸雌二醇片",
+            "4.5iu生长激素针",
+            "生物合成人胰岛素针",
+            "米非司酮片",
+            "[进口]黄体酮软胶囊",
+            "十一酸睾酮胶囊",
+            "[芯中效]精蛋白锌重组人胰岛素针",
+            "[国产]丙硫氧嘧啶片",
+            "[国产]黄体酮胶囊",
+            "[芯常规]重组人胰岛素针",
+            "[自备]重组甘精胰岛素针",
+            "[密盖息]降钙素鼻喷剂",
+            "甲羟孕酮片",
+            "替勃龙片",
+            "[金尔力]降钙素鼻喷剂",
+            "雷洛昔芬片",
+            "瑞格列奈片",
+            "西格列汀片",
+            "维格列汀片",
+            "伏格列波糖片",
+            "[合资]二甲双胍片",
+            "[进口]硫辛酸针",
+            "[合资]阿卡波糖片",
+            "格列齐特缓释片",
+            "达格列净片",
+            "[合资]格列美脲片",
+            "[绿叶]阿卡波糖胶囊",
+            "[海汇]格列美脲片",
+            "格列吡嗪缓释胶囊",
+            "[国产]阿卡波糖片",
+            "格列吡嗪控释片",
+            "[国产]二甲双胍片",
+            "吡格列酮二甲双胍片",
+            "沙格列汀片",
+            "[艾可拓]吡格列酮片",
+            "阿仑膦酸钠维D3片",
+            "[卡司平]吡格列酮片",
+            "[国产]硫辛酸针",
+            "格列喹酮片",
+            "[国产]阿仑膦酸钠肠溶片",
+            "那格列奈片",
+            "[自备]格列齐特-II片"
+    };
+
 }

+ 72 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR03065.java

@@ -0,0 +1,72 @@
+package com.lantone.qc.kernel.catalogue.threelevelward;
+
+import com.google.common.collect.Lists;
+import com.lantone.qc.kernel.catalogue.QCCatalogue;
+import com.lantone.qc.kernel.util.CatalogueUtil;
+import com.lantone.qc.pub.model.InputInfo;
+import com.lantone.qc.pub.model.OutputInfo;
+import com.lantone.qc.pub.model.doc.LeaveHospitalDoc;
+import com.lantone.qc.pub.model.doc.LisDoc;
+import com.lantone.qc.pub.util.StringUtil;
+import org.springframework.stereotype.Component;
+
+import java.util.Date;
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ * @author HUJING
+ * @create 2020-08-14 15:52
+ * @desc 住院48小时以上无血尿常规化验结果
+ **/
+@Component
+public class THR03065 extends QCCatalogue {
+    public void start(InputInfo inputInfo, OutputInfo outputInfo) {
+        status.set("0");
+        LeaveHospitalDoc leaveHospitalDoc = inputInfo.getLeaveHospitalDoc();
+        List<LisDoc> lisDocs = inputInfo.getLisDocs();
+        if (lisDocs == null) {
+            return;
+        }
+        if (leaveHospitalDoc != null) {
+            String beginDateStr = leaveHospitalDoc.getStructureMap().get("入院时间");
+            String endDateStr = leaveHospitalDoc.getStructureMap().get("出院时间");
+            if (StringUtil.isBlank(beginDateStr) || StringUtil.isBlank(endDateStr)) {
+                return;
+            }
+            Date beginDate = StringUtil.parseDateTime(beginDateStr);
+            Date endDate = StringUtil.parseDateTime(endDateStr);
+            if (beginDate == null || endDate == null) {
+                return;
+            }
+            if (!CatalogueUtil.compareTime(beginDate, endDate, 48 * 60L)) {
+                return;
+            }
+        }
+        List<String> lisName = lisDocs.stream().map(LisDoc::getStructureMap).map(x -> x.get("报告名称")).collect(Collectors.toList());
+        //      血常规                尿常规
+        boolean findCBC = false, findUrineTest = false;
+        for (String lis : lisName) {
+            if (lis.contains("血常规") || lis.contains("CBC")) {
+                findCBC = true;
+            }
+            if (lis.contains("尿常规")) {
+                findUrineTest = true;
+            }
+        }
+
+        List<String> miss = Lists.newArrayList();
+        if (!findCBC) {
+            miss.add("血常规");
+        }
+        if (!findUrineTest) {
+            miss.add("尿常规");
+        }
+
+        if (miss.size() > 0) {
+            status.set("-1");
+            info.set(miss.toString().replaceAll("[\\[\\]]", ""));
+        }
+    }
+
+}

+ 1 - 0
public/src/main/java/com/lantone/qc/pub/Content.java

@@ -311,5 +311,6 @@ public class Content {
             "yyyy-MM-ddHH:mm:ss.000",
             "yyyyMMddHH:mm",
             "yyyy-MM-dd'T'HH:mm:ss",
+            "yyyy-MM-ddTHH:mm:ss",
     };
 }

+ 2 - 0
public/src/main/java/com/lantone/qc/pub/model/InputInfo.java

@@ -59,6 +59,8 @@ public class InputInfo {
     private List<DoctorAdviceDoc> doctorAdviceDocs = new ArrayList<>();
     //化验信息
     private List<LisDoc> lisDocs = new ArrayList<>();
+    //辅检信息
+    private List<PacsDoc> pacsDocs = new ArrayList<>();
     //值班交接制度
     private List<DutyShiftSystemDoc> dutyShiftSystemDocs = new ArrayList<>();
     //首次病程录

+ 14 - 0
public/src/main/java/com/lantone/qc/pub/model/doc/PacsDoc.java

@@ -0,0 +1,14 @@
+package com.lantone.qc.pub.model.doc;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description: 辅检文档
+ * @author: HUJING
+ * @time: 2020/8/14 13:16
+ */
+@Getter
+@Setter
+public class PacsDoc extends ModelDoc {
+}

+ 4 - 0
trans/src/main/java/com/lantone/qc/trans/shaoyf/ShaoyfDocTrans.java

@@ -161,6 +161,10 @@ public class ShaoyfDocTrans extends DocTrans {
                     ShaoyfLisDocTrans shaoyfLisDocTrans = new ShaoyfLisDocTrans();
                     inputInfo.setLisDocs(shaoyfLisDocTrans.extract(i));
                     break;
+                case "辅检":
+                    ShaoyfPacsDocTrans shaoyfPacsDocTrans = new ShaoyfPacsDocTrans();
+                    inputInfo.setPacsDocs(shaoyfPacsDocTrans.extract(i));
+                    break;
                 default:
                     break;
             }

+ 6 - 7
trans/src/main/java/com/lantone/qc/trans/shaoyf/ShaoyfLisDocTrans.java

@@ -1,7 +1,6 @@
 package com.lantone.qc.trans.shaoyf;
 
 import com.google.common.collect.Lists;
-import com.lantone.qc.pub.model.doc.DoctorAdviceDoc;
 import com.lantone.qc.pub.model.doc.LisDoc;
 import com.lantone.qc.pub.model.vo.MedrecVo;
 import com.lantone.qc.pub.util.FastJsonUtils;
@@ -22,16 +21,16 @@ public class ShaoyfLisDocTrans extends ModelDocTrans {
         List<LisDoc> retList = Lists.newArrayList();
         List<String> contents = (List) medrecVo.getContent().get("content");
         contents.forEach(content -> {
-            retList.add(getDoctorAdviceDoc((Map) FastJsonUtils.getJsonToMap(content)));
+            retList.add(getLisDoc((Map) FastJsonUtils.getJsonToMap(content)));
         });
         return retList;
     }
 
-    private LisDoc getDoctorAdviceDoc(Map<String, String> content) {
-        LisDoc doctorAdviceDoc = new LisDoc();
-        doctorAdviceDoc.setStructureMap(content);
-        doctorAdviceDoc.setPageData((Map) content);
-        return doctorAdviceDoc;
+    private LisDoc getLisDoc(Map<String, String> content) {
+        LisDoc lisDoc = new LisDoc();
+        lisDoc.setStructureMap(content);
+        lisDoc.setPageData((Map) content);
+        return lisDoc;
     }
 
 }

+ 36 - 0
trans/src/main/java/com/lantone/qc/trans/shaoyf/ShaoyfPacsDocTrans.java

@@ -0,0 +1,36 @@
+package com.lantone.qc.trans.shaoyf;
+
+import com.google.common.collect.Lists;
+import com.lantone.qc.pub.model.doc.PacsDoc;
+import com.lantone.qc.pub.model.vo.MedrecVo;
+import com.lantone.qc.pub.util.FastJsonUtils;
+import com.lantone.qc.trans.ModelDocTrans;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Description: 辅检信息文档生成
+ * @author: HUJING
+ * @time: 2020/8/14 13:17
+ */
+public class ShaoyfPacsDocTrans extends ModelDocTrans {
+
+    @Override
+    public List<PacsDoc> extract(MedrecVo medrecVo) {
+        List<PacsDoc> retList = Lists.newArrayList();
+        List<String> contents = (List) medrecVo.getContent().get("content");
+        contents.forEach(content -> {
+            retList.add(getPacsDoc((Map) FastJsonUtils.getJsonToMap(content)));
+        });
+        return retList;
+    }
+
+    private PacsDoc getPacsDoc(Map<String, String> content) {
+        PacsDoc pacsDoc = new PacsDoc();
+        pacsDoc.setStructureMap(content);
+        pacsDoc.setPageData((Map) content);
+        return pacsDoc;
+    }
+
+}