Explorar o código

化验公表映射从icss迁移至aipt

zhaops %!s(int64=5) %!d(string=hai) anos
pai
achega
2297d1dbaa

+ 146 - 0
aipt-service/src/main/java/com/diagbot/entity/LisMapping.java

@@ -0,0 +1,146 @@
+package com.diagbot.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.time.LocalDateTime;
+import java.io.Serializable;
+
+/**
+ * <p>
+ * 化验项目公表映射
+ * </p>
+ *
+ * @author zhaops
+ * @since 2019-09-20
+ */
+@TableName("kl_lis_mapping")
+public class LisMapping implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private LocalDateTime gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private LocalDateTime gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 化验套餐术语id
+     */
+    private Long mealId;
+
+    /**
+     * 化验明细术语id
+     */
+    private Long itemId;
+
+    /**
+     * 化验公表术语id
+     */
+    private Long uniqueId;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    public String getIsDeleted() {
+        return isDeleted;
+    }
+
+    public void setIsDeleted(String isDeleted) {
+        this.isDeleted = isDeleted;
+    }
+    public LocalDateTime getGmtCreate() {
+        return gmtCreate;
+    }
+
+    public void setGmtCreate(LocalDateTime gmtCreate) {
+        this.gmtCreate = gmtCreate;
+    }
+    public LocalDateTime getGmtModified() {
+        return gmtModified;
+    }
+
+    public void setGmtModified(LocalDateTime gmtModified) {
+        this.gmtModified = gmtModified;
+    }
+    public String getCreator() {
+        return creator;
+    }
+
+    public void setCreator(String creator) {
+        this.creator = creator;
+    }
+    public String getModifier() {
+        return modifier;
+    }
+
+    public void setModifier(String modifier) {
+        this.modifier = modifier;
+    }
+    public Long getMealId() {
+        return mealId;
+    }
+
+    public void setMealId(Long mealId) {
+        this.mealId = mealId;
+    }
+    public Long getItemId() {
+        return itemId;
+    }
+
+    public void setItemId(Long itemId) {
+        this.itemId = itemId;
+    }
+    public Long getUniqueId() {
+        return uniqueId;
+    }
+
+    public void setUniqueId(Long uniqueId) {
+        this.uniqueId = uniqueId;
+    }
+
+    @Override
+    public String toString() {
+        return "LisMapping{" +
+        "id=" + id +
+        ", isDeleted=" + isDeleted +
+        ", gmtCreate=" + gmtCreate +
+        ", gmtModified=" + gmtModified +
+        ", creator=" + creator +
+        ", modifier=" + modifier +
+        ", mealId=" + mealId +
+        ", itemId=" + itemId +
+        ", uniqueId=" + uniqueId +
+        "}";
+    }
+}

+ 18 - 0
aipt-service/src/main/java/com/diagbot/entity/wrapper/LisMappingWrapper.java

@@ -0,0 +1,18 @@
+package com.diagbot.entity.wrapper;
+
+import com.diagbot.entity.LisMapping;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2019/9/20 13:42
+ */
+@Getter
+@Setter
+public class LisMappingWrapper extends LisMapping {
+    private String mealName;
+    private String itemName;
+    private String uniqueName;
+}

+ 85 - 0
aipt-service/src/main/java/com/diagbot/facade/LisMappingFacade.java

