From 0828897860a4c218b88889bcf1b3b2797a8d8a2b Mon Sep 17 00:00:00 2001 From: wkc <978997012@qq.com> Date: Fri, 6 Mar 2026 15:24:24 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E4=BF=AE=E6=94=B9=20selectParamList=20?= =?UTF-8?q?=E6=96=B9=E6=B3=95=E6=94=AF=E6=8C=81=E6=A0=B9=E6=8D=AE=20config?= =?UTF-8?q?Type=20=E8=BF=94=E5=9B=9E=E5=AF=B9=E5=BA=94=E5=8F=82=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/CcdiModelParamServiceImpl.java | 24 ++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/ccdi-project/src/main/java/com/ruoyi/ccdi/project/service/impl/CcdiModelParamServiceImpl.java b/ccdi-project/src/main/java/com/ruoyi/ccdi/project/service/impl/CcdiModelParamServiceImpl.java index 90c13cb..1e20bd0 100644 --- a/ccdi-project/src/main/java/com/ruoyi/ccdi/project/service/impl/CcdiModelParamServiceImpl.java +++ b/ccdi-project/src/main/java/com/ruoyi/ccdi/project/service/impl/CcdiModelParamServiceImpl.java @@ -60,16 +60,38 @@ public class CcdiModelParamServiceImpl implements ICcdiModelParamService { @Override public List selectParamList(ModelParamQueryDTO queryDTO) { + // 1. 参数验证 Long projectId = queryDTO.getProjectId(); if (projectId == null) { projectId = 0L; } + // 2. 如果是项目查询(projectId > 0),需要根据 configType 决定查询哪组参数 + Long effectiveProjectId = projectId; + if (projectId > 0) { + // 查询项目信息 + CcdiProject project = projectMapper.selectById(projectId); + if (project == null) { + throw new ServiceException("项目不存在"); + } + + // 根据 configType 决定查询哪组参数 + if ("default".equals(project.getConfigType())) { + // 使用系统默认参数 + effectiveProjectId = 0L; + } else { + // 使用项目自定义参数 + effectiveProjectId = projectId; + } + } + + // 3. 查询参数列表 List params = modelParamMapper.selectByProjectAndModel( - projectId, + effectiveProjectId, queryDTO.getModelCode() ); + // 4. 转换为 VO List result = new ArrayList<>(); params.forEach(param -> { ModelParamVO vo = new ModelParamVO();