boom-支持金豆奖励类型
This commit is contained in:
@@ -17,6 +17,7 @@ public enum RewardTypeEnum implements ByteTypeEnum{
|
||||
VIP((byte)10, "VIP", "等級"),
|
||||
MEDAL((byte)11, "勳章", "天"),
|
||||
PERSONAL((byte)12, "个人页背景", "天"),
|
||||
GOLDBEAN((byte)13, "任务中心金豆", "个"),
|
||||
;
|
||||
|
||||
/** 奖品ID **/
|
||||
|
@@ -3,6 +3,7 @@ package com.accompany.business.constant.dailytask;
|
||||
public enum GoldBeanBillType {
|
||||
TASK_GAIN(1, "任务获取", (byte)2),
|
||||
MALL_PAY(2, "商城购买", (byte)1),
|
||||
ROOM_BOOM_RANDOM(3, "Boom奖励", (byte)1),
|
||||
;
|
||||
|
||||
private final int type;
|
||||
|
@@ -143,6 +143,7 @@ public class RoomBoomSignServiceImpl extends ServiceImpl<RoomBoomSignMapper, Roo
|
||||
// 房主派奖
|
||||
goldNum += this.draw(roomUid, globalAwardMap, level, RoomBoomConstant.RoomBoomRoleType.ROOM_OWNER, roomUid, cycleDate, uidSet, prizes, id);
|
||||
|
||||
// 随机用户
|
||||
Collection<Long> inRoomUids = roomService.getRoomUserZset(roomUid).readAll();
|
||||
log.info("handleAwardDelayJob,randomUser,roomUid:{},uids:{}", roomUid, JSON.toJSONString(inRoomUids));
|
||||
if (CollectionUtils.isNotEmpty(inRoomUids)) {
|
||||
@@ -154,7 +155,7 @@ public class RoomBoomSignServiceImpl extends ServiceImpl<RoomBoomSignMapper, Roo
|
||||
int i = 0;
|
||||
while (iterator.hasNext()) {
|
||||
Long randomUid = iterator.next();
|
||||
if (uidSet.contains(randomUid) || i >= 5) {
|
||||
if (uidSet.contains(randomUid) || i >= 15) {
|
||||
continue;
|
||||
}
|
||||
goldNum += this.drawRandom(randomUid, randomUserGlobalAwardMap, level, RoomBoomConstant.RoomBoomRoleType.ROOM_NORMAL_USER, roomUid, cycleDate, uidSet, prizes, id);
|
||||
|
@@ -3,6 +3,7 @@ package com.accompany.business.util;
|
||||
import com.accompany.business.common.constant.RewardTypeEnum;
|
||||
import com.accompany.business.common.dto.RewardDto;
|
||||
import com.accompany.business.common.vo.RewardVo;
|
||||
import com.accompany.business.constant.dailytask.GoldBeanBillType;
|
||||
import com.accompany.business.model.CarGoods;
|
||||
import com.accompany.business.model.Gift;
|
||||
import com.accompany.business.model.Headwear;
|
||||
@@ -24,6 +25,7 @@ import com.accompany.business.service.medal.UserMedalService;
|
||||
import com.accompany.business.service.nameplate.UserNameplateService;
|
||||
import com.accompany.business.service.purse.UserPurseService;
|
||||
import com.accompany.business.service.user.UserBackpackService;
|
||||
import com.accompany.business.service.user.UserGoldBeanService;
|
||||
import com.accompany.business.service.vip.ChatBubbleService;
|
||||
import com.accompany.business.service.vip.VipInfoService;
|
||||
import com.accompany.business.service.vip.VipLevelBizService;
|
||||
@@ -41,6 +43,7 @@ import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Collections;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
@@ -88,6 +91,8 @@ public class RewardUtil {
|
||||
private PersonalBackgroundService personalBackgroundService;
|
||||
@Autowired
|
||||
private UserPersonalBackgroundService userPersonalBackgroundService;
|
||||
@Autowired
|
||||
private UserGoldBeanService userGoldBeanService;
|
||||
|
||||
@Resource(name = "bizExecutor")
|
||||
private ThreadPoolExecutor bizExecutor;
|
||||
@@ -337,6 +342,21 @@ public class RewardUtil {
|
||||
vo.setPic(personalBackground.getPic());
|
||||
break;
|
||||
|
||||
case GOLDBEAN:
|
||||
if (num <= 0){
|
||||
throw new ServiceException(BusiStatus.NOT_FOUNT_REWARD_ITEM);
|
||||
}
|
||||
bizExecutor.execute(() -> {
|
||||
try {
|
||||
userGoldBeanService.addGoldBean(uid, BigDecimal.valueOf(num), GoldBeanBillType.ROOM_BOOM_RANDOM, null, 1, null, null, null);
|
||||
} catch (Exception e) {
|
||||
log.error("[RewardUtil] {} {} {} {} {} 发奖异常", uid, typeEnum, refId, num, remark, e);
|
||||
}
|
||||
});
|
||||
|
||||
vo.setName(typeEnum.getDesc());
|
||||
vo.setPic(null);
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
Reference in New Issue
Block a user