🐞 fix(充值): 限购礼包限制充值次数
This commit is contained in:
@@ -140,3 +140,18 @@ export async function makeLimitPackageReward(roleId: string, roleName: string, s
|
|||||||
data: Object.assign(result, { item: item, activityId: activityId })
|
data: Object.assign(result, { item: item, activityId: activityId })
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export async function checkLimitPackageCanBuy(roleId: string, serverId: number, activityData: ActivityModelType, productID: string) {
|
||||||
|
if(!activityData) return false
|
||||||
|
let createTime = await getRoleCreateTime(roleId);
|
||||||
|
let serverTime = await getServerCreateTime(serverId);
|
||||||
|
let playerData = new LimitShopData(activityData, createTime, serverTime);
|
||||||
|
|
||||||
|
let playerRecord: ActivityShopModelType = await ActivityShopModel.findData(activityData.activityId, roleId, playerData.roundIndex);
|
||||||
|
playerData.setPlayerRecords(playerRecord);
|
||||||
|
|
||||||
|
let item = playerData.findItemByProductID(productID);
|
||||||
|
if (!item) return false
|
||||||
|
if (item.countMax > 0 && item.buyCount >= item.countMax) return false;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
@@ -11,7 +11,7 @@ import { ActivityModel, ActivityModelType } from '../db/Activity';
|
|||||||
import { ActivityFirstGiftModel } from '../db/ActivityFirstGift';
|
import { ActivityFirstGiftModel } from '../db/ActivityFirstGift';
|
||||||
import { ServerlistModel } from '../db/Serverlist';
|
import { ServerlistModel } from '../db/Serverlist';
|
||||||
import { makeGrowthFund } from './activity/growthFundService';
|
import { makeGrowthFund } from './activity/growthFundService';
|
||||||
import { makeLimitPackageReward } from './activity/limitPackageService';
|
import { checkLimitPackageCanBuy, makeLimitPackageReward } from './activity/limitPackageService';
|
||||||
import { makeShop } from './activity/treasureHuntService';
|
import { makeShop } from './activity/treasureHuntService';
|
||||||
import { makeSelfServerShop } from './activity/selfServiceShopActivityService';
|
import { makeSelfServerShop } from './activity/selfServiceShopActivityService';
|
||||||
import { makeRefreshShopReward } from './activity/refreshShopService';
|
import { makeRefreshShopReward } from './activity/refreshShopService';
|
||||||
@@ -52,6 +52,12 @@ export async function checkOrderCanBuy(roleId: string, serverId: number, activit
|
|||||||
{
|
{
|
||||||
return await checkShopCanBuyInOrder(roleId, serverId, activityData, productID)
|
return await checkShopCanBuyInOrder(roleId, serverId, activityData, productID)
|
||||||
}
|
}
|
||||||
|
case ACTIVITY_TYPE.NEW_PLAYER_LIMIT_PACKAGE:
|
||||||
|
case ACTIVITY_TYPE.LIMIT_PACKAGE_SHOP_DAILY:
|
||||||
|
case ACTIVITY_TYPE.LIMIT_PACKAGE_SHOP_WEEKLY:
|
||||||
|
{
|
||||||
|
return await checkLimitPackageCanBuy(roleId, serverId, activityData, productID)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user