zhaops 5 gadi atpakaļ
vecāks
revīzija
0e1de8c4a8

+ 23 - 2
aipt-service/src/main/java/com/diagbot/aggregate/PushItemAggregate.java

@@ -10,6 +10,7 @@ import com.diagbot.biz.push.enums.FeatureTypeEnum;
 import com.diagbot.client.TranServiceClient;
 import com.diagbot.client.bean.CalculateData;
 import com.diagbot.client.bean.HosCodeVO;
+import com.diagbot.config.CryptConfiguer;
 import com.diagbot.dto.ConceptPushDTO;
 import com.diagbot.dto.PushDTO;
 import com.diagbot.dto.RespDTO;
@@ -18,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.util.CryptUtil;
 import com.diagbot.util.EntityUtil;
 import com.diagbot.util.FastJsonUtils;
 import com.diagbot.util.ListUtil;
@@ -54,6 +56,8 @@ public class PushItemAggregate {
     private TranServiceClient tranServiceClient;
     @Autowired
     private ClinicalFacade clinicalFacade;
+    @Autowired
+    CryptConfiguer cryptConfiguer;
 
     @DataProvider("setAll")
     public PushDTO setAll(
@@ -111,14 +115,25 @@ public class PushItemAggregate {
         //没有推送信息时,默认取全科模板
         if (StringUtil.isBlank(deptName)) {
             deptName = "全科";
+            if (cryptConfiguer.cryptFlag) {
+                deptName = CryptUtil.encrypt_char(deptName);
+            }
         }
         ConceptBaseVO conceptBaseVO = new ConceptBaseVO();
         conceptBaseVO.setName(deptName);
         conceptBaseVO.setLibType(LexiconTypeEnum.DEPARTMENT.getKey());
         ConceptPushDTO deptDTO = new ConceptPushDTO();
         Concept dept = conceptFacade.getConcept(conceptBaseVO);
-        if (dept == null && deptName.equals("全科") == false) {
-            deptName = "全科";
+        if (dept == null) {
+            if (cryptConfiguer.cryptFlag) {
+                if (deptName.equals(CryptUtil.encrypt_char("全科")) == false) {
+                    deptName = CryptUtil.encrypt_char("全科");
+                }
+            } else {
+                if (deptName.equals("全科") == false) {
+                    deptName = "全科";
+                }
+            }
             conceptBaseVO.setName(deptName);
             dept = conceptFacade.getConcept(conceptBaseVO);
         }
@@ -310,6 +325,9 @@ public class PushItemAggregate {
                                 JSONObject scaleJson = detail.getContent();
                                 if (null != scaleJson.get("name")) {
                                     String scaleName = scaleJson.get("name").toString();
+                                    if(cryptConfiguer.cryptFlag) {
+                                        scaleName = CryptUtil.encrypt_char(scaleName);
+                                    }
                                     conceptBaseVO.setName(scaleName);
                                     conceptBaseVO.setLibType(LexiconTypeEnum.GAUGE.getKey());
                                     Concept scaleConcept = conceptFacade.getConcept(conceptBaseVO);
@@ -386,6 +404,9 @@ public class PushItemAggregate {
                 .stream()
                 .map(concept -> concept.getName())
                 .collect(Collectors.toList());
+        if(cryptConfiguer.cryptFlag) {
+            CryptUtil.encryptList(uniqueNameList);
+        }
         lisConfigVO.setUniqueNameList(uniqueNameList);
         if (type.equals(ConceptTypeEnum.Lis.getKey())) {
             RespDTO<Map<String, List<String>>> lisRes

+ 1 - 0
aipt-service/src/main/java/com/diagbot/aggregate/SearchItemAggregate.java

@@ -4,6 +4,7 @@ import com.diagbot.biz.push.entity.Item;
 import com.diagbot.biz.push.entity.Lis;
 import com.diagbot.biz.push.entity.Pacs;
 import com.diagbot.biz.push.vo.SearchVO;
+import com.diagbot.config.CryptConfiguer;
 import com.diagbot.enums.ConceptTypeEnum;
 import com.diagbot.facade.TransferFacade;
 import com.diagbot.util.ListUtil;

+ 2 - 0
aipt-service/src/main/java/com/diagbot/aggregate/TreatmentAggregate.java

@@ -7,6 +7,7 @@ import com.diagbot.biz.push.entity.MedicitionClass;
 import com.diagbot.biz.push.entity.MeditionDetail;
 import com.diagbot.biz.push.entity.Treat;
 import com.diagbot.biz.push.entity.TreatmentPlan;
+import com.diagbot.config.CryptConfiguer;
 import com.diagbot.entity.Concept;
 import com.diagbot.entity.ConceptDetail;
 import com.diagbot.enums.ConceptTypeEnum;
@@ -17,6 +18,7 @@ import com.diagbot.util.ListUtil;
 import io.github.lvyahui8.spring.annotation.DataConsumer;
 import io.github.lvyahui8.spring.annotation.DataProvider;
 import io.github.lvyahui8.spring.annotation.InvokeParameter;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
 import java.util.Arrays;

+ 4 - 0
aipt-service/src/main/java/com/diagbot/facade/TransferFacade.java

@@ -6,12 +6,14 @@ import com.diagbot.biz.push.entity.Pacs;
 import com.diagbot.biz.push.enums.FeatureTypeEnum;
 import com.diagbot.client.TranServiceClient;
 import com.diagbot.client.bean.HosCodeVO;
+import com.diagbot.config.CryptConfiguer;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.SysSetInfoDTO;
 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;
@@ -39,6 +41,8 @@ import java.util.stream.Collectors;
 public class TransferFacade {
     @Autowired
     private TranServiceClient tranServiceClient;
+    @Autowired
+    CryptConfiguer cryptConfiguer;
 
     /**
      * 查询对接状态

+ 2 - 0
common/src/main/java/com/diagbot/biz/push/entity/AdverseReaction.java

@@ -1,5 +1,6 @@
 package com.diagbot.biz.push.entity;
 
+import com.diagbot.annotation.CryptField;
 import lombok.Getter;
 import lombok.Setter;
 
@@ -20,6 +21,7 @@ public class AdverseReaction {
     /**
      * 术语名称
      */
+    @CryptField
     private String name;
     /**
      * 词性

+ 2 - 0
common/src/main/java/com/diagbot/biz/push/entity/Item.java

@@ -1,5 +1,6 @@
 package com.diagbot.biz.push.entity;
 
+import com.diagbot.annotation.CryptField;
 import lombok.Getter;
 import lombok.Setter;
 
@@ -18,6 +19,7 @@ public class Item {
     /**
      * 内部名称(公表名)
      */
+    @CryptField
     private String uniqueName;
     /**
      * 结果时间

+ 4 - 0
common/src/main/java/com/diagbot/biz/push/entity/Lis.java

@@ -1,5 +1,6 @@
 package com.diagbot.biz.push.entity;
 
+import com.diagbot.annotation.CryptField;
 import lombok.Getter;
 import lombok.Setter;
 
@@ -14,14 +15,17 @@ public class Lis {
     /**
      * 套餐名称
      */
+    @CryptField
     private String name;
     /**
      * 化验明细项
      */
+    @CryptField
     private String detailName;
     /**
      * 化验公表名
      */
+    @CryptField
     private String uniqueName;
     /**
      * 化验结果值

+ 2 - 0
common/src/main/java/com/diagbot/biz/push/entity/MedicalIndication.java

@@ -1,5 +1,6 @@
 package com.diagbot.biz.push.entity;
 
+import com.diagbot.annotation.CryptField;
 import lombok.Getter;
 import lombok.Setter;
 
@@ -29,6 +30,7 @@ public class MedicalIndication {
     /**
      * 名称(术语、描述等)
      */
+    @CryptField
     private String name;
     /**
      * 病情提示明细

+ 3 - 0
common/src/main/java/com/diagbot/biz/push/entity/MedicitionClass.java

@@ -1,5 +1,6 @@
 package com.diagbot.biz.push.entity;
 
+import com.diagbot.annotation.CryptField;
 import lombok.Getter;
 import lombok.Setter;
 
@@ -28,6 +29,7 @@ public class MedicitionClass {
     /**
      * 药品大类名称
      */
+    @CryptField
     private String bigdrugsName;
     /**
      * 药品大类词性
@@ -44,6 +46,7 @@ public class MedicitionClass {
     /**
      * 药品小类名称
      */
+    @CryptField
     private String subdrugsName;
     /**
      * 药品小类词性

+ 3 - 0
common/src/main/java/com/diagbot/biz/push/entity/Pacs.java

@@ -1,5 +1,6 @@
 package com.diagbot.biz.push.entity;
 
+import com.diagbot.annotation.CryptField;
 import lombok.Getter;
 import lombok.Setter;
 
@@ -14,10 +15,12 @@ public class Pacs {
     /**
      * HIS项目
      */
+    @CryptField
     private String name;
     /**
      * 内部检查项目(公表名)
      */
+    @CryptField
     private String uniqueName;
     /**
      * 描述信息

+ 14 - 0
common/src/main/java/com/diagbot/util/CryptUtil.java

@@ -60,6 +60,20 @@ public class CryptUtil {
         }
     }
 
+    /**
+     * 对List<String>进行解密
+     * @param list 解密前的list
+     * @return 解密后的list
+     */
+    public static void decryptList(List<String> list) {
+        if (ListUtil.isNotEmpty(list)) {
+            for (int i = 0; i < list.size(); i++) {
+                list.set(i, CryptUtil.decrypt_char(list.get(i)));
+            }
+        }
+    }
+
+
 
     public static void main(String[] args) {
         //加密英文