From 3eeb9cd5d5fb2cc260ee92fc3b1f6f6f9e755f74 Mon Sep 17 00:00:00 2001 From: lizhenhua <1075222162@qq.com> Date: Tue, 22 Jul 2025 09:21:28 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B0=B4=E8=BF=90=E9=A1=B9=E7=9B=AE=E5=9F=BA?= =?UTF-8?q?=E7=A1=80=E5=8A=9F=E8=83=BD=E5=BC=80=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bonus-framework/pom.xml | 5 --- water-design-const/pom.xml | 20 ++++++++++- .../controller/common/CommonController.java | 5 +-- .../controller/water/ModelController.java | 17 ++++++--- .../com/bonus/waterdesign/domain/CadData.java | 1 + .../com/bonus/waterdesign/domain/Model.java | 8 +++-- .../bonus/waterdesign/domain/ProjectTree.java | 2 ++ .../bonus/waterdesign/mapper/ModelMapper.java | 3 ++ .../waterdesign/service/ModelService.java | 7 ++-- .../service/impl/ModelServiceImpl.java | 23 +++++++++++- .../src/main/resources/mapper/ModelMapper.xml | 36 ++++++++++++++----- 11 files changed, 99 insertions(+), 28 deletions(-) diff --git a/bonus-framework/pom.xml b/bonus-framework/pom.xml index 34fa16b..d339ff7 100644 --- a/bonus-framework/pom.xml +++ b/bonus-framework/pom.xml @@ -59,11 +59,6 @@ bonus-system - - - com.bonus - bonus-basic - diff --git a/water-design-const/pom.xml b/water-design-const/pom.xml index b88c639..bf58669 100644 --- a/water-design-const/pom.xml +++ b/water-design-const/pom.xml @@ -22,6 +22,11 @@ spring-boot-devtools true + + com.fasterxml.jackson.core + jackson-databind + 2.13.5 + @@ -58,6 +63,19 @@ org.projectlombok lombok + + com.bonus + bonus-system + + + com.bonus + water-design-const + 3.8.9 + + + com.fasterxml.jackson.core + jackson-databind + @@ -86,7 +104,7 @@ false ${project.artifactId} - + org.apache.maven.pluginsmaven-compiler-plugin88 ${project.artifactId} diff --git a/water-design-const/src/main/java/com/bonus/waterdesign/controller/common/CommonController.java b/water-design-const/src/main/java/com/bonus/waterdesign/controller/common/CommonController.java index 1e156a3..3d2e636 100644 --- a/water-design-const/src/main/java/com/bonus/waterdesign/controller/common/CommonController.java +++ b/water-design-const/src/main/java/com/bonus/waterdesign/controller/common/CommonController.java @@ -115,14 +115,15 @@ public class CommonController // 5. 调用工具类 String layersInfo = DxfClient.getLayersInfo(fullLocalPath); - System.err.println(layersInfo); List cadData = dxfParser.parseAndSave(layersInfo); - projectService.insertCadData(cadData); + System.err.println(cadData); + //projectService.insertCadData(cadData); AjaxResult ajax = AjaxResult.success(); ajax.put("url", url); ajax.put("fileName", fileName); ajax.put("newFileName", FileUtils.getName(fileName)); ajax.put("originalFilename", file.getOriginalFilename()); + ajax.put("cadData", cadData); return ajax; } catch (Exception e) diff --git a/water-design-const/src/main/java/com/bonus/waterdesign/controller/water/ModelController.java b/water-design-const/src/main/java/com/bonus/waterdesign/controller/water/ModelController.java index e2f7f4a..ae4dfa6 100644 --- a/water-design-const/src/main/java/com/bonus/waterdesign/controller/water/ModelController.java +++ b/water-design-const/src/main/java/com/bonus/waterdesign/controller/water/ModelController.java @@ -3,6 +3,7 @@ package com.bonus.waterdesign.controller.water; import com.bonus.common.core.controller.BaseController; import com.bonus.common.core.domain.AjaxResult; import com.bonus.common.core.page.TableDataInfo; +import com.bonus.common.utils.StringUtils; import com.bonus.waterdesign.domain.*; import com.bonus.waterdesign.service.ModelService; import org.springframework.security.access.prepost.PreAuthorize; @@ -25,11 +26,10 @@ public class ModelController extends BaseController { /** * 获取模型列表 */ - // @PreAuthorize("@ss.hasPermi('model:list')") + // @PreAuthorize("@ss.hasPermi('model:list')")7 @GetMapping("/list") public TableDataInfo list(ProjectVo model) { - startPage(); List list = modelService.list(model); return getDataTable(list); } @@ -37,18 +37,27 @@ public class ModelController extends BaseController { /** * 新增模型 */ - @PreAuthorize("@ss.hasPermi('model:addModel')") @PostMapping("/addModel") public AjaxResult addModel(@RequestBody Model model) { - return toAjax(modelService.addModel(model)); + return toAjax(modelService.addModel(model)); } + + @PostMapping("/add") public AjaxResult add(@RequestBody PeojectNodes node) { return toAjax(modelService.add(node)); } + @PostMapping("/openView") + public AjaxResult openView(@RequestBody PeojectNodes node) { + //获取所有的节点信息 + List list =modelService.openView(node); + //返回list信息给前台 + return AjaxResult.success(list); + + } @PostMapping("/delete") diff --git a/water-design-const/src/main/java/com/bonus/waterdesign/domain/CadData.java b/water-design-const/src/main/java/com/bonus/waterdesign/domain/CadData.java index 390ee7a..aac305b 100644 --- a/water-design-const/src/main/java/com/bonus/waterdesign/domain/CadData.java +++ b/water-design-const/src/main/java/com/bonus/waterdesign/domain/CadData.java @@ -7,6 +7,7 @@ import java.time.LocalDateTime; @Data public class CadData { private Long id; + private String type; private String layerName; private String entityType; private Integer color; diff --git a/water-design-const/src/main/java/com/bonus/waterdesign/domain/Model.java b/water-design-const/src/main/java/com/bonus/waterdesign/domain/Model.java index 65a88ef..894b144 100644 --- a/water-design-const/src/main/java/com/bonus/waterdesign/domain/Model.java +++ b/water-design-const/src/main/java/com/bonus/waterdesign/domain/Model.java @@ -2,6 +2,8 @@ package com.bonus.waterdesign.domain; import lombok.Data; +import java.util.List; + /** * @author 马三炮 * @date 2025/7/10 @@ -12,12 +14,12 @@ public class Model { /** * 主键 */ - private int id; + private int id; /** * 工程id */ - private int projectId; + private String projectId; /** * 模型名称 @@ -75,4 +77,6 @@ public class Model { */ private String createTime; + private List selectedEntities;// 只接收勾选的图元 + } diff --git a/water-design-const/src/main/java/com/bonus/waterdesign/domain/ProjectTree.java b/water-design-const/src/main/java/com/bonus/waterdesign/domain/ProjectTree.java index 4fb709c..f07066a 100644 --- a/water-design-const/src/main/java/com/bonus/waterdesign/domain/ProjectTree.java +++ b/water-design-const/src/main/java/com/bonus/waterdesign/domain/ProjectTree.java @@ -10,5 +10,7 @@ public class ProjectTree { private String projectId; private String proName; private String modelUrl; + private String levelName; + private String nodeCount; private List children = new ArrayList<>(); } diff --git a/water-design-const/src/main/java/com/bonus/waterdesign/mapper/ModelMapper.java b/water-design-const/src/main/java/com/bonus/waterdesign/mapper/ModelMapper.java index 5fd2a8b..040d607 100644 --- a/water-design-const/src/main/java/com/bonus/waterdesign/mapper/ModelMapper.java +++ b/water-design-const/src/main/java/com/bonus/waterdesign/mapper/ModelMapper.java @@ -1,5 +1,6 @@ package com.bonus.waterdesign.mapper; +import com.bonus.waterdesign.domain.CadData; import com.bonus.waterdesign.domain.Model; import com.bonus.waterdesign.domain.PeojectNodes; import com.bonus.waterdesign.domain.ProjectVo; @@ -16,4 +17,6 @@ public interface ModelMapper { int deleteById(String id); boolean update(PeojectNodes node); + + List openView(PeojectNodes node); } diff --git a/water-design-const/src/main/java/com/bonus/waterdesign/service/ModelService.java b/water-design-const/src/main/java/com/bonus/waterdesign/service/ModelService.java index 8b8ce09..a7a58bd 100644 --- a/water-design-const/src/main/java/com/bonus/waterdesign/service/ModelService.java +++ b/water-design-const/src/main/java/com/bonus/waterdesign/service/ModelService.java @@ -1,9 +1,6 @@ package com.bonus.waterdesign.service; -import com.bonus.waterdesign.domain.Model; -import com.bonus.waterdesign.domain.PeojectNodes; -import com.bonus.waterdesign.domain.ProjectTree; -import com.bonus.waterdesign.domain.ProjectVo; +import com.bonus.waterdesign.domain.*; import java.util.List; @@ -17,4 +14,6 @@ public interface ModelService { boolean delete(String id); boolean update(PeojectNodes node); + + List openView(PeojectNodes node); } diff --git a/water-design-const/src/main/java/com/bonus/waterdesign/service/impl/ModelServiceImpl.java b/water-design-const/src/main/java/com/bonus/waterdesign/service/impl/ModelServiceImpl.java index 5cb2ff0..7437d6b 100644 --- a/water-design-const/src/main/java/com/bonus/waterdesign/service/impl/ModelServiceImpl.java +++ b/water-design-const/src/main/java/com/bonus/waterdesign/service/impl/ModelServiceImpl.java @@ -3,6 +3,7 @@ package com.bonus.waterdesign.service.impl; import com.bonus.common.utils.StringUtils; import com.bonus.waterdesign.domain.*; import com.bonus.waterdesign.mapper.ModelMapper; +import com.bonus.waterdesign.mapper.ProjectMapper; import com.bonus.waterdesign.service.ModelService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.BeanUtils; @@ -23,6 +24,9 @@ public class ModelServiceImpl implements ModelService { @Resource private ModelMapper modelMapper; + @Resource + private ProjectMapper projectMapper; + @Override public List list(ProjectVo model) { List list = modelMapper.list(model); @@ -53,7 +57,9 @@ public class ModelServiceImpl implements ModelService { String projectId = vo.getProjectId(); if (!projectMap.containsKey(projectId)) { ProjectTree project = new ProjectTree(); + project.setNodeCount(vo.getNodeCount()+""); project.setProjectId(projectId); + project.setLevelName(vo.getLevelName()); project.setModelUrl(vo.getModelUrl()); project.setProName(vo.getProName()); project.setChildren(new ArrayList<>()); @@ -97,7 +103,17 @@ public class ModelServiceImpl implements ModelService { @Override public int addModel(Model model) { - return modelMapper.addModel(model); + //项目ID和文件保存 对应起来 + int i = modelMapper.addModel(model); + if (i > 0) { + List cadDataList = model.getSelectedEntities(); + if (cadDataList != null && !cadDataList.isEmpty()) { + for (CadData data : cadDataList) { + projectMapper.insertCadData(data); + } + } + } + return i ; } @Override @@ -116,4 +132,9 @@ public class ModelServiceImpl implements ModelService { public boolean update(PeojectNodes node) { return modelMapper.update(node); } + + @Override + public List openView(PeojectNodes node) { + return modelMapper.openView(node); + } } diff --git a/water-design-const/src/main/resources/mapper/ModelMapper.xml b/water-design-const/src/main/resources/mapper/ModelMapper.xml index 8e1278a..fb06ba1 100644 --- a/water-design-const/src/main/resources/mapper/ModelMapper.xml +++ b/water-design-const/src/main/resources/mapper/ModelMapper.xml @@ -3,9 +3,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> - + insert into tb_model( - project_id, + project_id, model_name, model_url, file_name, @@ -17,7 +17,7 @@ create_user, create_time )values( - #{projectId}, + #{projectId}, #{modelName}, #{modelUrl}, #{fileName}, @@ -69,6 +69,7 @@ + @@ -78,7 +79,7 @@ - + @@ -107,8 +108,7 @@ p.id AS project_id, p.pro_name, p.level, - - -- 节点统计(子查询) + c.config_name, ( SELECT COUNT(*) FROM sys_level_node n @@ -125,8 +125,6 @@ FROM tb_project p LEFT JOIN sys_level_config c ON p.level = c.config_id LEFT JOIN project_node n ON p.id = n.project_id AND n.del_flag = '0' - --- 关联最新模型(假设通过 version 或 id 判断) LEFT JOIN ( SELECT t1.* FROM tb_model t1 @@ -135,11 +133,31 @@ FROM tb_model GROUP BY project_id ) t2 ON t1.project_id = t2.project_id AND t1.id = t2.max_id - ) m ON m.project_id = p.id + ) m ON m.project_id = n.id WHERE p.del_flag = '0' + +