Просмотр исходного кода

Merge remote-tracking branch 'origin/dev/mix20191225_security' into dev/mix20191225_security

wangfeng 5 лет назад
Родитель
Сommit
28f3fdfd2f
18 измененных файлов с 346 добавлено и 100 удалено
  1. 25 34
      aipt-service/src/main/java/com/diagbot/aggregate/PushItemAggregate.java
  2. 2 0
      aipt-service/src/main/java/com/diagbot/dto/DisDTO.java
  3. 2 0
      aipt-service/src/main/java/com/diagbot/entity/HospitalDept.java
  4. 43 1
      aipt-service/src/main/java/com/diagbot/facade/AssembleFacade.java
  5. 10 1
      aipt-service/src/main/java/com/diagbot/facade/ClinicalFacade.java
  6. 190 0
      aipt-service/src/main/java/com/diagbot/facade/TranEnDeFacade.java
  7. 33 57
      aipt-service/src/main/java/com/diagbot/facade/TransferFacade.java
  8. 2 0
      aipt-service/src/main/java/com/diagbot/web/ConceptDetailTestController.java
  9. 3 0
      knowledgeman-service/src/main/java/com/diagbot/dto/GetRelationInfoListDTO.java
  10. 2 0
      knowledgeman-service/src/main/java/com/diagbot/dto/LisSonContactListDTO.java
  11. 1 1
      knowledgeman-service/src/main/java/com/diagbot/dto/PacsSonContactListDTO.java
  12. 6 0
      knowledgeman-service/src/main/java/com/diagbot/facade/LisSonContactFacade.java
  13. 2 0
      knowledgeman-service/src/main/java/com/diagbot/facade/PacsSonContactFacade.java
  14. 7 2
      knowledgeman-service/src/main/java/com/diagbot/facade/RelationContactFacade.java
  15. 13 2
      knowledgeman-service/src/main/java/com/diagbot/facade/RelationFacade.java
  16. 3 0
      knowledgeman-service/src/main/java/com/diagbot/vo/GetRelationInfoListVO.java
  17. 2 0
      knowledgeman-service/src/main/java/com/diagbot/vo/LisSonContactListVO.java
  18. 0 2
      knowledgeman-service/src/main/resources/mapper/RelationMapper.xml

+ 25 - 34
aipt-service/src/main/java/com/diagbot/aggregate/PushItemAggregate.java

@@ -19,6 +19,7 @@ import com.diagbot.enums.ConceptTypeEnum;
 import com.diagbot.enums.LexiconTypeEnum;
 import com.diagbot.facade.ClinicalFacade;
 import com.diagbot.facade.ConceptFacade;
+import com.diagbot.facade.TranEnDeFacade;
 import com.diagbot.util.CryptUtil;
 import com.diagbot.util.EntityUtil;
 import com.diagbot.util.FastJsonUtils;
