奖励的500金币计入排行榜
This commit is contained in:
parent
2a981246ed
commit
201364f809
@ -22,14 +22,22 @@ import com.red.circle.other.app.service.task.TaskService;
|
||||
import com.red.circle.other.app.util.DateTimeAsiaRiyadhUtils;
|
||||
import com.red.circle.other.domain.admintask.AdminTaskType;
|
||||
import com.red.circle.other.domain.gateway.user.ability.InviteUserGateway;
|
||||
import com.red.circle.other.domain.ranking.RankingActivityType;
|
||||
import com.red.circle.other.domain.ranking.RankingCycleType;
|
||||
import com.red.circle.other.domain.ranking.RankingDimension;
|
||||
import com.red.circle.other.infra.database.mongo.entity.activity.RankingActivityRecord;
|
||||
import com.red.circle.other.infra.database.rds.dao.task.UserTaskProgressDAO;
|
||||
import com.red.circle.other.infra.database.rds.dao.user.user.UserInviteUserDAO;
|
||||
import com.red.circle.other.infra.database.rds.entity.task.UserTaskProgress;
|
||||
import com.red.circle.other.infra.database.rds.entity.user.user.UserInviteUser;
|
||||
import com.red.circle.other.infra.database.rds.service.user.user.InviteUserRechargeCommissionService;
|
||||
import com.red.circle.other.infra.database.rds.service.user.user.InviteUserSummaryService;
|
||||
import com.red.circle.other.infra.database.rds.service.user.user.RelationshipFriendService;
|
||||
import com.red.circle.other.infra.gateway.RankingActivityGateway;
|
||||
import com.red.circle.other.inner.endpoint.activity.PropsActivityClient;
|
||||
import com.red.circle.other.inner.model.cmd.activity.SendActivityRewardCmd;
|
||||
import com.red.circle.tool.core.date.TimestampUtils;
|
||||
import com.red.circle.tool.core.date.ZonedDateTimeAsiaRiyadhUtils;
|
||||
import com.red.circle.tool.core.sequence.IdWorkerUtils;
|
||||
import com.red.circle.wallet.inner.endpoint.wallet.WalletGoldClient;
|
||||
import com.red.circle.wallet.inner.model.cmd.GoldReceiptCmd;
|
||||
@ -39,6 +47,7 @@ import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.sql.Timestamp;
|
||||
import java.time.Duration;
|
||||
import java.time.ZoneId;
|
||||
import java.time.ZonedDateTime;
|
||||
@ -60,6 +69,9 @@ public class TaskListener implements MessageListener {
|
||||
private final PropsActivityClient propsActivityCnfClient;
|
||||
private final UserInviteUserDAO userInviteUserDAO;
|
||||
private final WalletGoldClient walletGoldClient;
|
||||
private final InviteUserRechargeCommissionService inviteUserRechargeCommissionService;
|
||||
private final InviteUserSummaryService inviteUserSummaryService;
|
||||
private final RankingActivityGateway rankingActivityGateway;
|
||||
|
||||
@Override
|
||||
public Action consume(ConsumerMessage message) {
|
||||
@ -382,6 +394,7 @@ public class TaskListener implements MessageListener {
|
||||
UserInviteUser userInviteUser = allInvites.get(0);
|
||||
|
||||
// 金币奖励发给邀请人A 500
|
||||
long gold = 500;
|
||||
walletGoldClient.changeBalance(GoldReceiptCmd.builder()
|
||||
.appIncome()
|
||||
.userId(userInviteUser.getUserId())
|
||||
@ -389,7 +402,7 @@ public class TaskListener implements MessageListener {
|
||||
.sysOrigin(userInviteUser.getSysOrigin())
|
||||
.origin(GoldOrigin.INVITE_USER_REWARDS)
|
||||
.originDescribe(GoldOrigin.INVITE_USER_REWARDS.getDesc())
|
||||
.amount(BigDecimal.valueOf(500))
|
||||
.amount(BigDecimal.valueOf(gold))
|
||||
.build());
|
||||
|
||||
// 金币奖励发给邀请人B 450
|
||||
@ -403,8 +416,28 @@ public class TaskListener implements MessageListener {
|
||||
.amount(BigDecimal.valueOf(450))
|
||||
.build());
|
||||
|
||||
inviteUserSummaryService.incrCommission(userInviteUser.getUserId(), BigDecimal.valueOf(gold));
|
||||
inviteUserRechargeCommissionService.add(SysOriginPlatformEnum.LIKEI.name(), userInviteUser.getUserId(),
|
||||
userInviteUser.getInviteUserId(), BigDecimal.valueOf(gold));
|
||||
|
||||
recordRanking(userInviteUser.getUserId(), gold);
|
||||
|
||||
}
|
||||
|
||||
private void recordRanking(Long userId, Long quantity) {
|
||||
RankingActivityRecord record = new RankingActivityRecord();
|
||||
record.setSysOrigin(SysOriginPlatformEnum.LIKEI.name());
|
||||
record.setUserId(userId);
|
||||
record.setUserSex(1);
|
||||
record.setActivityType(RankingActivityType.INVITE);
|
||||
record.setCycleType(RankingCycleType.WEEKLY);
|
||||
record.setCycleKey(ZonedDateTimeAsiaRiyadhUtils.nowWeekMondayToInt().toString());
|
||||
record.setDimension(RankingDimension.CONSUME_AMOUNT);
|
||||
record.setExpiredTime(new Timestamp(System.currentTimeMillis() + 30L * 24 * 60 * 60 * 1000));
|
||||
rankingActivityGateway.accumulateRankingData(record, quantity);
|
||||
}
|
||||
|
||||
|
||||
private void handleTask7(TaskApprovalEvent eventBody) {
|
||||
log.warn("处理任务-10 加入3个房间: {}", eventBody);
|
||||
// // 进入一次 +1
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user