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'
+
+