@@ -53,7 +54,8 @@ public class PushItemAggregate {
     @Autowired
     private ConceptFacade conceptFacade;
     @Autowired
-    private TranServiceClient tranServiceClient;
+    private TranEnDeFacade tranEnDeFacade;
+    //private TranServiceClient tranServiceClient;
     @Autowired
     private ClinicalFacade clinicalFacade;
     @Autowired
@@ -228,9 +230,9 @@ public class PushItemAggregate {
 
     @DataProvider("setRetPacs")
     public List<ConceptPushDTO> setRetPacs(@InvokeParameter("featureTypeSet") Set<String> featureTypeSet,
-                                        @InvokeParameter("data") ResponseData data,
-                                        @InvokeParameter("isConnect") Boolean isConnect,
-                                        @InvokeParameter("hosCode") String hosCode) {
+                                           @InvokeParameter("data") ResponseData data,
+                                           @InvokeParameter("isConnect") Boolean isConnect,
+                                           @InvokeParameter("hosCode") String hosCode) {
         List<ConceptPushDTO> labRes = ListUtil.newArrayList();
         //辅检 概念列表
         if (featureTypeSet.contains(String.valueOf(FeatureTypeEnum.Feature_Type_Pacs.getKey()))) {
@@ -325,7 +327,7 @@ public class PushItemAggregate {
                                 JSONObject scaleJson = detail.getContent();
                                 if (null != scaleJson.get("name")) {
                                     String scaleName = scaleJson.get("name").toString();
-                                    if(cryptConfiguer.cryptFlag) {
+                                    if (cryptConfiguer.cryptFlag) {
                                         scaleName = CryptUtil.encrypt_char(scaleName);
                                     }
                                     conceptBaseVO.setName(scaleName);
@@ -404,45 +406,34 @@ public class PushItemAggregate {
                 .stream()
                 .map(concept -> concept.getName())
                 .collect(Collectors.toList());
-        if(cryptConfiguer.cryptFlag) {
+        if (cryptConfiguer.cryptFlag) {
             CryptUtil.encryptList(uniqueNameList);
         }
         lisConfigVO.setUniqueNameList(uniqueNameList);
         if (type.equals(ConceptTypeEnum.Lis.getKey())) {
-            RespDTO<Map<String, List<String>>> lisRes
-                    = tranServiceClient.getLisConfigByUniqueNameAndHosCode(lisConfigVO);
-            if (RespDTOUtil.respIsOK(lisRes)) {
-                Map<String, List<String>> lisMappingByUniqueName = lisRes.data;
-                for (ConceptPushDTO concept : concepts) {
-                    List<String> clientNames = lisMappingByUniqueName.get(concept.getName());
-                    if (ListUtil.isNotEmpty(clientNames)) {
-                        concept.setClientNames(clientNames);
-                    }
+            Map<String, List<String>> lisMappingByUniqueName = tranEnDeFacade.getLisConfigByUniqueNameAndHosCode(lisConfigVO);
+            for (ConceptPushDTO concept : concepts) {
+                List<String> clientNames = lisMappingByUniqueName.get(concept.getName());
+                if (ListUtil.isNotEmpty(clientNames)) {
+                    concept.setClientNames(clientNames);
                 }
             }
         } else if (type.equals(ConceptTypeEnum.Pacs.getKey())) {
-            RespDTO<Map<String, List<String>>> pacsRes
-                    = tranServiceClient.getPacsConfigByUniqueNameAndHosCode(hosCodeVO);
-            if (RespDTOUtil.respIsOK(pacsRes)) {
-                Map<String, List<String>> pacsConfigMapByUniqueName = pacsRes.data;
-                for (ConceptPushDTO concept : concepts) {
-                    List<String> clientNames = pacsConfigMapByUniqueName.get(concept.getName());
-                    if (ListUtil.isNotEmpty(clientNames)) {
-                        concept.setClientNames(clientNames);
-                    }
+            Map<String, List<String>> pacsConfigMapByUniqueName = tranEnDeFacade.getPacsConfigByUniqueNameAndHosCode(hosCodeVO);
+            for (ConceptPushDTO concept : concepts) {
+                List<String> clientNames = pacsConfigMapByUniqueName.get(concept.getName());
+                if (ListUtil.isNotEmpty(clientNames)) {
+                    concept.setClientNames(clientNames);
                 }
             }
         } else if (type.equals(ConceptTypeEnum.Disease.getKey())) {
-            RespDTO<Map<String, String>> disRes = tranServiceClient.getDiseaseIcdByHosCode(hosCodeVO);
-            if (RespDTOUtil.respIsOK(disRes)) {
-                Map<String, String> disMap = disRes.data;
-                for (ConceptPushDTO concept : concepts) {
-                    String clientName = disMap.get(concept.getName());
-                    if (StringUtil.isNotBlank(clientName)) {
-                        List<String> clientNames = Lists.newLinkedList();
-                        clientNames.add(clientName);
-                        concept.setClientNames(clientNames);
-                    }
+            Map<String, String> disMap = tranEnDeFacade.getDiseaseIcdByHosCode(hosCodeVO);
+            for (ConceptPushDTO concept : concepts) {
+                String clientName = disMap.get(concept.getName());
+                if (StringUtil.isNotBlank(clientName)) {
+                    List<String> clientNames = Lists.newLinkedList();
+                    clientNames.add(clientName);
+                    concept.setClientNames(clientNames);
                 }
             }
         }

+ 2 - 0
aipt-service/src/main/java/com/diagbot/dto/DisDTO.java

@@ -1,5 +1,6 @@
 package com.diagbot.dto;
 
+import com.diagbot.annotation.CryptField;
 import com.fasterxml.jackson.annotation.JsonIgnore;
 import lombok.Getter;
 import lombok.Setter;
@@ -12,6 +13,7 @@ import lombok.Setter;
 @Getter
 @Setter
 public class DisDTO extends ConceptBaseDTO{
+    @CryptField
     @JsonIgnore
     private String typeName;//类型:慢病,急诊
 }

+ 2 - 0
aipt-service/src/main/java/com/diagbot/entity/HospitalDept.java

@@ -3,6 +3,7 @@ package com.diagbot.entity;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
+import com.diagbot.annotation.CryptField;
 import lombok.Getter;
 import lombok.Setter;
 
@@ -78,6 +79,7 @@ public class HospitalDept implements Serializable {
     /**
      * 朗通科室名称
      */
+    @CryptField
     private String conceptDeptName;
 
     /**

+ 43 - 1
aipt-service/src/main/java/com/diagbot/facade/AssembleFacade.java

@@ -2,6 +2,7 @@ package com.diagbot.facade;
 
 import com.diagbot.biz.push.vo.SearchVO;
 import com.diagbot.client.bean.SearchData;
+import com.diagbot.enums.SysTypeEnum;
 import com.diagbot.util.BeanUtil;
 import org.springframework.stereotype.Component;
 
@@ -20,7 +21,19 @@ public class AssembleFacade {
      */
     public SearchData assembleData(SearchVO searchVO) {
         SearchData searchData = new SearchData();
-        BeanUtil.copyProperties(searchVO, searchData);
+        //BeanUtil.copyProperties(searchVO, searchData);
+        searchData.setPasts(searchVO.getPasts());
+        searchData.setRuleType(searchVO.getRuleType());
+        searchData.setHosCode(searchVO.getHosCode());
+        searchData.setScaleName(searchVO.getScaleName());
+        searchData.setDisType(searchVO.getDisType());
+        searchData.setOther(searchVO.getOther());
+        searchData.setVital(searchVO.getVital());
+        if (searchVO.getSysType() == null) {
+            searchData.setSysType(SysTypeEnum.AIPT_SERVICE.getKey());
+        } else {
+            searchData.setSysType(searchVO.getSysType());
+        }
         switch (searchVO.getSex()) {
             case 1:
                 searchData.setSex("M");
@@ -32,6 +45,35 @@ public class AssembleFacade {
                 searchData.setSex("A");
                 break;
         }
+        searchData.setAllergy(searchVO.getAllergy());
+        searchData.setChief(searchVO.getChief());
+        searchData.setDiag(searchVO.getDiag());
+        searchData.setDiagOrder(searchVO.getDiagOrder());
+        searchData.setDiagString(searchVO.getDiagString());
+        searchData.setDiseaseName(searchVO.getDiseaseName());
+        searchData.setDrug(searchVO.getDrug());
+        searchData.setDrugOrder(searchVO.getDrugOrder());
+        searchData.setDrugString(searchVO.getDrugString());
+        searchData.setFamily(searchVO.getFamily());
+        searchData.setFeatureType(searchVO.getFeatureType());
+        searchData.setInfectious(searchVO.getInfectious());
+        searchData.setLength(searchVO.getLength());
+        searchData.setLis(searchVO.getLis());
+        searchData.setLisOrder(searchVO.getLisOrder());
+        searchData.setVital(searchVO.getVital());
+        searchData.setLisString(searchVO.getLisString());
+        searchData.setMarital(searchVO.getMarital());
+        searchData.setMarriage(searchVO.getMarriage());
+        searchData.setMenstrual(searchVO.getMenstrual());
+        searchData.setOperation(searchVO.getOperation());
+        searchData.setOperationOrder(searchVO.getOperationOrder());
+        searchData.setOtherOrder(searchVO.getOtherOrder());
+        searchData.setPacs(searchVO.getPacs());
+        searchData.setPacsOrder(searchVO.getPacsOrder());
+        searchData.setPacsString(searchVO.getPacsString());
+        searchData.setPersonal(searchVO.getSymptom());
+        searchData.setSymptom(searchVO.getSymptom());
+        searchData.setVaccination(searchData.getVaccination());
         return searchData;
     }
 }

+ 10 - 1
aipt-service/src/main/java/com/diagbot/facade/ClinicalFacade.java

@@ -7,11 +7,13 @@ import com.diagbot.client.AIServiceClient;
 import com.diagbot.client.bean.CalculateData;
 import com.diagbot.client.bean.Response;
 import com.diagbot.client.bean.SearchData;
+import com.diagbot.config.CryptConfiguer;
 import com.diagbot.entity.ScaleContent;
 import com.diagbot.enums.ScaleTypeEnum;
 import com.diagbot.exception.CommonErrorCode;
 import com.diagbot.exception.CommonException;
 import com.diagbot.service.ScaleContentService;
+import com.diagbot.util.CryptUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -36,6 +38,8 @@ public class ClinicalFacade {
     private ScaleContentService scaleContentService;
     @Autowired
     private AssembleFacade assembleFacade;
+    @Autowired
+    private CryptConfiguer cryptConfiguer;
 
     /**
      * 处理临床数据
@@ -64,7 +68,12 @@ public class ClinicalFacade {
         if (null == response) {
             throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, "量表没有返回结果");
         }
-        List<ScaleContent> list = getContent(searchData.getScaleName(), JSON.toJSONString(response));
+        String scaleName = searchData.getScaleName();
+        //加密
+        if (cryptConfiguer.cryptFlag) {
+            scaleName = CryptUtil.encrypt_char(searchData.getScaleName());
+        }
+        List<ScaleContent> list = getContent(scaleName, JSON.toJSONString(response));
         return list;
     }
 

+ 190 - 0
aipt-service/src/main/java/com/diagbot/facade/TranEnDeFacade.java

@@ -0,0 +1,190 @@
+package com.diagbot.facade;
+
+import com.diagbot.client.TranServiceClient;
+import com.diagbot.client.bean.HosCodeVO;
+import com.diagbot.dto.RespDTO;
+import com.diagbot.util.CryptUtil;
+import com.diagbot.util.ListUtil;
+import com.diagbot.util.RespDTOUtil;
+import com.diagbot.vo.DiseaseIcdVO;
+import com.diagbot.vo.LisConfigVO;
+import com.diagbot.vo.PacsConfigVO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+import org.springframework.web.bind.annotation.RequestBody;
+
+import java.util.HashMap;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Description:tran层对接时无法自动加解密的接口处理
+ * @Author:zhaops
+ * @time: 2020/1/6 10:19
+ */
+@Component
+public class TranEnDeFacade {
+    @Autowired
+    private TranServiceClient tranServiceClient;
+
+    /**
+     * 根据医院编码和套餐名称获取化验公表映射关系(返回map加密)
+     *
+     * @param lisConfigVO
+     * @return
+     */
+    public Map<String, Map<String, List<String>>> getLisConfigByMealNameAndHosCode(@RequestBody LisConfigVO lisConfigVO) {
+        RespDTO<Map<String, Map<String, List<String>>>> respDTO = tranServiceClient.getLisConfigByMealNameAndHosCode(lisConfigVO);
+        Map<String, Map<String, List<String>>> retMap = new LinkedHashMap<>();
+        if (RespDTOUtil.respIsOK(respDTO)) {
+            Map<String, Map<String, List<String>>> map = respDTO.data;
+            for (Map.Entry<String, Map<String, List<String>>> entry : map.entrySet()) {
+                Map<String, List<String>> retSubMap = new LinkedHashMap<>();
+                for (Map.Entry<String, List<String>> subEntry : entry.getValue().entrySet()) {
+                    if (ListUtil.isNotEmpty(subEntry.getValue())) {
+                        CryptUtil.encryptList(subEntry.getValue());
+                    }
+                    retSubMap.put(CryptUtil.encrypt_char(subEntry.getKey()), subEntry.getValue());
+                }
+                retMap.put(CryptUtil.encrypt_char(entry.getKey()), retSubMap);
+            }
+        }
+        return retMap;
+    }
+
+    /**
+     * 根据医院编码获取辅检公表映射关系(返回map加密)
+     *
+     * @param hosCodeVO
+     * @return
+     */
+    public Map<String, String> getPacsConfigByHosCode(@RequestBody HosCodeVO hosCodeVO) {
+        RespDTO<Map<String, String>> respDTO = tranServiceClient.getPacsConfigByHosCode(hosCodeVO);
+        Map<String, String> retMap = new LinkedHashMap<>();
+        if (RespDTOUtil.respIsOK(respDTO)) {
+            Map<String, String> map = respDTO.data;
+            for (Map.Entry<String, String> entry : map.entrySet()) {
+                retMap.put(CryptUtil.encrypt_char(entry.getKey()), CryptUtil.encrypt_char(entry.getValue()));
+            }
+        }
+        return retMap;
+    }
+
+    /**
+     * 获取辅检映射关系(返回map加密)
+     *
+     * @param pacsConfigVO
+     * @return
+     */
+    public Map<String, List<String>> getPacsConfig(@RequestBody PacsConfigVO pacsConfigVO) {
+        RespDTO<Map<String, List<String>>> respDTO = tranServiceClient.getPacsConfig(pacsConfigVO);
+        Map<String, List<String>> retMap = new LinkedHashMap<>();
+        if (RespDTOUtil.respIsOK(respDTO)) {
+            Map<String, List<String>> map = respDTO.data;
+            for (Map.Entry<String, List<String>> entry : map.entrySet()) {
+                if (ListUtil.isNotEmpty(entry.getValue())) {
+                    CryptUtil.encryptList(entry.getValue());
+                }
+                retMap.put(CryptUtil.encrypt_char(entry.getKey()), entry.getValue());
+            }
+        }
+        return retMap;
+    }
+
+    /**
+     * 根据医院编码获取提示信息标题映射关系
+     *
+     * @param hosCodeVO
+     * @return
+     */
+    public Map<String, String> getTitleMappingHosCode(@RequestBody HosCodeVO hosCodeVO) {
+        RespDTO<Map<String, String>> respDTO = tranServiceClient.getTitleMappingHosCode(hosCodeVO);
+        Map<String, String> retMap = new LinkedHashMap<>();
+        if (RespDTOUtil.respIsOK(respDTO)) {
+            Map<String, String> map = respDTO.data;
+            for (Map.Entry<String, String> entry : map.entrySet()) {
+                retMap.put(CryptUtil.encrypt_char(entry.getKey()), CryptUtil.encrypt_char(entry.getValue()));
+            }
+        }
+        return retMap;
+    }
+
+    /**
+     * 根据医院编码查询诊断icd映射
+     *
+     * @param hosCodeVO
+     * @return
+     */
+    public Map<String, String> getDiseaseIcdByHosCode(@RequestBody HosCodeVO hosCodeVO) {
+        RespDTO<Map<String, String>> respDTO = tranServiceClient.getDiseaseIcdByHosCode(hosCodeVO);
+        Map<String, String> retMap = new LinkedHashMap<>();
+        if (RespDTOUtil.respIsOK(respDTO)) {
+            Map<String, String> map = respDTO.data;
+            for (Map.Entry<String, String> entry : map.entrySet()) {
+                retMap.put(CryptUtil.encrypt_char(entry.getKey()), CryptUtil.encrypt_char(entry.getValue()));
+            }
+        }
+        return retMap;
+    }
+
+    /**
+     * 获取诊断名称映射map
+     *
+     * @param diseaseIcdVO
+     * @return
+     */
+    public Map<String, String> getDiseaseIcdMap(DiseaseIcdVO diseaseIcdVO) {
+        RespDTO<Map<String, String>> respDTO = tranServiceClient.getDiseaseIcdMap(diseaseIcdVO);
+        Map<String, String> retMap = new LinkedHashMap<>();
+        if (RespDTOUtil.respIsOK(respDTO)) {
+            Map<String, String> map = respDTO.data;
+            for (Map.Entry<String, String> entry : map.entrySet()) {
+                retMap.put(CryptUtil.encrypt_char(entry.getKey()), CryptUtil.encrypt_char(entry.getValue()));
+            }
+        }
+        return retMap;
+    }
+
+    /**
+     * 根据医院编码获取化验公表映射关系,公表项做key
+     *
+     * @param lisConfigVO
+     * @return
+     */
+    public Map<String, List<String>> getLisConfigByUniqueNameAndHosCode(@RequestBody LisConfigVO lisConfigVO) {
+        RespDTO<Map<String, List<String>>> respDTO = tranServiceClient.getLisConfigByUniqueNameAndHosCode(lisConfigVO);
+        Map<String, List<String>> retMap = new LinkedHashMap<>();
+        if (RespDTOUtil.respIsOK(respDTO)) {
+            Map<String, List<String>> map = respDTO.data;
+            for (Map.Entry<String, List<String>> entry : map.entrySet()) {
+                if (ListUtil.isNotEmpty(entry.getValue())) {
+                    CryptUtil.encryptList(entry.getValue());
+                }
+                retMap.put(CryptUtil.encrypt_char(entry.getKey()), entry.getValue());
+            }
+        }
+        return retMap;
+    }
+
+    /**
+     * 根据医院编码查询辅检公表映射,公表项做key
+     *
+     * @param hosCodeVO
+     * @return
+     */
+    public Map<String, List<String>> getPacsConfigByUniqueNameAndHosCode(@RequestBody HosCodeVO hosCodeVO) {
+        RespDTO<Map<String, List<String>>> respDTO = tranServiceClient.getPacsConfigByUniqueNameAndHosCode(hosCodeVO);
+        Map<String, List<String>> retMap = new LinkedHashMap<>();
+        if (RespDTOUtil.respIsOK(respDTO)) {
+            Map<String, List<String>> map = respDTO.data;
+            for (Map.Entry<String, List<String>> entry : map.entrySet()) {
+                if (ListUtil.isNotEmpty(entry.getValue())) {
+                    CryptUtil.encryptList(entry.getValue());
+                }
+                retMap.put(CryptUtil.encrypt_char(entry.getKey()), entry.getValue());
+            }
+        }
+        return retMap;
+    }
+}

+ 33 - 57
aipt-service/src/main/java/com/diagbot/facade/TransferFacade.java

@@ -13,8 +13,6 @@ import com.diagbot.enums.ConceptTypeEnum;
 import com.diagbot.enums.LisSourceEnum;
 import com.diagbot.enums.SysTypeEnum;
 import com.diagbot.util.BeanUtil;
-import com.diagbot.util.CryptUtil;
-import com.diagbot.util.EntityUtil;
 import com.diagbot.util.ListUtil;
 import com.diagbot.util.RespDTOUtil;
 import com.diagbot.util.StringUtil;
@@ -39,6 +37,8 @@ import java.util.stream.Collectors;
  */
 @Component
 public class TransferFacade {
+    @Autowired
+    private TranEnDeFacade tranEnDeFacade;
     @Autowired
     private TranServiceClient tranServiceClient;
     @Autowired
@@ -100,12 +100,7 @@ public class TransferFacade {
         LisConfigVO lisConfigVO = new LisConfigVO();
         lisConfigVO.setHosCode(hosCode);
         lisConfigVO.setMealNameList(mealNameList);
-        RespDTO<Map<String, Map<String, List<String>>>> lisConfigRes
-                = tranServiceClient.getLisConfigByMealNameAndHosCode(lisConfigVO);
-        Map<String, Map<String, List<String>>> lisConfigMap = new LinkedHashMap<>();
-        if (RespDTOUtil.respIsOK(lisConfigRes)) {
-            lisConfigMap = lisConfigRes.data;
-        }
+        Map<String, Map<String, List<String>>> lisConfigMap = tranEnDeFacade.getLisConfigByMealNameAndHosCode(lisConfigVO);
         for (Lis lisResult : lis) {
             //内部数据,获取标签时映射, 不二次映射
             if (lisResult.getSource() == null || lisResult.getSource().equals(LisSourceEnum.Inner.getKey())) {
@@ -134,7 +129,6 @@ public class TransferFacade {
         return retLis;
     }
 
-
     /**
      * 辅检结果增加公表名(辅检项目名称)
      *
@@ -154,24 +148,21 @@ public class TransferFacade {
                 .map(pacsResult -> pacsResult.getName())
                 .distinct()
                 .collect(Collectors.toList()));
-        RespDTO<Map<String, List<String>>> pacsRespDTO = tranServiceClient.getPacsConfig(pacsConfigVO);
-        if (RespDTOUtil.respIsOK(pacsRespDTO)) {
-            Map<String, List<String>> pacsMap = pacsRespDTO.data;
-            for (Pacs pacsResult : pacs) {
-                if (StringUtil.isBlank(pacsResult.getName())) {
-                    convertPacs.add(pacsResult);
-                    continue;
-                } else {
-                    if (ListUtil.isNotEmpty(pacsMap.get(pacsResult.getName()))) {
-                        for (String uniqueName : pacsMap.get(pacsResult.getName())) {
-                            Pacs convertPacsResult = new Pacs();
-                            BeanUtil.copyProperties(pacsResult, convertPacsResult);
-                            convertPacsResult.setUniqueName(uniqueName);
-                            convertPacs.add(convertPacsResult);
-                        }
-                    } else {
-                        convertPacs.add(pacsResult);
+        Map<String, List<String>> pacsMap = tranEnDeFacade.getPacsConfig(pacsConfigVO);
+        for (Pacs pacsResult : pacs) {
+            if (StringUtil.isBlank(pacsResult.getName())) {
+                convertPacs.add(pacsResult);
+                continue;
+            } else {
+                if (ListUtil.isNotEmpty(pacsMap.get(pacsResult.getName()))) {
+                    for (String uniqueName : pacsMap.get(pacsResult.getName())) {
+                        Pacs convertPacsResult = new Pacs();
+                        BeanUtil.copyProperties(pacsResult, convertPacsResult);
+                        convertPacsResult.setUniqueName(uniqueName);
+                        convertPacs.add(convertPacsResult);
                     }
+                } else {
+                    convertPacs.add(pacsResult);
                 }
             }
         }
@@ -191,11 +182,7 @@ public class TransferFacade {
             LisConfigVO lisConfigVO = new LisConfigVO();
             lisConfigVO.setHosCode(hosCode);
             lisConfigVO.setMealNameList(nameList);
-            RespDTO<Map<String, Map<String, List<String>>>> lisConfigRes
-                    = tranServiceClient.getLisConfigByMealNameAndHosCode(lisConfigVO);
-            if (RespDTOUtil.respIsOK(lisConfigRes)) {
-                lisConfigMap = lisConfigRes.data;
-            }
+            lisConfigMap = tranEnDeFacade.getLisConfigByMealNameAndHosCode(lisConfigVO);
         }
         return lisConfigMap;
     }
@@ -220,19 +207,15 @@ public class TransferFacade {
             DiseaseIcdVO diseaseIcdVO = new DiseaseIcdVO();
             diseaseIcdVO.setHosCode(hosCode);
             diseaseIcdVO.setDiseaseNameList(nameList);
-            Map<String, String> disMap = new LinkedHashMap<>();
-            RespDTO<Map<String, String>> disRespDTO = tranServiceClient.getDiseaseIcdMap(diseaseIcdVO);
-            if (RespDTOUtil.respIsOK(disRespDTO)) {
-                disMap = disRespDTO.data;
-                for (Item disease : items) {
-                    if (StringUtil.isBlank(disease.getName())) {
-                        continue;
-                    } else {
-                        disease.setUniqueName(disMap.get(disease.getName()));
-                    }
+            Map<String, String> disMap = tranEnDeFacade.getDiseaseIcdMap(diseaseIcdVO);
+            for (Item disease : items) {
+                if (StringUtil.isBlank(disease.getName())) {
+                    continue;
+                } else {
+                    disease.setUniqueName(disMap.get(disease.getName()));
                 }
-                convertItems = BeanUtil.listCopyTo(items, Item.class);
             }
+            convertItems = BeanUtil.listCopyTo(items, Item.class);
         } else if (type.equals(ConceptTypeEnum.Drug.getKey())) {
             //暂无映射关系
             convertItems.addAll(items);
@@ -280,27 +263,20 @@ public class TransferFacade {
             PacsConfigVO pacsConfigVO = new PacsConfigVO();
             pacsConfigVO.setHosCode(hosCode);
             pacsConfigVO.setMealNameList(strList);
-            RespDTO<Map<String, List<String>>> pacsRespDTO = tranServiceClient.getPacsConfig(pacsConfigVO);
-            if (RespDTOUtil.respIsOK(pacsRespDTO)) {
-                Map<String, List<String>> pacsMap = pacsRespDTO.data;
-                for (Map.Entry<String, List<String>> entry : pacsMap.entrySet()) {
-                    if (ListUtil.isNotEmpty(entry.getValue())) {
-                        retStr += String.join(",", entry.getValue()) + ",";
-                    }
+            Map<String, List<String>> pacsMap = tranEnDeFacade.getPacsConfig(pacsConfigVO);
+            for (Map.Entry<String, List<String>> entry : pacsMap.entrySet()) {
+                if (ListUtil.isNotEmpty(entry.getValue())) {
+                    retStr += String.join(",", entry.getValue()) + ",";
                 }
             }
         } else if (type.equals(FeatureTypeEnum.Feature_Type_Disease.getKey())) {
             DiseaseIcdVO diseaseIcdVO = new DiseaseIcdVO();
             diseaseIcdVO.setHosCode(hosCode);
             diseaseIcdVO.setDiseaseNameList(strList);
-            Map<String, String> disMap = new LinkedHashMap<>();
-            RespDTO<Map<String, String>> disRespDTO = tranServiceClient.getDiseaseIcdMap(diseaseIcdVO);
-            if (RespDTOUtil.respIsOK(disRespDTO)) {
-                disMap = disRespDTO.data;
-                for (String diseaseName : strList) {
-                    if (StringUtil.isNotBlank(disMap.get(diseaseName))) {
-                        retStr += disMap.get(diseaseName) + ",";
-                    }
+            Map<String, String> disMap = tranEnDeFacade.getDiseaseIcdMap(diseaseIcdVO);
+            for (String diseaseName : strList) {
+                if (StringUtil.isNotBlank(disMap.get(diseaseName))) {
+                    retStr += disMap.get(diseaseName) + ",";
                 }
             }
         }

+ 2 - 0
aipt-service/src/main/java/com/diagbot/web/ConceptDetailTestController.java

@@ -14,6 +14,7 @@ import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
+import springfox.documentation.annotations.ApiIgnore;
 
 import javax.validation.Valid;
 import java.util.List;
@@ -28,6 +29,7 @@ import java.util.List;
 @Api(value = "提示信息加密测试", tags = { "知识库标准化-提示信息加密测试相关API" })
 @SuppressWarnings("unchecked")
 @Deprecated
+@ApiIgnore
 public class ConceptDetailTestController {
     @Autowired
     private CryptConfiguer cryptConfiguer;

+ 3 - 0
knowledgeman-service/src/main/java/com/diagbot/dto/GetRelationInfoListDTO.java

@@ -2,6 +2,7 @@ package com.diagbot.dto;
 
 import java.util.Date;
 
+import com.diagbot.annotation.CryptField;
 import com.fasterxml.jackson.annotation.JsonFormat;
 
 import io.swagger.annotations.ApiModelProperty;
@@ -32,6 +33,7 @@ public class GetRelationInfoListDTO {
     /**
      * 关系起点术语名称
      */
+    @CryptField
 	@ApiModelProperty(value="关系起点术语名称")
     private String startName;
 	
@@ -50,6 +52,7 @@ public class GetRelationInfoListDTO {
     /**
      * 关系终点术语名称
      */
+    @CryptField
 	@ApiModelProperty(value="关系终点术语名称")
     private String endName;
 	

+ 2 - 0
knowledgeman-service/src/main/java/com/diagbot/dto/LisSonContactListDTO.java

@@ -2,6 +2,7 @@ package com.diagbot.dto;
 
 import java.util.Date;
 
+import com.diagbot.annotation.CryptField;
 import com.fasterxml.jackson.annotation.JsonFormat;
 
 import io.swagger.annotations.ApiModelProperty;
@@ -43,6 +44,7 @@ public class LisSonContactListDTO {
     /**
      * 关联术语
      */
+	@CryptField
 	@ApiModelProperty(value="关联术语")
     private String otherNames;
     

+ 1 - 1
knowledgeman-service/src/main/java/com/diagbot/dto/PacsSonContactListDTO.java

@@ -43,13 +43,13 @@ public class PacsSonContactListDTO {
     /**
      * 关联术语
      */
+    @CryptField
     @ApiModelProperty(value="关联术语")
     private String otherNames;
 
     /**
      * 操作人
      */
-    @CryptField
     @ApiModelProperty(value="操作人")
     private String operName;
 

+ 6 - 0
knowledgeman-service/src/main/java/com/diagbot/facade/LisSonContactFacade.java

@@ -2,9 +2,11 @@ package com.diagbot.facade;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.diagbot.client.UserServiceClient;
+import com.diagbot.config.CryptConfiguer;
 import com.diagbot.dto.LisSonContactListDTO;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.service.impl.RelationServiceImpl;
+import com.diagbot.util.CryptUtil;
 import com.diagbot.util.RespDTOUtil;
 import com.diagbot.vo.LisSonContactListVO;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -24,6 +26,8 @@ public class LisSonContactFacade extends RelationServiceImpl {
 
     @Autowired
     private UserServiceClient userServiceClient;
+    @Autowired
+    private CryptConfiguer cryptConfiguer;
 
     /**
      * 化验子项维护-列表
@@ -39,7 +43,9 @@ public class LisSonContactFacade extends RelationServiceImpl {
             RespDTO<Map<String, String>> respDTO = userServiceClient.getUserInfoByIds(ids);
             RespDTOUtil.respNGDealCover(respDTO, "获取用户信息失败");
             ipage.getRecords().forEach(i -> {
+                i.setLibName(cryptConfiguer.cryptFlag ? CryptUtil.decrypt_char(i.getLibName()) : i.getLibName());
                 i.setOperName(respDTO.data.get(i.getOperName()));
+                i.setLibNameType(i.getLibName() + "(" + i.getLibType() + ")");
             });
         }
         return ipage;

+ 2 - 0
knowledgeman-service/src/main/java/com/diagbot/facade/PacsSonContactFacade.java

@@ -43,7 +43,9 @@ public class PacsSonContactFacade extends RelationServiceImpl {
             RespDTO<Map<String, String>> respDTO = userServiceClient.getUserInfoByIds(ids);
             RespDTOUtil.respNGDealCover(respDTO, "获取用户信息失败");
             ipage.getRecords().forEach(i -> {
+                i.setLibName(cryptConfiguer.cryptFlag ? CryptUtil.decrypt_char(i.getLibName()) : i.getLibName());
                 i.setOperName(respDTO.data.get(i.getOperName()));
+                i.setLibNameType(i.getLibName() + "(" + i.getLibType() + ")");
             });
         }
         return ipage;

+ 7 - 2
knowledgeman-service/src/main/java/com/diagbot/facade/RelationContactFacade.java

@@ -238,10 +238,11 @@ public class RelationContactFacade extends RelationServiceImpl {
 
         Concept concept = conceptFacade.getById(relationContactDetailVO.getConceptId());
         relationNodeDTO.setConceptId(concept.getId());
-        relationNodeDTO.setConceptName(concept.getLibName());
+        relationNodeDTO.setConceptName(
+                cryptConfiguer.cryptFlag ? CryptUtil.decrypt_char(concept.getLibName()) : concept.getLibName());
         relationNodeDTO.setConceptTypeId(concept.getLibType());
         relationNodeDTO.setConceptTypeName(LexiconTypeEnum.getName(concept.getLibType().intValue()));
-        relationNodeDTO.setConceptNameType(concept.getLibName() + "("
+        relationNodeDTO.setConceptNameType(relationNodeDTO.getConceptName() + "("
                 + LexiconTypeEnum.getName(concept.getLibType().intValue()) + ")");
         relationNodeDTO.setIsDeletedConcept(concept.getIsDeleted());
 
@@ -283,6 +284,10 @@ public class RelationContactFacade extends RelationServiceImpl {
         List<RelationNodeDTO> relationNodeDTOList = this.baseMapper.getRelationNodeDTOs(conceptId, relationId, endTypeId);
 
         for (RelationNodeDTO i : relationNodeDTOList) {
+            i.setConceptName(
+                    cryptConfiguer.cryptFlag ? CryptUtil.decrypt_char(i.getConceptName()) : i.getConceptName());
+            i.setParentConceptName(
+                    cryptConfiguer.cryptFlag ? CryptUtil.decrypt_char(i.getParentConceptName()) : i.getParentConceptName());
             i.setConceptTypeName(LexiconTypeEnum.getName(i.getConceptTypeId().intValue()));
             i.setConceptNameType(i.getConceptName() + "(" + LexiconTypeEnum.getName(i.getConceptTypeId().intValue()) + ")");
             i.setParentConceptTypeName(LexiconTypeEnum.getName(i.getParentConceptTypeId().intValue()));

+ 13 - 2
knowledgeman-service/src/main/java/com/diagbot/facade/RelationFacade.java

@@ -9,6 +9,8 @@ import java.util.List;
 import java.util.Map;
 import java.util.stream.Collectors;
 
+import com.diagbot.config.CryptConfiguer;
+import com.diagbot.util.CryptUtil;
 import org.apache.commons.lang.time.DateFormatUtils;
 import org.apache.poi.hssf.usermodel.HSSFDateUtil;
 import org.apache.poi.hssf.usermodel.HSSFWorkbook;
@@ -66,6 +68,8 @@ public class RelationFacade extends RelationServiceImpl {
     @Autowired
     @Qualifier("relationServiceImpl")
     private RelationService relationService;
+    @Autowired
+    private CryptConfiguer cryptConfiguer;
 
     /**
      * 获取医学术语关系列表
@@ -137,7 +141,8 @@ public class RelationFacade extends RelationServiceImpl {
             throw new CommonException(CommonErrorCode.RPC_ERROR, "起始术语不存在");
         }
         getRelationInfoDetailDTO.setStartId(startLibraryInfo.getConceptId());
-        getRelationInfoDetailDTO.setStartName(startLibraryInfo.getName());
+        getRelationInfoDetailDTO.setStartName(
+                cryptConfiguer.cryptFlag ? CryptUtil.decrypt_char(startLibraryInfo.getName()) : startLibraryInfo.getName());
         getRelationInfoDetailDTO.setStartType(LexiconTypeEnum.getName(startLibraryInfo.getTypeId().intValue()));
 
 
@@ -150,7 +155,8 @@ public class RelationFacade extends RelationServiceImpl {
             throw new CommonException(CommonErrorCode.RPC_ERROR, "终点术语不存在");
         }
         getRelationInfoDetailDTO.setEndId(endLibraryInfo.getConceptId());
-        getRelationInfoDetailDTO.setEndName(endLibraryInfo.getName());
+        getRelationInfoDetailDTO.setEndName(
+                cryptConfiguer.cryptFlag ? CryptUtil.decrypt_char(endLibraryInfo.getName()) : endLibraryInfo.getName());
         getRelationInfoDetailDTO.setEndType(LexiconTypeEnum.getName(endLibraryInfo.getTypeId().intValue()));
 
         LexiconRelationship lexiconRelationship = lexiconRelationshipFacade.getById(relation.getRelationId());
@@ -197,6 +203,11 @@ public class RelationFacade extends RelationServiceImpl {
     private Map<String, Object> checkAddRelationInfoVO(AddRelationInfoVO addRelationInfoVO) {
         Map<String, Object> retMap = new HashMap<>();
 
+        addRelationInfoVO.setStartName(
+                cryptConfiguer.cryptFlag ? CryptUtil.encrypt_char(addRelationInfoVO.getStartName()) : addRelationInfoVO.getStartName());
+        addRelationInfoVO.setEndName(
+                cryptConfiguer.cryptFlag ? CryptUtil.encrypt_char(addRelationInfoVO.getEndName()) : addRelationInfoVO.getEndName());
+
         QueryWrapper<LibraryInfo> libraryInfoQe1 = new QueryWrapper<>();
         libraryInfoQe1.eq("is_deleted", "N");
         libraryInfoQe1.eq("is_concept", 1);

+ 3 - 0
knowledgeman-service/src/main/java/com/diagbot/vo/GetRelationInfoListVO.java

@@ -2,6 +2,7 @@ package com.diagbot.vo;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 
+import com.diagbot.annotation.CryptField;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Getter;
 import lombok.Setter;
@@ -25,12 +26,14 @@ public class GetRelationInfoListVO extends Page {
     /**
      * 关系起点术语名称
      */
+    @CryptField
 	@ApiModelProperty(value="关系起点术语名称")
     private String startName;
     
     /**
      * 关系终点术语名称
      */
+    @CryptField
 	@ApiModelProperty(value="关系终点术语名称")
     private String endName;
 	

+ 2 - 0
knowledgeman-service/src/main/java/com/diagbot/vo/LisSonContactListVO.java

@@ -2,6 +2,7 @@ package com.diagbot.vo;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 
+import com.diagbot.annotation.CryptField;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Getter;
 import lombok.Setter;
@@ -19,6 +20,7 @@ public class LisSonContactListVO extends Page {
     /**
      * 术语名称
      */
+    @CryptField
     @ApiModelProperty(value="术语名称")
     private String name;
 

+ 0 - 2
knowledgeman-service/src/main/resources/mapper/RelationMapper.xml

@@ -88,7 +88,6 @@
 		t2.id AS conceptId,
 		t2.lib_name AS libName,
 		t4.name AS libType,
-		CONCAT(t2.lib_name,'(',t4.name,')') AS libNameType,
 		GROUP_CONCAT(t3.lib_name ORDER BY t5.order_no DESC,t1.gmt_modified DESC) AS otherNames,
 		t1.modifier AS operName,
 		MAX(t1.gmt_modified) AS operTime,
@@ -228,7 +227,6 @@
 		t2.id AS conceptId,
 		t2.lib_name AS libName,
 		t4.name AS libType,
-		CONCAT(t2.lib_name,'(',t4.name,')') AS libNameType,
 		GROUP_CONCAT(t3.lib_name ORDER BY t5.order_no DESC,t1.gmt_modified DESC) AS otherNames,
 		t1.modifier AS operName,
 		MAX(t1.gmt_modified) AS operTime,