From d1127f18844cdca09b5f69c8fbeb3788055fd793 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期四, 20 二月 2025 17:00:27 +0800
Subject: [PATCH] 项目增加项目子类型字段
---
system/src/main/java/com/ycl/system/service/impl/SysDictDataServiceImpl.java | 6 +++
system/src/main/resources/mapper/system/SysDictDataMapper.xml | 8 ++++
start/src/main/java/com/ycl/web/controller/system/SysDictDataController.java | 11 +++++
business/src/main/java/com/ycl/service/impl/ProjectInfoServiceImpl.java | 13 ++++++
system/src/main/java/com/ycl/system/service/ISysDictDataService.java | 24 ++++++++---
system/src/main/java/com/ycl/system/mapper/SysDictDataMapper.java | 8 ++++
6 files changed, 62 insertions(+), 8 deletions(-)
diff --git a/business/src/main/java/com/ycl/service/impl/ProjectInfoServiceImpl.java b/business/src/main/java/com/ycl/service/impl/ProjectInfoServiceImpl.java
index 5987493..769294e 100644
--- a/business/src/main/java/com/ycl/service/impl/ProjectInfoServiceImpl.java
+++ b/business/src/main/java/com/ycl/service/impl/ProjectInfoServiceImpl.java
@@ -15,6 +15,7 @@
import com.ycl.common.config.SysConfig;
import com.ycl.common.constant.Constants;
import com.ycl.common.core.domain.BaseEntity;
+import com.ycl.common.core.domain.entity.SysDictData;
import com.ycl.common.enums.business.FileTypeEnum;
import com.ycl.common.enums.business.ImportanceTypeEnum;
import com.ycl.common.enums.business.ProjectCategoryEnum;
@@ -44,6 +45,8 @@
import com.ycl.service.ProjectInfoWinUnitService;
import com.ycl.service.ProjectInfoYearPlanService;
import com.ycl.system.mapper.SysDeptMapper;
+import com.ycl.system.service.ISysDeptService;
+import com.ycl.system.service.ISysDictDataService;
import lombok.RequiredArgsConstructor;
import org.apache.commons.codec.Charsets;
import org.springframework.stereotype.Service;
@@ -93,6 +96,7 @@
private final ProjectInvestmentPolicyComplianceServiceImpl projectInvestmentPolicyComplianceServiceImpl;
private final ProjectUnitRegistrationInfoServiceImpl projectUnitRegistrationInfoServiceImpl;
private final SysDeptMapper sysDeptMapper;
+ private final ISysDictDataService dictDataService;
/**
* 娣诲姞
@@ -316,9 +320,16 @@
copyToProjectVO(vo, projectVO);
List<Long> departmentList = vo.getCompetentDepartmentList();
projectVO.setAuditRole(SecurityUtils.isAdmin(SecurityUtils.getUserId()) || (!CollectionUtils.isEmpty(departmentList) && departmentList.contains(SecurityUtils.getDeptId())));
- //缈昏瘧椤圭洰闃舵
+ // 缈昏瘧椤圭洰闃舵
String phase = ProjectCategoryEnum.getPhaseByProjectStatus(projectVO.getProjectStatus(), projectVO.getProcessId() != null);
projectVO.setProjectPhase(phase);
+ if (StringUtils.isNotEmpty(projectVO.getProjectSubType())) {
+ // 缈昏瘧椤圭洰瀛愮被鍨�
+ SysDictData dictData = dictDataService.selectDictDataByValue(projectVO.getProjectType(), projectVO.getProjectSubType(), "sys_project_type");
+ if (Objects.nonNull(dictData)) {
+ projectVO.setProjectSubType(dictData.getDictLabel());
+ }
+ }
list.add(projectVO);
});
return Result.ok().data(list).total(page.getTotal());
diff --git a/start/src/main/java/com/ycl/web/controller/system/SysDictDataController.java b/start/src/main/java/com/ycl/web/controller/system/SysDictDataController.java
index 97bf97d..2f667d3 100644
--- a/start/src/main/java/com/ycl/web/controller/system/SysDictDataController.java
+++ b/start/src/main/java/com/ycl/web/controller/system/SysDictDataController.java
@@ -125,4 +125,15 @@
List<SysDictData> list = dictDataService.selectDictDataList(dictData);
return success(list);
}
+
+ /**
+ * 鏍规嵁鐖剁骇id鑾峰彇瀛愮骇鏁版嵁
+ */
+ @GetMapping("/child/by/parent/{parentId}")
+ public AjaxResult getChildList(@PathVariable("parentId") Long parentId) {
+ SysDictData dictData = new SysDictData();
+ dictData.setParentId(parentId);
+ List<SysDictData> list = dictDataService.selectDictDataList(dictData);
+ return success(list);
+ }
}
diff --git a/system/src/main/java/com/ycl/system/mapper/SysDictDataMapper.java b/system/src/main/java/com/ycl/system/mapper/SysDictDataMapper.java
index 7c3fb08..ee7eff4 100644
--- a/system/src/main/java/com/ycl/system/mapper/SysDictDataMapper.java
+++ b/system/src/main/java/com/ycl/system/mapper/SysDictDataMapper.java
@@ -92,4 +92,12 @@
* @return 缁撴灉
*/
public int updateDictDataType(@Param("oldDictType") String oldDictType, @Param("newDictType") String newDictType);
+
+ /**
+ * 鏍规嵁鍊兼煡璇㈠瓧鍏稿瓙绫诲瀷鏁版嵁
+ *
+ * @param value
+ * @return
+ */
+ SysDictData selectDictDataByValue(@Param("parentValue") String parentValue, @Param("dictValue") String value, @Param("dictType") String dictType);
}
diff --git a/system/src/main/java/com/ycl/system/service/ISysDictDataService.java b/system/src/main/java/com/ycl/system/service/ISysDictDataService.java
index a60b432..1f2bc88 100644
--- a/system/src/main/java/com/ycl/system/service/ISysDictDataService.java
+++ b/system/src/main/java/com/ycl/system/service/ISysDictDataService.java
@@ -5,14 +5,14 @@
/**
* 瀛楀吀 涓氬姟灞�
- *
+ *
* @author ycl
*/
public interface ISysDictDataService
{
/**
* 鏍规嵁鏉′欢鍒嗛〉鏌ヨ瀛楀吀鏁版嵁
- *
+ *
* @param dictData 瀛楀吀鏁版嵁淇℃伅
* @return 瀛楀吀鏁版嵁闆嗗悎淇℃伅
*/
@@ -20,7 +20,7 @@
/**
* 鏍规嵁瀛楀吀绫诲瀷鍜屽瓧鍏搁敭鍊兼煡璇㈠瓧鍏告暟鎹俊鎭�
- *
+ *
* @param dictType 瀛楀吀绫诲瀷
* @param dictValue 瀛楀吀閿��
* @return 瀛楀吀鏍囩
@@ -29,7 +29,7 @@
/**
* 鏍规嵁瀛楀吀鏁版嵁ID鏌ヨ淇℃伅
- *
+ *
* @param dictCode 瀛楀吀鏁版嵁ID
* @return 瀛楀吀鏁版嵁
*/
@@ -37,14 +37,14 @@
/**
* 鎵归噺鍒犻櫎瀛楀吀鏁版嵁淇℃伅
- *
+ *
* @param dictCodes 闇�瑕佸垹闄ょ殑瀛楀吀鏁版嵁ID
*/
public void deleteDictDataByIds(Long[] dictCodes);
/**
* 鏂板淇濆瓨瀛楀吀鏁版嵁淇℃伅
- *
+ *
* @param dictData 瀛楀吀鏁版嵁淇℃伅
* @return 缁撴灉
*/
@@ -52,9 +52,19 @@
/**
* 淇敼淇濆瓨瀛楀吀鏁版嵁淇℃伅
- *
+ *
* @param dictData 瀛楀吀鏁版嵁淇℃伅
* @return 缁撴灉
*/
public int updateDictData(SysDictData dictData);
+
+ /**
+ * 鏍规嵁鍊兼煡璇㈠瓧鍏稿瓙绫诲瀷鏁版嵁
+ *
+ * @param parentValue
+ * @param value
+ * @param dictType 瀛楀吀绫诲瀷
+ * @return
+ */
+ SysDictData selectDictDataByValue(String parentValue, String value, String dictType);
}
diff --git a/system/src/main/java/com/ycl/system/service/impl/SysDictDataServiceImpl.java b/system/src/main/java/com/ycl/system/service/impl/SysDictDataServiceImpl.java
index 47bb61e..3886cac 100644
--- a/system/src/main/java/com/ycl/system/service/impl/SysDictDataServiceImpl.java
+++ b/system/src/main/java/com/ycl/system/service/impl/SysDictDataServiceImpl.java
@@ -108,4 +108,10 @@
}
return row;
}
+
+
+ @Override
+ public SysDictData selectDictDataByValue(String parentValue, String value, String dictType) {
+ return dictDataMapper.selectDictDataByValue(parentValue, value, dictType);
+ }
}
diff --git a/system/src/main/resources/mapper/system/SysDictDataMapper.xml b/system/src/main/resources/mapper/system/SysDictDataMapper.xml
index 8cdd912..a821325 100644
--- a/system/src/main/resources/mapper/system/SysDictDataMapper.xml
+++ b/system/src/main/resources/mapper/system/SysDictDataMapper.xml
@@ -35,6 +35,9 @@
<if test="dictLabel != null and dictLabel != ''">
AND dict_label like concat('%', #{dictLabel}, '%')
</if>
+ <if test="parentId != null">
+ AND parent_id = #{parentId}
+ </if>
<if test="status != null and status != ''">
AND status = #{status}
</if>
@@ -95,6 +98,11 @@
update sys_dict_data set dict_type = #{newDictType} where dict_type = #{oldDictType}
</update>
+ <select id="selectDictDataByValue" parameterType="string" resultMap="SysDictDataResult">
+ <include refid="selectDictDataVo"/>
+ where dict_value = #{dictValue} AND parent_id = (SELECT dict_code FROM sys_dict_data WHERE dict_value = #{parentValue} AND dict_type = #{dictType}) AND dict_type = #{dictType}
+ </select>
+
<insert id="insertDictData" parameterType="SysDictData">
insert into sys_dict_data(
<if test="dictSort != null">dict_sort,</if>
--
Gitblit v1.8.0