Browse Source

增加解析相关代码

liuqq 4 years atrás
parent
commit
3c3757f789
33 changed files with 334 additions and 55 deletions
  1. 3 0
      src/main/java/com/diagbot/client/QcServiceClient.java
  2. 5 0
      src/main/java/com/diagbot/client/hystrix/QcServiceHystrix.java
  3. 1 0
      src/main/java/com/diagbot/config/ResourceServerConfigurer.java
  4. 1 0
      src/main/java/com/diagbot/config/security/UrlAccessDecisionManager.java
  5. 93 0
      src/main/java/com/diagbot/enums/ModeIdFacadeEnum.java
  6. 17 0
      src/main/java/com/diagbot/facade/QcClientFacade.java
  7. 4 2
      src/main/java/com/diagbot/facade/data/AMedAdmissionNoteFacade.java
  8. 5 5
      src/main/java/com/diagbot/facade/data/AMedBloodResultFacade.java
  9. 4 2
      src/main/java/com/diagbot/facade/data/AMedBloodTransfusionFacade.java
  10. 4 2
      src/main/java/com/diagbot/facade/data/AMedConsultationApplyFacade.java
  11. 4 2
      src/main/java/com/diagbot/facade/data/AMedConsultationNoteFacade.java
  12. 4 2
      src/main/java/com/diagbot/facade/data/AMedConsultationResultFacade.java
  13. 4 2
      src/main/java/com/diagbot/facade/data/AMedCrisisNoteFacade.java
  14. 4 2
      src/main/java/com/diagbot/facade/data/AMedDeathDiscussionFacade.java
  15. 4 2
      src/main/java/com/diagbot/facade/data/AMedDeathNoteFacade.java
  16. 4 2
      src/main/java/com/diagbot/facade/data/AMedFirstRecordFacade.java
  17. 4 2
      src/main/java/com/diagbot/facade/data/AMedIllCriticallyFacade.java
  18. 4 2
      src/main/java/com/diagbot/facade/data/AMedIllSeriouslFacsde.java
  19. 4 2
      src/main/java/com/diagbot/facade/data/AMedLeaveHospitalFacade.java
  20. 4 2
      src/main/java/com/diagbot/facade/data/AMedOperativeFirstRecord.java
  21. 4 2
      src/main/java/com/diagbot/facade/data/AMedOperativeNoteFacade.java
  22. 4 2
      src/main/java/com/diagbot/facade/data/AMedPeriodConclusionFacade.java
  23. 4 2
      src/main/java/com/diagbot/facade/data/AMedPreoperativeDiscussionFacade.java
  24. 4 2
      src/main/java/com/diagbot/facade/data/AMedRescueNoteFacade.java
  25. 4 2
      src/main/java/com/diagbot/facade/data/AMedTransferInNoteFacade.java
  26. 4 2
      src/main/java/com/diagbot/facade/data/AMedTransferOutNoteFacade.java
  27. 4 2
      src/main/java/com/diagbot/facade/data/AMedWardRecordFacade.java
  28. 3 0
      src/main/java/com/diagbot/facade/data/AMedicalRecordFacade.java
  29. 65 0
      src/main/java/com/diagbot/facade/data/ColumnFacade.java
  30. 5 9
      src/main/java/com/diagbot/service/impl/ColumnServiceImpl.java
  31. 36 0
      src/main/java/com/diagbot/util/ColumnCacheUtil.java
  32. 11 0
      src/main/java/com/diagbot/vo/data/AColumnVO.java
  33. 9 1
      src/main/java/com/diagbot/web/DataController.java

+ 3 - 0
src/main/java/com/diagbot/client/QcServiceClient.java

@@ -21,6 +21,9 @@ public interface QcServiceClient {
     @PostMapping(value = "/analyse/rec")
     Response<OutputInfo> extract(URI uri, QueryVo queryVo);
 
+    @PostMapping(value = "/analyse/standardFieldDock")
+    Response<OutputInfo> analyseField(URI uri, QueryVo queryVo);
+
 }
 
 

+ 5 - 0
src/main/java/com/diagbot/client/hystrix/QcServiceHystrix.java

@@ -24,4 +24,9 @@ public class QcServiceHystrix implements QcServiceClient {
         log.error("【hystrix】调用{}异常", "extract");
         return null;
     }
