From 1fc8fde81cbf79ebe95e927f9099cf94c2ccc6e5 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Thu, 15 May 2025 17:39:04 +0800
Subject: [PATCH] refactor(mall): 优化退款流程和逻辑

---
 src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallNewsServiceImpl.java |   76 +++++++++++++++++++++++++++++++++++---
 1 files changed, 70 insertions(+), 6 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 f7642ee..6fdc950 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,15 +1,16 @@
 package cc.mrbird.febs.mall.service.impl;
 
 import cc.mrbird.febs.common.entity.FebsResponse;
+import cc.mrbird.febs.common.enumerates.BannerDictionaryEnum;
+import cc.mrbird.febs.common.enumerates.CommonDictionaryEnum;
+import cc.mrbird.febs.common.enumerates.DataDictionaryEnum;
 import cc.mrbird.febs.mall.dto.NewsListDto;
-import cc.mrbird.febs.mall.entity.MallNewsCategory;
-import cc.mrbird.febs.mall.entity.MallNewsInfo;
-import cc.mrbird.febs.mall.entity.PlatformBanner;
-import cc.mrbird.febs.mall.mapper.MallNewsCategoryMapper;
-import cc.mrbird.febs.mall.mapper.MallNewsInfoMapper;
-import cc.mrbird.febs.mall.mapper.PlatformBannerMapper;
+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.ObjectUtil;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -31,6 +32,8 @@
 
     private final MallNewsCategoryMapper mallNewsCategoryMapper;
     private final PlatformBannerMapper platformBannerMapper;
+    private final MallGoodsMapper mallGoodsMapper;
+    private final DataDictionaryCustomMapper dataDictionaryCustomMapper;
 
     @Override
     public List<MallNewsCategory> findNewsCategoryList() {
@@ -59,7 +62,68 @@
     @Override
     public FebsResponse findAllBanner() {
         QueryWrapper<PlatformBanner> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq("type", 1);
+        queryWrapper.orderByAsc("is_top");
+        queryWrapper.orderByAsc("created_time");
         List<PlatformBanner> paymentMethodList = platformBannerMapper.selectList(queryWrapper);
+        if(CollUtil.isNotEmpty(paymentMethodList)){
+            for(PlatformBanner platformBanner : paymentMethodList){
+                if("1".equals(platformBanner.getIsJump()) &&
+                    1 == platformBanner.getIsInside()){
+                    String jumpUrl = platformBanner.getJumpUrl();
+                    QueryWrapper<MallGoods> queryWrapperGoods = new QueryWrapper<>();
+                    queryWrapperGoods.eq("goods_no",jumpUrl);
+                    List<MallGoods> goodsList = mallGoodsMapper.selectList(queryWrapperGoods);
+                    if(CollUtil.isNotEmpty(goodsList)){
+                        platformBanner.setGoodsId(goodsList.get(0).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());
+    }
+
+    @Override
+    public FebsResponse bannerByType(int type) {
+
+        String timeStop = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+                CommonDictionaryEnum.TIME_URL_INDEX.getType(),
+                CommonDictionaryEnum.TIME_URL_INDEX.getCode()
+        ).getValue();
+        if (timeStop == null) {
+            timeStop = "3";
+        }
+        QueryWrapper<PlatformBanner> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq("type",type);
+        queryWrapper.orderByAsc("sort");
+        queryWrapper.orderByAsc("is_top");
+        List<PlatformBanner> paymentMethodList = platformBannerMapper.selectList(queryWrapper);
+        if(CollUtil.isNotEmpty(paymentMethodList)){
+            if(BannerDictionaryEnum.OPEN_XCX.getType() == type)
+            for(PlatformBanner platformBanner : paymentMethodList){
+                platformBanner.setTimeStop(timeStop);
+
+                if("1".equals(platformBanner.getIsJump()) &&
+                        1 == platformBanner.getIsInside()){
+                    String jumpUrl = platformBanner.getJumpUrl();
+                    QueryWrapper<MallGoods> queryWrapperGoods = new QueryWrapper<>();
+                    queryWrapperGoods.eq("goods_no",jumpUrl);
+                    List<MallGoods> goodsList = mallGoodsMapper.selectList(queryWrapperGoods);
+                    if(CollUtil.isNotEmpty(goodsList)){
+                        platformBanner.setGoodsId(goodsList.get(0).getId());
+                    }
+                }
+            }
+        }
         return new FebsResponse().success().data(paymentMethodList);
     }
 }

--
Gitblit v1.9.1