From 1bf57dbbb7025facb8a3e3c2074e82af6f13b24f Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Thu, 28 Apr 2022 15:13:59 +0800 Subject: [PATCH] fix --- src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java | 241 ++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 234 insertions(+), 7 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java index 486b316..5b4e315 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java @@ -2,19 +2,21 @@ import cc.mrbird.febs.common.entity.FebsResponse; import cc.mrbird.febs.common.entity.QueryRequest; +import cc.mrbird.febs.common.enumerates.AgentLevelEnum; +import cc.mrbird.febs.common.enumerates.MoneyFlowTypeEnum; +import cc.mrbird.febs.common.exception.FebsException; +import cc.mrbird.febs.common.utils.MallUtils; import cc.mrbird.febs.mall.dto.*; -import cc.mrbird.febs.mall.entity.DataDictionaryCustom; -import cc.mrbird.febs.mall.entity.MallMember; -import cc.mrbird.febs.mall.entity.MallMoneyFlow; -import cc.mrbird.febs.mall.mapper.DataDictionaryCustomMapper; -import cc.mrbird.febs.mall.mapper.MallMemberMapper; -import cc.mrbird.febs.mall.mapper.MallMemberPaymentMapper; -import cc.mrbird.febs.mall.mapper.MallMoneyFlowMapper; +import cc.mrbird.febs.mall.entity.*; +import cc.mrbird.febs.mall.entity.MallNewsInfo; +import cc.mrbird.febs.mall.mapper.*; import cc.mrbird.febs.mall.service.IAdminMallMemberService; import cc.mrbird.febs.mall.service.IApiMallMemberWalletService; import cc.mrbird.febs.mall.vo.*; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import cn.hutool.crypto.SecureUtil; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -25,6 +27,7 @@ import org.springframework.transaction.annotation.Transactional; import java.math.BigDecimal; +import java.util.Date; import java.util.List; /** @@ -34,9 +37,12 @@ @Slf4j @Service @RequiredArgsConstructor +@Transactional public class AdminMallMemberServiceImpl extends ServiceImpl<MallMemberMapper, MallMember> implements IAdminMallMemberService { private final MallMemberMapper mallMemberMapper; + + private final MallMemberWalletMapper mallMemberWalletMapper; private final MallMoneyFlowMapper mallMoneyFlowMapper; @@ -45,6 +51,10 @@ private final DataDictionaryCustomMapper dataDictionaryCustomMapper; private final IApiMallMemberWalletService iApiMallMemberWalletService; + + private final AppVersionMapper appVersionMapper; + + private final MallNewsInfoMapper mallNewsInfoMapper; @Override public IPage<MallMember> getMallMemberList(MallMember mallMember, QueryRequest request) { @@ -219,7 +229,224 @@ mallMember = mallMemberMapper.selectById(memberId); Page<AdminAgentMemberVo> page = new Page<>(request.getPageNum(), request.getPageSize()); IPage<AdminAgentMemberVo> adminAgentMemberVos = this.baseMapper.getAgentChildInPage(page, mallMember); + List<AdminAgentMemberVo> records = adminAgentMemberVos.getRecords(); + if(CollUtil.isNotEmpty(records)){ + for(AdminAgentMemberVo agentMemberVo : records){ + String inviteId = agentMemberVo.getInviteId(); + BigDecimal amount = mallMemberMapper.getAgentTeamAmountByInviteId(inviteId); + agentMemberVo.setAmount(amount); + } + } return adminAgentMemberVos; } + @Override + public IPage<AdminRankAwardVo> getRankAwardList(RankAwardDto rankAwardDto, QueryRequest request) { + Page<AdminRankAwardVo> page = new Page<>(request.getPageNum(), request.getPageSize()); + IPage<AdminRankAwardVo> adminRankAwardVos = this.baseMapper.getRankAwardListInPage(page, rankAwardDto); + return adminRankAwardVos; + } + + @Override + public AdminRankAwardUpdateInfoVo getRankAwardUpdateInfoById(long id) { + AdminRankAwardUpdateInfoVo adminRankAwardUpdateInfoVo = dataDictionaryCustomMapper.getRankAwardUpdateInfoById(id); + return adminRankAwardUpdateInfoVo; + } + + @Override + public FebsResponse rankAwardUpdate(RankAwardUpdateDto rankAwardUpdateDto) { + DataDictionaryCustom dataDictionaryCustom = dataDictionaryCustomMapper.selectById(rankAwardUpdateDto.getId()); + dataDictionaryCustom.setValue(rankAwardUpdateDto.getValue()); + dataDictionaryCustom.setDescription(rankAwardUpdateDto.getDescription()); + dataDictionaryCustomMapper.updateById(dataDictionaryCustom); + return new FebsResponse().success(); + } + + @Override + public IPage<AppVersion> getAppVersionList(AppVersion appVersion, QueryRequest request) { + Page<AppVersion> page = new Page<>(request.getPageNum(), request.getPageSize()); + IPage<AppVersion> appVersions = this.baseMapper.getAppVersionListInPage(page, appVersion); + return appVersions; + } + + @Override + public FebsResponse delCategary(Long id) { + AppVersion appVersion = appVersionMapper.selectById(id); + if(ObjectUtil.isEmpty(appVersion)){ + return new FebsResponse().fail().message("系统繁忙,请刷新页面重试"); + } + appVersionMapper.deleteById(id); + return new FebsResponse().success(); + } + + @Override + public FebsResponse addAppVersion(AppVersion appVersion) { + appVersion.setCreatetime(new Date()); + appVersionMapper.insert(appVersion); + return new FebsResponse().success(); + } + + @Override + public AppVersion getAppVersionInfoById(long id) { + return appVersionMapper.selectById(id); + } + + @Override + public FebsResponse updateAppVersion(AppVersion appVersion) { + AppVersion appVersionBefore = appVersionMapper.selectById(appVersion.getId()); + if(ObjectUtil.isEmpty(appVersionBefore)){ + return new FebsResponse().fail().message("系统繁忙,请刷新页面重试"); + } + appVersion.setCreatetime(new Date()); + appVersionMapper.updateById(appVersion); + return new FebsResponse().success(); + } + + @Override + public FebsResponse activateAccount(Long id) { + MallMember mallMember = mallMemberMapper.selectById(id); + if(ObjectUtil.isEmpty(mallMember)){ + return new FebsResponse().fail().message("系统繁忙,请刷新页面重试"); + } + String level = mallMember.getLevel(); + if(StrUtil.isEmpty(level) || !AgentLevelEnum.ZERO_LEVEL.name().equals(mallMember.getLevel())){ + return new FebsResponse().fail().message("该用户无法激活"); + } + mallMember.setLevel(AgentLevelEnum.FIRST_LEVEL.name()); + mallMemberMapper.updateById(mallMember); + return new FebsResponse().success(); + } + + @Override + public MallNewsInfo getNewsInfoById(long id) { + return mallNewsInfoMapper.selectById(id); + } + + @Override + public IPage<AdminMallNewsInfoVo> getNewInfoList(MallNewsInfo mallNewsInfo, QueryRequest request) { + Page<AdminMallNewsInfoVo> page = new Page<>(request.getPageNum(), request.getPageSize()); + IPage<AdminMallNewsInfoVo> adminMallNewsInfoVos = mallNewsInfoMapper.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()); + } + mallNewsInfoMapper.insert(mallNewsInfo); + return new FebsResponse().success(); + } + + @Override + public FebsResponse delNewsInfo(Long id) { + MallNewsInfo mallNewsInfo = mallNewsInfoMapper.selectById(id); + if(ObjectUtil.isEmpty(mallNewsInfo)){ + return new FebsResponse().fail().message("系统繁忙,请刷新页面重试"); + } + mallNewsInfoMapper.deleteById(id); + return new FebsResponse().success(); + } + + @Override + public FebsResponse updateNewsInfo(MallNewsInfoDto mallNewsInfoDto) { + MallNewsInfo mallNewsInfoBefore = mallNewsInfoMapper.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()); + } + mallNewsInfoMapper.insert(mallNewsInfo); + mallNewsInfoMapper.deleteById(mallNewsInfoDto.getId()); + return new FebsResponse().success(); + } + + @Override + @Transactional + public FebsResponse updateSystemPay(MallSystemPayDto mallSystemPayDto) { + Long memberId = mallSystemPayDto.getId(); + MallMember mallMember = mallMemberMapper.selectById(memberId); + if(ObjectUtil.isEmpty(mallMember)){ + return new FebsResponse().fail().message("系统繁忙,请刷新页面重试"); + } + + BigDecimal bigDecimal = mallSystemPayDto.getAddBalance(); + if(bigDecimal.compareTo(BigDecimal.ZERO) <= 0){ + return new FebsResponse().fail().message("拨付数目需要大于0"); + } + + MallMemberWallet mallMemberWallet = mallMemberWalletMapper.selectWalletByMemberId(memberId); + mallMemberWallet.setBalance(mallMemberWallet.getBalance().add(bigDecimal)); + mallMemberWalletMapper.updateBalanceWithId(mallMemberWallet); + + MallMoneyFlow flow = new MallMoneyFlow(); + flow.setMemberId(memberId); + flow.setAmount(bigDecimal); +// flow.setType(MoneyFlowTypeEnum.SYSTEM_PAY.getValue()); + flow.setOrderNo("SYS"+MallUtils.getOrderNum()); + flow.setStatus(2); + mallMoneyFlowMapper.insert(flow); + return new FebsResponse().success(); + } + + @Override + public AdminAgentLevelSetInfoVo getAgentLevelSetInfoByMemberId(long id) { + AdminAgentLevelSetInfoVo adminAgentLevelSetInfoVo = mallMemberMapper.getAgentLevelSetInfoByMemberId(id); + return adminAgentLevelSetInfoVo; + } + + @Override + public FebsResponse agentLevelSetUpdate(AgentLevelSetUpdateDto agentLevelSetUpdateDto) { + Long memberId = agentLevelSetUpdateDto.getId(); + MallMember mallMember = mallMemberMapper.selectById(memberId); + if(ObjectUtil.isEmpty(mallMember)){ + return new FebsResponse().fail().message("系统繁忙,请刷新页面重试"); + } + mallMember.setLevel(agentLevelSetUpdateDto.getLevelCode()); + mallMemberMapper.updateById(mallMember); + return new FebsResponse().success(); + } + + @Override + public FebsResponse resetPwd(Long id) { + MallMember mallMember = this.baseMapper.selectById(id); + if (mallMember == null) { + throw new FebsException("用户不存在"); + } + + String pwd = SecureUtil.md5("a123456"); + mallMember.setPassword(pwd); + this.baseMapper.updateById(mallMember); + return new FebsResponse().success().message("重置成功"); + } + + @Override + public IPage<MallDataVo> getMallDataList(MallMember mallMember, QueryRequest request) { + Page<MallDataVo> page = new Page<>(request.getPageNum(), request.getPageSize()); + IPage<MallDataVo> mallDataVos = this.baseMapper.getMallDataListInPage(page, mallMember); + return mallDataVos; + } } -- Gitblit v1.9.1