浏览代码

开单合理性诊断添加主诉、现病史规则

zhoutg 4 年之前
父节点
当前提交
171b7ac20a
共有 2 个文件被更改,包括 43 次插入0 次删除
  1. 6 0
      src/main/java/com/diagbot/process/BillProcess.java
  2. 37 0
      src/main/java/com/diagbot/util/CoreUtil.java

+ 6 - 0
src/main/java/com/diagbot/process/BillProcess.java

@@ -27,6 +27,7 @@ import com.diagbot.rule.PacsRule;
 import com.diagbot.rule.SexRule;
 import com.diagbot.rule.VitalRule;
 import com.diagbot.util.BeanUtil;
+import com.diagbot.util.CoreUtil;
 import com.diagbot.util.ListUtil;
 import com.diagbot.vo.Drug;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -185,6 +186,11 @@ public class BillProcess {
         allergyAll.addAll(takeMedicine);
         // 诊断数据
         List<Item> diags = wordCrfDTO.getDiag();
+        // 添加主诉诊断
+        CoreUtil.addAllDiag(diags, wordCrfDTO.getChiefLabel().getDiags());
+        // 添加现病史诊断
+        CoreUtil.addAllDiag(diags, wordCrfDTO.getPresentLabel().getDiags());
+
 
         //辅助检查描述
         PacsLabel pacsLabel = wordCrfDTO.getPacsLabel();

+ 37 - 0
src/main/java/com/diagbot/util/CoreUtil.java

@@ -4,6 +4,7 @@ import com.diagbot.biz.push.entity.Item;
 import com.diagbot.biz.push.entity.Lis;
 import com.diagbot.dto.NodeNeoDTO;
 import com.diagbot.model.entity.Clinical;
+import com.diagbot.model.entity.Diag;
 import com.diagbot.model.entity.Usual;
 import com.diagbot.model.entity.Vital;
 import com.diagbot.model.label.VitalLabel;
@@ -782,6 +783,42 @@ public class CoreUtil {
         return false;
     }
 
+    /**
+     * 添加所有的Item
+     *
+     * @param source
+     * @param diagList
+     */
+    public static void addAllDiag(List<Item> source, List<Diag> diagList) {
+        List<Item> other = diagConvertItem(diagList);
+        if (ListUtil.isEmpty(other)) {
+            return ;
+        }
+        if (source == null) {
+            source = new ArrayList<>();
+        }
+        source.addAll(other);
+    }
+
+    /**
+     * 将Diag转成Item类型
+     *
+     * @param diagList
+     * @return
+     */
+    public static List<Item> diagConvertItem(List<Diag> diagList) {
+        List<Item> itemList = new ArrayList<>();
+        if (ListUtil.isNotEmpty(diagList)) {
+            for (Diag diag : diagList) {
+                Item item = new Item();
+                item.setName(diag.getName());
+                item.setUniqueName(diag.getStandName());
+                itemList.add(item);
+            }
+        }
+        return itemList;
+    }
+
     /**
      * 获取mapflag值
      *