+    @Override
+    public Response<OutputInfo> analyseField(URI uri, QueryVo queryVo){
+        log.error("【hystrix】调用{}异常", "analyseField");
+        return null;
+    }
 }

+ 1 - 0
src/main/java/com/diagbot/config/ResourceServerConfigurer.java

@@ -158,6 +158,7 @@ public class ResourceServerConfigurer extends ResourceServerConfigurerAdapter {
                 .antMatchers("/qc/data/sendHomeOperation").permitAll()
                 .antMatchers("/qc/data/sendCrisis").permitAll()
                 .antMatchers("/qc/data/getColumnZhAndCh").permitAll()
+                .antMatchers("/qc/data/analyseRec").permitAll()
                 .antMatchers("/qc/doctoradvice/getPage").permitAll()
                 .antMatchers("/qc/medPacsInfo/getCheckPage").permitAll()
                 .antMatchers("/qc/medLisInfo/getExaminePage").permitAll()

+ 1 - 0
src/main/java/com/diagbot/config/security/UrlAccessDecisionManager.java

@@ -202,6 +202,7 @@ public class UrlAccessDecisionManager implements AccessDecisionManager {
                 || matchers("/qc/data/sendHomeOperation", request)
                 || matchers("/qc/data/sendCrisis", request)
                 || matchers("/qc/data/getColumnZhAndCh", request)
+                || matchers("/qc/data/analyseRec", request)
                 || matchers("/qc/doctoradvice/getPage", request)
                 || matchers("/qc/medPacsInfo/getCheckPage", request)
                 || matchers("/qc/medLisInfo/getExaminePage", request)

+ 93 - 0
src/main/java/com/diagbot/enums/ModeIdFacadeEnum.java

@@ -0,0 +1,93 @@
+package com.diagbot.enums;
+
+import com.diagbot.core.KeyedNamed;
+import lombok.Setter;
+
+public enum ModeIdFacadeEnum implements KeyedNamed {
+
+    BEHOSPITAL_INFO(1, "aMedAdmissionNoteFacade"),
+    FIRST_RECORD(2, "aMedFirstRecordFacade"),
+    DEATH_DISCUSSION(3, "死亡病例讨论记录"),
+    WARD_RECORD(4, "查房记录"),
+    LEAVE_HOSPITAL(5, "出院小结"),
+    HOME_PAGE(6, "病案首页"),
+    /*
+    CONSULTATION_NOTE1(7, "会诊记录"),
+            (8, "医嘱信息"),
+            (9, "交接班记录"),
+            (10, "输血/血制品病程记录"),
+            (11, "术前讨论、术前小结"),
+            (12, "麻醉记录"),
+            (13, "麻醉知情同意书"),
+            (14, "麻醉术前访视记录"),
+            (15, "麻醉术后访视记录"),
+            (16, "手术知情同意书"),
+            (18, "术后首次病程及谈话记录"),
+    (20, "手术风险评估表"),
+    (21, "手术安全核查表"),
+    DIFFICULT_CASE(19, "疑难病例讨论记录"),
+    OPERATIVE_NOTE(17, "手术记录"),
+    RESCUE_NOTE(22, "抢救记录"),
+    CRISIS_NOTE(23, "危急值记录"),
+    DEATH_NOTE(24, "死亡记录"),
+    ILL_CRITICALLY(25, "病危通知书"),
+    TRANSFER_IN_NOTE(26, "转入记录"),
+    TRANSFER_OUT_NOTE(27, "转出记录"),
+    PERIOD_CONCLUSION(28, "阶段小结"),
+    ILL_SERIOUSL(29, "病重通知书"),
+    */
+
+    CONSULTATION_APPLY(30, "aMedConsultationApplyFacade"),
+    CONSULTATION_RESULT(31, "aMedConsultationResultFacade"),
+    /*
+    DATA_MODEL(32, "输血后效果评价"),
+    DATA_MODEL(33, "专科交接单"),
+    DATA_MODEL(34, "转科记录"),
+    DATA_MODEL(35, "病理检验送检单"),
+    DATA_MODEL(36, "自定义病程记录"),
+    DATA_MODEL(37, "病程信息"),
+    DATA_MODEL(52, "授权知情同意书"),
+    DATA_MODEL(53, "知情同意书"),
+    DATA_MODEL(54, "谈话告知书"),
+    DATA_MODEL(56, "日常病程录"),
+    OTHER(55, "其他"),
+    PACS_INTO(57, "检查信息"),
+    LIS_INFO(58, "检验信息"),
+    LIS_INFO(59, "有创操作"),
+    */
+    CONSULTATION_NOTE(60, "aMedConsultationNoteFacade");
+    @Setter
+    private int key;
+
+    @Setter
+    private String name;
+
+    ModeIdFacadeEnum(int key, String name) {
+        this.key = key;
+        this.name = name;
+    }
+
+    public static ModeIdFacadeEnum getEnum(int key) {
+        for (ModeIdFacadeEnum item : ModeIdFacadeEnum.values()) {
+            if (item.key == key) {
+                return item;
+            }
+        }
+        return null;
+    }
+
+    public static String getName(int key) {
+        ModeIdFacadeEnum item = getEnum(key);
+        return item != null ? item.name : null;
+    }
+
+    @Override
+    public int getKey() {
+        return key;
+    }
+
+    @Override
+    public String getName() {
+        return name;
+    }
+}

+ 17 - 0
src/main/java/com/diagbot/facade/QcClientFacade.java

@@ -41,4 +41,21 @@ public class QcClientFacade {
 
         return qcServiceClient.extract(uri, queryVo);
     }
+
+    public Response<OutputInfo> analyseField(QueryVo queryVo) {
+        URI uri = null;
+        String code = "active_profiles_" + SpringContextUtil.getActiveProfile();
+        String url = sysHospitalSetFacade.getValue(Long.valueOf(queryVo.getHospitalId()), code);
+        if (StringUtil.isBlank(url)) {
+            throw new CommonException(CommonErrorCode.NOT_EXISTS, "配置表内找不到评分接口地址数据!");
+        }
+        try {
+            url="http://192.168.2.186:6010";
+            uri = new URI(url);
+        } catch (Exception e) {
+            throw new CommonException(CommonErrorCode.SERVER_IS_ERROR);
+        }
+
+        return qcServiceClient.extract(uri, queryVo);
+    }
 }

+ 4 - 2
src/main/java/com/diagbot/facade/data/AMedAdmissionNoteFacade.java

@@ -15,7 +15,7 @@ public class AMedAdmissionNoteFacade extends MedAdmissionNoteServiceImpl {
     @Autowired
     private ColumnFacade columnFacade;
 
-    public Boolean getColumnZhAndCh(){
+    public void getColumnZhAndCh(){
         List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
         list.forEach(s->{
             s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
@@ -25,6 +25,8 @@ public class AMedAdmissionNoteFacade extends MedAdmissionNoteServiceImpl {
         Boolean flag=columnFacade.createColumn(columnMap,"medAdmissionNote");
 
         //Map<String, String> map=columnFacade.getColumn("medConsultationNote");
-        return flag;
+        if(!flag){
+            return;
+        }
     }
 }

+ 5 - 5
src/main/java/com/diagbot/facade/data/AMedBloodResultFacade.java

@@ -15,16 +15,16 @@ public class AMedBloodResultFacade extends MedBloodResultServiceImpl {
     @Autowired
     private ColumnFacade columnFacade;
 
-    public Boolean getColumnZhAndCh(){
+    public void getColumnZhAndCh(){
         List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
         list.forEach(s->{
             s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
         });
-
         Map<String, String> columnMap= EntityUtil.makeMapWithKeyValue(list,"ch","en");
         Boolean flag=columnFacade.createColumn(columnMap,"medBloodResul");
-
-        //Map<String, String> map=columnFacade.getColumn("medConsultationNote");
-        return flag;
+        if(!flag){
+            return;
+        }
+        //Map<String, String> map=columnFacade.getColumn("medBloodResul");
     }
 }

+ 4 - 2
src/main/java/com/diagbot/facade/data/AMedBloodTransfusionFacade.java

@@ -15,7 +15,7 @@ public class AMedBloodTransfusionFacade extends MedBloodTransfusionServiceImpl {
     @Autowired
     private ColumnFacade columnFacade;
 
-    public Boolean getColumnZhAndCh(){
+    public void getColumnZhAndCh(){
         List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
         list.forEach(s->{
             s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
@@ -25,6 +25,8 @@ public class AMedBloodTransfusionFacade extends MedBloodTransfusionServiceImpl {
         Boolean flag=columnFacade.createColumn(columnMap,"medBloodTransfusion");
 
         //Map<String, String> map=columnFacade.getColumn("medConsultationNote");
-        return flag;
+        if(!flag){
+            return;
+        }
     }
 }

+ 4 - 2
src/main/java/com/diagbot/facade/data/AMedConsultationApplyFacade.java

@@ -15,7 +15,7 @@ public class AMedConsultationApplyFacade extends MedConsultationApplyServiceImpl
     @Autowired
     private ColumnFacade columnFacade;
 
-    public Boolean getColumnZhAndCh(){
+    public void getColumnZhAndCh(){
         List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
         list.forEach(s->{
             s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
@@ -25,6 +25,8 @@ public class AMedConsultationApplyFacade extends MedConsultationApplyServiceImpl
         Boolean flag=columnFacade.createColumn(columnMap,"medConsultationApply");
 
         //Map<String, String> map=columnFacade.getColumn("medConsultationNote");
-        return flag;
+        if(!flag){
+            return;
+        }
     }
 }

+ 4 - 2
src/main/java/com/diagbot/facade/data/AMedConsultationNoteFacade.java

@@ -16,7 +16,7 @@ public class AMedConsultationNoteFacade extends MedConsultationNoteServiceImpl {
     @Autowired
     private ColumnFacade columnFacade;
 
-    public Boolean getColumnZhAndCh(){
+    public void getColumnZhAndCh(){
         List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
         list.forEach(s->{
             s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
@@ -26,7 +26,9 @@ public class AMedConsultationNoteFacade extends MedConsultationNoteServiceImpl {
         Boolean flag=columnFacade.createColumn(columnMap,"medConsultationNote");
 
         //Map<String, String> map=columnFacade.getColumn("medConsultationNote");
-        return flag;
+        if(!flag){
+            return;
+        }
     }
 
 }

+ 4 - 2
src/main/java/com/diagbot/facade/data/AMedConsultationResultFacade.java

@@ -16,7 +16,7 @@ public class AMedConsultationResultFacade extends MedConsultationResultServiceIm
     @Autowired
     private ColumnFacade columnFacade;
 
-    public Boolean getColumnZhAndCh(){
+    public void getColumnZhAndCh(){
         List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
         list.forEach(s->{
             s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
@@ -26,6 +26,8 @@ public class AMedConsultationResultFacade extends MedConsultationResultServiceIm
         Boolean flag=columnFacade.createColumn(columnMap,"medConsultationResult");
 
         //Map<String, String> map=columnFacade.getColumn("medConsultationNote");
-        return flag;
+        if(!flag){
+            return;
+        }
     }
 }

+ 4 - 2
src/main/java/com/diagbot/facade/data/AMedCrisisNoteFacade.java

@@ -15,7 +15,7 @@ public class AMedCrisisNoteFacade extends MedCrisisNoteServiceImpl {
     @Autowired
     private ColumnFacade columnFacade;
 
-    public Boolean getColumnZhAndCh(){
+    public void getColumnZhAndCh(){
         List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
         list.forEach(s->{
             s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
@@ -25,6 +25,8 @@ public class AMedCrisisNoteFacade extends MedCrisisNoteServiceImpl {
         Boolean flag=columnFacade.createColumn(columnMap,"medCrisisNoteFacade");
 
         //Map<String, String> map=columnFacade.getColumn("medConsultationNote");
-        return flag;
+        if(!flag){
+            return;
+        }
     }
 }

+ 4 - 2
src/main/java/com/diagbot/facade/data/AMedDeathDiscussionFacade.java

@@ -15,7 +15,7 @@ public class AMedDeathDiscussionFacade extends MedDeathDiscussionServiceImpl {
     @Autowired
     private ColumnFacade columnFacade;
 
-    public Boolean getColumnZhAndCh(){
+    public void getColumnZhAndCh(){
         List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
         list.forEach(s->{
             s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
@@ -25,6 +25,8 @@ public class AMedDeathDiscussionFacade extends MedDeathDiscussionServiceImpl {
         Boolean flag=columnFacade.createColumn(columnMap,"medDeathDiscussion");
 
         //Map<String, String> map=columnFacade.getColumn("medConsultationNote");
-        return flag;
+        if(!flag){
+            return;
+        }
     }
 }

+ 4 - 2
src/main/java/com/diagbot/facade/data/AMedDeathNoteFacade.java

@@ -15,7 +15,7 @@ public class AMedDeathNoteFacade extends MedDeathNoteServiceImpl {
     @Autowired
     private ColumnFacade columnFacade;
 
-    public Boolean getColumnZhAndCh(){
+    public void getColumnZhAndCh(){
         List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
         list.forEach(s->{
             s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
@@ -25,6 +25,8 @@ public class AMedDeathNoteFacade extends MedDeathNoteServiceImpl {
         Boolean flag=columnFacade.createColumn(columnMap,"medDeathNote");
 
         //Map<String, String> map=columnFacade.getColumn("medConsultationNote");
-        return flag;
+        if(!flag){
+            return;
+        }
     }
 }

+ 4 - 2
src/main/java/com/diagbot/facade/data/AMedFirstRecordFacade.java

@@ -16,7 +16,7 @@ public class AMedFirstRecordFacade extends MedFirstRecordServiceImpl {
     @Autowired
     private ColumnFacade columnFacade;
 
-    public Boolean getColumnZhAndCh(){
+    public void getColumnZhAndCh(){
         List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
         list.forEach(s->{
             s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
@@ -26,6 +26,8 @@ public class AMedFirstRecordFacade extends MedFirstRecordServiceImpl {
         Boolean flag=columnFacade.createColumn(columnMap,"medFirstRecord");
 
         //Map<String, String> map=columnFacade.getColumn("medConsultationNote");
-        return flag;
+        if(!flag){
+            return;
+        }
     }
 }

+ 4 - 2
src/main/java/com/diagbot/facade/data/AMedIllCriticallyFacade.java

@@ -16,7 +16,7 @@ public class AMedIllCriticallyFacade extends MedIllCriticallyServiceImpl {
     @Autowired
     private ColumnFacade columnFacade;
 
-    public Boolean getColumnZhAndCh(){
+    public void getColumnZhAndCh(){
         List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
         list.forEach(s->{
             s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
@@ -26,6 +26,8 @@ public class AMedIllCriticallyFacade extends MedIllCriticallyServiceImpl {
         Boolean flag=columnFacade.createColumn(columnMap,"medIllCritically");
 
         //Map<String, String> map=columnFacade.getColumn("medConsultationNote");
-        return flag;
+        if(!flag){
+            return;
+        }
     }
 }

+ 4 - 2
src/main/java/com/diagbot/facade/data/AMedIllSeriouslFacsde.java

@@ -16,7 +16,7 @@ public class AMedIllSeriouslFacsde extends MedIllSeriouslServiceImpl {
     @Autowired
     private ColumnFacade columnFacade;
 
-    public Boolean getColumnZhAndCh(){
+    public void getColumnZhAndCh(){
         List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
         list.forEach(s->{
             s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
@@ -26,6 +26,8 @@ public class AMedIllSeriouslFacsde extends MedIllSeriouslServiceImpl {
         Boolean flag=columnFacade.createColumn(columnMap,"medIllSeriousl");
 
         //Map<String, String> map=columnFacade.getColumn("medConsultationNote");
-        return flag;
+        if(!flag){
+            return;
+        }
     }
 }

+ 4 - 2
src/main/java/com/diagbot/facade/data/AMedLeaveHospitalFacade.java

@@ -15,7 +15,7 @@ public class AMedLeaveHospitalFacade extends MedLeaveHospitalServiceImpl {
     @Autowired
     private ColumnFacade columnFacade;
 
-    public Boolean getColumnZhAndCh(){
+    public void getColumnZhAndCh(){
         List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
         list.forEach(s->{
             s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
@@ -25,6 +25,8 @@ public class AMedLeaveHospitalFacade extends MedLeaveHospitalServiceImpl {
         Boolean flag=columnFacade.createColumn(columnMap,"medLeaveHospital");
 
         //Map<String, String> map=columnFacade.getColumn("medConsultationNote");
-        return flag;
+        if(!flag){
+            return;
+        }
     }
 }

+ 4 - 2
src/main/java/com/diagbot/facade/data/AMedOperativeFirstRecord.java

@@ -16,7 +16,7 @@ public class AMedOperativeFirstRecord extends MedOperativeFirstRecordServiceImpl
     @Autowired
     private ColumnFacade columnFacade;
 
-    public Boolean getColumnZhAndCh(){
+    public void getColumnZhAndCh(){
         List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
         list.forEach(s->{
             s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
@@ -26,6 +26,8 @@ public class AMedOperativeFirstRecord extends MedOperativeFirstRecordServiceImpl
         Boolean flag=columnFacade.createColumn(columnMap,"medOperativeFirstRecord");
 
         //Map<String, String> map=columnFacade.getColumn("medConsultationNote");
-        return flag;
+        if(!flag){
+            return;
+        }
     }
 }

+ 4 - 2
src/main/java/com/diagbot/facade/data/AMedOperativeNoteFacade.java

@@ -15,7 +15,7 @@ public class AMedOperativeNoteFacade extends MedOperativeNoteServiceImpl {
     @Autowired
     private ColumnFacade columnFacade;
 
-    public Boolean getColumnZhAndCh(){
+    public void getColumnZhAndCh(){
         List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
         list.forEach(s->{
             s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
@@ -25,6 +25,8 @@ public class AMedOperativeNoteFacade extends MedOperativeNoteServiceImpl {
         Boolean flag=columnFacade.createColumn(columnMap,"medOperativeNote");
 
         //Map<String, String> map=columnFacade.getColumn("medConsultationNote");
-        return flag;
+        if(!flag){
+            return;
+        }
     }
 }

+ 4 - 2
src/main/java/com/diagbot/facade/data/AMedPeriodConclusionFacade.java

@@ -16,7 +16,7 @@ public class AMedPeriodConclusionFacade extends MedPeriodConclusionServiceImpl {
     @Autowired
     private ColumnFacade columnFacade;
 
-    public Boolean getColumnZhAndCh(){
+    public void getColumnZhAndCh(){
         List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
         list.forEach(s->{
             s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
@@ -26,7 +26,9 @@ public class AMedPeriodConclusionFacade extends MedPeriodConclusionServiceImpl {
         Boolean flag=columnFacade.createColumn(columnMap,"medPeriodConclusion");
 
         //Map<String, String> map=columnFacade.getColumn("medConsultationNote");
-        return flag;
+        if(!flag){
+            return;
+        }
     }
 
 }

+ 4 - 2
src/main/java/com/diagbot/facade/data/AMedPreoperativeDiscussionFacade.java

@@ -15,7 +15,7 @@ public class AMedPreoperativeDiscussionFacade extends MedPreoperativeDiscussionS
     @Autowired
     private ColumnFacade columnFacade;
 
-    public Boolean getColumnZhAndCh(){
+    public void getColumnZhAndCh(){
         List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
         list.forEach(s->{
             s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
@@ -25,6 +25,8 @@ public class AMedPreoperativeDiscussionFacade extends MedPreoperativeDiscussionS
         Boolean flag=columnFacade.createColumn(columnMap,"medPreoperativeDiscussion");
 
         //Map<String, String> map=columnFacade.getColumn("medConsultationNote");
-        return flag;
+        if(!flag){
+            return;
+        }
     }
 }

+ 4 - 2
src/main/java/com/diagbot/facade/data/AMedRescueNoteFacade.java

@@ -15,7 +15,7 @@ public class AMedRescueNoteFacade extends MedRescueNoteServiceImpl {
     @Autowired
     private ColumnFacade columnFacade;
 
-    public Boolean getColumnZhAndCh(){
+    public void getColumnZhAndCh(){
         List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
         list.forEach(s->{
             s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
@@ -25,6 +25,8 @@ public class AMedRescueNoteFacade extends MedRescueNoteServiceImpl {
         Boolean flag=columnFacade.createColumn(columnMap,"medRescueNote");
 
         //Map<String, String> map=columnFacade.getColumn("medConsultationNote");
-        return flag;
+        if(!flag){
+            return;
+        }
     }
 }

+ 4 - 2
src/main/java/com/diagbot/facade/data/AMedTransferInNoteFacade.java

@@ -16,7 +16,7 @@ public class AMedTransferInNoteFacade extends MedTransferInNoteServiceImpl {
     @Autowired
     private ColumnFacade columnFacade;
 
-    public Boolean getColumnZhAndCh(){
+    public void getColumnZhAndCh(){
         List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
         list.forEach(s->{
             s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
@@ -26,7 +26,9 @@ public class AMedTransferInNoteFacade extends MedTransferInNoteServiceImpl {
         Boolean flag=columnFacade.createColumn(columnMap,"medTransferInNote");
 
         //Map<String, String> map=columnFacade.getColumn("medConsultationNote");
-        return flag;
+        if(!flag){
+            return;
+        }
     }
 
 }

+ 4 - 2
src/main/java/com/diagbot/facade/data/AMedTransferOutNoteFacade.java

@@ -16,7 +16,7 @@ public class AMedTransferOutNoteFacade extends MedTransferOutNoteServiceImpl {
     @Autowired
     private ColumnFacade columnFacade;
 
-    public Boolean getColumnZhAndCh(){
+    public void getColumnZhAndCh(){
         List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
         list.forEach(s->{
             s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
@@ -26,6 +26,8 @@ public class AMedTransferOutNoteFacade extends MedTransferOutNoteServiceImpl {
         Boolean flag=columnFacade.createColumn(columnMap,"medTransferOutNote");
 
         //Map<String, String> map=columnFacade.getColumn("medConsultationNote");
-        return flag;
+        if(!flag){
+            return;
+        }
     }
 }

+ 4 - 2
src/main/java/com/diagbot/facade/data/AMedWardRecordFacade.java

@@ -15,7 +15,7 @@ public class AMedWardRecordFacade extends MedWardRecordServiceImpl {
     @Autowired
     private ColumnFacade columnFacade;
 
-    public Boolean getColumnZhAndCh(){
+    public void getColumnZhAndCh(){
         List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
         list.forEach(s->{
             s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
@@ -25,6 +25,8 @@ public class AMedWardRecordFacade extends MedWardRecordServiceImpl {
         Boolean flag=columnFacade.createColumn(columnMap,"medWardRecord");
 
         //Map<String, String> map=columnFacade.getColumn("medConsultationNote");
-        return flag;
+        if(!flag){
+            return;
+        }
     }
 }

+ 3 - 0
src/main/java/com/diagbot/facade/data/AMedicalRecordFacade.java

@@ -52,6 +52,9 @@ public class AMedicalRecordFacade extends MedicalRecordServiceImpl {
     @Autowired
     private QcTypeFacade qcTypeFacade;
 
+    @Autowired
+    private ColumnFacade columnFacade;
+
     @Autowired
     private ReadProperties readProperties;
 

+ 65 - 0
src/main/java/com/diagbot/facade/data/ColumnFacade.java

@@ -1,8 +1,73 @@
 package com.diagbot.facade.data;
 
+import com.diagbot.dto.OutputInfo;
+import com.diagbot.dto.Response;
+import com.diagbot.entity.MedicalRecord;
+import com.diagbot.enums.ModeIdEnum;
+import com.diagbot.facade.QcClientFacade;
 import com.diagbot.service.impl.ColumnServiceImpl;
+import com.diagbot.vo.MedrecVo;
+import com.diagbot.vo.QueryVo;
+import com.google.common.collect.Lists;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+@Slf4j
 @Component
 public class ColumnFacade extends ColumnServiceImpl {
+
+    @Autowired
+    private QcClientFacade qcClientFacade;
+
+    @Autowired
+    private AMedAdmissionNoteFacade aMedAdmissionNoteFacade;
+
+    @Autowired
+    private AMedFirstRecordFacade aMedFirstRecordFacade;
+
+    /**
+     * 解析
+     * @param modeId
+     */
+    public void analyseRec(String hospitalId, Long modeId, MedicalRecord medicalRecord){
+        try {
+            String modelName= ModeIdEnum.getName(Integer.parseInt(modeId.toString()));
+            QueryVo queryVo=new QueryVo();
+            List<MedrecVo> list= Lists.newArrayList();
+            MedrecVo medrecVo=new MedrecVo();
+            medrecVo.setTitle(modelName);
+            Map<String, Object> map=new HashMap<String, Object>();
+            map.put("content",medicalRecord);
+            medrecVo.setContent(map);
+
+            list.add(medrecVo);
+            queryVo.setHospitalId(hospitalId);
+            queryVo.setMedrec(list);
+
+            Response<OutputInfo> resp=qcClientFacade.analyseField(queryVo);
+            if(resp!=null && resp.getData()!=null && resp.getData().getPageData().size()>0){
+                Map<String,Object> pageData=resp.getData().getPageData();
+
+            }
+
+            /*
+            String voName=ModeIdFacadeEnum.getName(Integer.parseInt(modeId.toString()));
+            MedFirstRecord
+
+            aMedFirstRecordFacade.save();
+            */
+
+            log.info(modelName+"---- 解析完成!");
+        }catch (Exception e){
+            log.error(e.getMessage(),e);
+        }
+
+
+
+    }
 }

+ 5 - 9
src/main/java/com/diagbot/service/impl/ColumnServiceImpl.java

@@ -1,9 +1,6 @@
 package com.diagbot.service.impl;
 
-import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
-import com.diagbot.dto.data.ColumnZhAndChDTO;
 import com.diagbot.service.ColumnService;
-import com.diagbot.util.EntityUtil;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
@@ -13,7 +10,6 @@ import org.springframework.data.redis.core.RedisCallback;
 import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.stereotype.Service;
 
-import java.util.List;
 import java.util.Map;
 
 @Slf4j
@@ -58,20 +54,20 @@ public class ColumnServiceImpl implements ColumnService {
     @Override
     public Map<String, String> getColumn(String tableResKey) {
         final byte[] redis_key =serializeKey(tableResKey);
-        List<ColumnZhAndChDTO> list=(List<ColumnZhAndChDTO>)redisForTable.execute(new RedisCallback<List<ColumnZhAndChDTO>>() {
+        Map<String, String> columnMap=(Map<String, String>)redisForTable.execute(new RedisCallback<Map<String, String>>() {
             @Override
-            public List<ColumnZhAndChDTO> doInRedis(RedisConnection connection) throws DataAccessException {
+            public Map<String, String> doInRedis(RedisConnection connection) throws DataAccessException {
                 byte[] bytes = connection.get(redis_key);
                 if (bytes == null) {
                     return null;
                 }
-                return (List<ColumnZhAndChDTO>) deserializeValue(bytes);
+                return (Map<String, String>) deserializeValue(bytes);
             }
         });
-        list.forEach(s->{
+        /*list.forEach(s->{
             s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
         });
-        Map<String, String> columnMap= EntityUtil.makeMapWithKeyValue(list,"ch","en");
+        Map<String, String> columnMap= EntityUtil.makeMapWithKeyValue(list,"ch","en");*/
         return columnMap;
     }
 }

+ 36 - 0
src/main/java/com/diagbot/util/ColumnCacheUtil.java

@@ -0,0 +1,36 @@
+package com.diagbot.util;
+
+import com.diagbot.facade.data.AMedBloodResultFacade;
+import com.diagbot.facade.data.AMedBloodTransfusionFacade;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.ApplicationArguments;
+import org.springframework.boot.ApplicationRunner;
+import org.springframework.stereotype.Component;
+
+@Slf4j
+@Component
+/**
+ * 启动时执行缓存,将字段名和注释存储到MAP类型的缓存中
+ */
+public class ColumnCacheUtil implements ApplicationRunner {
+
+    @Autowired
+    private AMedBloodResultFacade aMedBloodResultFacade;
+
+    @Autowired
+    private AMedBloodTransfusionFacade aMedBloodTransfusionFacade;
+
+    @Override
+    public void run(ApplicationArguments args) throws Exception {
+        try {
+            aMedBloodResultFacade.getColumnZhAndCh();
+
+            aMedBloodTransfusionFacade.getColumnZhAndCh();
+
+            log.info("列名和注释缓存初始化完成!");
+        }catch (Exception e){
+            log.error(e.getMessage(),e);
+        }
+    }
+}

+ 11 - 0
src/main/java/com/diagbot/vo/data/AColumnVO.java

@@ -0,0 +1,11 @@
+package com.diagbot.vo.data;
+
+import com.diagbot.entity.MedicalRecord;
+import lombok.Data;
+
+@Data
+public class AColumnVO {
+    private String hospitalId;
+    private Long modeId;
+    private MedicalRecord medicalRecord;
+}

+ 9 - 1
src/main/java/com/diagbot/web/DataController.java

@@ -155,5 +155,13 @@ public class DataController {
         aMedConsultationNoteFacade.getColumnZhAndCh();
         return RespDTO.onSuc(true);
     }
-
+    @Autowired
+    private ColumnFacade columnFacade;
+    @ApiOperation(value = "病历解析")
+    @PostMapping("/analyseRec")
+    @SysLogger("analyseRec")
+    public RespDTO analyseRec(@RequestBody AColumnVO aColumnVO){
+        columnFacade.analyseRec(aColumnVO.getHospitalId(),aColumnVO.getModeId(),aColumnVO.getMedicalRecord());
+        return RespDTO.onSuc(true);
+    }
 }