房间钻石流水统计
This commit is contained in:
@@ -6,10 +6,7 @@ import com.accompany.business.model.Gift;
|
||||
import com.accompany.business.service.SendSysMsgService;
|
||||
import com.accompany.business.service.gift.GiftService;
|
||||
import com.accompany.business.service.rank.RankService;
|
||||
import com.accompany.business.service.room.RoomLevelService;
|
||||
import com.accompany.business.service.room.RoomRankService;
|
||||
import com.accompany.business.service.room.RoomService;
|
||||
import com.accompany.business.service.room.RoomServiceFactory;
|
||||
import com.accompany.business.service.room.*;
|
||||
import com.accompany.common.constant.Constant;
|
||||
import com.accompany.common.utils.DateTimeUtil;
|
||||
import com.accompany.core.enumeration.PartitionEnum;
|
||||
@@ -22,6 +19,7 @@ import org.springframework.context.ApplicationListener;
|
||||
import org.springframework.scheduling.annotation.Async;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
@@ -52,6 +50,9 @@ public class RankListener implements ApplicationListener<GiftMessageEvent> {
|
||||
@Autowired
|
||||
private RoomLevelService roomLevelService;
|
||||
|
||||
@Autowired
|
||||
private RoomDayDiamondNumService roomDayDiamondNumService;
|
||||
|
||||
@Async
|
||||
@Override
|
||||
@SneakyThrows
|
||||
@@ -69,23 +70,23 @@ public class RankListener implements ApplicationListener<GiftMessageEvent> {
|
||||
if (goldNum <= 0L){
|
||||
return;
|
||||
}
|
||||
rankService.updateAllRank(sendUid, recvUid, roomUid, goldNum.doubleValue(), messTime, partitionId);
|
||||
try {
|
||||
rankService.updateAllRank(sendUid, recvUid, roomUid, goldNum.doubleValue(), messTime, partitionId);
|
||||
|
||||
Integer giftId = giftMessage.getGiftId();
|
||||
Gift gift = giftService.getGiftByIdFromDb(giftId);
|
||||
if (null == gift) {
|
||||
return;
|
||||
}
|
||||
Integer giftId = giftMessage.getGiftId();
|
||||
Gift gift = giftService.getGiftByIdFromDb(giftId);
|
||||
if (null == gift || roomUid == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
//免费礼物特殊处理
|
||||
boolean isFreeGift = Constant.GiftConsumeType.ROOM_FREE_GIFT == gift.getConsumeType();
|
||||
Long giftGoldNum = isFreeGift ? Math.abs(gift.getGoldPrice() * giftNum) : goldNum;
|
||||
//发送榜单更新
|
||||
//免费礼物特殊处理
|
||||
boolean isFreeGift = Constant.GiftConsumeType.ROOM_FREE_GIFT == gift.getConsumeType();
|
||||
Long giftGoldNum = isFreeGift ? Math.abs(gift.getGoldPrice() * giftNum) : goldNum;
|
||||
|
||||
Double roomDiamond = PartitionEnum.ENGLISH2.getId() == partitionId ? giftMessage.getDiamondNum() : Double.valueOf(giftGoldNum);
|
||||
Double roomDiamond = PartitionEnum.ENGLISH2.getId() == partitionId ? giftMessage.getDiamondNum() : Double.valueOf(giftGoldNum);
|
||||
|
||||
roomRankService.updateRoomRank(roomUid, sendUid, recvUid, roomDiamond, date, isFreeGift, partitionId);
|
||||
//发送榜单更新
|
||||
if (roomUid != null) {
|
||||
roomRankService.updateRoomRank(roomUid, sendUid, recvUid, roomDiamond, date, isFreeGift, partitionId);
|
||||
Room room = roomService.getRoomByUid(roomUid);
|
||||
roomLevelService.updateRoomLevelExp(partitionId, roomUid, giftGoldNum.doubleValue(), room);
|
||||
if (room != null) {
|
||||
@@ -93,6 +94,12 @@ public class RankListener implements ApplicationListener<GiftMessageEvent> {
|
||||
jsonObject.put("serialValue", RoomServiceFactory.getServiceByType(room.getType()).roomSerialValue(roomUid, partitionId));
|
||||
sendSysMsgService.sendSingleRoomMessage(room.getRoomId(), String.valueOf(room.getUid()), Constant.DefMsgType.RANK, Constant.DefMsgType.RANK_UPDATE, jsonObject);
|
||||
}
|
||||
if (PartitionEnum.ENGLISH2.getId() == partitionId || PartitionEnum.TURKEY.getId() == partitionId) {
|
||||
BigDecimal diamondNum = BigDecimal.valueOf(roomDiamond);
|
||||
roomDayDiamondNumService.addDiamondNum(partitionId, roomUid, date, diamondNum);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
log.info("RankListener.updateAllRank-updateRoomRank:{}, e:{}", JSONObject.toJSONString(giftMessage), e.getMessage(), e);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -66,12 +66,5 @@ public class SuperLuckyGiftDiamondIncomeListener implements ApplicationListener<
|
||||
guildRankService.updateRank(guildMember.getGuildId(), guildMember.getUid(), totalDiamondNum, receiver.getPartitionId());
|
||||
String statDate = CycleTimeUtil.getCycleDay(time, partitionInfo.getZoneId());
|
||||
guildDiamondStatisticsDayService.updateDayDiamondStatistics(cycleDate, statDate, guildMember, totalDiamondNum);
|
||||
|
||||
Long roomUid = message.getRoomUid();
|
||||
|
||||
if (roomUid != null && (PartitionEnum.ENGLISH2.getId() == partitionInfo.getId() || PartitionEnum.TURKEY.getId() == partitionInfo.getId())) {
|
||||
BigDecimal diamondNum = BigDecimal.valueOf(totalDiamondNum);
|
||||
roomDayDiamondNumService.addDiamondNum(partitionInfo.getId(), roomUid, time, diamondNum);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -7,6 +7,7 @@ import com.accompany.business.service.rank.RankService;
|
||||
import com.accompany.business.service.room.*;
|
||||
import com.accompany.business.service.user.UsersService;
|
||||
import com.accompany.common.constant.Constant;
|
||||
import com.accompany.core.enumeration.PartitionEnum;
|
||||
import com.accompany.core.model.Room;
|
||||
import com.accompany.core.model.Users;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
@@ -16,6 +17,7 @@ import org.springframework.context.ApplicationListener;
|
||||
import org.springframework.scheduling.annotation.Async;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
@Slf4j
|
||||
@@ -36,6 +38,9 @@ public class SuperLuckyGiftSendListener implements ApplicationListener<SuperLuck
|
||||
private RoomLevelService roomLevelService;
|
||||
@Autowired
|
||||
private RoomBoomBizService roomBoomBizService;
|
||||
@Autowired
|
||||
private RoomDayDiamondNumService roomDayDiamondNumService;
|
||||
|
||||
|
||||
@Async
|
||||
@Override
|
||||
@@ -53,17 +58,23 @@ public class SuperLuckyGiftSendListener implements ApplicationListener<SuperLuck
|
||||
|
||||
try {
|
||||
rankService.updateAllRank(sendUid, recvUid, roomUid, totalDiamondNum, messTime.getTime(), partitionId);
|
||||
roomRankService.updateRoomRank(roomUid, sendUid, recvUid, totalDiamondNum, messTime, Boolean.FALSE, partitionId);
|
||||
if (roomUid == null) {
|
||||
return;
|
||||
}
|
||||
//发送榜单更新
|
||||
if (roomUid != null) {
|
||||
Room room = roomService.getRoomByUid(roomUid);
|
||||
roomLevelService.updateRoomLevelExp(partitionId, roomUid, totalDiamondNum, room);
|
||||
if (room != null) {
|
||||
JSONObject jsonObject = new JSONObject();
|
||||
jsonObject.put("serialValue", RoomServiceFactory.getServiceByType(room.getType()).roomSerialValue(roomUid, partitionId));
|
||||
sendSysMsgService.sendSingleRoomMessage(room.getRoomId(), String.valueOf(roomUid), Constant.DefMsgType.RANK, Constant.DefMsgType.RANK_UPDATE, jsonObject);
|
||||
}
|
||||
roomBoomBizService.handleMessage(message);
|
||||
roomRankService.updateRoomRank(roomUid, sendUid, recvUid, totalDiamondNum, messTime, Boolean.FALSE, partitionId);
|
||||
Room room = roomService.getRoomByUid(roomUid);
|
||||
roomLevelService.updateRoomLevelExp(partitionId, roomUid, totalDiamondNum, room);
|
||||
if (room != null) {
|
||||
JSONObject jsonObject = new JSONObject();
|
||||
jsonObject.put("serialValue", RoomServiceFactory.getServiceByType(room.getType()).roomSerialValue(roomUid, partitionId));
|
||||
sendSysMsgService.sendSingleRoomMessage(room.getRoomId(), String.valueOf(roomUid), Constant.DefMsgType.RANK, Constant.DefMsgType.RANK_UPDATE, jsonObject);
|
||||
}
|
||||
roomBoomBizService.handleMessage(message);
|
||||
|
||||
if (PartitionEnum.ENGLISH2.getId() == partitionId || PartitionEnum.TURKEY.getId() == partitionId) {
|
||||
BigDecimal diamondNum = BigDecimal.valueOf(totalDiamondNum);
|
||||
roomDayDiamondNumService.addDiamondNum(partitionId, roomUid, messTime, diamondNum);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
log.info("SuperLuckyGiftSendListener.updateAllRank-updateRoomRank:{}, e:{}", JSONObject.toJSONString(message), e.getMessage(), e);
|
||||
|
@@ -87,13 +87,6 @@ public class GuildGiftRecordService extends ServiceImpl<GuildGiftRecordMapper, G
|
||||
String monday = DateTimeUtil.convertDate(DateTimeUtil.getMondayDate(zoneTime), DateTimeUtil.DEFAULT_DATE_PATTERN);
|
||||
guildMemberWeekLevelRewardService.addProcess(guildMember.getId(), guildMember.getPartitionId(), monday, giftSendRecord.getTotalDiamondNum());
|
||||
|
||||
Long roomUid = giftSendRecord.getRoomUid();
|
||||
|
||||
if (roomUid != null && (PartitionEnum.ENGLISH2.getId() == partitionInfo.getId() || PartitionEnum.TURKEY.getId() == partitionInfo.getId())) {
|
||||
BigDecimal diamondNum = BigDecimal.valueOf(giftSendRecord.getTotalDiamondNum());
|
||||
roomDayDiamondNumService.addDiamondNum(partitionInfo.getId(), roomUid, giftSendRecord.getCreateTime(), diamondNum);
|
||||
}
|
||||
|
||||
applicationContext.publishEvent(new GuildMemberIncreaseFlowEvent(new GuildMemberIncreaseFlowMessage(
|
||||
giftSendRecord.getPartitionId(), guildMember.getGuildId(), guildMember.getUid(),
|
||||
BigDecimal.valueOf(giftSendRecord.getTotalGoldNum()),
|
||||
|
Reference in New Issue
Block a user