package cc.mrbird.febs.dapp.service.impl; import cc.mrbird.febs.common.entity.FebsResponse; import cc.mrbird.febs.common.entity.QueryRequest; import cc.mrbird.febs.dapp.dto.MallNewsInfoDto; import cc.mrbird.febs.dapp.dto.NewsListDto; import cc.mrbird.febs.dapp.entity.MallNewsCategory; import cc.mrbird.febs.dapp.entity.MallNewsInfo; import cc.mrbird.febs.dapp.entity.PlatformBanner; import cc.mrbird.febs.dapp.mapper.MallNewsCategoryMapper; import cc.mrbird.febs.dapp.mapper.MallNewsInfoMapper; import cc.mrbird.febs.dapp.mapper.PlatformBannerMapper; import cc.mrbird.febs.dapp.service.IMallNewsInfoService; import cc.mrbird.febs.dapp.vo.AdminMallNewsInfoVo; import cc.mrbird.febs.dapp.vo.NewsListVo; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; 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.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import java.util.List; /** * @author wzy * @date 2022-05-13 **/ @Slf4j @Service @RequiredArgsConstructor public class MallNewsInfoServiceImpl extends ServiceImpl implements IMallNewsInfoService { private final MallNewsCategoryMapper mallNewsCategoryMapper; private final PlatformBannerMapper platformBannerMapper; @Override public IPage getNewInfoList(MallNewsInfo mallNewsInfo, QueryRequest request) { Page page = new Page<>(request.getPageNum(), request.getPageSize()); IPage adminMallNewsInfoVos = this.baseMapper.getNewInfoListInPage(page, mallNewsInfo); return adminMallNewsInfoVos; } @Override public FebsResponse addNewsInfo(MallNewsInfoDto mallNewsInfoDto) { // Integer type = mallNewsInfoDto.getType(); // if(type == 2){ // Long goodsId = mallNewsInfoDto.getGoodsId()==null?0L:mallNewsInfoDto.getGoodsId(); // if(goodsId == 0L){ // return new FebsResponse().fail().message("请选择跳转的产品"); // } // } // MallNewsInfo mallNewsInfo = new MallNewsInfo(); // mallNewsInfo.setTitle(mallNewsInfoDto.getTitle()); // mallNewsInfo.setContent(mallNewsInfoDto.getContent()); // mallNewsInfo.setType(mallNewsInfoDto.getType()); // if(mallNewsInfoDto.getType() == 2){ // mallNewsInfo.setTargetId(mallNewsInfoDto.getGoodsId()); // } String content = mallNewsInfoDto.getContent(); if(StrUtil.isNotBlank(content)){ //正文图片样式居中 mallNewsInfoDto.setContent(content+""); } MallNewsInfo mallNewsInfo = new MallNewsInfo(); BeanUtil.copyProperties(mallNewsInfoDto, mallNewsInfo); this.baseMapper.insert(mallNewsInfo); return new FebsResponse().success(); } @Override public FebsResponse delNewsInfo(Long id) { MallNewsInfo mallNewsInfo = this.baseMapper.selectById(id); if(ObjectUtil.isEmpty(mallNewsInfo)){ return new FebsResponse().fail().message("系统繁忙,请刷新页面重试"); } this.baseMapper.deleteById(id); return new FebsResponse().success(); } @Override public FebsResponse updateNewsInfo(MallNewsInfoDto mallNewsInfoDto) { MallNewsInfo mallNewsInfoBefore = this.baseMapper.selectById(mallNewsInfoDto.getId()); if(ObjectUtil.isEmpty(mallNewsInfoBefore)){ return new FebsResponse().fail().message("系统繁忙,请刷新页面重试"); } // Integer type = mallNewsInfoDto.getType(); // if(type == 2){ // Long goodsId = mallNewsInfoDto.getGoodsId()==null?0L:mallNewsInfoDto.getGoodsId(); // if(goodsId == 0L){ // return new FebsResponse().fail().message("请选择跳转的产品"); // } // } // MallNewsInfo mallNewsInfo = new MallNewsInfo(); // mallNewsInfo.setTitle(mallNewsInfoDto.getTitle()); // mallNewsInfo.setContent(mallNewsInfoDto.getContent()); // mallNewsInfo.setType(mallNewsInfoDto.getType()); // if(mallNewsInfoDto.getType() == 2){ // mallNewsInfo.setTargetId(mallNewsInfoDto.getGoodsId()); // } // this.baseMapper.insert(mallNewsInfo); // this.baseMapper.deleteById(mallNewsInfoDto.getId()); String content = mallNewsInfoDto.getContent(); if(StrUtil.isNotBlank(content)){ //正文图片样式居中 mallNewsInfoDto.setContent(content+""); } MallNewsInfo mallNewsInfo = new MallNewsInfo(); BeanUtil.copyProperties(mallNewsInfoDto, mallNewsInfo); this.baseMapper.updateById(mallNewsInfo); return new FebsResponse().success(); } @Override public MallNewsInfo getNewsInfoById(long id) { return this.baseMapper.selectById(id); } @Override public IPage findNewsCategoryInPage(MallNewsCategory mallNewsCategory, QueryRequest request) { Page page = new Page<>(request.getPageNum(), request.getPageSize()); return mallNewsCategoryMapper.selectInPage(mallNewsCategory, page); } @Override public void addOrModifyNewsCategory(MallNewsCategory mallNewsCategory) { if (mallNewsCategory.getId() != null) { mallNewsCategoryMapper.updateById(mallNewsCategory); return; } mallNewsCategoryMapper.insert(mallNewsCategory); } @Override public MallNewsCategory findNewsCategoryById(Long id) { return mallNewsCategoryMapper.selectById(id); } @Override public List findAllCategory() { return mallNewsCategoryMapper.selectList(null); } @Override public FebsResponse delNewsCategoryInfo(Long id) { MallNewsCategory mallNewsCategory = mallNewsCategoryMapper.selectById(id); if(ObjectUtil.isEmpty(mallNewsCategory)){ return new FebsResponse().fail().message("系统繁忙,请刷新页面重试"); } mallNewsCategoryMapper.deleteById(id); return new FebsResponse().success(); } @Override public List findNewsCategoryList() { return mallNewsCategoryMapper.selectList(null); } @Override public IPage findNewsInPage(NewsListDto newsListDto) { Page page = new Page<>(newsListDto.getPageNum(), newsListDto.getPageSize()); MallNewsInfo mallNewsInfo = new MallNewsInfo(); mallNewsInfo.setCategoryId(newsListDto.getCategoryId()); return this.baseMapper.selectNewsVoInPage(page, mallNewsInfo); } @Override public List findTopNews() { Page page = new Page<>(1, 999); MallNewsInfo mallNewsInfo = new MallNewsInfo(); mallNewsInfo.setIsTop(1); IPage pageList = this.baseMapper.selectNewsVoInPage(page, mallNewsInfo); return pageList.getRecords(); } @Override public FebsResponse findAllBanner() { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.orderByAsc("is_top"); List paymentMethodList = platformBannerMapper.selectList(queryWrapper); return new FebsResponse().success().data(paymentMethodList); } }