This commit is contained in:
dute7liang
2024-01-20 22:07:35 +08:00
parent 3b6070428c
commit 96570448b5
12 changed files with 122 additions and 15 deletions

View File

@@ -1,8 +1,11 @@
package com.ruoyi.cai.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.cai.domain.Rank;
import com.ruoyi.cai.dto.admin.vo.RankAdminVo;
import com.ruoyi.cai.rank.RankNode;
import com.ruoyi.common.core.domain.PageQuery;
import java.time.LocalDate;
import java.util.List;
@@ -30,4 +33,6 @@ public interface RankService extends IService<Rank> {
List<RankNode> getInviteRankLastWeek(int limit);
List<RankNode> getInviteRankLastDay(int limit);
Page<RankAdminVo> pageAdmin(PageQuery pageQuery, RankAdminVo bo);
}

View File

@@ -8,6 +8,7 @@ import com.ruoyi.cai.enums.ConsumeLogStatus;
import com.ruoyi.cai.enums.ConsumeLogType;
import com.ruoyi.cai.enums.account.AccountChangeCodeEnum;
import com.ruoyi.cai.mapper.ConsumeLogMapper;
import com.ruoyi.cai.rank.RankManager;
import com.ruoyi.cai.service.*;
import com.ruoyi.cai.util.NumCaUtil;
import com.ruoyi.common.core.domain.model.LoginUser;
@@ -93,23 +94,36 @@ public class ConsumeLogServiceImpl extends ServiceImpl<ConsumeLogMapper, Consume
throw new ServiceException("分销失败!请联系管理员排查问题!");
}
try {
boolean oneInviteSend = false;
boolean oneUnionSend = false;
// 计算一级
if(consumer.getOneUserId() != null && BooleanUtils.isTrue(consumer.getOneJoin())
&& consumer.getOneAmount() > 0){
AccountChangeCodeEnum changeCodeEnum = ConsumeLogType.getOneInviteChange(code);
accountService.distribution(consumer,consumer.getOneUserId(),consumer.getOneAmount(),changeCodeEnum);
oneInviteSend = true;
}
// 计算工会
if(consumer.getUnionUserId() != null && BooleanUtils.isTrue(consumer.getUnionJoin())
&& consumer.getUnionAmount() > 0){
AccountChangeCodeEnum changeCodeEnum = ConsumeLogType.getUnionChange(code);
accountService.distribution(consumer,consumer.getUnionUserId(),consumer.getUnionAmount(),changeCodeEnum);
oneUnionSend = true;
}
if(oneInviteSend){
rankManager.sendInviteRankMq(consumer.getOneUserId(),consumer.getOneAmount(),consumer.getTraceId());
}
if(oneUnionSend){
rankManager.sendInviteRankMq(consumer.getUnionUserId(),consumer.getUnionAmount(),consumer.getTraceId());
}
}catch (Exception e){
log.error("分销发生未知错误,请联系开发检查!",e);
}
}
@Autowired
private RankManager rankManager;
@Override
public ConsumeLog calculateInitFenxiao(ConsumeLog consumeLog){
if(ConsumeLogType.RECHARGE.getCode().equals(consumeLog.getType())){

View File

@@ -3,9 +3,11 @@ package com.ruoyi.cai.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.cai.domain.Rank;
import com.ruoyi.cai.domain.User;
import com.ruoyi.cai.dto.admin.vo.RankAdminVo;
import com.ruoyi.cai.enums.SystemConfigEnum;
import com.ruoyi.cai.enums.account.AccountChangeCodeEnum;
import com.ruoyi.cai.manager.IdManager;
@@ -18,6 +20,7 @@ import com.ruoyi.cai.service.AccountChangeLogService;
import com.ruoyi.cai.service.RankService;
import com.ruoyi.cai.service.UserService;
import com.ruoyi.cai.util.CaiDateUtil;
import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.common.exception.ServiceException;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
@@ -331,4 +334,9 @@ public class RankServiceImpl extends ServiceImpl<RankMapper,Rank> implements Ran
return rankNode;
}).collect(Collectors.toList());
}
@Override
public Page<RankAdminVo> pageAdmin(PageQuery pageQuery, RankAdminVo bo) {
return baseMapper.pageAdmin(pageQuery.build(),bo);
}
}

View File

@@ -88,9 +88,9 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
if(query.getType() == 1){
mapperQuery.setUsercodeAndNickname(query.getText());
}else if(query.getType() == 2){
mapperQuery.setUsercode(query.getText());
}else if(query.getType() == 3){
mapperQuery.setNickname(query.getText());
}else if(query.getType() == 3){
mapperQuery.setUsercode(query.getText());
}
return baseMapper.pageApp(page.build(),mapperQuery);
}