活动:修复每日特惠礼包
This commit is contained in:
@@ -42,9 +42,8 @@ export class ActivityHandler {
|
||||
let activityData = await getActivityById(activityId);
|
||||
if (activityData) {
|
||||
let playerActivityData = await getActivity(serverId, roleId, activityId, activityData.type);
|
||||
console.log('******', !!playerActivityData, activityId, activityData.type)
|
||||
if(playerActivityData && playerActivityData.beginTime <= Date.now() && playerActivityData.endTime >= Date.now()) {
|
||||
if (playerActivityData) playerGroupActivityArray.push(playerActivityData);
|
||||
playerGroupActivityArray.push(playerActivityData);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -61,12 +61,12 @@ export class DailyRMBGiftsHandler {
|
||||
if (item.isReceive) {
|
||||
return resResult(STATUS.ACTIVITY_REWARDED);
|
||||
}
|
||||
if (item.price > 0) {
|
||||
if (!playerData.isBuy && item.price > 0) {
|
||||
return resResult(STATUS.ACTIVITY_NEED_PAY);
|
||||
}
|
||||
let rewardParamArr: Array<RewardParam> = stringToRewardParam(item.reward);
|
||||
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr, ITEM_CHANGE_REASON.DAILY_RMB_GIFT)
|
||||
await ActivityDailyRMBGiftsModel.receiveRecord(serverId, activityId, roleId, moment(playerData.beginTime).toDate(), [item.id]);
|
||||
await ActivityDailyRMBGiftsModel.receiveRecord(serverId, activityId, roleId, moment(playerData.beginTime).toDate(), playerData.todayIndex, [item.id]);
|
||||
item.isReceive = true;
|
||||
return resResult(STATUS.SUCCESS, Object.assign(result, {
|
||||
param: { activityId, id },
|
||||
@@ -89,7 +89,7 @@ export class DailyRMBGiftsHandler {
|
||||
item.isReceive = true;
|
||||
}
|
||||
let result = await addReward(roleId, roleName, sid, serverId, rewardArray, ITEM_CHANGE_REASON.DAILY_RMB_GIFT)
|
||||
await ActivityDailyRMBGiftsModel.receiveRecord(serverId, activityId, roleId, moment(playerData.beginTime).toDate(), ids);
|
||||
await ActivityDailyRMBGiftsModel.receiveRecord(serverId, activityId, roleId, moment(playerData.beginTime).toDate(), playerData.todayIndex, ids);
|
||||
return resResult(STATUS.SUCCESS, Object.assign(result, {
|
||||
param: { activityId },
|
||||
items: items
|
||||
|
||||
@@ -66,14 +66,14 @@ export async function getActivity(serverId: number, roleId: string, activityId:
|
||||
{
|
||||
let data = await getPlayerThirtyDaysData(activityId, serverId, roleId);
|
||||
let todayIndex = await playerThirtyDaysActivityDays(roleId);
|
||||
activityData = { playerData: data, todayIndex }
|
||||
activityData = { playerData: data, todayIndex, beginTime: data.beginTime, endTime: data.endTime }
|
||||
break;
|
||||
}
|
||||
case ACTIVITY_TYPE.SELF_SERVICE_SHOP://自选商店 糜家商队 13
|
||||
{
|
||||
let data = await getPlayerActivityData(activityId, serverId, roleId);
|
||||
let playerGoods = await ActivitySelfServiceGoodsModel.findData(activityId, roleId, data.roundIndex, true);
|
||||
activityData = { playerData: data, playerGoods: playerGoods ? playerGoods : [] }
|
||||
activityData = { playerData: data, playerGoods: playerGoods ? playerGoods : [], beginTime: data.beginTime, endTime: data.endTime }
|
||||
break;
|
||||
}
|
||||
case ACTIVITY_TYPE.FIRST_GIFT://首冲礼包活动 14
|
||||
|
||||
@@ -50,8 +50,8 @@ export async function getPlayerDailyRMBGiftsData(activityId: number, serverId: n
|
||||
// buyTime = playerOrders[0].createdAt;//购买时候的日期
|
||||
// endTime = moment(buyTime).add(7, 'd').endOf('d').toDate()
|
||||
// }
|
||||
let playerRecord: ActivityDailyRMBGiftsModelType = await ActivityDailyRMBGiftsModel.findRecord(serverId, activityId, roleId, moment(playerData.beginTime).toDate());
|
||||
let unReceiveRecord: ActivityDailyRMBGiftsModelType[] = await ActivityDailyRMBGiftsModel.findBuyRecord(serverId, activityId, roleId, moment(playerData.beginTime).toDate());
|
||||
let playerRecord: ActivityDailyRMBGiftsModelType = await ActivityDailyRMBGiftsModel.findRecord(serverId, activityId, roleId, moment(playerData.beginTime).toDate(), playerData.todayIndex);
|
||||
let unReceiveRecord: ActivityDailyRMBGiftsModelType[] = await ActivityDailyRMBGiftsModel.findBuyRecord(serverId, activityId, roleId, moment(playerData.beginTime).toDate(), playerData.todayIndex);
|
||||
|
||||
playerData.setPlayerRecords(playerRecord, unReceiveRecord.length);
|
||||
return playerData;
|
||||
@@ -78,14 +78,14 @@ export async function makeDailyRMBGiftsReward(roleId: string, roleName: string,
|
||||
let playerData = new DailyRMBGiftsData(activityData, createTime);
|
||||
let bigGiftProductID = playerData.productID;
|
||||
if (bigGiftProductID == productID) {//一次性购买7天礼包
|
||||
let playerRecord: ActivityDailyRMBGiftsModelType = await ActivityDailyRMBGiftsModel.findRecord(serverId, activityId, roleId, moment(playerData.beginTime).toDate());
|
||||
let playerRecord: ActivityDailyRMBGiftsModelType = await ActivityDailyRMBGiftsModel.findRecord(serverId, activityId, roleId, moment(playerData.beginTime).toDate(), playerData.todayIndex);
|
||||
if (playerRecord && playerRecord.records && playerRecord.records.length > 0) {//今天已经购买过其他奖励
|
||||
playerData.beginTime += 24 * 60 * 60 * 1000;
|
||||
playerData.todayIndex ++;
|
||||
}
|
||||
|
||||
for (let i = 0; i < playerData.day; i++) {
|
||||
let beginTime = playerData.beginTime + 24 * 60 * 60 * 1000 * i;
|
||||
await ActivityDailyRMBGiftsModel.buyRecord(serverId, activityId, roleId, moment(beginTime).toDate(), true);
|
||||
let todayIndex = playerData.todayIndex + i;
|
||||
await ActivityDailyRMBGiftsModel.buyRecord(serverId, activityId, roleId, moment(playerData.beginTime).toDate(), todayIndex, true);
|
||||
}
|
||||
let endTime = moment(playerData.endTime).add(playerData.day, 'd').toDate()
|
||||
return {
|
||||
@@ -101,7 +101,7 @@ export async function makeDailyRMBGiftsReward(roleId: string, roleName: string,
|
||||
}
|
||||
let rewardParamArr: Array<RewardParam> = stringToRewardParam(item.reward);
|
||||
let result = await addReward(roleId, roleName, sid, serverId, rewardParamArr, ITEM_CHANGE_REASON.DAILY_RMB_GIFT)
|
||||
await ActivityDailyRMBGiftsModel.receiveRecord(serverId, activityId, roleId, moment(playerData.beginTime).toDate(), [item.id]);
|
||||
await ActivityDailyRMBGiftsModel.receiveRecord(serverId, activityId, roleId, moment(playerData.beginTime).toDate(), playerData.todayIndex, [item.id]);
|
||||
item.isReceive = true;
|
||||
return {
|
||||
code: 0,
|
||||
|
||||
Reference in New Issue
Block a user