From 6e21c6472843d67bfb5dd590e33207a58d41695e Mon Sep 17 00:00:00 2001 From: MichelleChung <1242874891@qq.com> Date: 星期四, 02 三月 2023 22:09:51 +0800 Subject: [PATCH] !292 mapstruct-plus 接入替换 BeanUtil * add 新增 mapstruct-plus 用于实体类转换 ; --- ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysNoticeServiceImpl.java | 51 +++++++++++++++++++++++++++++++++------------------ 1 files changed, 33 insertions(+), 18 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysNoticeServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysNoticeServiceImpl.java index b7b81d1..2cb4e74 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysNoticeServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysNoticeServiceImpl.java @@ -2,12 +2,18 @@ import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.ruoyi.common.core.utils.MapstructUtils; +import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.mybatis.core.page.PageQuery; import com.ruoyi.common.mybatis.core.page.TableDataInfo; -import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.system.domain.SysNotice; +import com.ruoyi.system.domain.bo.SysNoticeBo; +import com.ruoyi.system.domain.vo.SysNoticeVo; +import com.ruoyi.system.domain.vo.SysUserVo; import com.ruoyi.system.mapper.SysNoticeMapper; +import com.ruoyi.system.mapper.SysUserMapper; import com.ruoyi.system.service.ISysNoticeService; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; @@ -25,14 +31,12 @@ public class SysNoticeServiceImpl implements ISysNoticeService { private final SysNoticeMapper baseMapper; + private final SysUserMapper userMapper; @Override - public TableDataInfo<SysNotice> selectPageNoticeList(SysNotice notice, PageQuery pageQuery) { - LambdaQueryWrapper<SysNotice> lqw = new LambdaQueryWrapper<SysNotice>() - .like(StringUtils.isNotBlank(notice.getNoticeTitle()), SysNotice::getNoticeTitle, notice.getNoticeTitle()) - .eq(StringUtils.isNotBlank(notice.getNoticeType()), SysNotice::getNoticeType, notice.getNoticeType()) - .like(ObjectUtil.isNotNull(notice.getCreateBy()), SysNotice::getCreateBy, notice.getCreateBy()); - Page<SysNotice> page = baseMapper.selectPage(pageQuery.build(), lqw); + public TableDataInfo<SysNoticeVo> selectPageNoticeList(SysNoticeBo notice, PageQuery pageQuery) { + LambdaQueryWrapper<SysNotice> lqw = buildQueryWrapper(notice); + Page<SysNoticeVo> page = baseMapper.selectVoPage(pageQuery.build(), lqw); return TableDataInfo.build(page); } @@ -43,8 +47,8 @@ * @return 鍏憡淇℃伅 */ @Override - public SysNotice selectNoticeById(Long noticeId) { - return baseMapper.selectById(noticeId); + public SysNoticeVo selectNoticeById(Long noticeId) { + return baseMapper.selectVoById(noticeId); } /** @@ -54,32 +58,43 @@ * @return 鍏憡闆嗗悎 */ @Override - public List<SysNotice> selectNoticeList(SysNotice notice) { - return baseMapper.selectList(new LambdaQueryWrapper<SysNotice>() - .like(StringUtils.isNotBlank(notice.getNoticeTitle()), SysNotice::getNoticeTitle, notice.getNoticeTitle()) - .eq(StringUtils.isNotBlank(notice.getNoticeType()), SysNotice::getNoticeType, notice.getNoticeType()) - .like(ObjectUtil.isNotNull(notice.getCreateBy()), SysNotice::getCreateBy, notice.getCreateBy())); + public List<SysNoticeVo> selectNoticeList(SysNoticeBo notice) { + LambdaQueryWrapper<SysNotice> lqw = buildQueryWrapper(notice); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper<SysNotice> buildQueryWrapper(SysNoticeBo bo) { + LambdaQueryWrapper<SysNotice> lqw = Wrappers.lambdaQuery(); + lqw.like(StringUtils.isNotBlank(bo.getNoticeTitle()), SysNotice::getNoticeTitle, bo.getNoticeTitle()); + lqw.eq(StringUtils.isNotBlank(bo.getNoticeType()), SysNotice::getNoticeType, bo.getNoticeType()); + if (StringUtils.isNotBlank(bo.getCreateByName())) { + SysUserVo sysUser = userMapper.selectUserByUserName(bo.getCreateByName()); + lqw.eq(SysNotice::getCreateBy, ObjectUtil.isNotNull(sysUser) ? sysUser.getUserId() : null); + } + return lqw; } /** * 鏂板鍏憡 * - * @param notice 鍏憡淇℃伅 + * @param bo 鍏憡淇℃伅 * @return 缁撴灉 */ @Override - public int insertNotice(SysNotice notice) { + public int insertNotice(SysNoticeBo bo) { + SysNotice notice = MapstructUtils.convert(bo, SysNotice.class); return baseMapper.insert(notice); } /** * 淇敼鍏憡 * - * @param notice 鍏憡淇℃伅 + * @param bo 鍏憡淇℃伅 * @return 缁撴灉 */ @Override - public int updateNotice(SysNotice notice) { + public int updateNotice(SysNoticeBo bo) { + SysNotice notice = MapstructUtils.convert(bo, SysNotice.class); return baseMapper.updateById(notice); } -- Gitblit v1.9.3