From b03d89e792a34c486f0afeab69e837f85d8cbe16 Mon Sep 17 00:00:00 2001 From: luoyisheng <yangdongji@argo-ai.cn> Date: 星期二, 25 三月 2025 15:13:53 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- medicalWaste-system/src/main/java/com/sinata/system/service/impl/SysDictDataServiceImpl.java | 38 ++++++++++++++++++++++++++++++++++---- 1 files changed, 34 insertions(+), 4 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..81858aa 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,9 +129,25 @@ } @Override - public PageDTO<SysDictDataVO> pageList(BasePage page) { - Page<SysDictData> result = this.lambdaQuery().page(new Page<>(page.getPageCurr(), page.getPageSize())); - return PageDTO.of(result, SysDictDataVO.class); + public PageDTO<SysDictDataVO> pageList(KeyWordQuery query) { + Page<SysDictData> result = this.lambdaQuery() + .like(StringUtils.isNotBlank(query.getKeyword()), SysDictData::getDictLabel, query.getKeyword()) + .eq(StringUtils.isNotBlank(query.getDictType()), SysDictData::getDictType, query.getDictType()) + .page(new Page<>(query.getPageCurr(), query.getPageSize())); + List<String> dictTypeList = result.getRecords().stream().map(SysDictData::getDictType).distinct().collect(Collectors.toList()); + if (CollUtils.isNotEmpty(dictTypeList)) { + PageDTO<SysDictDataVO> sysDictDataVOPageDTO = PageDTO.of(result, SysDictDataVO.class); + List<SysDictType> sysDictTypes = dictTypeMapper.selectList(new LambdaQueryWrapper<SysDictType>().in(SysDictType::getDictType, dictTypeList)); + sysDictDataVOPageDTO.getList().forEach(vo -> { + sysDictTypes.forEach(sysDictType -> { + if (sysDictType.getDictType().equals(vo.getDictType())) { + vo.setDictTypeName(sysDictType.getDictName()); + } + }); + }); + return sysDictDataVOPageDTO; + } + return PageDTO.empty(result); } @Override @@ -184,4 +204,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