| | |
| | | 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.StateUpDownEnum; |
| | | import cc.mrbird.febs.common.exception.FebsException; |
| | | import cc.mrbird.febs.common.utils.AppContants; |
| | | import cc.mrbird.febs.common.utils.LoginUserUtil; |
| | | import cc.mrbird.febs.common.utils.MallUtils; |
| | | 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; |
| | |
| | | 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; |
| | | |
| | |
| | | private final MallAgentRecordMapper mallAgentRecordMapper; |
| | | private final MallSalesmanMapper mallSalesmanMapper; |
| | | private final SalemanCouponMapper salemanCouponMapper; |
| | | private final MallMemberCouponMapper mallMemberCouponMapper; |
| | | private final MallGoodsCouponMapper mallGoodsCouponMapper; |
| | | |
| | | @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()); |
| | | // } |
| | | // } |
| | | // } |
| | | return mallMembers; |
| | | LambdaQueryWrapper<MallMember> mallMemberLambdaQueryWrapper = new LambdaQueryWrapper<>(); |
| | | if(ObjectUtil.isNotEmpty(mallMember.getName())){ |
| | | mallMemberLambdaQueryWrapper.like(MallMember::getName, mallMember.getName()); |
| | | } |
| | | if(ObjectUtil.isNotEmpty(mallMember.getPhone())){ |
| | | mallMemberLambdaQueryWrapper.eq(MallMember::getPhone, mallMember.getPhone()); |
| | | } |
| | | if(ObjectUtil.isNotEmpty(mallMember.getCheckOrder())){ |
| | | mallMemberLambdaQueryWrapper.eq(MallMember::getCheckOrder, mallMember.getCheckOrder()); |
| | | } |
| | | mallMemberLambdaQueryWrapper.orderByDesc(MallMember::getId); |
| | | |
| | | Page<MallMember> mallMemberPage = this.baseMapper.selectPage(page, mallMemberLambdaQueryWrapper); |
| | | // IPage<MallMember> mallMembers = this.baseMapper.selectMallMemberListInPage(page, mallMember); |
| | | return mallMemberPage; |
| | | } |
| | | |
| | | @Override |
| | |
| | | // mallAgentRecord.setAgentLevel(adminAgentVerifyVo.getLevelCode()); |
| | | mallAgentRecord.setAmount(adminAgentVerifyVo.getAmount()); |
| | | mallAgentRecordMapper.updateById(mallAgentRecord); |
| | | return new FebsResponse().success().message("操作成功"); |
| | | } |
| | | |
| | | @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 |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public void modifyReferer(MallMember member) { |
| | | MallMember referer = this.baseMapper.selectInfoByInviteId(member.getReferrerId()); |
| | | if(StrUtil.isEmpty(member.getReferrerId())){ |
| | | this.baseMapper.updateReferrerId(member.getId()); |
| | | return; |
| | | } |
| | | String referrerId = member.getReferrerId();//新的推荐人邀请码 |
| | | //获取新推荐人信息 |
| | | MallMember referer = this.baseMapper.selectInfoByInviteId(referrerId); |
| | | if (referer == null) { |
| | | throw new FebsException("推荐人不存在"); |
| | | } |
| | | String refererId = member.getReferrerId(); |
| | | member = this.baseMapper.selectById(member.getId());//修改的用户 |
| | | |
| | | member = this.baseMapper.selectById(member.getId()); |
| | | |
| | | String beforeReferer = member.getReferrerId(); |
| | | member.setReferrerId(refererId); |
| | | 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); |
| | | this.baseMapper.updateById(member); |
| | |
| | | |
| | | 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); |
| | | mallMember.setCheckOrder(StateUpDownEnum.DOWN.getCode() == mallMember.getCheckOrder() ? StateUpDownEnum.UP.getCode() : StateUpDownEnum.DOWN.getCode()); |
| | | this.baseMapper.updateById(mallMember); |
| | | |
| | | return new FebsResponse().success().message("操作成功"); |
| | | } |
| | | } |