Browse Source

+药品信息+诊疗指南

SGTY 10 months ago
parent
commit
5393b32d20
21 changed files with 135 additions and 27 deletions
  1. 9 0
      cdssman-service/src/main/java/com/diagbot/client/CdssClient.java
  2. 9 0
      cdssman-service/src/main/java/com/diagbot/client/CdssCoreClient.java
  3. 12 0
      cdssman-service/src/main/java/com/diagbot/client/hystrix/CdssCoreHystrix.java
  4. 7 0
      cdssman-service/src/main/java/com/diagbot/client/hystrix/CdssHystrix.java
  5. 1 1
      cdssman-service/src/main/java/com/diagbot/dto/ConceptDetailDTO.java
  6. 1 1
      cdssman-service/src/main/java/com/diagbot/dto/KlConceptDetailDTO.java
  7. 3 0
      cdssman-service/src/main/java/com/diagbot/dto/KlDrugDTO.java
  8. 1 1
      cdssman-service/src/main/java/com/diagbot/dto/StaticKnowledgeDetailDTO.java
  9. 4 0
      cdssman-service/src/main/java/com/diagbot/dto/StaticKnowledgeIndexDTO.java
  10. 1 1
      cdssman-service/src/main/java/com/diagbot/entity/ConceptDetail.java
  11. 1 1
      cdssman-service/src/main/java/com/diagbot/entity/KlConceptDetail.java
  12. 13 0
      cdssman-service/src/main/java/com/diagbot/entity/KlDrug.java
  13. 18 4
      cdssman-service/src/main/java/com/diagbot/facade/KlConceptStaticFacade.java
  14. 2 1
      cdssman-service/src/main/java/com/diagbot/facade/KlDrugFacade.java
  15. 21 14
      cdssman-service/src/main/java/com/diagbot/facade/MappingConfigFacade.java
  16. 1 1
      cdssman-service/src/main/java/com/diagbot/vo/ConceptDetailVO.java
  17. 1 1
      cdssman-service/src/main/java/com/diagbot/vo/KlConceptDetailVO.java
  18. 2 0
      cdssman-service/src/main/java/com/diagbot/vo/KlDrugVO.java
  19. 10 0
      cdssman-service/src/main/java/com/diagbot/web/ConceptInfoController.java
  20. 1 0
      cdssman-service/src/main/java/com/diagbot/web/KlConceptController.java
  21. 17 1
      cdssman-service/src/main/java/com/diagbot/web/MappingConfigController.java

+ 9 - 0
cdssman-service/src/main/java/com/diagbot/client/CdssClient.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.diagbot.client.hystrix.CdssHystrix;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.entity.MappingConfig;
+import com.diagbot.entity.wrapper.MappingCaseWrapper;
 import com.diagbot.entity.wrapper.MappingConfigWrapper;
 import com.diagbot.vo.IdListVO;
 import com.diagbot.vo.IdVO;
