From f8f52081879eb09033c3cf66fd40314a46c92604 Mon Sep 17 00:00:00 2001 From: KKSU <15274802129@163.com> Date: Thu, 09 Jan 2025 11:01:52 +0800 Subject: [PATCH] refactor(mall): 优化活动状态显示和处理 --- src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallNewsServiceImpl.java | 73 +++++++++++++++++++++++++++++++++++- 1 files changed, 71 insertions(+), 2 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallNewsServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallNewsServiceImpl.java index fa9ef3a..1805515 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallNewsServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallNewsServiceImpl.java @@ -1,12 +1,23 @@ package cc.mrbird.febs.mall.service.impl; -import cc.mrbird.febs.mall.entity.MallNewsInfo; -import cc.mrbird.febs.mall.mapper.MallNewsInfoMapper; +import cc.mrbird.febs.common.entity.FebsResponse; +import cc.mrbird.febs.common.enumerates.DataDictionaryEnum; +import cc.mrbird.febs.mall.dto.NewsListDto; +import cc.mrbird.febs.mall.entity.*; +import cc.mrbird.febs.mall.mapper.*; import cc.mrbird.febs.mall.service.IApiMallNewsService; +import cc.mrbird.febs.mall.vo.NewsListVo; +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +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 @@ -17,4 +28,62 @@ @RequiredArgsConstructor public class ApiMallNewsServiceImpl extends ServiceImpl<MallNewsInfoMapper, MallNewsInfo> implements IApiMallNewsService { + private final MallNewsCategoryMapper mallNewsCategoryMapper; + private final PlatformBannerMapper platformBannerMapper; + private final MallGoodsMapper mallGoodsMapper; + private final DataDictionaryCustomMapper dataDictionaryCustomMapper; + private final MallActivityMapper mallActivityMapper; + + @Override + public List<MallNewsCategory> findNewsCategoryList() { + return mallNewsCategoryMapper.selectList(null); + } + + @Override + public IPage<NewsListVo> findNewsInPage(NewsListDto newsListDto) { + Page<NewsListVo> page = new Page<>(newsListDto.getPageNum(), newsListDto.getPageSize()); + + MallNewsInfo mallNewsInfo = new MallNewsInfo(); + mallNewsInfo.setCategoryId(newsListDto.getCategoryId()); + return this.baseMapper.selectNewsVoInPage(page, mallNewsInfo); + } + + @Override + public List<NewsListVo> findTopNews() { + Page<NewsListVo> page = new Page<>(1, 999); + MallNewsInfo mallNewsInfo = new MallNewsInfo(); + mallNewsInfo.setIsTop(1); + + IPage<NewsListVo> pageList = this.baseMapper.selectNewsVoInPage(page, mallNewsInfo); + return pageList.getRecords(); + } + + @Override + public FebsResponse findAllBanner() { + List<PlatformBanner> paymentMethodList = platformBannerMapper.selectList( + new LambdaQueryWrapper<PlatformBanner>() + .orderByAsc(PlatformBanner::getIsTop) + .orderByAsc(PlatformBanner::getCreatedTime) + ); + if(CollUtil.isNotEmpty(paymentMethodList)){ + paymentMethodList.forEach(item -> { + if("1".equals(item.getIsJump()) && 1 == item.getIsInside() && StrUtil.isNotEmpty(item.getJumpUrl())){ + String jumpUrl = item.getJumpUrl(); + MallActivity mallActivity = mallActivityMapper.selectById(Long.parseLong(jumpUrl)); + + item.setActivityId(mallActivity.getId()); + } + }); + } + return new FebsResponse().success().data(paymentMethodList); + } + + @Override + public FebsResponse indexVideo() { + DataDictionaryCustom dataDictionaryCustom = dataDictionaryCustomMapper.selectDicDataByTypeAndCode( + DataDictionaryEnum.VIDEO_URL_INDEX.getType(), + DataDictionaryEnum.VIDEO_URL_INDEX.getCode() + ); + return new FebsResponse().success().data(dataDictionaryCustom.getValue()); + } } -- Gitblit v1.9.1