From 1e56643468a59f9ebacfbc6235bb6e717bfb71da Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Wed, 16 Aug 2023 11:24:13 +0800
Subject: [PATCH] 后台修改

---
 src/main/java/cc/mrbird/febs/dapp/service/impl/AdminMallGoodsService.java |  259 ++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 254 insertions(+), 5 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/AdminMallGoodsService.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/AdminMallGoodsService.java
index 1b4cb94..90aa716 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/impl/AdminMallGoodsService.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/impl/AdminMallGoodsService.java
@@ -3,17 +3,20 @@
 import cc.mrbird.febs.common.entity.FebsResponse;
 import cc.mrbird.febs.common.entity.QueryRequest;
 import cc.mrbird.febs.dapp.dto.AddMallGoodsDto;
+import cc.mrbird.febs.dapp.dto.HlmBasicPerkDto;
 import cc.mrbird.febs.dapp.dto.MallGoodsUpdateDto;
 import cc.mrbird.febs.dapp.dto.MallOrderInfoDto;
-import cc.mrbird.febs.dapp.entity.MallGoods;
-import cc.mrbird.febs.dapp.entity.MallOrderInfo;
-import cc.mrbird.febs.dapp.mapper.DappFundFlowDao;
-import cc.mrbird.febs.dapp.mapper.MallGoodsMapper;
-import cc.mrbird.febs.dapp.mapper.MallOrderInfoMapper;
+import cc.mrbird.febs.dapp.entity.*;
+import cc.mrbird.febs.dapp.enumerate.DataDictionaryEnum;
+import cc.mrbird.febs.dapp.mapper.*;
 import cc.mrbird.febs.dapp.service.IAdminMallGoodsService;
+import cc.mrbird.febs.dapp.vo.AdminMallGoodsCategoryTreeVo;
+import cc.mrbird.febs.dapp.vo.AdminMallGoodsCategoryVo;
 import cc.mrbird.febs.dapp.vo.AdminMallMoneyFlowVo;
 import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -21,6 +24,12 @@
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
+
+import javax.validation.Valid;
+import javax.validation.constraints.NotNull;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
 
 @Slf4j
 @Service
@@ -31,6 +40,10 @@
     private final MallGoodsMapper mallGoodsMapper;
     private final MallOrderInfoMapper mallOrderInfoMapper;
     private final DappFundFlowDao dappFundFlowDao;
+    private final DataDictionaryCustomMapper dataDictionaryCustomMapper;
+    private final MallGoodsCategoryMapper mallGoodsCategoryMapper;
+
+    private final PlatformBannerMapper platformBannerMapper;
 
     @Override
     public IPage<MallGoods> getCategoryListInPage(MallGoods mallGoods, QueryRequest request) {
@@ -141,4 +154,240 @@
         IPage<AdminMallMoneyFlowVo> adminMallMoneyFlowVos = dappFundFlowDao.selectOrderMoneyFlowInPage(page, mallOrder);
         return adminMallMoneyFlowVos;
     }