@@ -0,0 +1,85 @@
+package com.diagbot.facade;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.diagbot.entity.LisMapping;
+import com.diagbot.entity.wrapper.LisMappingWrapper;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.service.impl.LisMappingServiceImpl;
+import com.diagbot.util.EntityUtil;
+import com.diagbot.util.ListUtil;
+import com.diagbot.util.StringUtil;
+import com.diagbot.vo.GetLisMappingVO;
+import com.google.common.collect.Lists;
+import org.springframework.stereotype.Component;
+
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2019/9/20 13:14
+ */
+@Component
+public class LisMappingFacade  extends LisMappingServiceImpl {
+
+    /**
+     * 获取化验公表映射关系 Map<mealName,Map<itemName,uniqueName>> itemName 不为空
+     * @param mealName
+     * @return
+     */
+    public Map<String, Map<String, String>> getLisMappingByMealName(String mealName) {
+        Map<String, Map<String, String>> retMap = new LinkedHashMap<>();
+        LisMappingWrapper lisMappingWrapper = new LisMappingWrapper();
+        lisMappingWrapper.setMealName(mealName);
+        List<LisMappingWrapper> lisMappingWrapperList = this.getLisMappingByName(lisMappingWrapper);
+
+        Map<String, List<LisMappingWrapper>> lisMappingMap = EntityUtil.makeEntityListMap(lisMappingWrapperList, "mealName");
+        for (Map.Entry<String, List<LisMappingWrapper>> entry : lisMappingMap.entrySet()) {
+            if (entry.getValue().size() > 0) {
+                retMap.put(entry.getKey(), EntityUtil.makeMapWithKeyValue(entry.getValue(), "itemName", "uniqueName"));
+            } else {
+                retMap.put(entry.getKey(), null);
+            }
+        }
+        return retMap;
+    }
+
+
+    /**
+     * 获取化验标签公表项
+     * @param getLisMappingVO
+     * @return
+     */
+    public Map<String, Map<String, String>> getLisMappingByQuestion(GetLisMappingVO getLisMappingVO) {
+        String project=getLisMappingVO.getProject();
+        List<String> details=getLisMappingVO.getDetails();
+        if (StringUtil.isBlank(project)) {
+            return null;
+        }
+
+        Map<String, Map<String, String>> lisMappingMap = getLisMappingByMealName(project);
+
+        Map<String, Map<String, String>> retMap = new LinkedHashMap<>();
+        if (lisMappingMap != null && lisMappingMap.get(project) != null) {
+            Map<String, String> projectMap = new LinkedHashMap<>();
+            projectMap.put(project, lisMappingMap.get(project).get(""));
+            retMap.put("project", projectMap);
+        }
+
+        if (ListUtil.isEmpty(details)) {
+            return retMap;
+        }
+
+        Map<String, String> detailMap = new LinkedHashMap<>();
+        Map<String, String> projectDetailMap = lisMappingMap.get(project);
+        if (projectDetailMap != null) {
+            for (String detail : details) {
+                detailMap.put(detail, projectDetailMap.get(detail));
+            }
+        }
+        retMap.put("details", detailMap);
+        return retMap;
+    }
+}

+ 26 - 0
aipt-service/src/main/java/com/diagbot/mapper/LisMappingMapper.java

@@ -0,0 +1,26 @@
+package com.diagbot.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.diagbot.entity.LisMapping;
+import com.diagbot.entity.wrapper.LisMappingWrapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 化验项目公表映射 Mapper 接口
+ * </p>
+ *
+ * @author zhaops
+ * @since 2019-09-20
+ */
+public interface LisMappingMapper extends BaseMapper<LisMapping> {
+    /**
+     * 获取化验公表映射
+     *
+     * @param lisMappingWrapper
+     * @return
+     */
+    List<LisMappingWrapper> getLisMappingByName(@Param("lisMappingWrapper") LisMappingWrapper lisMappingWrapper);
+}

+ 26 - 0
aipt-service/src/main/java/com/diagbot/service/LisMappingService.java

@@ -0,0 +1,26 @@
+package com.diagbot.service;
+
+import com.diagbot.entity.LisMapping;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.diagbot.entity.wrapper.LisMappingWrapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 化验项目公表映射 服务类
+ * </p>
+ *
+ * @author zhaops
+ * @since 2019-09-20
+ */
+public interface LisMappingService extends IService<LisMapping> {
+    /**
+     * 获取化验公表映射
+     *
+     * @param lisMappingWrapper
+     * @return
+     */
+    List<LisMappingWrapper> getLisMappingByName(@Param("lisMappingWrapper") LisMappingWrapper lisMappingWrapper);
+}

+ 35 - 0
aipt-service/src/main/java/com/diagbot/service/impl/LisMappingServiceImpl.java

@@ -0,0 +1,35 @@
+package com.diagbot.service.impl;
+
+import com.diagbot.entity.LisMapping;
+import com.diagbot.entity.wrapper.LisMappingWrapper;
+import com.diagbot.mapper.LisMappingMapper;
+import com.diagbot.service.LisMappingService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import lombok.Builder;
+import org.apache.ibatis.annotations.Param;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 化验项目公表映射 服务实现类
+ * </p>
+ *
+ * @author zhaops
+ * @since 2019-09-20
+ */
+@Service
+public class LisMappingServiceImpl extends ServiceImpl<LisMappingMapper, LisMapping> implements LisMappingService {
+
+    /**
+     * 获取化验公表映射
+     *
+     * @param lisMappingWrapper
+     * @return
+     */
+    @Override
+    public List<LisMappingWrapper> getLisMappingByName(@Param("lisMappingWrapper") LisMappingWrapper lisMappingWrapper) {
+        return this.baseMapper.getLisMappingByName(lisMappingWrapper);
+    }
+}

