From 235fd9b6e1d5bb5366c5b422b4603633696ad6a2 Mon Sep 17 00:00:00 2001 From: liangyun Date: Mon, 16 Mar 2026 11:57:20 +0800 Subject: [PATCH 1/5] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E6=A0=BC=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../resources/mapper/rule/FireRuleMapper.xml | 28 +++++++++++++------ 1 file changed, 20 insertions(+), 8 deletions(-) diff --git a/auto-solution-rule/src/main/resources/mapper/rule/FireRuleMapper.xml b/auto-solution-rule/src/main/resources/mapper/rule/FireRuleMapper.xml index 34e95c8..0477daa 100644 --- a/auto-solution-rule/src/main/resources/mapper/rule/FireRuleMapper.xml +++ b/auto-solution-rule/src/main/resources/mapper/rule/FireRuleMapper.xml @@ -82,7 +82,7 @@ @@ -96,14 +96,26 @@ \ No newline at end of file From 9f4ef1ab941362aeb93923525c4c6763879b236e Mon Sep 17 00:00:00 2001 From: liangyun Date: Tue, 17 Mar 2026 09:18:50 +0800 Subject: [PATCH 2/5] save --- .../controller/rule/FireRuleController.java | 7 +- .../solution/rule/mapper/FireRuleMapper.java | 2 - .../rule/service/FireRuleService.java | 2 - .../service/impl/FireRuleServiceImpl.java | 5 - .../resources/mapper/rule/FireRuleMapper.xml | 5 - auto-solution-scene/pom.xml | 6 - .../scene/controller/SceneController.java | 3 +- .../scene/domain/AfsimScenarioForm.java | 25 --- .../scene/domain/ScenarioRelation.java | 108 ----------- .../solution/scene/mapper/SceneMapper.java | 5 +- .../solution/scene/service/SceneService.java | 7 +- .../scene/service/impl/SceneServiceImpl.java | 7 +- .../src/views/decision/communication/api.ts | 3 +- .../decision/communication/communication.vue | 13 +- .../src/views/decision/communication/node.vue | 5 +- .../decision/communication/nodes-card.vue | 35 ++-- .../decision/communication/platform-card.vue | 1 - .../views/decision/communication/relation.ts | 134 ------------- .../src/views/decision/communication/types.ts | 37 ++-- .../src/views/decision/communication/utils.ts | 49 ----- modeler/src/views/decision/graph/canvas.ts | 2 +- modeler/src/views/decision/graph/element.ts | 2 +- modeler/src/views/decision/graph/hooks.ts | 1 - modeler/src/views/decision/graph/index.ts | 14 +- modeler/src/views/decision/graph/utils.ts | 4 +- .../views/decision/rule/PlatformSelect.vue | 168 ----------------- modeler/src/views/decision/rule/api.ts | 4 - .../src/views/decision/rule/management.vue | 176 ++---------------- modeler/src/views/decision/rule/types.ts | 7 +- modeler/src/views/decision/types/index.ts | 10 - modeler/src/views/decision/types/platform.ts | 43 ----- modeler/types/components.d.ts | 4 - 32 files changed, 83 insertions(+), 811 deletions(-) delete mode 100644 auto-solution-scene/src/main/java/com/solution/scene/domain/AfsimScenarioForm.java delete mode 100644 auto-solution-scene/src/main/java/com/solution/scene/domain/ScenarioRelation.java delete mode 100644 modeler/src/views/decision/communication/relation.ts delete mode 100644 modeler/src/views/decision/rule/PlatformSelect.vue delete mode 100644 modeler/src/views/decision/types/index.ts delete mode 100644 modeler/src/views/decision/types/platform.ts diff --git a/auto-solution-admin/src/main/java/com/solution/web/controller/rule/FireRuleController.java b/auto-solution-admin/src/main/java/com/solution/web/controller/rule/FireRuleController.java index e8e8b53..38d186a 100644 --- a/auto-solution-admin/src/main/java/com/solution/web/controller/rule/FireRuleController.java +++ b/auto-solution-admin/src/main/java/com/solution/web/controller/rule/FireRuleController.java @@ -59,15 +59,10 @@ public class FireRuleController extends BaseController { * @return */ @GetMapping("/platforms/{scenarioId}") - public AjaxResult platformsScenarioId(@PathVariable Integer scenarioId){ + public AjaxResult platforms(@PathVariable Integer scenarioId){ return success(ruleService.findPlatformComponents(scenarioId)); } - @GetMapping("/platforms") - public AjaxResult platforms(){ - return success(ruleService.findAllPlatformComponents()); - } - /** * 根据平台id获取平台下所有组件 * @param platformId diff --git a/auto-solution-rule/src/main/java/com/solution/rule/mapper/FireRuleMapper.java b/auto-solution-rule/src/main/java/com/solution/rule/mapper/FireRuleMapper.java index 5c821bb..8db0fde 100644 --- a/auto-solution-rule/src/main/java/com/solution/rule/mapper/FireRuleMapper.java +++ b/auto-solution-rule/src/main/java/com/solution/rule/mapper/FireRuleMapper.java @@ -42,6 +42,4 @@ public interface FireRuleMapper { List getComponents(Integer platformId); List findPlatformComponents(Integer scenarioId); - - List findAllPlatformComponents(); } diff --git a/auto-solution-rule/src/main/java/com/solution/rule/service/FireRuleService.java b/auto-solution-rule/src/main/java/com/solution/rule/service/FireRuleService.java index 74f98b6..29dae9f 100644 --- a/auto-solution-rule/src/main/java/com/solution/rule/service/FireRuleService.java +++ b/auto-solution-rule/src/main/java/com/solution/rule/service/FireRuleService.java @@ -45,6 +45,4 @@ public interface FireRuleService { * @return */ List findPlatformComponents(Integer scenarioId); - - List findAllPlatformComponents(); } diff --git a/auto-solution-rule/src/main/java/com/solution/rule/service/impl/FireRuleServiceImpl.java b/auto-solution-rule/src/main/java/com/solution/rule/service/impl/FireRuleServiceImpl.java index 33bf00d..83a727d 100644 --- a/auto-solution-rule/src/main/java/com/solution/rule/service/impl/FireRuleServiceImpl.java +++ b/auto-solution-rule/src/main/java/com/solution/rule/service/impl/FireRuleServiceImpl.java @@ -176,9 +176,4 @@ public class FireRuleServiceImpl implements FireRuleService { return new ArrayList<>(); } - @Override - public List findAllPlatformComponents() { - return ruleMapper.findAllPlatformComponents(); - } - } diff --git a/auto-solution-rule/src/main/resources/mapper/rule/FireRuleMapper.xml b/auto-solution-rule/src/main/resources/mapper/rule/FireRuleMapper.xml index a4c577f..0477daa 100644 --- a/auto-solution-rule/src/main/resources/mapper/rule/FireRuleMapper.xml +++ b/auto-solution-rule/src/main/resources/mapper/rule/FireRuleMapper.xml @@ -118,9 +118,4 @@ ORDER BY p.name - - \ No newline at end of file diff --git a/auto-solution-scene/pom.xml b/auto-solution-scene/pom.xml index 842a4ce..d494b0d 100644 --- a/auto-solution-scene/pom.xml +++ b/auto-solution-scene/pom.xml @@ -18,12 +18,6 @@ - - - com.solution - solution-rule - - com.solution diff --git a/auto-solution-scene/src/main/java/com/solution/scene/controller/SceneController.java b/auto-solution-scene/src/main/java/com/solution/scene/controller/SceneController.java index 5825964..a255588 100644 --- a/auto-solution-scene/src/main/java/com/solution/scene/controller/SceneController.java +++ b/auto-solution-scene/src/main/java/com/solution/scene/controller/SceneController.java @@ -6,7 +6,6 @@ import com.solution.common.core.domain.AjaxResult; import com.solution.common.core.page.TableDataInfo; import com.solution.common.enums.BusinessType; import com.solution.scene.domain.AfsimScenario; -import com.solution.scene.domain.AfsimScenarioForm; import com.solution.scene.service.SceneService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -33,7 +32,7 @@ public class SceneController extends BaseController { @ApiOperation("保存场景配置") @PostMapping("/saveSceneConfig") @Log(title = "行为树主", businessType = BusinessType.INSERT) - public AjaxResult saveSceneConfig(@RequestBody AfsimScenarioForm afsimScenario) + public AjaxResult saveSceneConfig(@RequestBody AfsimScenario afsimScenario) { return toAjax(sceneService.saveOrUpdate(afsimScenario)); } diff --git a/auto-solution-scene/src/main/java/com/solution/scene/domain/AfsimScenarioForm.java b/auto-solution-scene/src/main/java/com/solution/scene/domain/AfsimScenarioForm.java deleted file mode 100644 index 5d96fd5..0000000 --- a/auto-solution-scene/src/main/java/com/solution/scene/domain/AfsimScenarioForm.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.solution.scene.domain; -/* - * This file is part of the kernelstudio package. - * - * (c) 2014-2026 zlin - * - * For the full copyright and license information, please view the LICENSE file - * that was distributed with this source code. - */ - -import java.util.List; - -public class AfsimScenarioForm extends AfsimScenario { - - private List relations; - - public List getRelations() { - return relations; - } - - public void setRelations(List relations) { - this.relations = relations; - } - -} diff --git a/auto-solution-scene/src/main/java/com/solution/scene/domain/ScenarioRelation.java b/auto-solution-scene/src/main/java/com/solution/scene/domain/ScenarioRelation.java deleted file mode 100644 index cd1ddb0..0000000 --- a/auto-solution-scene/src/main/java/com/solution/scene/domain/ScenarioRelation.java +++ /dev/null @@ -1,108 +0,0 @@ -package com.solution.scene.domain; -/* - * This file is part of the kernelstudio package. - * - * (c) 2014-2026 zlin - * - * For the full copyright and license information, please view the LICENSE file - * that was distributed with this source code. - */ - -import com.solution.rule.domain.Platform; -import com.solution.rule.domain.PlatformComponent; - -import java.io.Serializable; - -public class ScenarioRelation implements Serializable { - - private String edgeId; - - private String sourceId; - - private String sourcePort; - - private Platform sourcePlatform; - - private PlatformComponent sourceComponent; - - private String targetId; - - private String targetPort; - - private Platform targetPlatform; - - private PlatformComponent targetComponent; - - public String getEdgeId() { - return edgeId; - } - - public void setEdgeId(String edgeId) { - this.edgeId = edgeId; - } - - public String getSourceId() { - return sourceId; - } - - public void setSourceId(String sourceId) { - this.sourceId = sourceId; - } - - public String getSourcePort() { - return sourcePort; - } - - public void setSourcePort(String sourcePort) { - this.sourcePort = sourcePort; - } - - public Platform getSourcePlatform() { - return sourcePlatform; - } - - public void setSourcePlatform(Platform sourcePlatform) { - this.sourcePlatform = sourcePlatform; - } - - public PlatformComponent getSourceComponent() { - return sourceComponent; - } - - public void setSourceComponent(PlatformComponent sourceComponent) { - this.sourceComponent = sourceComponent; - } - - public String getTargetId() { - return targetId; - } - - public void setTargetId(String targetId) { - this.targetId = targetId; - } - - public String getTargetPort() { - return targetPort; - } - - public void setTargetPort(String targetPort) { - this.targetPort = targetPort; - } - - public Platform getTargetPlatform() { - return targetPlatform; - } - - public void setTargetPlatform(Platform targetPlatform) { - this.targetPlatform = targetPlatform; - } - - public PlatformComponent getTargetComponent() { - return targetComponent; - } - - public void setTargetComponent(PlatformComponent targetComponent) { - this.targetComponent = targetComponent; - } - -} diff --git a/auto-solution-scene/src/main/java/com/solution/scene/mapper/SceneMapper.java b/auto-solution-scene/src/main/java/com/solution/scene/mapper/SceneMapper.java index 03bec24..4b6585d 100644 --- a/auto-solution-scene/src/main/java/com/solution/scene/mapper/SceneMapper.java +++ b/auto-solution-scene/src/main/java/com/solution/scene/mapper/SceneMapper.java @@ -1,7 +1,6 @@ package com.solution.scene.mapper; import com.solution.scene.domain.AfsimScenario; -import com.solution.scene.domain.AfsimScenarioForm; import org.apache.ibatis.annotations.Mapper; import java.util.List; @@ -14,9 +13,9 @@ public interface SceneMapper { * @param afsimScenario * @return */ - int insert(AfsimScenarioForm afsimScenario); + int insert(AfsimScenario afsimScenario); - int update(AfsimScenarioForm afsimScenario); + int update(AfsimScenario afsimScenario); /** diff --git a/auto-solution-scene/src/main/java/com/solution/scene/service/SceneService.java b/auto-solution-scene/src/main/java/com/solution/scene/service/SceneService.java index 15a4933..67305b3 100644 --- a/auto-solution-scene/src/main/java/com/solution/scene/service/SceneService.java +++ b/auto-solution-scene/src/main/java/com/solution/scene/service/SceneService.java @@ -1,7 +1,6 @@ package com.solution.scene.service; import com.solution.scene.domain.AfsimScenario; -import com.solution.scene.domain.AfsimScenarioForm; import java.util.List; @@ -12,11 +11,11 @@ public interface SceneService { * @param afsimScenario * @return */ - int insert(AfsimScenarioForm afsimScenario); + int insert(AfsimScenario afsimScenario); - int update(AfsimScenarioForm afsimScenario); + int update(AfsimScenario afsimScenario); - int saveOrUpdate(AfsimScenarioForm afsimScenario); + int saveOrUpdate(AfsimScenario afsimScenario); /** * 获取场景列表 diff --git a/auto-solution-scene/src/main/java/com/solution/scene/service/impl/SceneServiceImpl.java b/auto-solution-scene/src/main/java/com/solution/scene/service/impl/SceneServiceImpl.java index 75deac0..f1a43fa 100644 --- a/auto-solution-scene/src/main/java/com/solution/scene/service/impl/SceneServiceImpl.java +++ b/auto-solution-scene/src/main/java/com/solution/scene/service/impl/SceneServiceImpl.java @@ -1,7 +1,6 @@ package com.solution.scene.service.impl; import com.solution.scene.domain.AfsimScenario; -import com.solution.scene.domain.AfsimScenarioForm; import com.solution.scene.mapper.SceneMapper; import com.solution.scene.service.SceneService; import org.springframework.beans.factory.annotation.Autowired; @@ -17,17 +16,17 @@ public class SceneServiceImpl implements SceneService { private SceneMapper sceneMapper; @Override - public int insert(AfsimScenarioForm afsimScenario) { + public int insert(AfsimScenario afsimScenario) { return sceneMapper.insert(afsimScenario); } @Override - public int update(AfsimScenarioForm afsimScenario) { + public int update(AfsimScenario afsimScenario) { return sceneMapper.update(afsimScenario); } @Override - public int saveOrUpdate(AfsimScenarioForm afsimScenario) { + public int saveOrUpdate(AfsimScenario afsimScenario) { if (null != afsimScenario.getId() && afsimScenario.getId() > 0) { return sceneMapper.update(afsimScenario); } diff --git a/modeler/src/views/decision/communication/api.ts b/modeler/src/views/decision/communication/api.ts index 9f41d12..9bb20a1 100644 --- a/modeler/src/views/decision/communication/api.ts +++ b/modeler/src/views/decision/communication/api.ts @@ -8,8 +8,7 @@ */ import { HttpRequestClient } from '@/utils/request'; -import type { Scenario, ScenarioPageableResponse, ScenarioRequest } from './types'; -import type { PlatformWithComponentsResponse } from '../types'; +import type { PlatformWithComponentsResponse, ScenarioPageableResponse, ScenarioRequest, Scenario } from './types'; import type { BasicResponse } from '@/types'; const req = HttpRequestClient.create({ diff --git a/modeler/src/views/decision/communication/communication.vue b/modeler/src/views/decision/communication/communication.vue index 757fe09..061844a 100644 --- a/modeler/src/views/decision/communication/communication.vue +++ b/modeler/src/views/decision/communication/communication.vue @@ -63,7 +63,6 @@ import { createGraphScenarioElement, createGraphTaskElementFromScenario } from ' import PlatformCard from './platform-card.vue'; import NodesCard from './nodes-card.vue'; import { saveScenario } from './api'; -import {resolveConnectionRelation} from './relation' const TeleportContainer = defineComponent(getTeleport()); @@ -195,6 +194,7 @@ export default defineComponent({ }; const handleSelect = (scenario: Scenario) => { + console.info('handleSelect', scenario); let nodeGraph: GraphContainer | null = null; try { nodeGraph = JSON.parse(scenario.communicationGraph as unknown as string) as unknown as GraphContainer; @@ -210,10 +210,10 @@ export default defineComponent({ currentScenario.value = { ...scenario, graph: nodeGraph, - relations: [] }; currentScenarioEditing.value = true; createElements(); + }; const createElements = () => { @@ -228,6 +228,7 @@ export default defineComponent({ if (currentScenario.value?.graph.nodes) { currentScenario.value?.graph.nodes.forEach(ele => { const node = createGraphScenarioElement(ele as GraphTaskElement); + console.info('create node: ', ele); // 将节点添加到画布 graph.value?.addNode(node as Node); }); @@ -254,11 +255,10 @@ export default defineComponent({ name: null, description: null, communicationGraph: null, - relations: [], graph: { edges: [], nodes: [], - }, + } }; currentGraph.value = { edges: [], @@ -341,10 +341,6 @@ export default defineComponent({ const handleSave = () => { const graphData: GraphContainer = resolveGraph(graph.value as Graph); - - const relations = resolveConnectionRelation(graph.value as Graph); - console.error('relations',relations) - console.info('handleSave', graphData); if (!currentScenario.value) { message.error('当前决策树不存在'); @@ -354,7 +350,6 @@ export default defineComponent({ ...currentScenario.value, graph: graphData, communicationGraph: JSON.stringify(graphData), - relations: relations }; if (!newScenario.name) { message.error('场景名称不能为空.'); diff --git a/modeler/src/views/decision/communication/node.vue b/modeler/src/views/decision/communication/node.vue index cc074e7..edd3b0f 100644 --- a/modeler/src/views/decision/communication/node.vue +++ b/modeler/src/views/decision/communication/node.vue @@ -23,11 +23,9 @@ >
@@ -40,11 +38,9 @@
@@ -134,6 +130,7 @@ export default defineComponent({ onMounted(() => { _props.node?.on('change:data', handleDataChange); + console.error('element',element.value) }); onUnmounted(() => { diff --git a/modeler/src/views/decision/communication/nodes-card.vue b/modeler/src/views/decision/communication/nodes-card.vue index da5ebc1..da38e98 100644 --- a/modeler/src/views/decision/communication/nodes-card.vue +++ b/modeler/src/views/decision/communication/nodes-card.vue @@ -27,11 +27,10 @@ \ No newline at end of file diff --git a/modeler/src/views/decision/rule/api.ts b/modeler/src/views/decision/rule/api.ts index d7d2ae3..30b1d34 100644 --- a/modeler/src/views/decision/rule/api.ts +++ b/modeler/src/views/decision/rule/api.ts @@ -9,7 +9,6 @@ import { HttpRequestClient } from '@/utils/request'; import type { FireRule, FireRulePageableResponse, FireRuleRequest } from './types'; -import type { PlatformWithComponentsResponse } from '../types'; import type { BasicResponse } from '@/types'; const req = HttpRequestClient.create({ @@ -32,8 +31,5 @@ export const deleteFireRule = (id: number): Promise => { return req.delete(`/system/rule/${id}`); }; -export const findAllPlatformWithComponents = (): Promise => { - return req.get(`/system/firerule/platforms`); -}; \ No newline at end of file diff --git a/modeler/src/views/decision/rule/management.vue b/modeler/src/views/decision/rule/management.vue index 24d54ad..ab2d29a 100644 --- a/modeler/src/views/decision/rule/management.vue +++ b/modeler/src/views/decision/rule/management.vue @@ -75,52 +75,18 @@ - -
-
- - - - - - - - - - - -
-
-
+
- -
-
- - - - - - - - - - - -
-
-
+
\ No newline at end of file diff --git a/modeler/src/views/decision/rule/api.ts b/modeler/src/views/decision/rule/api.ts index 30b1d34..d7d2ae3 100644 --- a/modeler/src/views/decision/rule/api.ts +++ b/modeler/src/views/decision/rule/api.ts @@ -9,6 +9,7 @@ import { HttpRequestClient } from '@/utils/request'; import type { FireRule, FireRulePageableResponse, FireRuleRequest } from './types'; +import type { PlatformWithComponentsResponse } from '../types'; import type { BasicResponse } from '@/types'; const req = HttpRequestClient.create({ @@ -31,5 +32,8 @@ export const deleteFireRule = (id: number): Promise => { return req.delete(`/system/rule/${id}`); }; +export const findAllPlatformWithComponents = (): Promise => { + return req.get(`/system/firerule/platforms`); +}; \ No newline at end of file diff --git a/modeler/src/views/decision/rule/management.vue b/modeler/src/views/decision/rule/management.vue index ab2d29a..24d54ad 100644 --- a/modeler/src/views/decision/rule/management.vue +++ b/modeler/src/views/decision/rule/management.vue @@ -75,18 +75,52 @@ - + +
+
+ + + + + + + + + + + +
+
+
- + +
+
+ + + + + + + + + + + +
+
+