+
+    @Override
+    public List<DataDictionaryCustom> findDataDicByType(String type) {
+        return dataDictionaryCustomMapper.selectDicByType(type);
+    }
+
+    @Override
+    public void bonusSystemSetting(Map<String, Object> map) {
+        for (Map.Entry<String, Object> entry : map.entrySet()) {
+            if (entry.getValue() instanceof String) {
+                dataDictionaryCustomMapper.updateDicValueByTypeAndCode(null, entry.getKey(), (String) entry.getValue());
+            } else {
+                List<LinkedHashMap<String, Object>> value = (List<LinkedHashMap<String, Object>>) entry.getValue();
+
+                for (LinkedHashMap<String, Object> dic : value) {
+                    String type = (String) dic.get("type");
+                    String code = (String) dic.get("code");
+                    String dataValue = (String) dic.get("value");
+                    dataDictionaryCustomMapper.updateDicValueByTypeAndCode(type, code, dataValue);
+                }
+            }
+        }
+    }
+
+    @Override
+    public void hlmBasicPerk(HlmBasicPerkDto hlmBasicPerkDto) {
+        updateDataDic(DataDictionaryEnum.DONATE_SCORE_PERCENT.getType(),
+                DataDictionaryEnum.DONATE_SCORE_PERCENT.getCode(),
+                hlmBasicPerkDto.getDonateScorePercent());
+        updateDataDic(DataDictionaryEnum.STATIC_RELEASE.getType(),
+                DataDictionaryEnum.STATIC_RELEASE.getCode(),
+                hlmBasicPerkDto.getStaticRelease());
+        updateDataDic(DataDictionaryEnum.DIRECT_RELEASE.getType(),
+                DataDictionaryEnum.DIRECT_RELEASE.getCode(),
+                hlmBasicPerkDto.getDirectRelease());
+        updateDataDic(DataDictionaryEnum.MAX_RELEASE.getType(),
+                DataDictionaryEnum.MAX_RELEASE.getCode(),
+                hlmBasicPerkDto.getMaxRelease());
+        updateDataDic(DataDictionaryEnum.USDT_ORDER_PERCENT.getType(),
+                DataDictionaryEnum.USDT_ORDER_PERCENT.getCode(),
+                hlmBasicPerkDto.getUsdtOrderRelease());
+        updateDataDic(DataDictionaryEnum.TEAM_PERK_LEVEL_EQUALS.getType(),
+                DataDictionaryEnum.TEAM_PERK_LEVEL_EQUALS.getCode(),
+                hlmBasicPerkDto.getTeamPerkLevelEquals());
+        updateDataDic(DataDictionaryEnum.MEMBER_BUY_MAX_AMOUNT.getType(),
+                DataDictionaryEnum.MEMBER_BUY_MAX_AMOUNT.getCode(),
+                hlmBasicPerkDto.getMemberBuyMaxAmount());
+        updateDataDic(DataDictionaryEnum.PACKAGE_TOTAL_SCORE.getType(),
+                DataDictionaryEnum.PACKAGE_TOTAL_SCORE.getCode(),
+                hlmBasicPerkDto.getPackageTotalScore());
+        updateDataDic(DataDictionaryEnum.PACKAGE_SCORE_PRICE.getType(),
+                DataDictionaryEnum.PACKAGE_SCORE_PRICE.getCode(),
+                hlmBasicPerkDto.getPackageScorePrice());
+        updateDataDic(DataDictionaryEnum.PACKAGE_SALE_TO_POOR_PERCENT.getType(),
+                DataDictionaryEnum.PACKAGE_SALE_TO_POOR_PERCENT.getCode(),
+                hlmBasicPerkDto.getPackageSaleToPoorPercent());
+        updateDataDic(DataDictionaryEnum.PACKAGE_POOR.getType(),
+                DataDictionaryEnum.PACKAGE_POOR.getCode(),
+                hlmBasicPerkDto.getPackagePoor());
+        updateDataDic(DataDictionaryEnum.WITHDRAW_FEE.getType(),
+                DataDictionaryEnum.WITHDRAW_FEE.getCode(),
+                hlmBasicPerkDto.getWithDrawFee());
+    }
+
+    @Override
+    public IPage<MallGoodsCategory> getCategoryList(MallGoodsCategory mallGoodsCategory, QueryRequest request) {
+        Page<MallGoodsCategory> page = new Page<>(request.getPageNum(), request.getPageSize());
+        IPage<MallGoodsCategory> mallGoodsCategorys = mallGoodsCategoryMapper.selectCategoryListInPage(page, mallGoodsCategory);
+        return mallGoodsCategorys;
+    }
+
+    @Override
+    public FebsResponse addCategory(MallGoodsCategory mallGoodsCategory) {
+        String name = mallGoodsCategory.getName();
+        if(StrUtil.isEmpty(name)){
+            return new FebsResponse().fail().message("分类名称不能为空");
+        }
+        List<MallGoodsCategory> categorys = mallGoodsCategoryMapper.selectCategoryByName(name);
+        if(CollUtil.isNotEmpty(categorys)){
+            return new FebsResponse().fail().message("分类名称不能重复");
+        }
+        Long parentIdParam = mallGoodsCategory.getParentId() == null ? 0L:mallGoodsCategory.getParentId();
+        Integer isRecommendParam = mallGoodsCategory.getIsRecommend();
+        if(parentIdParam > 0 && isRecommendParam == 1){
+            return new FebsResponse().fail().message("子分类不能选择【是否推荐】为【是】");
+        }
+
+        MallGoodsCategory goodsCategory = new MallGoodsCategory();
+        goodsCategory.setName(name);
+        goodsCategory.setImage(mallGoodsCategory.getImage());
+        if(ObjectUtil.isNotEmpty(mallGoodsCategory.getParentId())){
+            Long parentId = mallGoodsCategory.getParentId();
+            MallGoodsCategory mallGoodsCategoryParent = mallGoodsCategoryMapper.selectById(parentId);
+            goodsCategory.setParentId(mallGoodsCategory.getParentId());
+            if(StrUtil.isNotEmpty(mallGoodsCategoryParent.getParentIds())){
+                goodsCategory.setParentIds(mallGoodsCategoryParent.getParentIds()+","+mallGoodsCategory.getParentId()+",");
+            }else{
+                goodsCategory.setParentIds(mallGoodsCategory.getParentId()+",");
+            }
+            goodsCategory.setIsRecommend(0);
+        }else{
+            goodsCategory.setParentId(0L);
+            goodsCategory.setIsRecommend(mallGoodsCategory.getIsRecommend());
+        }
+        mallGoodsCategoryMapper.insert(goodsCategory);
+        return new FebsResponse().success();
+    }
+
+    @Override
+    public FebsResponse updateCategory(MallGoodsCategory mallGoodsCategoryParam) {
+        String name = mallGoodsCategoryParam.getName();
+        if(StrUtil.isEmpty(name)){
+            return new FebsResponse().fail().message("名称不能为空");
+        }
+        Long parentIdParam = mallGoodsCategoryParam.getParentId() == null ? 0L:mallGoodsCategoryParam.getParentId();
+        Integer isRecommendParam = mallGoodsCategoryParam.getIsRecommend();
+        if(parentIdParam > 0 && isRecommendParam == 1){
+            return new FebsResponse().fail().message("子分类不能选择【是否推荐】为【是】");
+        }
+
+        Long id = mallGoodsCategoryParam.getId();
+        MallGoodsCategory mallGoodsCategory = mallGoodsCategoryMapper.selectById(id);
+        mallGoodsCategory.setName(mallGoodsCategoryParam.getName());
+        mallGoodsCategory.setImage(mallGoodsCategoryParam.getImage());
+        mallGoodsCategory.setIndexNum(mallGoodsCategoryParam.getIndexNum());
+        if(ObjectUtil.isNotEmpty(mallGoodsCategoryParam.getParentId())){
+            Long parentId = mallGoodsCategoryParam.getParentId();
+            MallGoodsCategory mallGoodsCategoryParent = mallGoodsCategoryMapper.selectById(parentId);
+            mallGoodsCategory.setParentId(mallGoodsCategoryParam.getParentId());
+            if(StrUtil.isNotEmpty(mallGoodsCategoryParent.getParentIds())){
+                mallGoodsCategory.setParentIds(mallGoodsCategoryParent.getParentIds()+","+mallGoodsCategory.getParentId()+",");
+            }else{
+                mallGoodsCategory.setParentIds(mallGoodsCategory.getParentId()+",");
+            }
+            mallGoodsCategory.setIsRecommend(0);
+        }else{
+            mallGoodsCategory.setParentId(0L);
+            mallGoodsCategory.setIsRecommend(mallGoodsCategoryParam.getIsRecommend());
+        }
+        mallGoodsCategoryMapper.updateById(mallGoodsCategory);
+
+        return new FebsResponse().success();
+    }
+
+    @Override
+    public FebsResponse delCategary(Long id) {
+        MallGoodsCategory mallGoodsCategory = mallGoodsCategoryMapper.selectById(id);
+        if(ObjectUtil.isEmpty(mallGoodsCategory)){
+            return new FebsResponse().fail().message("系统繁忙,请刷新页面重试");
+        }
+        List<MallGoodsCategory> childCategarys = mallGoodsCategoryMapper.selectChildCategaryById(id);
+        if(CollUtil.isNotEmpty(childCategarys)){
+            for(MallGoodsCategory childCategary : childCategarys){
+                Long childCategaryId = childCategary.getId();
+                List<MallGoods> mallChildGoods = mallGoodsMapper.selectMallGoodsByCategaryId(childCategaryId);
+                if(CollUtil.isNotEmpty(mallChildGoods)){
+                    return new FebsResponse().fail().message("该分类下的子类【"+childCategary.getName()+"】还有商品,请先删除商品或者修改商品分类");
+                }
+            }
+        }
+
+        if(CollUtil.isNotEmpty(childCategarys)){
+            return new FebsResponse().fail().message("该分类下还有子类,请先删除子类");
+        }
+
+        List<MallGoods> mallGoods = mallGoodsMapper.selectMallGoodsByCategaryId(id);
+        if(CollUtil.isNotEmpty(mallGoods)){
+            return new FebsResponse().fail().message("该分类下还有商品,请先删除商品或者修改商品分类");
+        }
+        mallGoodsCategoryMapper.deleteById(mallGoodsCategory);
+        return new FebsResponse().success();
+    }
+
+    @Override
+    public AdminMallGoodsCategoryVo getMallGoodsCategoryInfoById(long id) {
+        return mallGoodsCategoryMapper.getMallGoodsCategoryInfoById(id);
+    }
+
+    @Override
+    public List<AdminMallGoodsCategoryTreeVo> getParentCategorys() {
+        List<AdminMallGoodsCategoryTreeVo> adminMallGoodsCategoryTreeVos = mallGoodsCategoryMapper.getParentCategorys();
+        return adminMallGoodsCategoryTreeVos;
+    }
+
+    @Override
+    public IPage<PlatformBanner> findPlatformBannerInPage(PlatformBanner platformBannerEntity,
+                                                          QueryRequest request) {
+        Page<PlatformBanner> page = new Page<>(request.getPageNum(), request.getPageSize());
+        IPage<PlatformBanner> platformBannerEntitys = platformBannerMapper.findPlatformBannerInPage(page, platformBannerEntity);
+        return platformBannerEntitys;
+    }
+
+    @Override
+    public PlatformBanner selectPlatformBannerById(long id) {
+        PlatformBanner platformBannerEntity = platformBannerMapper.selectById(id);
+        return platformBannerEntity;
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public FebsResponse platformBannerConfirm(@Valid PlatformBanner platformBannerEntity) {
+        platformBannerMapper.updateById(platformBannerEntity);
+        return new FebsResponse().success();
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public FebsResponse platformBannerDelete(@NotNull(message = "{required}") Long id) {
+        platformBannerMapper.deleteById(id);
+        return new FebsResponse().success();
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void platformBannerAdd(@Valid PlatformBanner platformBannerEntity) {
+        PlatformBanner platformBannerEntityAdd = new PlatformBanner();
+        platformBannerEntityAdd.setImageUrl(platformBannerEntity.getImageUrl());
+        platformBannerEntityAdd.setIsInside(platformBannerEntity.getIsInside());
+        platformBannerEntityAdd.setIsJump(platformBannerEntity.getIsJump());
+        platformBannerEntityAdd.setIsTop(platformBannerEntity.getIsTop());
+        platformBannerEntityAdd.setJumpUrl(platformBannerEntity.getJumpUrl());
+        platformBannerEntityAdd.setName(platformBannerEntity.getName());
+        platformBannerEntityAdd.setShowPort(platformBannerEntity.getShowPort());
+        platformBannerEntityAdd.setSort(platformBannerEntity.getSort());
+        platformBannerMapper.insert(platformBannerEntityAdd);
+
+    }
+
+    public void updateDataDic(String type, String code, String value) {
+        DataDictionaryCustom dic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(type, code);
+        if (dic != null) {
+            dic.setValue(value);
+            dataDictionaryCustomMapper.updateById(dic);
+        }
+    }
+
 }

--
Gitblit v1.9.1