+ 20 - 0
aipt-service/src/main/java/com/diagbot/vo/GetLisMappingVO.java

@@ -0,0 +1,20 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+import java.util.List;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2019/9/20 14:01
+ */
+@Getter
+@Setter
+public class GetLisMappingVO {
+    @NotBlank(message = "请输入化验套餐项")
+    private String project;
+    private List<String> details;
+}

+ 47 - 0
aipt-service/src/main/java/com/diagbot/web/LisMappingController.java

@@ -0,0 +1,47 @@
+package com.diagbot.web;
+
+
+import com.diagbot.annotation.SysLogger;
+import com.diagbot.dto.RespDTO;
+import com.diagbot.facade.LisMappingFacade;
+import com.diagbot.vo.GetLisMappingVO;
+import com.rabbitmq.client.AMQP;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import jdk.nashorn.internal.ir.annotations.Ignore;
+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.stereotype.Controller;
+import org.springframework.web.bind.annotation.RestController;
+import springfox.documentation.annotations.ApiIgnore;
+
+import java.util.Map;
+
+/**
+ * <p>
+ * 化验项目公表映射 前端控制器
+ * </p>
+ *
+ * @author zhaops
+ * @since 2019-09-20
+ */
+@RestController
+@RequestMapping("/lisMapping")
+@Api(value = "化验大小项和公表映射相关API", tags = { "化验大小项和公表映射相关API" })
+@ApiIgnore
+public class LisMappingController {
+    @Autowired
+    LisMappingFacade lisMappingFacade;
+
+    @ApiOperation(value = "知识库标准化-推理接口[by:zhaops]",
+            notes = "project: 化验大项(必填)<br>" +
+                    "details:化验小项,List<String><br>")
+    @PostMapping("/getLisMappingByQuestion")
+    @SysLogger("getLisMappingByQuestion")
+    RespDTO<Map<String, Map<String, String>>> getLisMappingByQuestion(@RequestBody  GetLisMappingVO getLisMappingVO) {
+        return RespDTO.onSuc(lisMappingFacade.getLisMappingByQuestion(getLisMappingVO));
+    }
+}

+ 67 - 0
aipt-service/src/main/resources/mapper/LisMappingMapper.xml

