|
@@ -2,15 +2,13 @@ package com.diagbot.repository;
|
|
|
|
|
|
import com.diagbot.dto.BillNeoDTO;
|
|
|
import com.diagbot.dto.LisBillNeoDTO;
|
|
|
+import com.diagbot.dto.NeoEntityDTO;
|
|
|
import com.diagbot.dto.NodeNeoDTO;
|
|
|
import com.diagbot.entity.node.*;
|
|
|
import com.diagbot.util.NeoUtil;
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
|
-import java.util.ArrayList;
|
|
|
-import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
-import java.util.Set;
|
|
|
+import java.util.*;
|
|
|
|
|
|
public class LisPackNode {
|
|
|
|
|
@@ -102,7 +100,7 @@ public class LisPackNode {
|
|
|
|
|
|
LisBillNeoDTO lisBillNeoDTO;
|
|
|
|
|
|
- LISPack lispack;
|
|
|
+ List<LISPack> lispacks;
|
|
|
String lispackname;
|
|
|
|
|
|
for (String term : lispackterm.keySet()) {
|
|
@@ -113,10 +111,10 @@ public class LisPackNode {
|
|
|
|
|
|
lisBillNeoDTO = new LisBillNeoDTO();
|
|
|
|
|
|
- lispack = lisPackRepository.findByNameIs(lispackname);
|
|
|
+ lispacks = lisPackRepository.findByNameIs(lispackname);
|
|
|
|
|
|
- if (lispack != null) {
|
|
|
- lisBillNeoDTO = LisPacktoLISDTO(lispack);
|
|
|
+ if (lispacks != null && lispacks.size()>0) {
|
|
|
+ lisBillNeoDTO = LisPacktoLISDTO(lispacks.get(0));
|
|
|
}
|
|
|
|
|
|
billNeoDTO.setLisBillNeoDTO(lisBillNeoDTO);
|
|
@@ -150,5 +148,72 @@ public class LisPackNode {
|
|
|
return lispacklist;
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 更新实体属性信息
|
|
|
+ */
|
|
|
+ public NeoEntityDTO updateEntity(String name, Map<String, String> props, List<String> keys, LisPackRepository lisPackRepository) {
|
|
|
+ NeoEntityDTO neoEntityDTO = new NeoEntityDTO();
|
|
|
+ neoEntityDTO.setName(name);
|
|
|
+
|
|
|
+ try {
|
|
|
+ List<LISPack> lispackres = lisPackRepository.findByNameIs(name);
|
|
|
+
|
|
|
+ if (lispackres!= null && lispackres.size()>0) {
|
|
|
+ LISPack lispack = lispackres.get(0);
|
|
|
+
|
|
|
+ for (String key : props.keySet()) {
|
|
|
+ switch (key) {
|
|
|
+ case "最大值":
|
|
|
+ lispack.setMaxval(Double.parseDouble(props.get(key)));
|
|
|
+ break;
|
|
|
+ case "最小值":
|
|
|
+ lispack.setMinval(Double.parseDouble(props.get(key)));
|
|
|
+ break;
|
|
|
+ case "单位":
|
|
|
+ lispack.setUnit(props.get(key));
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ lispack = lisPackRepository.save(lispack);
|
|
|
+
|
|
|
+ neoEntityDTO = fillNeoDTO(lispack, keys);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ catch (Exception ex) {
|
|
|
+ ex.printStackTrace();
|
|
|
+ }
|
|
|
+
|
|
|
+ return neoEntityDTO;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ private NeoEntityDTO fillNeoDTO(LISPack lisPack, List<String> keys) {
|
|
|
+ NeoEntityDTO neoEntityDTO = new NeoEntityDTO();
|
|
|
+ Map<String, String> props = new HashMap<>();
|
|
|
+ String val = "";
|
|
|
+
|
|
|
+ neoEntityDTO.setName(lisPack.getName());
|
|
|
+ for (String key:keys) {
|
|
|
+ switch(key) {
|
|
|
+ case "最大值":
|
|
|
+ val = String.format("%.2f",lisPack.getMaxval());
|
|
|
+ break;
|
|
|
+ case "最小值":
|
|
|
+ val = String.format("%.2f", lisPack.getMinval());
|
|
|
+ break;
|
|
|
+ case "单位":
|
|
|
+ val = lisPack.getUnit();
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ props.put(key, val);
|
|
|
+ }
|
|
|
+ neoEntityDTO.setProperty(props);
|
|
|
+
|
|
|
+ return neoEntityDTO;
|
|
|
+ }
|
|
|
+
|
|
|
}
|
|
|
|