From e7f03acfa5ee4ad4fd6d1ee9e9ae9a5655488f6d Mon Sep 17 00:00:00 2001 From: 101captain <237651143@qq.com> Date: 星期二, 09 十一月 2021 17:04:46 +0800 Subject: [PATCH] 1109修改 --- springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComOpsAdvServiceImpl.java | 234 +++++++++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 205 insertions(+), 29 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComOpsAdvServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComOpsAdvServiceImpl.java index 75906d0..befc432 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComOpsAdvServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComOpsAdvServiceImpl.java @@ -1,22 +1,36 @@ package com.panzhihua.service_community.service.impl; -import com.panzhihua.common.exceptions.ServiceException; -import com.panzhihua.common.model.dtos.AppletesBackstageConfigDTO; -import com.panzhihua.common.model.dtos.advertisement.ComOpsAdvJumpDTO; -import com.panzhihua.common.model.vos.R; -import com.panzhihua.common.model.vos.advertisement.ComOpsAdvJumpVO; -import com.panzhihua.service_community.dao.ComOpsAdvDAO; -import com.panzhihua.service_community.dao.ComOpsAdvJumpDAO; -import com.panzhihua.service_community.model.dos.ComOpsAdvJumpDO; -import com.panzhihua.service_community.service.ComOpsAdvService; +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; + +import javax.annotation.Resource; + +import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.ObjectUtils; -import javax.annotation.Resource; -import java.util.ArrayList; -import java.util.List; -import java.util.stream.Collectors; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.panzhihua.common.exceptions.ServiceException; +import com.panzhihua.common.model.dtos.AppletesBackstageConfigDTO; +import com.panzhihua.common.model.dtos.advertisement.ComOpsAdvDTO; +import com.panzhihua.common.model.dtos.advertisement.ComOpsAdvJumpDTO; +import com.panzhihua.common.model.dtos.advertisement.PageComOpsAdvDTO; +import com.panzhihua.common.model.vos.R; +import com.panzhihua.common.model.vos.advertisement.ComOpsAdvJumpVO; +import com.panzhihua.common.model.vos.advertisement.ComOpsAdvPosVO; +import com.panzhihua.common.model.vos.advertisement.ComOpsAdvVO; +import com.panzhihua.service_community.dao.ComOpsAdvDAO; +import com.panzhihua.service_community.dao.ComOpsAdvJumpDAO; +import com.panzhihua.service_community.dao.ComOpsAdvPosDAO; +import com.panzhihua.service_community.model.dos.ComOpsAdvDO; +import com.panzhihua.service_community.model.dos.ComOpsAdvJumpDO; +import com.panzhihua.service_community.model.dos.ComOpsAdvPosDO; +import com.panzhihua.service_community.service.ComOpsAdvService; /** * @program: springcloud_k8s_panzhihuazhihuishequ @@ -30,6 +44,9 @@ private ComOpsAdvJumpDAO comOpsAdvJumpDAO; @Resource private ComOpsAdvDAO comOpsAdvDAO; + @Resource + private ComOpsAdvPosDAO comOpsAdvPosDAO; + /** * 获取广告跳转内容配置 * @@ -37,11 +54,11 @@ */ @Override public R getJumpContent() { - List<ComOpsAdvJumpVO> comOpsAdvJumpVOS=new ArrayList<>(); - List<ComOpsAdvJumpDO> comOpsAdvJumpDOS = comOpsAdvJumpDAO.selectList(null); + List<ComOpsAdvJumpVO> comOpsAdvJumpVOS = new ArrayList<>(); + List<ComOpsAdvJumpDO> comOpsAdvJumpDOS = comOpsAdvJumpDAO.selectList(new QueryWrapper<>()); if (!ObjectUtils.isEmpty(comOpsAdvJumpDOS)) { comOpsAdvJumpDOS.forEach(comOpsAdvJumpDO -> { - ComOpsAdvJumpVO comOpsAdvJumpVO=new ComOpsAdvJumpVO(); + ComOpsAdvJumpVO comOpsAdvJumpVO = new ComOpsAdvJumpVO(); comOpsAdvJumpVO.setId(comOpsAdvJumpDO.getId()); comOpsAdvJumpVO.setJumpContent(comOpsAdvJumpDO.getJumpContent()); comOpsAdvJumpVOS.add(comOpsAdvJumpVO); @@ -53,7 +70,8 @@ /** * 编辑运营后台系统配置 * - * @param appletesBackstageConfigDTO 编辑内容 + * @param appletesBackstageConfigDTO + * 编辑内容 * @return 编辑结果 */ @Override @@ -63,28 +81,186 @@ if (ObjectUtils.isEmpty(comOpsAdvJumpDTOS)) { return R.fail("广告跳转内容不能为空"); } -// 查询所有正在使用的跳转内容id - List<Long> ids=comOpsAdvDAO.selectAllBeUsedContent(); - List<Long> collect = comOpsAdvJumpDTOS.stream().map(comOpsAdvJumpDTO -> comOpsAdvJumpDTO.getId()).collect(Collectors.toList()); + // 查询所有正在使用的跳转内容id + List<Long> ids = comOpsAdvDAO.selectAllBeUsedContent(); + List<Long> notDeleteIds = new ArrayList<>(); + List<Long> collect = + comOpsAdvJumpDTOS.stream().map(comOpsAdvJumpDTO -> comOpsAdvJumpDTO.getId()).collect(Collectors.toList()); if (!ObjectUtils.isEmpty(ids)) { ids.forEach(aLong -> { if (!collect.contains(aLong)) { ComOpsAdvJumpDO comOpsAdvJumpDO = comOpsAdvJumpDAO.selectById(aLong); - String jumpContent = comOpsAdvJumpDO.getJumpContent(); - throw new ServiceException(jumpContent+" 已经在使用无法删除"); + if (!ObjectUtils.isEmpty(comOpsAdvJumpDO)) { + String jumpContent = comOpsAdvJumpDO.getJumpContent(); + throw new ServiceException(jumpContent + " 已经在使用无法删除"); + } + } else { + notDeleteIds.add(aLong); } }); } - comOpsAdvJumpDAO.delete(null); + if (!ObjectUtils.isEmpty(notDeleteIds)) { + comOpsAdvJumpDAO + .delete(new QueryWrapper<ComOpsAdvJumpDO>().lambda().notIn(ComOpsAdvJumpDO::getId, notDeleteIds)); + } else { + comOpsAdvJumpDAO.delete(null); + } comOpsAdvJumpDTOS.forEach(comOpsAdvJumpDTO -> { - ComOpsAdvJumpDO comOpsAdvJumpDO=new ComOpsAdvJumpDO(); - String jumpContent = comOpsAdvJumpDTO.getJumpContent(); - if (ObjectUtils.isEmpty(jumpContent)) { - throw new ServiceException("广告跳转内容不能为空"); + Long id = comOpsAdvJumpDTO.getId(); + if (!ids.contains(id)) { + ComOpsAdvJumpDO comOpsAdvJumpDO = new ComOpsAdvJumpDO(); + String jumpContent = comOpsAdvJumpDTO.getJumpContent(); + if (ObjectUtils.isEmpty(jumpContent)) { + throw new ServiceException("广告跳转内容不能为空"); + } + comOpsAdvJumpDO.setJumpContent(jumpContent); + comOpsAdvJumpDAO.insert(comOpsAdvJumpDO); } - comOpsAdvJumpDO.setJumpContent(jumpContent); - comOpsAdvJumpDAO.insert(comOpsAdvJumpDO); }); return R.ok(); } + + /** + * 首页广告banner + * + * @return 广告列表 + */ + @Override + public R listAdvertisement() { + List<ComOpsAdvDO> comOpsAdvDOS = comOpsAdvDAO + .selectList(new QueryWrapper<ComOpsAdvDO>().last(" where SYSDATE() BETWEEN on_at and off_at ")); + List<ComOpsAdvVO> comOpsAdvVOS = new ArrayList<>(); + if (!ObjectUtils.isEmpty(comOpsAdvDOS)) { + comOpsAdvDOS.forEach(comOpsAdvDO -> { + ComOpsAdvVO comOpsAdvVO = new ComOpsAdvVO(); + BeanUtils.copyProperties(comOpsAdvDO, comOpsAdvVO); + comOpsAdvVOS.add(comOpsAdvVO); + }); + } + return R.ok(comOpsAdvVOS); + } + + /** + * 新增广告 + * + * @param comOpsAdvDTO + * @return 新增结果 + */ + @Override + public R addAdvertisement(ComOpsAdvDTO comOpsAdvDTO) { + ComOpsAdvDO comOpsAdvDO = new ComOpsAdvDO(); + BeanUtils.copyProperties(comOpsAdvDTO, comOpsAdvDO); + int insert = comOpsAdvDAO.insert(comOpsAdvDO); + if (insert > 0) { + return R.ok(); + } + return R.fail(); + } + + /** + * 编辑广告 + * + * @param comOpsAdvDTO + * 编辑内容 + * @return 编辑结果 + */ + @Override + public R putAdvertisement(ComOpsAdvDTO comOpsAdvDTO) { + ComOpsAdvDO comOpsAdvDO = new ComOpsAdvDO(); + BeanUtils.copyProperties(comOpsAdvDTO, comOpsAdvDO); + int update = comOpsAdvDAO.updateById(comOpsAdvDO); + if (update > 0) { + return R.ok(); + } + return R.fail(); + } + + /** + * 广告位置下拉列表 + * + * @return 位置集合 + */ + @Override + public R listadvpos() { + List<ComOpsAdvPosDO> comOpsAdvPosDOS = comOpsAdvPosDAO.selectList(new LambdaQueryWrapper<>()); + List<ComOpsAdvPosVO> comOpsAdvPosVOS = new ArrayList<>(); + comOpsAdvPosDOS.forEach(comOpsAdvPosDO -> { + ComOpsAdvPosVO comOpsAdvPosVO = new ComOpsAdvPosVO(); + BeanUtils.copyProperties(comOpsAdvPosDO, comOpsAdvPosVO); + comOpsAdvPosVOS.add(comOpsAdvPosVO); + }); + return R.ok(comOpsAdvPosVOS); + } + + /** + * 跳转内容下拉集合 + * + * @return 跳转集合 + */ + @Override + public R listAdvjump() { + List<ComOpsAdvJumpDO> comOpsAdvJumpDOS = comOpsAdvJumpDAO.selectList(new LambdaQueryWrapper<>()); + List<ComOpsAdvJumpVO> comOpsAdvJumpVOS = new ArrayList<>(); + if (!ObjectUtils.isEmpty(comOpsAdvJumpDOS)) { + comOpsAdvJumpDOS.forEach(comOpsAdvJumpDO -> { + ComOpsAdvJumpVO comOpsAdvJumpVO = new ComOpsAdvJumpVO(); + BeanUtils.copyProperties(comOpsAdvJumpDO, comOpsAdvJumpVO); + comOpsAdvJumpVOS.add(comOpsAdvJumpVO); + }); + } + return R.ok(comOpsAdvJumpVOS); + } + + /** + * 分页查询广告 + * + * @param pageComOpsAdvDTO + * 查询内容 + * @return 查询结果 ComOpsAdvVO + */ + @Override + public R pageAdvertisement(PageComOpsAdvDTO pageComOpsAdvDTO) { + Page page = new Page<>(); + Long pageNum = pageComOpsAdvDTO.getPageNum(); + Long pageSize = pageComOpsAdvDTO.getPageSize(); + if (null == pageNum || 0 == pageNum) { + pageNum = 1l; + } + if (null == pageSize || 0 == pageSize) { + pageSize = 10l; + } + page.setSize(pageSize); + page.setCurrent(pageNum); + IPage<ComOpsAdvVO> iPage = comOpsAdvDAO.pageAdvertisement(page, pageComOpsAdvDTO); + return R.ok(iPage); + } + + /** + * 广告详情 + * + * @param id + * 主键 + * @return 广告内容 ComOpsAdvVO + */ + @Override + public R detailAdvertisement(Long id) { + ComOpsAdvVO comOpsAdvVO = comOpsAdvDAO.detailAdvertisement(id); + return R.ok(comOpsAdvVO); + } + + /** + * 删除广告 + * + * @param id + * 主键 + * @return 删除结果 + */ + @Override + public R deleteAdvertisement(Long id) { + int delete = comOpsAdvDAO.deleteById(id); + if (delete > 0) { + return R.ok(); + } + return R.fail(); + } } -- Gitblit v1.7.1