From 9ca1188c5a951ea2f4b94876098798c8cd64784c Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期五, 03 一月 2025 18:02:16 +0800
Subject: [PATCH] 1.bug修改

---
 medicalWaste-system/src/main/java/com/sinata/system/service/impl/SysDictDataServiceImpl.java |   31 ++++++++++++++++++++++++++++---
 1 files changed, 28 insertions(+), 3 deletions(-)

diff --git a/medicalWaste-system/src/main/java/com/sinata/system/service/impl/SysDictDataServiceImpl.java b/medicalWaste-system/src/main/java/com/sinata/system/service/impl/SysDictDataServiceImpl.java
index 0687962..cda9e1c 100644
--- a/medicalWaste-system/src/main/java/com/sinata/system/service/impl/SysDictDataServiceImpl.java
+++ b/medicalWaste-system/src/main/java/com/sinata/system/service/impl/SysDictDataServiceImpl.java
@@ -1,15 +1,18 @@
 package com.sinata.system.service.impl;
 
+import cn.idev.excel.util.StringUtils;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.sinata.common.core.domain.entity.SysDictData;
 import com.sinata.common.core.domain.entity.SysDictType;
-import com.sinata.common.entity.BasePage;
 import com.sinata.common.entity.PageDTO;
 import com.sinata.common.exception.ServiceException;
 import com.sinata.common.utils.BeanUtils;
+import com.sinata.common.utils.CollUtils;
 import com.sinata.common.utils.DictUtils;
 import com.sinata.system.domain.dto.SysDictDataDTO;
+import com.sinata.system.domain.query.KeyWordQuery;
 import com.sinata.system.domain.vo.SysDictDataVO;
 import com.sinata.system.mapper.SysDictDataMapper;
 import com.sinata.system.mapper.SysDictTypeMapper;
@@ -20,6 +23,7 @@
 
 import java.util.List;
 import java.util.Objects;
+import java.util.stream.Collectors;
 
 /**
  * 字典 业务层处理
@@ -125,8 +129,19 @@
     }
 
     @Override
-    public PageDTO<SysDictDataVO> pageList(BasePage page) {
-        Page<SysDictData> result = this.lambdaQuery().page(new Page<>(page.getPageCurr(), page.getPageSize()));
+    public PageDTO<SysDictDataVO> pageList(KeyWordQuery query) {
+        Page<SysDictData> result = this.lambdaQuery().like(StringUtils.isNotBlank(query.getKeyword()), SysDictData::getDictLabel, query.getKeyword()).page(new Page<>(query.getPageCurr(), query.getPageSize()));
+        List<String> dictTypeList = result.getRecords().stream().map(SysDictData::getDictType).distinct().collect(Collectors.toList());
+        if (CollUtils.isNotEmpty(dictTypeList)) {
+            List<SysDictType> sysDictTypes = dictTypeMapper.selectList(new LambdaQueryWrapper<SysDictType>().in(SysDictType::getDictType, dictTypeList));
+            result.getRecords().forEach(sysDictData -> {
+                sysDictTypes.forEach(sysDictType -> {
+                    if (sysDictType.getDictType().equals(sysDictData.getDictType())) {
+                        sysDictData.setDictType(sysDictType.getDictName());
+                    }
+                });
+            });
+        }
         return PageDTO.of(result, SysDictDataVO.class);
     }
 
@@ -184,4 +199,14 @@
     public List<SysDictDataVO> workTypeList() {
         return getSysDictDataVOListByType("protective_work_type");
     }
+
+    @Override
+    public List<SysDictDataVO> institutionLevelList() {
+        return getSysDictDataVOListByType("institution_level");
+    }
+
+    @Override
+    public List<SysDictDataVO> institutionTypeList() {
+        return getSysDictDataVOListByType("institution_type");
+    }
 }

--
Gitblit v1.7.1