@@ -131,6 +132,14 @@ public interface CdssClient {
     @PostMapping("/tran/mappingConfig/getPage")
     RespDTO<Page<MappingConfigWrapper>> getPage(@RequestBody @Valid MappingConfigPageVO mappingConfigPageVO);
 
+    /**
+     * 分页查询
+     *
+     * @param mappingConfigPageVO
+     * @return
+     */
+    @PostMapping("/tran/mappingConfig/getClassicCase")
+    RespDTO<Page<MappingCaseWrapper>> getClassicCase(@RequestBody @Valid MappingConfigPageVO mappingConfigPageVO);
 
     /**
      * 获取映射关系

+ 9 - 0
cdssman-service/src/main/java/com/diagbot/client/CdssCoreClient.java

@@ -110,6 +110,15 @@ public interface CdssCoreClient {
     @PostMapping("/kl/conceptStatic/getRecordById")
     RespDTO<KlConceptStaticDTO> getRecordById(@Valid @RequestBody IdVO idVO);
 
+    /**
+     * 根据id获取经典病例
+     *
+     * @param idVO
+     * @return
+     */
+    @PostMapping("/kl/conceptStatic/getCaseById")
+    RespDTO<KlClassicCaseDTO> getCaseById(@Valid @RequestBody IdVO idVO);
+
     /**
      * 静态知识是否已存在
      *

+ 12 - 0
cdssman-service/src/main/java/com/diagbot/client/hystrix/CdssCoreHystrix.java

@@ -141,6 +141,18 @@ public class CdssCoreHystrix implements CdssCoreClient {
         return null;
     }
 
+    /**
+     * 根据id获取经典病例
+     *
+     * @param idVO
+     * @return
+     */
+    @Override
+    public RespDTO<KlClassicCaseDTO> getCaseById(@Valid @RequestBody IdVO idVO) {
+        log.error("【hystrix】调用{}异常", "getRecordById");
+        return null;
+    }
+
     /**
      * 静态知识是否已存在
      *

+ 7 - 0
cdssman-service/src/main/java/com/diagbot/client/hystrix/CdssHystrix.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.diagbot.client.CdssClient;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.entity.MappingConfig;
+import com.diagbot.entity.wrapper.MappingCaseWrapper;
 import com.diagbot.entity.wrapper.MappingConfigWrapper;
 import com.diagbot.vo.IdListVO;
 import com.diagbot.vo.IdVO;
@@ -102,6 +103,12 @@ public class CdssHystrix implements CdssClient {
         return null;
     }
 
+    @Override
+    public RespDTO<Page<MappingCaseWrapper>> getClassicCase(@Valid MappingConfigPageVO mappingConfigPageVO) {
+        log.error("【hystrix】调用{}异常", "getPage");
+        return null;
+    }
+
     @Override
     public RespDTO<MappingConfigWrapper> getRecord(@Valid IdVO idVO) {
         log.error("【hystrix】调用{}异常", "getRecord");

+ 1 - 1
cdssman-service/src/main/java/com/diagbot/dto/ConceptDetailDTO.java

@@ -37,7 +37,7 @@ public class ConceptDetailDTO {
     private Integer orderNo;
 
     /**
-     * 内容类型(多选):1-化验、辅检、手术和操作、诊断、药品静态信息,2-注意事项,3-临床路径,4-治疗方案
+     * 内容类型(多选):1-化验、辅检、手术和操作、诊断、药品静态信息,2-注意事项,3-临床路径,4-治疗方案,5-诊疗指南
      */
     private String contentType;
 }

+ 1 - 1
cdssman-service/src/main/java/com/diagbot/dto/KlConceptDetailDTO.java

@@ -37,7 +37,7 @@ public class KlConceptDetailDTO {
     private Integer orderNo;
 
     /**
-     * 内容类型(多选):1-化验、辅检、手术和操作、诊断、药品静态信息,2-注意事项,3-临床路径,4-治疗方案
+     * 内容类型(多选):1-化验、辅检、手术和操作、诊断、药品静态信息,2-注意事项,3-临床路径,4-治疗方案,5-诊疗指南
      */
     private String contentType;
 }

+ 3 - 0
cdssman-service/src/main/java/com/diagbot/dto/KlDrugDTO.java

