From f16f74cacb9ef0ae4be89ed15353b6a449479d8c Mon Sep 17 00:00:00 2001 From: Administrator <15274802129@163.com> Date: Wed, 28 May 2025 13:38:09 +0800 Subject: [PATCH] feat(mall): 添加轮播图背景图片功能 --- src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java | 137 ++++++++++++++++++++++++++++++++++++--------- 1 files changed, 110 insertions(+), 27 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 fb05383..254e019 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,9 +2,7 @@ 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.FlowTypeEnum; -import cc.mrbird.febs.common.enumerates.MoneyFlowTypeEnum; +import cc.mrbird.febs.common.enumerates.*; import cc.mrbird.febs.common.exception.FebsException; import cc.mrbird.febs.common.utils.AppContants; import cc.mrbird.febs.common.utils.LoginUserUtil; @@ -12,7 +10,6 @@ import cc.mrbird.febs.common.utils.RedisUtils; import cc.mrbird.febs.mall.dto.*; 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; @@ -21,17 +18,19 @@ import cc.mrbird.febs.pay.model.MemberWithdrawalDto; import cc.mrbird.febs.pay.service.IXcxPayService; import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.IdUtil; 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.conditions.query.LambdaQueryWrapper; 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.apache.xmlbeans.impl.store.Query; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -75,25 +74,17 @@ private final MallAgentRecordMapper mallAgentRecordMapper; private final MallSalesmanMapper mallSalesmanMapper; private final SalemanCouponMapper salemanCouponMapper; + private final MallMemberCouponMapper mallMemberCouponMapper; + private final MallGoodsCouponMapper mallGoodsCouponMapper; + private final HappySaleLevelMapper happySaleLevelMapper; + private final HappyMemberLevelMapper happyMemberLevelMapper; + @Override public IPage<MallMember> getMallMemberList(MallMember mallMember, QueryRequest request) { Page<MallMember> page = new Page<>(request.getPageNum(), request.getPageSize()); - IPage<MallMember> mallMembers = this.baseMapper.selectMallMemberListInPage(page, mallMember); -// if(CollUtil.isNotEmpty(mallMembers.getRecords())){ -// for(MallMember mallMemberTeam : mallMembers.getRecords()){ -// Long salesmansId = mallMemberTeam.getSalesmansId(); -// MallSalesman mallSalesman = mallSalesmanMapper.selectById(salesmansId); -// if(ObjectUtil.isNotEmpty(mallSalesman)){ -// StringBuffer salesmanName = new StringBuffer(); -// salesmanName.append(mallSalesman.getName()); -// if(2 == mallSalesman.getState()){ -// salesmanName.append("(禁用)"); -// } -// mallMemberTeam.setSalesmansName(salesmanName.toString()); -// } -// } -// } +// IPage<MallMember> mallMembers = this.baseMapper.selectMallMemberListInPage(page, mallMember); + IPage<MallMember> mallMembers = this.baseMapper.selectHappyMemberListInPage(page, mallMember); return mallMembers; } @@ -106,6 +97,17 @@ } mallMember.setAccountStatus(MallMember.ACCOUNT_STATUS_DISABLED); mallMemberMapper.updateById(mallMember); + + String redisKey = AppContants.XCX_LOGIN_PREFIX + id; + String existToken = redisUtils.getString(redisKey); + if (StrUtil.isNotBlank(existToken)) { + Object o = redisUtils.get(existToken); + if (ObjectUtil.isNotEmpty(o)) { + redisUtils.del(existToken); + } + } + redisUtils.del(AppContants.XCX_LOGIN_PREFIX + id); + redisUtils.del(AppContants.XCX_LOGIN_PHONE_PREFIX + id); return new FebsResponse().success(); } @@ -316,6 +318,17 @@ } @Override + public FebsResponse doctorStateChange(Long id) { + MallMember mallMember = this.baseMapper.selectById(id); + if(ObjectUtil.isEmpty(mallMember)){ + throw new FebsException("请刷新页面"); + } + mallMember.setDoctorState(mallMember.getDoctorState() == 1 ? 0 : 1); + this.baseMapper.updateById(mallMember); + return new FebsResponse().success().message("操作成功"); + } + + @Override public FebsResponse upCoupon(Long id) { MallMember mallMember = this.baseMapper.selectById(id); if(ObjectUtil.isEmpty(mallMember)){ @@ -510,12 +523,16 @@ Integer type = mallSystemPayDto.getType(); String filedType = ""; + Integer flowType = 0; if (type == 1) { filedType = "balance"; + flowType = FlowTypeEnum.BALANCE.getValue(); } else if (type == 2) { - filedType = "score"; - } else if (type == 3) { filedType = "prizeScore"; + flowType = FlowTypeEnum.PRIZE_SCORE.getValue(); + } else if (type == 3) { + filedType = "commission"; + flowType = FlowTypeEnum.COMMISSION.getValue(); } else { throw new FebsException("参数错误"); } @@ -529,7 +546,15 @@ } else { iApiMallMemberWalletService.add(mallSystemPayDto.getAddBalance(), mallSystemPayDto.getId(), filedType); } - mallMoneyFlowService.addMoneyFlow(memberId, bigDecimal, MoneyFlowTypeEnum.SYSTEM.getValue(), null, type); + mallMoneyFlowService.addMoneyFlow( + memberId, + bigDecimal, + ScoreFlowTypeEnum.SYSTEM.getValue(), + MallUtils.getOrderNum(), + flowType, + StrUtil.format(ScoreFlowTypeEnum.SYSTEM.getDesc(),bigDecimal), + 2 + ); return new FebsResponse().success(); } @@ -697,16 +722,28 @@ @Override @Transactional(rollbackFor = Exception.class) public void modifyReferer(MallMember member) { + if(StrUtil.isEmpty(member.getReferrerId())){ + this.baseMapper.updateReferrerId(member.getId()); + return; + } + String referrerId = member.getReferrerId();//新的推荐人邀请码 //获取新推荐人信息 - MallMember referer = this.baseMapper.selectInfoByInviteId(member.getReferrerId()); + MallMember referer = this.baseMapper.selectInfoByInviteId(referrerId); if (referer == null) { throw new FebsException("推荐人不存在"); } - String refererId = member.getReferrerId();//新推荐人的邀请码 - member = this.baseMapper.selectById(member.getId());//修改的用户 - String beforeReferer = member.getReferrerId(); + if(member.getInviteId().equals(referrerId)){ + throw new FebsException("自己不能推荐自己"); + } + String refererId = referer.getInviteId();//新推荐人的邀请码 + if(StrUtil.isNotEmpty(referer.getReferrerIds())){ + if (referer.getReferrerIds().contains(member.getInviteId())) { + throw new FebsException("修改的推荐关系不符合规则"); + } + } +// String beforeReferer = member.getReferrerId(); member.setReferrerId(refererId);//更新用户的上级推荐人为新推荐人的邀请码refererId String refererIds = refererIds(refererId); member.setReferrerIds(refererIds); @@ -912,4 +949,50 @@ return ids; } + + @Override + public FebsResponse addMemberCoupon(MallMember member) { + MallGoodsCoupon existCoupon = mallGoodsCouponMapper.selectById(member.getCouponId()); + if(existCoupon == null) { + return new FebsResponse().fail().message("优惠券不存在"); + } + + MallMemberCoupon memberCoupon = new MallMemberCoupon(); + memberCoupon.setCouponId(existCoupon.getId()); + memberCoupon.setCouponName(existCoupon.getName()); + memberCoupon.setInviteId(member.getInviteId()); + memberCoupon.setCouponUuid(IdUtil.simpleUUID()); + memberCoupon.setState(1); + memberCoupon.setFromType(4); + memberCoupon.setExpireTime(DateUtil.offsetDay(DateUtil.date(), existCoupon.getExpireDay())); + memberCoupon.setMemberId(member.getId()); + mallMemberCouponMapper.insert(memberCoupon); + + return new FebsResponse().success().message("操作成功"); + } + + @Override + public FebsResponse checkOrder(Long id) { + + MallMember mallMember = this.baseMapper.selectById(id); + + if(ObjectUtil.isNotEmpty(mallMember)){ + mallMember.setCheckOrder(StateUpDownEnum.DOWN.getCode() == mallMember.getCheckOrder() ? StateUpDownEnum.UP.getCode() : StateUpDownEnum.DOWN.getCode()); + this.baseMapper.updateById(mallMember); + } + + return new FebsResponse().success().message("操作成功"); + } + + @Override + public FebsResponse checkLeader(Long id) { + + MallMember mallMember = this.baseMapper.selectById(id); + if(ObjectUtil.isNotEmpty(mallMember)){ + mallMember.setCheckLeader(StateUpDownEnum.DOWN.getCode() == mallMember.getCheckLeader() ? StateUpDownEnum.UP.getCode() : StateUpDownEnum.DOWN.getCode()); + this.baseMapper.updateById(mallMember); + } + + return new FebsResponse().success().message("操作成功"); + } } -- Gitblit v1.9.1