Browse Source

多条测试

zhoutg 4 years ago
parent
commit
ae2552352d
1 changed files with 25 additions and 23 deletions
  1. 25 23
      src/main/java/com/diagbot/facade/TestFacade.java

+ 25 - 23
src/main/java/com/diagbot/facade/TestFacade.java

@@ -36,6 +36,7 @@ import java.io.FileInputStream;
 import java.io.IOException;
 import java.io.OutputStream;
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
@@ -174,34 +175,35 @@ public class TestFacade {
                     case "7" : // 药品过敏原
                         StringBuffer pastStr = new StringBuffer("");
                         String name = bean.getNeoName();
-                        // 随机取其中一条
-                        if (name.contains(";") || name.contains(";")) {
-                            String[] nameArr = name.split(";|;");
-                            name = nameArr[getRandomNum(nameArr.length)];
-                        }
+                        List<String> drugAll = new ArrayList<>();
+                        // 分号表示有多条
+                        List<String> drugList = Arrays.asList(name.split(";|;"));
                         if ("药品通用名称".equals(bean.getDrugType())) {
-                            pastStr.append("对“").append(name).append("”过敏。");
-                            indicationPushVO.setPasts(pastStr.toString());
+                            drugAll.addAll(drugList);
                         } else if ("药品类别".equals(bean.getDrugType())) {
-                            List<String> drugList = (List<String>)redisUtil.get(RedisEnum.drugType.getName() + name);
-                            if (ListUtil.isNotEmpty(drugList)) {
-                                if (testLineVO.isGetOne()) {
-                                    pastStr.append("对“").append(drugList.get(getRandomNum(drugList.size()))).append("”过敏。");
-                                    indicationPushVO.setPasts(pastStr.toString());
-                                } else {
-                                    for (String s : drugList) {
-                                        pastStr = new StringBuffer("");
-                                        IndicationPushVO indicationPushCopy = new IndicationPushVO();
-                                        BeanUtil.copyProperties(indicationPushVO, indicationPushCopy);
-                                        pastStr.append("对“").append(s).append("”过敏。");
-                                        indicationPushCopy.setPasts(pastStr.toString());
-                                        indicationPushCopy.setMsg("过敏药品【" + s + "】");
-                                        indicationPushVOList.add(indicationPushCopy);
-                                    }
-                                    continue;
+                            for (String s : drugList) {
+                                List<String> drugRedis = (List<String>)redisUtil.get(RedisEnum.drugType.getName() + s);
+                                if (ListUtil.isNotEmpty(drugRedis)) {
+                                    drugAll.addAll(drugRedis);
                                 }
                             }
                         }
+
+                        if (testLineVO.isGetOne()) { // 随机取一条
+                            pastStr.append("对“").append(drugAll.get(getRandomNum(drugAll.size()))).append("”过敏。");
+                            indicationPushVO.setPasts(pastStr.toString());
+                        } else { // 遍历
+                            for (String s : drugAll) {
+                                pastStr = new StringBuffer("");
+                                IndicationPushVO indicationPushCopy = new IndicationPushVO();
+                                BeanUtil.copyProperties(indicationPushVO, indicationPushCopy);
+                                pastStr.append("对“").append(s).append("”过敏。");
+                                indicationPushCopy.setPasts(pastStr.toString());
+                                indicationPushCopy.setMsg("过敏药品【" + s + "】");
+                                indicationPushVOList.add(indicationPushCopy);
+                            }
+                            continue;
+                        }
                         break;
                     case "10": // 禁忌人群
                         switch (bean.getNeoName()) {