From 6d76cb8d5e759f88e7a74b84a845dfd6fb1709e8 Mon Sep 17 00:00:00 2001 From: libertyspy Date: Sun, 15 Mar 2026 20:21:07 +0800 Subject: [PATCH] UPDATE: VERSION-20260315 --- .../scene/controller/SceneController.java | 2 +- .../solution/scene/mapper/SceneMapper.java | 2 ++ .../solution/scene/service/SceneService.java | 4 ++++ .../scene/service/impl/SceneServiceImpl.java | 13 +++++++++++++ .../resources/mapper/scene/SceneMapper.xml | 19 ++++++++++++++++++- 5 files changed, 38 insertions(+), 2 deletions(-) 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 2a7e1ab..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 @@ -34,7 +34,7 @@ public class SceneController extends BaseController { @Log(title = "行为树主", businessType = BusinessType.INSERT) public AjaxResult saveSceneConfig(@RequestBody AfsimScenario afsimScenario) { - return toAjax(sceneService.insert(afsimScenario)); + return toAjax(sceneService.saveOrUpdate(afsimScenario)); } /** 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 e00e22d..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 @@ -15,6 +15,8 @@ public interface SceneMapper { */ int insert(AfsimScenario 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 00d2422..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 @@ -13,6 +13,10 @@ public interface SceneService { */ int insert(AfsimScenario afsimScenario); + int update(AfsimScenario afsimScenario); + + int saveOrUpdate(AfsimScenario afsimScenario); + /** * 获取场景列表 * @return 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 3da43a1..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 @@ -20,6 +20,19 @@ public class SceneServiceImpl implements SceneService { return sceneMapper.insert(afsimScenario); } + @Override + public int update(AfsimScenario afsimScenario) { + return sceneMapper.update(afsimScenario); + } + + @Override + public int saveOrUpdate(AfsimScenario afsimScenario) { + if (null != afsimScenario.getId() && afsimScenario.getId() > 0) { + return sceneMapper.update(afsimScenario); + } + return insert(afsimScenario); + } + /** * 获取场景列表 * @return diff --git a/auto-solution-scene/src/main/resources/mapper/scene/SceneMapper.xml b/auto-solution-scene/src/main/resources/mapper/scene/SceneMapper.xml index 5c58a2d..b21489a 100644 --- a/auto-solution-scene/src/main/resources/mapper/scene/SceneMapper.xml +++ b/auto-solution-scene/src/main/resources/mapper/scene/SceneMapper.xml @@ -4,13 +4,30 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> + + + + + + + + INSERT INTO afsim_scenario (name, description, scenario_path, communication_graph) VALUES (#{name}, #{description}, #{scenarioPath}, #{communicationGraph}) - SELECT id, name, description, scenario_path, communication_graph FROM afsim_scenario + + update afsim_scenario + set name=#{name}, + description=#{description}, + scenario_path=#{scenarioPath}, + communication_graph=#{communicationGraph} + where id=#{id} + + \ No newline at end of file