From efce7ce3e63712ecc8b4c3039a73b508fc3ea880 Mon Sep 17 00:00:00 2001
From: jinlin <jinlin>
Date: 星期一, 28 四月 2025 10:20:37 +0800
Subject: [PATCH] 修改
---
src/main/java/com/example/server/progressTrack/service/NetWorkDiagramService.java | 43 +++++++++++++++++++++++++++----------------
1 files changed, 27 insertions(+), 16 deletions(-)
diff --git a/src/main/java/com/example/server/progressTrack/service/NetWorkDiagramService.java b/src/main/java/com/example/server/progressTrack/service/NetWorkDiagramService.java
index eeb3f99..4cc3de7 100644
--- a/src/main/java/com/example/server/progressTrack/service/NetWorkDiagramService.java
+++ b/src/main/java/com/example/server/progressTrack/service/NetWorkDiagramService.java
@@ -4,7 +4,6 @@
import cn.hutool.core.date.DateUtil;
import cn.hutool.json.JSONArray;
import cn.hutool.json.JSONObject;;
-import cn.hutool.json.XML;
import com.example.client.service.BaseService;
import com.example.client.utils.UUIDUtil;
import com.example.server.progressTrack.Dto.*;
@@ -13,7 +12,6 @@
import com.example.server.utils.TimeUtils;
import com.mxgraph.util.mxConstants;
import com.mxgraph.view.mxGraph;
-import com.mxgraph.view.mxStylesheet;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
@@ -79,8 +77,8 @@
//鐘舵�佸垎涓猴細涓撲笟銆佸凡鍚姩/杩涜涓紙娴呯伆锛夈�佷复鏈燂紙榛勮壊锛夈�佸凡閫炬湡锛堢孩鑹诧級銆佸凡瀹屾垚锛堟祬缁胯壊锛夈�佽秴鏈熷畬鎴愶紙娣辩豢鑹诧級
enum StatusEnum {zy, jxz, lq, yq, zcwc, cqwc}
- String[] fillColorArr = {"#e5e5e5", "#A9A9A9", "yellow", "#FF0000", "#90EE90", "#006400"};
- String[] fontColorArr = {"#e5e5e5", "#A9A9A9", "yellow", "#FF0000", "#90EE90", "#006400"};
+ String[] fillColorArr = {"#e5e5e5", "#3498DB", "#F1C40F", "#E74C3C", "#2ECC71", "#006400"};
+ String[] fontColorArr = {"#e5e5e5", "#3498DB", "#F1C40F", "#E74C3C", "#2ECC71", "#006400"};
InitParamDto initParamDto = new InitParamDto();
ResultDataDto resultDataDto = new ResultDataDto();
@@ -136,7 +134,7 @@
) {
JSONObject jsonObject = dialgramJsonArray.getJSONObject(i);
String shape = jsonObject.get("shape").toString();
- StatusEnum status = StatusEnum.jxz;//StatusEnum.wqd;
+ StatusEnum status = StatusEnum.jxz;
if (shape.equals("custom-text")) {
JsonUtils2.setJsonValueByPath(jsonObject, "attrs/body/fill".split("/"), fillColorArr[StatusEnum.zy.ordinal()]);
JsonUtils2.setJsonValueByPath(jsonObject, "attrs/text/fill".split("/"), fontColorArr[StatusEnum.zy.ordinal()]);
@@ -1066,7 +1064,7 @@
JSONObject jsonObject = modelJsonArray.getJSONObject(i);
if (jsonObject.get("shape").equals("custom-circle")) {
Object nodeMarker = JsonUtils2.getJsonValueByPath(jsonObject, "attrs/text/text".split("/"));
- if ("涓撲笟".equals(nodeMarker)) {
+ /* if ("涓撲笟".equals(nodeMarker)) {
fillColorArr[StatusEnum.zy.ordinal()] = JsonUtils2.getJsonValueByPath(jsonObject, "attrs/body/fill".split("/")).toString();
fontColorArr[StatusEnum.zy.ordinal()] = JsonUtils2.getJsonValueByPath(jsonObject, "attrs/text/fill".split("/")).toString();
}
@@ -1089,7 +1087,7 @@
if ("瓒呮湡瀹屾垚".equals(nodeMarker)) {
fillColorArr[StatusEnum.cqwc.ordinal()] = JsonUtils2.getJsonValueByPath(jsonObject, "attrs/body/fill".split("/")).toString();
fontColorArr[StatusEnum.cqwc.ordinal()] = JsonUtils2.getJsonValueByPath(jsonObject, "attrs/text/fill".split("/")).toString();
- }
+ }*/
if ("闃舵鍚嶇О".equals(nodeMarker)) {
networkDiagramPetsDto.getCirclePet().setJson(jsonObject.toString());
int width = Convert.toInt(JsonUtils2.getJsonValueByPath(jsonObject, "size/width".split("/")).toString());
@@ -1187,10 +1185,11 @@
return result;
}
- public mxGraph getCsDiagram(mxGraph graph, String json, List<NetworkNodeStatusDto> nodeStatusList, Integer panelWidth, Integer panelHeight) {
+ public mxGraph getCsDiagram(mxGraph graph, String json, List<NetworkNodeStatusDto> nodeStatusList, Integer panelWidth, Integer panelHeight, List<DiagramNodeDto> list) {
if (StringUtils.isBlank(json)) {
return graph;
}
+
Map<Long, StatusEnum> statusMap = new HashMap<>();
if (nodeStatusList != null) {
Date today = new Date();
@@ -1305,13 +1304,13 @@
for (int i = 0; i < jsonArray.size(); i++) {
String shapeValue = jsonArray.getJSONObject(i).get("shape").toString();
String idValue = jsonArray.getJSONObject(i).get("id").toString();
- StatusEnum status = StatusEnum.jxz;//StatusEnum.wqd;
+ StatusEnum status = StatusEnum.jxz;
if (!shapeValue.equals("edge")) {
status = statusMap.get(Long.parseLong(idValue));
if ("1888761224410202114".equals(idValue)) {
System.out.println(2222);
}
- Object insertVertex = createInsertVertex(graph, jsonArray.getJSONObject(i), defX, defY, status);
+ Object insertVertex = createInsertVertex(graph, jsonArray.getJSONObject(i), defX, defY, status, list);
map.put(idValue, insertVertex);
}
}
@@ -1449,9 +1448,8 @@
return graph;
}
- public Object createInsertVertex(mxGraph graph, JSONObject jsonObject, Integer defX, Integer defY, StatusEnum status) {
+ public Object createInsertVertex(mxGraph graph, JSONObject jsonObject, Integer defX, Integer defY, StatusEnum status, List<DiagramNodeDto> list) {
Object parent = graph.getDefaultParent();
-
String shapeValue = jsonObject.get("shape").toString();
Object graphObject = null;
switch (shapeValue) {
@@ -1467,8 +1465,21 @@
Integer height = (Integer) JsonUtils2.getJsonValueByPath(jsonObject, "size/height".split("/"));
if (status != null) {
String fontColor = "fontColor=" + fillColorArr[status.ordinal()] + ";";
- graphObject = graph.insertVertex(parent, idValue, text, x, y, width, height,
- "whiteSpace=wrap;labelWidth=60;" + fontColor + mxConstants.STYLE_SHAPE + "=" + mxConstants.SHAPE_ELLIPSE);
+ if (list != null && list.size() > 0) {
+ for (DiagramNodeDto node : list) {
+ if (text.equals(node.getProcessName())){
+ graphObject = graph.insertVertex(parent, idValue, text, x, y, width, height,
+ "whiteSpace=wrap;labelWidth=60;" + fontColor );
+ break;
+ }else{
+ graphObject = graph.insertVertex(parent, idValue, text, x, y, width, height,
+ "whiteSpace=wrap;labelWidth=60;" + fontColor + mxConstants.STYLE_SHAPE + "=" + mxConstants.SHAPE_ELLIPSE);
+ }
+ }
+ }else{
+ graphObject = graph.insertVertex(parent, idValue, text, x, y, width, height,
+ "whiteSpace=wrap;labelWidth=60;" + fontColor + mxConstants.STYLE_SHAPE + "=" + mxConstants.SHAPE_ELLIPSE);
+ }
} else {
if ("寮�濮�".equals(text) || "缁撴潫".equals(text)) {
graphObject = graph.insertVertex(parent, idValue, "", x + width / 4, y + height / 4, width / 2, height / 2,
@@ -1478,9 +1489,9 @@
"whiteSpace=wrap;labelWidth=60;" + mxConstants.STYLE_SHAPE + "=" + mxConstants.SHAPE_ELLIPSE);
}
}
- /*if (StringUtils.isNotBlank(title)) {
+ if (StringUtils.isNotBlank(title)) {
createText(graph, title, x, y, width, height);
- }*/
+ }
break;
case "custom-rect":
String label = (String) JsonUtils2.getJsonValueByPath(jsonObject, "attrs/label/textWrap/text".split("/"));
--
Gitblit v1.9.1