From 711d7bf3da833e6d934059064f951a9f38b0e1e4 Mon Sep 17 00:00:00 2001 From: MHW Date: Sun, 15 Mar 2026 09:31:45 +0800 Subject: [PATCH] =?UTF-8?q?26-03-15-09:31=20=E5=9C=BA=E6=99=AF=E6=A8=A1?= =?UTF-8?q?=E5=9D=97=EF=BC=9A=E5=88=86=E9=A1=B5=E6=9F=A5=E8=AF=A2=E6=89=80?= =?UTF-8?q?=E6=9C=89=E5=9C=BA=E6=99=AF=EF=BC=8C=E4=BF=9D=E5=AD=98=E5=9C=BA?= =?UTF-8?q?=E6=99=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- auto-solution-admin/pom.xml | 5 ++ .../behaviour/BehaviortreeController.java | 12 ----- .../system/mapper/BehaviortreeMapper.java | 8 --- .../system/service/IBehaviortreeService.java | 9 ---- .../service/impl/BehaviortreeServiceImpl.java | 14 ----- .../mapper/system/BehaviortreeMapper.xml | 2 +- auto-solution-scene/pom.xml | 39 ++++++++++++++ .../scene/controller/SceneController.java | 51 +++++++++++++++++++ .../solution/scene}/domain/AfsimScenario.java | 2 +- .../solution/scene/mapper/SceneMapper.java | 24 +++++++++ .../solution/scene/service/SceneService.java | 21 ++++++++ .../scene/service/impl/SceneServiceImpl.java | 31 +++++++++++ .../resources/mapper/scene/SceneMapper.xml | 16 ++++++ pom.xml | 7 +++ 14 files changed, 196 insertions(+), 45 deletions(-) create mode 100644 auto-solution-scene/pom.xml create mode 100644 auto-solution-scene/src/main/java/com/solution/scene/controller/SceneController.java rename {auto-solution-behaviour/src/main/java/com/solution/system => auto-solution-scene/src/main/java/com/solution/scene}/domain/AfsimScenario.java (97%) create mode 100644 auto-solution-scene/src/main/java/com/solution/scene/mapper/SceneMapper.java create mode 100644 auto-solution-scene/src/main/java/com/solution/scene/service/SceneService.java create mode 100644 auto-solution-scene/src/main/java/com/solution/scene/service/impl/SceneServiceImpl.java create mode 100644 auto-solution-scene/src/main/resources/mapper/scene/SceneMapper.xml diff --git a/auto-solution-admin/pom.xml b/auto-solution-admin/pom.xml index 58545c6..3cff69c 100644 --- a/auto-solution-admin/pom.xml +++ b/auto-solution-admin/pom.xml @@ -76,6 +76,11 @@ solution-rule + + com.solution + solution-scene + + diff --git a/auto-solution-admin/src/main/java/com/solution/web/controller/behaviour/BehaviortreeController.java b/auto-solution-admin/src/main/java/com/solution/web/controller/behaviour/BehaviortreeController.java index 2cef53c..f3a2de5 100644 --- a/auto-solution-admin/src/main/java/com/solution/web/controller/behaviour/BehaviortreeController.java +++ b/auto-solution-admin/src/main/java/com/solution/web/controller/behaviour/BehaviortreeController.java @@ -3,7 +3,6 @@ package com.solution.web.controller.behaviour; import java.util.List; import javax.servlet.http.HttpServletResponse; -import com.solution.system.domain.AfsimScenario; import com.solution.web.core.BehaviortreeProcessor; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -116,15 +115,4 @@ public class BehaviortreeController extends BaseController return toAjax(behaviortreeService.deleteBehaviortreeByIds(ids)); } - - /** - * 保存场景配置 - */ - @ApiOperation("保存场景配置") - @PostMapping("/saveSceneConfig") - @Log(title = "行为树主", businessType = BusinessType.INSERT) - public AjaxResult saveSceneConfig(@RequestBody AfsimScenario afsimScenario) - { - return toAjax(behaviortreeService.insert(afsimScenario)); - } } diff --git a/auto-solution-behaviour/src/main/java/com/solution/system/mapper/BehaviortreeMapper.java b/auto-solution-behaviour/src/main/java/com/solution/system/mapper/BehaviortreeMapper.java index 6609ca1..da40ce5 100644 --- a/auto-solution-behaviour/src/main/java/com/solution/system/mapper/BehaviortreeMapper.java +++ b/auto-solution-behaviour/src/main/java/com/solution/system/mapper/BehaviortreeMapper.java @@ -2,7 +2,6 @@ package com.solution.system.mapper; import java.util.List; -import com.solution.system.domain.AfsimScenario; import com.solution.system.domain.Behaviortree; /** @@ -60,11 +59,4 @@ public interface BehaviortreeMapper * @return 结果 */ public int deleteBehaviortreeByIds(Long[] ids); - - /** - * 保存场景配置 - * @param afsimScenario - * @return - */ - int insert(AfsimScenario afsimScenario); } diff --git a/auto-solution-behaviour/src/main/java/com/solution/system/service/IBehaviortreeService.java b/auto-solution-behaviour/src/main/java/com/solution/system/service/IBehaviortreeService.java index 2a8b4a0..f5b1ff9 100644 --- a/auto-solution-behaviour/src/main/java/com/solution/system/service/IBehaviortreeService.java +++ b/auto-solution-behaviour/src/main/java/com/solution/system/service/IBehaviortreeService.java @@ -2,9 +2,7 @@ package com.solution.system.service; import java.util.List; -import com.solution.system.domain.AfsimScenario; import com.solution.system.domain.Behaviortree; -import sun.management.spi.PlatformMBeanProvider; /** * 行为树主Service接口 @@ -61,11 +59,4 @@ public interface IBehaviortreeService * @return 结果 */ public int deleteBehaviortreeById(Long id); - - /** - * 保存场景配置 - * @param afsimScenario - * @return - */ - int insert(AfsimScenario afsimScenario); } diff --git a/auto-solution-behaviour/src/main/java/com/solution/system/service/impl/BehaviortreeServiceImpl.java b/auto-solution-behaviour/src/main/java/com/solution/system/service/impl/BehaviortreeServiceImpl.java index dc2705c..e99e020 100644 --- a/auto-solution-behaviour/src/main/java/com/solution/system/service/impl/BehaviortreeServiceImpl.java +++ b/auto-solution-behaviour/src/main/java/com/solution/system/service/impl/BehaviortreeServiceImpl.java @@ -4,7 +4,6 @@ import java.util.List; import cn.hutool.core.util.ObjectUtil; import com.solution.common.constant.ExceptionConstants; -import com.solution.system.domain.AfsimScenario; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.solution.system.mapper.BehaviortreeMapper; @@ -94,17 +93,4 @@ public class BehaviortreeServiceImpl implements IBehaviortreeService { return behaviortreeMapper.deleteBehaviortreeById(id); } - - /** - * 保存场景配置 - * @param afsimScenario - * @return - */ - @Override - public int insert(AfsimScenario afsimScenario) { - if(ObjectUtil.isEmpty(afsimScenario) || ObjectUtil.isEmpty(afsimScenario.getCommunicationGraph())){ - throw new RuntimeException(ExceptionConstants.SCENE_CONFIG_NOT_NULL); - } - return behaviortreeMapper.insert(afsimScenario); - } } diff --git a/auto-solution-behaviour/src/main/resources/mapper/system/BehaviortreeMapper.xml b/auto-solution-behaviour/src/main/resources/mapper/system/BehaviortreeMapper.xml index 260da7b..0507194 100644 --- a/auto-solution-behaviour/src/main/resources/mapper/system/BehaviortreeMapper.xml +++ b/auto-solution-behaviour/src/main/resources/mapper/system/BehaviortreeMapper.xml @@ -55,7 +55,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - + INSERT INTO afsim_scenario (name, description, scenario_path, communication_graph) VALUES (#{name}, #{description}, #{scenarioPath}, #{communicationGraph}) diff --git a/auto-solution-scene/pom.xml b/auto-solution-scene/pom.xml new file mode 100644 index 0000000..d494b0d --- /dev/null +++ b/auto-solution-scene/pom.xml @@ -0,0 +1,39 @@ + + + + solution + com.solution + 3.9.1 + + + 4.0.0 + + solution-scene + + + scene模块 + + + + + + + com.solution + solution-common + + + + org.projectlombok + lombok + + + + io.springfox + springfox-boot-starter + + + + + \ No newline at end of file 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 new file mode 100644 index 0000000..2a7e1ab --- /dev/null +++ b/auto-solution-scene/src/main/java/com/solution/scene/controller/SceneController.java @@ -0,0 +1,51 @@ +package com.solution.scene.controller; + +import com.solution.common.annotation.Log; +import com.solution.common.core.controller.BaseController; +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.service.SceneService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + + +/** + * 场景管理 + */ +@Api("场景管理") +@RestController +@RequestMapping("/api/system/scene") +public class SceneController extends BaseController { + + @Autowired + private SceneService sceneService; + + /** + * 保存场景配置 + */ + @ApiOperation("保存场景配置") + @PostMapping("/saveSceneConfig") + @Log(title = "行为树主", businessType = BusinessType.INSERT) + public AjaxResult saveSceneConfig(@RequestBody AfsimScenario afsimScenario) + { + return toAjax(sceneService.insert(afsimScenario)); + } + + /** + * 获取场景列表 + * @return + */ + @GetMapping("/list") + @ApiOperation("获取场景列表") + public TableDataInfo list(){ + startPage(); + List list = sceneService.selectSceneList(); + return getDataTable(list); + } +} diff --git a/auto-solution-behaviour/src/main/java/com/solution/system/domain/AfsimScenario.java b/auto-solution-scene/src/main/java/com/solution/scene/domain/AfsimScenario.java similarity index 97% rename from auto-solution-behaviour/src/main/java/com/solution/system/domain/AfsimScenario.java rename to auto-solution-scene/src/main/java/com/solution/scene/domain/AfsimScenario.java index b44dc08..0074f13 100644 --- a/auto-solution-behaviour/src/main/java/com/solution/system/domain/AfsimScenario.java +++ b/auto-solution-scene/src/main/java/com/solution/scene/domain/AfsimScenario.java @@ -1,4 +1,4 @@ -package com.solution.system.domain; +package com.solution.scene.domain; /** * 场景配置表 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 new file mode 100644 index 0000000..e00e22d --- /dev/null +++ b/auto-solution-scene/src/main/java/com/solution/scene/mapper/SceneMapper.java @@ -0,0 +1,24 @@ +package com.solution.scene.mapper; + +import com.solution.scene.domain.AfsimScenario; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +@Mapper +public interface SceneMapper { + + /** + * 保存场景配置 + * @param afsimScenario + * @return + */ + int insert(AfsimScenario afsimScenario); + + + /** + * 获取场景列表 + * @return + */ + List selectSceneList(); +} 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 new file mode 100644 index 0000000..00d2422 --- /dev/null +++ b/auto-solution-scene/src/main/java/com/solution/scene/service/SceneService.java @@ -0,0 +1,21 @@ +package com.solution.scene.service; + +import com.solution.scene.domain.AfsimScenario; + +import java.util.List; + +public interface SceneService { + + /** + * 保存场景配置 + * @param afsimScenario + * @return + */ + int insert(AfsimScenario afsimScenario); + + /** + * 获取场景列表 + * @return + */ + List selectSceneList(); +} 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 new file mode 100644 index 0000000..3da43a1 --- /dev/null +++ b/auto-solution-scene/src/main/java/com/solution/scene/service/impl/SceneServiceImpl.java @@ -0,0 +1,31 @@ +package com.solution.scene.service.impl; + +import com.solution.scene.domain.AfsimScenario; +import com.solution.scene.mapper.SceneMapper; +import com.solution.scene.service.SceneService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service +public class SceneServiceImpl implements SceneService { + + + @Autowired + private SceneMapper sceneMapper; + + @Override + public int insert(AfsimScenario afsimScenario) { + return sceneMapper.insert(afsimScenario); + } + + /** + * 获取场景列表 + * @return + */ + @Override + public List selectSceneList() { + return sceneMapper.selectSceneList(); + } +} diff --git a/auto-solution-scene/src/main/resources/mapper/scene/SceneMapper.xml b/auto-solution-scene/src/main/resources/mapper/scene/SceneMapper.xml new file mode 100644 index 0000000..5c58a2d --- /dev/null +++ b/auto-solution-scene/src/main/resources/mapper/scene/SceneMapper.xml @@ -0,0 +1,16 @@ + + + + + + INSERT INTO afsim_scenario (name, description, scenario_path, communication_graph) + VALUES (#{name}, #{description}, #{scenarioPath}, #{communicationGraph}) + + + + + \ No newline at end of file diff --git a/pom.xml b/pom.xml index e906dd3..9cd896a 100644 --- a/pom.xml +++ b/pom.xml @@ -238,6 +238,12 @@ ${solution.version} + + com.solution + solution-scene + ${solution.version} + + @@ -252,6 +258,7 @@ auto-solution-generator auto-solution-common auto-solution-rule + auto-solution-scene pom