@@ -20,6 +20,9 @@ public class KlDrugDTO implements Serializable {
     // 药品类别(0:西药,1:中成药)
     private Integer drug;
 
+    // 药品信息
+    private String drugInfo;
+
     // 通用药品名关联注册药品
     // private List<KlDrugMappingDTO> klDrugMappingDTOList = Lists.newLinkedList();
 

+ 1 - 1
cdssman-service/src/main/java/com/diagbot/dto/StaticKnowledgeDetailDTO.java

@@ -37,7 +37,7 @@ public class StaticKnowledgeDetailDTO {
     private Integer orderNo;
 
     /**
-     * 内容类型(多选):1-化验、辅检、手术和操作、诊断、药品静态信息,2-注意事项,3-临床路径,4-治疗方案
+     * 内容类型(多选):1-化验、辅检、手术和操作、诊断、药品静态信息,2-注意事项,3-临床路径,4-治疗方案,5-诊疗指南
      */
     private String contentType;
 }

+ 4 - 0
cdssman-service/src/main/java/com/diagbot/dto/StaticKnowledgeIndexDTO.java

@@ -63,6 +63,10 @@ public class StaticKnowledgeIndexDTO {
      * 是否有治疗方案静态知识
      */
     private Integer hasTreatInfo = 0;
+    /**
+     * 是否有诊疗指南静态知识
+     */
+    private Integer hasGuideInfo = 0;
     /**
      * 启用禁用
      */

+ 1 - 1
cdssman-service/src/main/java/com/diagbot/entity/ConceptDetail.java

@@ -77,7 +77,7 @@ public class ConceptDetail implements Serializable {
     private Integer orderNo;
 
     /**
-     * 内容类型(多选):1-化验、辅检、手术和操作、诊断、药品静态信息,2-注意事项,3-临床路径,4-治疗方案
+     * 内容类型(多选):1-化验、辅检、手术和操作、诊断、药品静态信息,2-注意事项,3-临床路径,4-治疗方案,5-诊疗指南
      */
     private String contentType;
 

+ 1 - 1
cdssman-service/src/main/java/com/diagbot/entity/KlConceptDetail.java

@@ -75,7 +75,7 @@ public class KlConceptDetail implements Serializable {
     private Integer orderNo;
 
     /**
-     * 内容类型(多选):1-化验、辅检、手术和操作、诊断、药品静态信息,2-注意事项,3-临床路径,4-治疗方案
+     * 内容类型(多选):1-化验、辅检、手术和操作、诊断、药品静态信息,2-注意事项,3-临床路径,4-治疗方案,5-诊疗指南
      */
     private String contentType;
 

+ 13 - 0
cdssman-service/src/main/java/com/diagbot/entity/KlDrug.java

@@ -61,6 +61,11 @@ public class KlDrug implements Serializable {
      */
     private Integer drug;
 
+    /**
+     * 药品信息
+     */
+    private String drugInfo;
+
     /**
      * 备注
      */
@@ -130,6 +135,14 @@ public class KlDrug implements Serializable {
         this.remark = remark;
     }
 
+    public void setDrugInfo(String drugInfo) {
+        this.drugInfo = drugInfo;
+    }
+
+    public String getDrugInfo() {
+        return drugInfo;
+    }
+
     @Override
     public String toString() {
         return "KlDrug{" +

+ 18 - 4
cdssman-service/src/main/java/com/diagbot/facade/KlConceptStaticFacade.java

@@ -5,10 +5,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.diagbot.client.CdssCoreClient;
 import com.diagbot.client.UserServiceClient;
-import com.diagbot.dto.KlConceptStaticDTO;
-import com.diagbot.dto.RespDTO;
-import com.diagbot.dto.StaticKnowledgeDTO;
-import com.diagbot.dto.StaticKnowledgeIndexDTO;
+import com.diagbot.dto.*;
 import com.diagbot.entity.KlConcept;
 import com.diagbot.entity.KlConceptDetail;
 import com.diagbot.entity.KlConceptStatic;
@@ -183,6 +180,23 @@ public class KlConceptStaticFacade extends KlConceptStaticServiceImpl {
         return klConceptStaticDTO;
     }
 
+    /**
+     * 根据经典病例id获取病例信息
+     *
+     * @param idVO
+     * @return
+     */
+    public KlClassicCaseDTO getCaseById(IdVO idVO) {
+        KlClassicCaseDTO klClassicCaseDTO = new KlClassicCaseDTO();
+        RespDTO<KlClassicCaseDTO> respDTO = cdssCoreClient.getCaseById(idVO);
+        if (RespDTOUtil.respIsOK(respDTO)) {
+            klClassicCaseDTO = respDTO.data;
+        } else {
+            throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, respDTO.msg);
+        }
+        return klClassicCaseDTO;
+    }
+
     /**
      * 是否已存在
      *

+ 2 - 1
cdssman-service/src/main/java/com/diagbot/facade/KlDrugFacade.java

@@ -31,12 +31,13 @@ public class KlDrugFacade extends KlDrugServiceImpl {
     public void getKlDrug(Long conceptId, KlConceptAllDTO klConceptAllDTO) {
         KlDrugDTO klDrugDTO = new KlDrugDTO();
 
-        // 获取药品类别(0:西药,1:中成药)
+        // 获取药品类别(0:西药,1:中成药)、药品信息
         KlDrug klDrug = this.getOne(new QueryWrapper<KlDrug>()
                 .eq("is_deleted", IsDeleteEnum.N.getKey())
                 .eq("concept_id", conceptId), false);
         if (klDrug != null) {
             klDrugDTO.setDrug(klDrug.getDrug());
+            klDrugDTO.setDrugInfo(klDrug.getDrugInfo());
         }
 
         // 获取关联注册药品信息(这里先不展示关联的注册药品)

+ 21 - 14
cdssman-service/src/main/java/com/diagbot/facade/MappingConfigFacade.java

@@ -22,20 +22,7 @@ import com.diagbot.entity.ScaleConfig;
 import com.diagbot.entity.TcmdiseaseConfig;
 import com.diagbot.entity.TcmsyndromeConfig;
 import com.diagbot.entity.TransfusionConfig;
-import com.diagbot.entity.wrapper.AdministrationRouteConfigWrapper;
-import com.diagbot.entity.wrapper.AnesthesiaConfigWrapper;
-import com.diagbot.entity.wrapper.DeptConfigWrapper;
-import com.diagbot.entity.wrapper.DiseaseConfigWrapper;
-import com.diagbot.entity.wrapper.DrugConfigWrapper;
-import com.diagbot.entity.wrapper.LisConfigWrapper;
-import com.diagbot.entity.wrapper.MappingConfigWrapper;
-import com.diagbot.entity.wrapper.NurseConfigWrapper;
-import com.diagbot.entity.wrapper.OperationConfigWrapper;
-import com.diagbot.entity.wrapper.PacsConfigWrapper;
-import com.diagbot.entity.wrapper.ScaleConfigWrapper;
-import com.diagbot.entity.wrapper.TcmdiseaseConfigWrapper;
-import com.diagbot.entity.wrapper.TcmsyndromeConfigWrapper;
-import com.diagbot.entity.wrapper.TransfusionConfigWrapper;
+import com.diagbot.entity.wrapper.*;
 import com.diagbot.enums.ConceptTypeEnum;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.enums.MatchSourceEnum;
@@ -54,6 +41,7 @@ import com.diagbot.vo.IdVO;
 import com.diagbot.vo.MappingConfigPageVO;
 import com.diagbot.vo.MappingConfigVO;
 import com.google.common.collect.Lists;
+import lombok.val;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 import org.springframework.web.multipart.MultipartFile;
@@ -265,6 +253,25 @@ public class MappingConfigFacade extends MappingConfigServiceImpl {
         } else {
             throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, respDTO.msg);
         }
+
+        return page;
+    }
+
+    /**
+     * 分页查询经典病例
+     *
+     * @param mappingConfigPageVO
+     * @return
+     */
+    public IPage<MappingCaseWrapper> getClassicCase(MappingConfigPageVO mappingConfigPageVO) {
+        Page<MappingCaseWrapper> page = null;
+        RespDTO<Page<MappingCaseWrapper>> respDTO = cdssClient.getClassicCase(mappingConfigPageVO);
+        if (RespDTOUtil.respIsOK(respDTO)) {
+            page = respDTO.data;
+        } else {
+            throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, respDTO.msg);
+        }
+
         return page;
     }
 

+ 1 - 1
cdssman-service/src/main/java/com/diagbot/vo/ConceptDetailVO.java

@@ -41,7 +41,7 @@ public class ConceptDetailVO {
     private Integer orderNo;
 
     /**
-     * 内容类型(多选):1-化验、辅检、手术和操作、诊断、药品静态信息,2-注意事项,3-临床路径,4-治疗方案
+     * 内容类型(多选):1-化验、辅检、手术和操作、诊断、药品静态信息,2-注意事项,3-临床路径,4-治疗方案,5-诊疗指南
      */
     private String contentType;
 }

+ 1 - 1
cdssman-service/src/main/java/com/diagbot/vo/KlConceptDetailVO.java

@@ -41,7 +41,7 @@ public class KlConceptDetailVO {
     private Integer orderNo;
 
     /**
-     * 内容类型(多选):1-化验、辅检、手术和操作、诊断、药品静态信息,2-注意事项,3-临床路径,4-治疗方案
+     * 内容类型(多选):1-化验、辅检、手术和操作、诊断、药品静态信息,2-注意事项,3-临床路径,4-治疗方案,5-诊疗指南
      */
     private String contentType;
 }

+ 2 - 0
cdssman-service/src/main/java/com/diagbot/vo/KlDrugVO.java

@@ -20,6 +20,8 @@ public class KlDrugVO implements Serializable {
     // 药品类别(0:西药,1:中成药)
     private Integer drug;
 
+    // 药品信息
+    private String drugInfo;
     // // 药品注册名Id列表
     // private List<Long> registerIdList = Lists.newLinkedList();
 

+ 10 - 0
cdssman-service/src/main/java/com/diagbot/web/ConceptInfoController.java

@@ -3,6 +3,7 @@ package com.diagbot.web;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.diagbot.annotation.SysLogger;
+import com.diagbot.dto.KlClassicCaseDTO;
 import com.diagbot.dto.KlConceptStaticDTO;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.StaticKnowledgeIndexDTO;
@@ -109,4 +110,13 @@ public class ConceptInfoController {
         KlConceptStaticDTO data = klConceptStaticFacade.getRecordById(idVO);
         return RespDTO.onSuc(data);
     }
+
+    @ApiOperation(value = "根据经典病例id获取病例信息[zhaops]",
+            notes = "id: 术语id <br>")
+    @PostMapping("/getCaseById")
+    @SysLogger("getCaseById")
+    public RespDTO<KlClassicCaseDTO> getCaseById(@Valid @RequestBody IdVO idVO) {
+        KlClassicCaseDTO data = klConceptStaticFacade.getCaseById(idVO);
+        return RespDTO.onSuc(data);
+    }
 }

+ 1 - 0
cdssman-service/src/main/java/com/diagbot/web/KlConceptController.java

@@ -104,6 +104,7 @@ public class KlConceptController {
                     "<br>" +
                     "【klDrugVO:药品通用名扩展】\n" +
                     "drug:药品类别(0:西药,1:中成药)\n" +
+                    "drugInfo:药品信息\n" +
 
                     "<br>" +
                     "【klSymptomVO:症状扩展信息】\n" +

+ 17 - 1
cdssman-service/src/main/java/com/diagbot/web/MappingConfigController.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.diagbot.annotation.SysLogger;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.entity.MappingConfig;
+import com.diagbot.entity.wrapper.MappingCaseWrapper;
 import com.diagbot.entity.wrapper.MappingConfigWrapper;
 import com.diagbot.facade.MappingConfigFacade;
 import com.diagbot.util.BeanUtil;
@@ -118,7 +119,7 @@ public class MappingConfigController {
                     "isMatch(选填,默认全部):是否匹配(0-未匹配、1-已匹配、2-多条匹配) <br>" +
                     "hisName(选填,模糊匹配):医院术语名称 <br>" +
                     "uniqueName(选填,模糊匹配):标准术语名称 <br>" +
-                    "type(必填): 类型:1-化验、3-辅检、4-诊断、5-药品、6-手术和操作、7-科室、8-输血、10-量表、11-护理、12-中医诊断、13-中医证候、14-麻醉、16-给药途径 <br>")
+                    "type(必填): 类型:1-化验、3-辅检、4-诊断、5-药品、6-手术和操作、7-科室、8-输血、10-量表、11-护理、12-中医诊断、13-中医证候、14-麻醉、16-给药途径" )
     @PostMapping("/getPage")
     @SysLogger("getPage")
     public RespDTO<Page<MappingConfigWrapper>> getPage(@RequestBody @Valid MappingConfigPageVO mappingConfigPageVO) {
@@ -128,6 +129,20 @@ public class MappingConfigController {
         return RespDTO.onSuc(data);
     }
 
+    @ApiOperation(value = "分页查询经典病例",
+            notes = "hospitalId(必填):医院id <br>" +
+                    "isMatch(选填,默认全部):是否匹配(0-未匹配、1-已匹配、2-多条匹配) <br>" +
+                    "hisName(必填):医院术语名称 <br>" +
+                    "uniqueName(选填,可为空):标准术语名称 <br>" +
+                    "type(必填): 类型:17-经典病例 <br>")
+    @PostMapping("/getClassicCase")
+    @SysLogger("getClassicCase")
+    public RespDTO<Page<MappingCaseWrapper>> getClassicCase(@RequestBody @Valid MappingConfigPageVO mappingConfigPageVO) {
+        IPage<MappingCaseWrapper> data = mappingConfigFacade.getClassicCase(mappingConfigPageVO);
+        Page<MappingCaseWrapper> page = new Page<>();
+        BeanUtil.copyProperties(data, page);
+        return RespDTO.onSuc(data);
+    }
 
     @ApiOperation(value = "获取映射关系[by:zhaops]",
             notes = "id:关联关系id")
@@ -204,4 +219,5 @@ public class MappingConfigController {
         Boolean data = mappingConfigFacade.deleteRecords(idListVO);
         return RespDTO.onSuc(data);
     }
+
 }