Prechádzať zdrojové kódy

Merge branch 'dev/20220228_v3.0.1通用版_渠道管理第一期' into test

zhanghang 3 rokov pred
rodič
commit
b4c8922f44

+ 9 - 7
daqe-center/src/main/java/com/lantone/daqe/facade/ColumnResultManagementFacade.java

@@ -333,7 +333,7 @@ public class ColumnResultManagementFacade {
         List<NonnullInfo> nonnullInfoList = new ArrayList<>();
         List<GetRegular> regularList = new ArrayList<>();
         List<GetStandardvalueInfoDTO> standardvalueList = new ArrayList<>();
-        List<String> behospitalCodeList = null;
+        List<String> behospitalCodeList = new ArrayList<>();
         Date startDate = DateUtil.addDate(DateUtil.now(), -1);
         Date endDate = DateUtil.now();
         //先获取非空的所有字段校验规则
@@ -380,25 +380,27 @@ public class ColumnResultManagementFacade {
             }
         }
         //先判断是否存在规则有修改
-        if (ListUtil.isNotEmpty(nonnullInfoList) && ListUtil.isNotEmpty(standardvalueList) && ListUtil.isNotEmpty(regularList)) {
+        if (ListUtil.isNotEmpty(nonnullInfoList) || ListUtil.isNotEmpty(standardvalueList) || ListUtil.isNotEmpty(regularList)) {
             //获取30天内所有病历
             List<BehospitalInfo> behospitalInfos = getBehospitalInfos(DateUtil.addDate(DateUtil.now(), -30), DateUtil.now(), hospitalId);
-            for (BehospitalInfo behospitalInfo : behospitalInfos) {
-                behospitalCodeList.add(behospitalInfo.getBehospitalCode());
+            if(ListUtil.isNotEmpty(behospitalInfos)) {
+                for (BehospitalInfo behospitalInfo : behospitalInfos) {
+                    behospitalCodeList.add(behospitalInfo.getBehospitalCode());
+                }
             }
         }
         //非空校验规则今天有修改
-        if (ListUtil.isNotEmpty(nonnullInfoList)) {
+        if (ListUtil.isNotEmpty(nonnullInfoList) && ListUtil.isNotEmpty(behospitalCodeList)) {
             //调用校验非空规则方法
             checkNonnull(nonnullInfos, behospitalCodeList, hospitalId,principleId);
         }
         //正则校验规则今天有修改
-        if (ListUtil.isNotEmpty(regularList)) {
+        if (ListUtil.isNotEmpty(regularList) && ListUtil.isNotEmpty(behospitalCodeList)) {
             //调用校验正则规则
             checkRegular(regularMappings, behospitalCodeList, hospitalId,principleId);
         }
         //标准值校验规则今天有修改
-        if (ListUtil.isNotEmpty(standardvalueList)) {
+        if (ListUtil.isNotEmpty(standardvalueList) && ListUtil.isNotEmpty(behospitalCodeList)) {
             //调用校验正则规则
             checkStandardvalue(standardvalueInfo, behospitalCodeList, hospitalId,principleId);
         }

+ 3 - 3
daqe-center/src/main/resources/bootstrap.yml

@@ -59,18 +59,18 @@ swagger.version: 0.0.1-SNAPSHOT
 #数据比对定时器
 blockloss:
   compare:
-    cron: 0 0/1 * * * ?
+    cron: 0 0 1 * * ?
     use: true
     hospitalId: 4
 #数据校验定时器
 columnResult:
   compare:
-    cron: 0 0/1 * * ?
+    cron: 0 30 1 * * ?
     use: true
     hospitalId: 4
 #修改规则数据校验定时器
 upColumnResult:
   compare:
-    cron: 0 0/0 * * ?
+    cron: 0 0 2 * * ?
     use: true
     hospitalId: 4

+ 20 - 0
document/docker/docker-compose-debug.yml

@@ -148,6 +148,26 @@ services:
       - register-center
       - config-center
     command: ["/wait-for-it.sh", "-t", "6000", "config-center:7751", "--", "java", "-jar", "-Xms256m", "-Xmx1024m", "/app.jar"]
+  mdsp-service:
+    image: 192.168.2.125:4490/emrais.debug/mdsp-service:latest
+    container_name: emrais.mdsp-service
+    ports:
+      - 8809:8809
+    environment:
+      - TZ=Asia/Shanghai
+      - eureka-addr=register-center
+      - eureka-port=6751
+      - spring.profiles.active=debug
+      - log-level=debug
+      - jasypt.encryptor.password=${JASYPT_PWD_PUBLIC}
+    volumes:
+      - /logs:/logs
+      - /etc/localtime:/etc/localtime
+    restart: always
+    depends_on:
+      - register-center
+      - config-center
+    command: ["/wait-for-it.sh", "-t", "6000", "config-center:7751", "--", "java", "-jar", "-Xms256m", "-Xmx1024m", "/app.jar"]
   structure-center:
     image: 192.168.2.125:4490/emrais.debug/structure-center:latest
     container_name: emrais.structure-center

+ 20 - 0
document/docker/docker-compose-inner.yml

@@ -148,6 +148,26 @@ services:
       - register-center
       - config-center
     command: ["/wait-for-it.sh", "-t", "6000", "config-center:7751", "--", "java", "-jar", "-Xms256m", "-Xmx1024m", "/app.jar"]
+  mdsp-service:
+    image: 192.168.2.125:4490/emrais.inner/mdsp-service:latest
+    container_name: emrais.mdsp-service
+    ports:
+      - 8809:8809
+    environment:
+      - TZ=Asia/Shanghai
+      - eureka-addr=register-center
+      - eureka-port=6751
+      - spring.profiles.active=inner
+      - log-level=error
+      - jasypt.encryptor.password=${JASYPT_PWD_PUBLIC}
+    volumes:
+      - /logs:/logs
+      - /etc/localtime:/etc/localtime
+    restart: always
+    depends_on:
+      - register-center
+      - config-center
+    command: ["/wait-for-it.sh", "-t", "6000", "config-center:7751", "--", "java", "-jar", "-Xms256m", "-Xmx1024m", "/app.jar"]
   structure-center:
     image: 192.168.2.125:4490/emrais.inner/structure-center:latest
     container_name: emrais.structure-center

+ 20 - 0
document/docker/docker-compose-outer.yml

@@ -148,6 +148,26 @@ services:
       - register-center
       - config-center
     command: ["/wait-for-it.sh", "-t", "6000", "config-center:7751", "--", "java", "-jar", "-Xms256m", "-Xmx1024m", "/app.jar"]
+  mdsp-service:
+    image: 192.168.2.125:4490/emrais.outer/mdsp-service:latest
+    container_name: emrais.mdsp-service
+    ports:
+      - 8809:8809
+    environment:
+      - TZ=Asia/Shanghai
+      - eureka-addr=register-center
+      - eureka-port=6751
+      - spring.profiles.active=outer
+      - log-level=error
+      - jasypt.encryptor.password=${JASYPT_PWD_PUBLIC}
+    volumes:
+      - /logs:/logs
+      - /etc/localtime:/etc/localtime
+    restart: always
+    depends_on:
+      - register-center
+      - config-center
+    command: ["/wait-for-it.sh", "-t", "6000", "config-center:7751", "--", "java", "-jar", "-Xms256m", "-Xmx1024m", "/app.jar"]
   structure-center:
     image: 192.168.2.125:4490/emrais.outer/structure-center:latest
     container_name: emrais.structure-center

+ 20 - 0
document/docker/docker-compose-test.yml

@@ -148,6 +148,26 @@ services:
       - register-center
       - config-center
     command: ["/wait-for-it.sh", "-t", "6000", "config-center:7751", "--", "java", "-jar", "-Xms256m", "-Xmx1024m", "/app.jar"]
+  mdsp-service:
+    image: 192.168.2.125:4490/emrais.test/mdsp-service:latest
+    container_name: emrais.mdsp-service
+    ports:
+      - 8809:8809
+    environment:
+      - TZ=Asia/Shanghai
+      - eureka-addr=register-center
+      - eureka-port=6751
+      - spring.profiles.active=test
+      - log-level=info
+      - jasypt.encryptor.password=${JASYPT_PWD_PUBLIC}
+    volumes:
+      - /logs:/logs
+      - /etc/localtime:/etc/localtime
+    restart: always
+    depends_on:
+      - register-center
+      - config-center
+    command: ["/wait-for-it.sh", "-t", "6000", "config-center:7751", "--", "java", "-jar", "-Xms256m", "-Xmx1024m", "/app.jar"]
   structure-center:
     image: 192.168.2.125:4490/emrais.test/structure-center:latest
     container_name: emrais.structure-center

+ 6 - 0
mdsp-service/pom.xml

@@ -19,6 +19,12 @@
             <groupId>com.diagbot</groupId>
             <artifactId>common</artifactId>
             <version>0.0.1-SNAPSHOT</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>com.github.promeg</groupId>
+                    <artifactId>tinypinyin</artifactId>
+                </exclusion>
+            </exclusions>
         </dependency>
         <dependency>
             <groupId>com.lantone</groupId>

+ 19 - 0
mdsp-service/src/main/java/com/lantone/dto/med/TermConceptDTO.java

@@ -0,0 +1,19 @@
+package com.lantone.dto.med;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @author wangfeng
+ * @Description:
+ * @date 2021-06-10 19:51
+ */
+@Setter
+@Getter
+public class TermConceptDTO {
+    private Long id;
+    private String name;
+    private String code;
+    //数据来源(1-标准词、2-同义词、3-编码、4-历史数据、5-相似词、99-数据迁移)
+    private Integer source;
+}

+ 43 - 0
mdsp-service/src/main/java/com/lantone/facade/med/TermMatchingFacade.java

@@ -0,0 +1,43 @@
+package com.lantone.facade.med;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.util.StringUtil;
+import com.google.common.collect.Lists;
+import com.lantone.dto.med.TermConceptDTO;
+import com.lantone.entity.med.KlLibraryInfo;
+import com.lantone.vo.med.TermMatchingVO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+
+/**
+ * @author wangfeng
+ * @Description:
+ * @date 2021-06-10 19:48
+ */
+@Component
+public class TermMatchingFacade {
+
+    @Autowired
+    private KlLibraryInfoFacade klLibraryInfoFacade;
+
+    public List<TermConceptDTO> getTermMatchingAll(TermMatchingVO termMatchingVO) {
+        List<TermConceptDTO> ret = Lists.newArrayList();
+        QueryWrapper<KlLibraryInfo> klLibraryInfoQueryWrapper = new QueryWrapper<>();
+        klLibraryInfoQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey());
+        klLibraryInfoQueryWrapper.eq(termMatchingVO.getType() != null, "type_id", termMatchingVO.getType());
+        klLibraryInfoQueryWrapper.like(StringUtil.isNotBlank(termMatchingVO.getInputStr()), "name", termMatchingVO.getInputStr());
+        List<KlLibraryInfo> klLibraryInfoList = klLibraryInfoFacade.list(klLibraryInfoQueryWrapper);
+        klLibraryInfoList.forEach(i -> {
+            TermConceptDTO termConceptDTO = new TermConceptDTO();
+            termConceptDTO.setId(i.getConceptId());
+            termConceptDTO.setName(i.getName());
+            termConceptDTO.setSource(i.getIsConcept() == 1 ? 1 : 2);
+            ret.add(termConceptDTO);
+        });
+        return ret;
+    }
+
+}

+ 27 - 0
mdsp-service/src/main/java/com/lantone/vo/med/TermMatchingVO.java

@@ -0,0 +1,27 @@
+package com.lantone.vo.med;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+
+/**
+ * @author wangfeng
+ * @Description:
+ * @date 2021-06-10 19:54
+ */
+@Setter
+@Getter
+public class TermMatchingVO {
+    /**
+     * 类型:1-化验大项、2-化验小项、3-辅检、4-诊断、5-药品、6-手术和操作、7-科室、8-输血、9-症状
+     */
+    @NotNull(message = "请输入检索类型")
+    private Integer type;
+    /**
+     * 检索内容
+     */
+    @NotBlank(message = "请输入检索内容")
+    private String inputStr;
+}

+ 39 - 0
mdsp-service/src/main/java/com/lantone/web/med/TermMatchingController.java

@@ -0,0 +1,39 @@
+package com.lantone.web.med;
+
+import com.diagbot.dto.RespDTO;
+import com.lantone.dto.med.TermConceptDTO;
+import com.lantone.facade.med.TermMatchingFacade;
+import com.lantone.vo.med.TermMatchingVO;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.validation.Valid;
+import java.util.List;
+
+/**
+ * @author wangfeng
+ * @Description:
+ * @date 2021-06-10 19:43
+ */
+@RestController
+@RequestMapping("/term")
+@Api(value = "术语匹配相关API", tags = { "术语匹配相关API" })
+@SuppressWarnings("unchecked")
+public class TermMatchingController {
+    @Autowired
+    private TermMatchingFacade termMatchingFacade;
+
+    @ApiOperation(value = "术语匹配搜索[wangfeng]",
+            notes = "type: 类型:1-化验大项、2-化验小项、3-辅检、4-诊断、5-药品、6-手术和操作、7-科室、8-输血、9-症状、10-量表、11-护理、12-中医诊断、13-中医证候、14-麻醉、16-给药途径 <br>" +
+                    "inputStr: 检索内容<br>")
+    @PostMapping("/termMatching")
+    public RespDTO<List<TermConceptDTO>> getTermMatching(@Valid @RequestBody TermMatchingVO termMatchingVO) {
+        List<TermConceptDTO> data = termMatchingFacade.getTermMatchingAll(termMatchingVO);
+        return RespDTO.onSuc(data);
+    }
+}