@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.diagbot.mapper.LisMappingMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.diagbot.entity.LisMapping">
+        <id column="id" property="id" />
+        <result column="is_deleted" property="isDeleted" />
+        <result column="gmt_create" property="gmtCreate" />
+        <result column="gmt_modified" property="gmtModified" />
+        <result column="creator" property="creator" />
+        <result column="modifier" property="modifier" />
+        <result column="meal_id" property="mealId" />
+        <result column="item_id" property="itemId" />
+        <result column="unique_id" property="uniqueId" />
+    </resultMap>
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultDTOMap" type="com.diagbot.entity.wrapper.LisMappingWrapper">
+        <id column="id" property="id" />
+        <result column="is_deleted" property="isDeleted" />
+        <result column="gmt_create" property="gmtCreate" />
+        <result column="gmt_modified" property="gmtModified" />
+        <result column="creator" property="creator" />
+        <result column="modifier" property="modifier" />
+        <result column="meal_id" property="mealId" />
+        <result column="item_id" property="itemId" />
+        <result column="unique_id" property="uniqueId" />
+        <result column="meal_name" property="mealName" />
+        <result column="item_name" property="itemName" />
+        <result column="unique_name" property="uniqueName" />
+    </resultMap>
+
+    <!-- 公表查询 -->
+    <select id="getLisMappingByName" resultMap="BaseResultDTOMap">
+        SELECT
+        lis_mapping.*, IFNULL(item_con.lib_name,"") AS item_name
+        FROM
+        (
+        SELECT
+        lis.*, meal_con.lib_name AS meal_name,
+        unique_con.lib_name AS unique_name
+        FROM
+        kl_lis_mapping lis,
+        kl_concept meal_con,
+        kl_concept unique_con
+        WHERE
+        lis.is_deleted = 'N'
+        AND meal_con.is_deleted = 'N'
+        AND unique_con.is_deleted = 'N'
+        AND lis.meal_id = meal_con.id
+        AND lis.unique_id = unique_con.id
+        ) lis_mapping
+        LEFT JOIN kl_concept item_con ON lis_mapping.item_id = item_con.id
+        AND item_con.is_deleted = 'N'
+        WHERE 1=1
+        <if test="lisMappingWrapper.mealName != null and lisMappingWrapper.mealName != '' ">
+            and lis_mapping.meal_name like concat('%',#{lisMappingWrapper.mealName},'%')
+        </if>
+        <if test="lisMappingWrapper.itemName != null and lisMappingWrapper.itemName != '' ">
+            and item_con.lib_name like concat('%',#{lisMappingWrapper.itemName},'%')
+        </if>
+        <if test="lisMappingWrapper.uniqueName != null and lisMappingWrapper.uniqueName != '' ">
+            and lis_mapping.unique_name like concat('%',#{lisMappingWrapper.uniqueName},'%')
+        </if>
+    </select>
+</mapper>

+ 4 - 0
icss-service/src/main/java/com/diagbot/client/AiptServiceClient.java

@@ -33,6 +33,7 @@ import com.diagbot.vo.DeptInfoVO;
 import com.diagbot.vo.DisScaleVO;
 import com.diagbot.vo.ExistListByConceptIdsVO;
 import com.diagbot.vo.GetDiseaseIcdVO;
+import com.diagbot.vo.GetLisMappingVO;
 import com.diagbot.vo.GetStaticKnowledgeVO;
 import com.diagbot.vo.GetTopPatientInfoVO;
 import com.diagbot.vo.IndexConfigdiseaseNameVO;
@@ -232,4 +233,7 @@ public interface AiptServiceClient {
      */
     @PostMapping("/concept/getStaticKnowledge")
     RespDTO<List<RetrievalDTO>> getStaticKnowledge(GetStaticKnowledgeVO getStaticKnowledgeVO);
+
+    @PostMapping("/lisMapping/getLisMappingByQuestion")
+    RespDTO<Map<String, Map<String, String>>> getLisMappingByQuestion(GetLisMappingVO getLisMappingVO);
 }

+ 8 - 1
icss-service/src/main/java/com/diagbot/client/hystrix/AiptServiceHystrix.java

@@ -33,6 +33,7 @@ import com.diagbot.vo.DeptInfoVO;
 import com.diagbot.vo.DisScaleVO;
 import com.diagbot.vo.ExistListByConceptIdsVO;
 import com.diagbot.vo.GetDiseaseIcdVO;
+import com.diagbot.vo.GetLisMappingVO;
 import com.diagbot.vo.GetStaticKnowledgeVO;
 import com.diagbot.vo.GetTopPatientInfoVO;
 import com.diagbot.vo.IndexConfigdiseaseNameVO;
@@ -173,7 +174,7 @@ public class AiptServiceHystrix implements AiptServiceClient {
      * @return 术语id和术语 Map
      */
     @Override
-    public RespDTO<Map<Long, String>> getConceptCondMap(@RequestBody ConceptFindVO conceptFindVO){
+    public RespDTO<Map<Long, String>> getConceptCondMap(@RequestBody ConceptFindVO conceptFindVO) {
         log.error("【hystrix】调用{}异常", "getConceptMap");
         return null;
     }
@@ -297,4 +298,10 @@ public class AiptServiceHystrix implements AiptServiceClient {
         log.error("【hystrix】调用{}异常", "getStaticKnowledge");
         return null;
     }
+
+    @Override
+    public RespDTO<Map<String, Map<String, String>>> getLisMappingByQuestion(GetLisMappingVO getLisMappingVO) {
+        log.error("【hystrix】调用{}异常", "getLisMappingByQuestion");
+        return null;
+    }
 }

+ 3 - 2
icss-service/src/main/java/com/diagbot/facade/AssembleFacade.java

@@ -65,7 +65,8 @@ public class AssembleFacade {
 
         //化验项映射,转公表
         if (ListUtil.isNotEmpty(pushVO.getLis())) {
-            List<String> mealNameList = pushVO.getLis().stream().map(lisResult -> lisResult.getName()).collect(Collectors.toList());
+            searchData.setLisArr(pushVO.getLis());
+           /* List<String> mealNameList = pushVO.getLis().stream().map(lisResult -> lisResult.getName()).collect(Collectors.toList());
             Map<String, Map<String, String>> lisConfigMap = lisMappingFacade.getLisMappingByMealName(mealNameList);
             for (LisResult lisResult : pushVO.getLis()) {
                 //source=0 icss页面数据,source=1 外部导入数据,外部导入数据不处理
@@ -83,7 +84,7 @@ public class AssembleFacade {
                 }
             }
             List<LisResult> lisResultList = BeanUtil.listCopyTo(pushVO.getLis(), LisResult.class);
-            searchData.setLisArr(lisResultList);
+            searchData.setLisArr(lisResultList);*/
         }
         return searchData;
     }

+ 21 - 10
icss-service/src/main/java/com/diagbot/facade/QuestionCacheFacade.java

@@ -1,6 +1,8 @@
 package com.diagbot.facade;
 
+import com.diagbot.client.AiptServiceClient;
 import com.diagbot.dto.QuestionDTO;
+import com.diagbot.dto.RespDTO;
 import com.diagbot.entity.QuestionDetail;
 import com.diagbot.entity.QuestionInfo;
 import com.diagbot.entity.wrapper.QuestionInfoWrapper;
@@ -9,10 +11,13 @@ import com.diagbot.service.impl.QuestionInfoServiceImpl;
 import com.diagbot.util.BeanUtil;
 import com.diagbot.util.EntityUtil;
 import com.diagbot.util.ListUtil;
+import com.diagbot.util.RespDTOUtil;
+import com.diagbot.vo.GetLisMappingVO;
 import com.diagbot.vo.QuestionVO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.cache.annotation.Cacheable;
 import org.springframework.stereotype.Component;
+import springfox.documentation.annotations.ApiIgnore;
 
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -31,7 +36,7 @@ public class QuestionCacheFacade extends QuestionInfoServiceImpl {
     @Autowired
     QuestionDetailFacade questionDetailFacade;
     @Autowired
-    LisMappingFacade lisMappingFacade;
+    AiptServiceClient aiptServiceClient;
 
     /**
      * 根据参数返回标签内容
@@ -111,18 +116,24 @@ public class QuestionCacheFacade extends QuestionInfoServiceImpl {
             if (ListUtil.isNotEmpty(res.getQuestionMapping())) {
                 details = res.getQuestionMapping().stream().map(row -> row.getName()).collect(Collectors.toList());
             }
-            Map<String, Map<String, String>> map = lisMappingFacade.getLisMappingByQuestion(project, details);
-            if (map != null) {
-                if (map.get("project") != null) {
-                    res.setUniqueName(map.get("project").get(res.getName()));
-                }
-                if (map.get("details") != null) {
-                    for (QuestionDTO bean : res.getQuestionMapping()) {
-                        bean.setUniqueName(map.get("details").get(bean.getName()));
+            GetLisMappingVO getLisMappingVO = new GetLisMappingVO();
+            getLisMappingVO.setProject(project);
+            getLisMappingVO.setDetails(details);
+            RespDTO<Map<String, Map<String, String>>> lisRespDTO = aiptServiceClient.getLisMappingByQuestion(getLisMappingVO);
+            if (RespDTOUtil.respIsOK(lisRespDTO)) {
+                Map<String, Map<String, String>> map = lisRespDTO.data;
+                if (map != null) {
+                    if (map.get("project") != null) {
+                        res.setUniqueName(map.get("project").get(res.getName()));
+                    }
+                    if (map.get("details") != null) {
+                        for (QuestionDTO bean : res.getQuestionMapping()) {
+                            bean.setUniqueName(map.get("details").get(bean.getName()));
+                        }
                     }
                 }
             }
         }
         return res;
     }
-}
+}

+ 20 - 10
icss-service/src/main/java/com/diagbot/facade/QuestionFacade.java

@@ -1,7 +1,9 @@
 package com.diagbot.facade;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.diagbot.client.AiptServiceClient;
 import com.diagbot.dto.QuestionDTO;
+import com.diagbot.dto.RespDTO;
 import com.diagbot.entity.QuestionDetail;
 import com.diagbot.entity.QuestionInfo;
 import com.diagbot.entity.wrapper.QuestionInfoWrapper;
@@ -11,7 +13,9 @@ import com.diagbot.service.impl.QuestionInfoServiceImpl;
 import com.diagbot.util.BeanUtil;
 import com.diagbot.util.EntityUtil;
 import com.diagbot.util.ListUtil;
+import com.diagbot.util.RespDTOUtil;
 import com.diagbot.util.StringUtil;
+import com.diagbot.vo.GetLisMappingVO;
 import com.diagbot.vo.QuestionIds2VO;
 import com.diagbot.vo.QuestionIdsVO;
 import com.diagbot.vo.QuestionVO;
@@ -38,7 +42,7 @@ public class QuestionFacade extends QuestionInfoServiceImpl {
     @Autowired
     QuestionDetailFacade questionDetailFacade;
     @Autowired
-    LisMappingFacade lisMappingFacade;
+    AiptServiceClient aiptServiceClient;
 
     /**
      * 根据参数返回标签内容
@@ -186,14 +190,20 @@ public class QuestionFacade extends QuestionInfoServiceImpl {
                 if (ListUtil.isNotEmpty(res.getQuestionMapping())) {
                     details = res.getQuestionMapping().stream().map(row -> row.getName()).collect(Collectors.toList());
                 }
-                Map<String, Map<String, String>> map = lisMappingFacade.getLisMappingByQuestion(project, details);
-                if (map != null) {
-                    if (map.get("project") != null) {
-                        res.setUniqueName(map.get("project").get(res.getName()));
-                    }
-                    if (map.get("details") != null) {
-                        for (QuestionDTO bean : res.getQuestionMapping()) {
-                            bean.setUniqueName(map.get("details").get(bean.getName()));
+                GetLisMappingVO getLisMappingVO = new GetLisMappingVO();
+                getLisMappingVO.setProject(project);
+                getLisMappingVO.setDetails(details);
+                RespDTO<Map<String, Map<String, String>>> lisRespDTO = aiptServiceClient.getLisMappingByQuestion(getLisMappingVO);
+                if (RespDTOUtil.respIsOK(lisRespDTO)) {
+                    Map<String, Map<String, String>> map = lisRespDTO.data;
+                    if (map != null) {
+                        if (map.get("project") != null) {
+                            res.setUniqueName(map.get("project").get(res.getName()));
+                        }
+                        if (map.get("details") != null) {
+                            for (QuestionDTO bean : res.getQuestionMapping()) {
+                                bean.setUniqueName(map.get("details").get(bean.getName()));
+                            }
                         }
                     }
                 }
@@ -240,4 +250,4 @@ public class QuestionFacade extends QuestionInfoServiceImpl {
         return EntityUtil.makeEntityListMap(questionMapping1, "parentQuestion");
     }
 
-}
+}

+ 20 - 0
icss-service/src/main/java/com/diagbot/vo/GetLisMappingVO.java

@@ -0,0 +1,20 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+import java.util.List;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2019/9/20 14:10
+ */
+@Getter
+@Setter
+public class GetLisMappingVO {
+    @NotBlank(message = "请输入化验套餐项")
+    private String project;
+    private List<String> details;
+}

+ 4 - 4
knowledgeman-service/src/main/resources/mapper/LisMappingMapper.xml

@@ -34,12 +34,12 @@
     <!-- 分页查询 -->
     <select id="lisMappingPage" resultMap="BaseResultDTOMap">
         SELECT
-        lis_mapping.*, item_con.lib_name AS itemName
+        lis_mapping.*, IFNULL(item_con.lib_name,"") AS item_name
         FROM
         (
         SELECT
-        lis.*, meal_con.lib_name AS mealName,
-        unique_con.lib_name AS uniqueName
+        lis.*, meal_con.lib_name AS meal_name,
+        unique_con.lib_name AS unique_name
         FROM
         kl_lis_mapping lis,
         kl_concept meal_con,
@@ -58,7 +58,7 @@
             and lis_mapping.meal_name like concat('%',#{lisMappingPageVO.mealName},'%')
         </if>
         <if test="lisMappingPageVO.itemName != null and lisMappingPageVO.itemName != '' ">
-            and item_con.item_name like concat('%',#{lisMappingPageVO.itemName},'%')
+            and item_con.lib_name like concat('%',#{lisMappingPageVO.itemName},'%')
         </if>
         <if test="lisMappingPageVO.uniqueName != null and lisMappingPageVO.uniqueName != '' ">
             and lis_mapping.unique_name like concat('%',#{lisMappingPageVO.uniqueName},'%')