From 2ee1593879453e6e638fb94c3836116cec053cca Mon Sep 17 00:00:00 2001 From: xujun <271087757@qq.com> Date: Thu, 19 Dec 2024 16:18:04 +0800 Subject: [PATCH] xujun --- .../yiboshi/science/dao/SystemParameterDAO.java | 2 ++ .../com/yiboshi/science/param/dto/SpecDTO.java | 12 ++++++++++++ .../rest/v1/SystemParameterController.java | 9 +++++++++ .../science/service/SystemParameterService.java | 7 +++++++ .../service/impl/SystemParameterServiceImpl.java | 16 +++++++++++++++- .../java/com/yiboshi/science/utils/RedisKey.java | 2 ++ .../main/resources/mapper/SystemParameterDAO.xml | 7 +++++++ 7 files changed, 54 insertions(+), 1 deletion(-) create mode 100644 science-admin/src/main/java/com/yiboshi/science/param/dto/SpecDTO.java diff --git a/science-admin/src/main/java/com/yiboshi/science/dao/SystemParameterDAO.java b/science-admin/src/main/java/com/yiboshi/science/dao/SystemParameterDAO.java index 5bd7b12..4d0c981 100644 --- a/science-admin/src/main/java/com/yiboshi/science/dao/SystemParameterDAO.java +++ b/science-admin/src/main/java/com/yiboshi/science/dao/SystemParameterDAO.java @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.yiboshi.science.base.BaseDAO; import com.yiboshi.science.entity.SystemParameter; +import com.yiboshi.science.param.dto.SpecDTO; import com.yiboshi.science.param.dto.SystemParameterDTO; import com.yiboshi.science.param.query.SystemParameterQueryVO; import org.apache.ibatis.annotations.Param; @@ -18,4 +19,5 @@ import java.util.List; public interface SystemParameterDAO extends BaseMapper<SystemParameter>, BaseDAO<SystemParameterQueryVO, SystemParameterDTO,SystemParameter> { List<SystemParameter> getList(@Param("ew") Wrapper<SystemParameter> queryWrapper); List<SystemParameter> getParentParameterList(); + List<SpecDTO> getSpecArray(); } \ No newline at end of file diff --git a/science-admin/src/main/java/com/yiboshi/science/param/dto/SpecDTO.java b/science-admin/src/main/java/com/yiboshi/science/param/dto/SpecDTO.java new file mode 100644 index 0000000..8c7a4c2 --- /dev/null +++ b/science-admin/src/main/java/com/yiboshi/science/param/dto/SpecDTO.java @@ -0,0 +1,12 @@ +package com.yiboshi.science.param.dto; + +import com.yiboshi.science.base.BaseDTO; +import lombok.Data; + +@Data +public class SpecDTO extends BaseDTO { + + private String key; + private String pkey; + private String ppkey; +} diff --git a/science-admin/src/main/java/com/yiboshi/science/rest/v1/SystemParameterController.java b/science-admin/src/main/java/com/yiboshi/science/rest/v1/SystemParameterController.java index 8da6839..4ba6142 100644 --- a/science-admin/src/main/java/com/yiboshi/science/rest/v1/SystemParameterController.java +++ b/science-admin/src/main/java/com/yiboshi/science/rest/v1/SystemParameterController.java @@ -7,6 +7,7 @@ import com.yiboshi.science.config.annotation.Logs; import com.yiboshi.science.entity.SelectListItem; import com.yiboshi.science.entity.SystemParameter; import com.yiboshi.science.enumeration.CommonEnum; +import com.yiboshi.science.param.dto.SpecDTO; import com.yiboshi.science.param.dto.SystemParameterDTO; import com.yiboshi.science.param.query.SystemParameterQueryVO; import com.yiboshi.science.rest.BaseController; @@ -159,4 +160,12 @@ public class SystemParameterController extends BaseController<SystemParameterSer List<SelectListItem> list = systemParameterService.getKnowledgeInfoList(); return ResponseDataModel.ok(list); } + + @ApiOperation(value = "专业数组代码列表", httpMethod = "GET", notes = "专业数组代码列表") + @GetMapping + @RequestMapping("/getSpecArray") + public ResponseDataModel<List<SpecDTO>> getSpecArray() { + List<SpecDTO> list = systemParameterService.getSpecArray(); + return ResponseDataModel.ok(list); + } } diff --git a/science-admin/src/main/java/com/yiboshi/science/service/SystemParameterService.java b/science-admin/src/main/java/com/yiboshi/science/service/SystemParameterService.java index ef8724b..059ce19 100644 --- a/science-admin/src/main/java/com/yiboshi/science/service/SystemParameterService.java +++ b/science-admin/src/main/java/com/yiboshi/science/service/SystemParameterService.java @@ -2,6 +2,7 @@ package com.yiboshi.science.service; import com.yiboshi.science.base.BaseService; import com.yiboshi.science.entity.SelectListItem; import com.yiboshi.science.entity.SystemParameter; +import com.yiboshi.science.param.dto.SpecDTO; import com.yiboshi.science.param.dto.SystemParameterDTO; import com.yiboshi.science.param.query.SystemParameterQueryVO; @@ -102,4 +103,10 @@ public interface SystemParameterService extends BaseService<SystemParameterQuery * @return */ List<SelectListItem> getKnowledgeInfoList(); + + /** + * 专业数组代码列表 + * @return + */ + List<SpecDTO> getSpecArray(); } diff --git a/science-admin/src/main/java/com/yiboshi/science/service/impl/SystemParameterServiceImpl.java b/science-admin/src/main/java/com/yiboshi/science/service/impl/SystemParameterServiceImpl.java index cf0b025..31a216b 100644 --- a/science-admin/src/main/java/com/yiboshi/science/service/impl/SystemParameterServiceImpl.java +++ b/science-admin/src/main/java/com/yiboshi/science/service/impl/SystemParameterServiceImpl.java @@ -9,6 +9,7 @@ import com.yiboshi.science.dao.SystemParameterDAO; import com.yiboshi.science.entity.SelectListItem; import com.yiboshi.science.entity.SystemParameter; import com.yiboshi.science.entity.SystemParameterType; +import com.yiboshi.science.param.dto.SpecDTO; import com.yiboshi.science.param.dto.SystemParameterDTO; import com.yiboshi.science.param.query.SystemParameterQueryVO; import com.yiboshi.science.service.SystemParameterService; @@ -348,7 +349,7 @@ public class SystemParameterServiceImpl extends BaseServiceImpl<SystemParameterD List<SystemParameter> parentList = this.getListByType(68); List<SelectListItem> list = new ArrayList<>(); - List<SystemParameter> FirstList = parentList.stream().filter(e -> e.getSystemCode().equals("C") || e.getSystemCode().equals("G") || e.getSystemCode().equals("H")).collect(Collectors.toList()); + List<SystemParameter> FirstList = parentList.stream().filter(e -> e.getSystemCode().equals("C") || e.getSystemCode().equals("G") || e.getSystemCode().equals("H") || e.getSystemCode().equals("F")).collect(Collectors.toList()); FirstList.forEach(e -> { SelectListItem treeListItem = new SelectListItem(e.getName(), e.getId(), e.getSystemCode(), false, false, new ArrayList<>()); list.add(treeListItem); @@ -375,4 +376,17 @@ public class SystemParameterServiceImpl extends BaseServiceImpl<SystemParameterD }); return SelectList; } + + public List<SpecDTO> getSpecArray() { + List<SpecDTO> list = null; + Object obj = redisUtils.get(RedisKey.SpecArrayList); + + if (null != obj) + list = (List<SpecDTO>) redisUtils.get(RedisKey.SpecArrayList); + if (null == list || list.size() == 0) { + list = systemParameterDAO.getSpecArray(); + redisUtils.set(RedisKey.SpecArrayList, list, 7, TimeUnit.DAYS); + } + return list; + } } diff --git a/science-admin/src/main/java/com/yiboshi/science/utils/RedisKey.java b/science-admin/src/main/java/com/yiboshi/science/utils/RedisKey.java index d0b2744..5b7ff44 100644 --- a/science-admin/src/main/java/com/yiboshi/science/utils/RedisKey.java +++ b/science-admin/src/main/java/com/yiboshi/science/utils/RedisKey.java @@ -20,4 +20,6 @@ public class RedisKey { public final static String ProjectKPIList = "project-kpi-list"; //学科代码列表 public final static String KnowledgeCodeList = "knowledge-code-list"; + //专业数组代码列表 + public final static String SpecArrayList = "spec-array-list"; } diff --git a/science-admin/src/main/resources/mapper/SystemParameterDAO.xml b/science-admin/src/main/resources/mapper/SystemParameterDAO.xml index de1262b..4c112b6 100644 --- a/science-admin/src/main/resources/mapper/SystemParameterDAO.xml +++ b/science-admin/src/main/resources/mapper/SystemParameterDAO.xml @@ -32,4 +32,11 @@ where type_id in (select a.parent_id from system_parameter_type a where a.parent_id is not null) order by a.type_id,a.display_order asc </select> + <select id="getSpecArray" resultType="com.yiboshi.science.param.dto.SpecDTO"> + select a.id as `key`, b.id as pkey, c.id as ppkey + from system_parameter a + left join system_parameter b on a.parent_id = b.id + left join system_parameter c on b.parent_id = c.id + where a.type_id = 68 and b.id is not null and c.id is not null + </select> </mapper> \ No newline at end of file -- 2.18.0