✨ feat(gift): 使用礼包后返回礼包目前保底情况
This commit is contained in:
@@ -72,11 +72,14 @@ export async function useGiftPackage(roleId: string, roleName: string, sid: stri
|
|||||||
let pool = dicGiftPackagePlan.filter(cur => cur.contentType == 1? !isHeroHidden(cur.id): !isGoodsHidden(cur.id));
|
let pool = dicGiftPackagePlan.filter(cur => cur.contentType == 1? !isHeroHidden(cur.id): !isGoodsHidden(cur.id));
|
||||||
if(pool.length <= 0) return resResult(STATUS.DIC_DATA_NOT_FOUND);
|
if(pool.length <= 0) return resResult(STATUS.DIC_DATA_NOT_FOUND);
|
||||||
let allReward: { type: number, id: number, count: number }[] = [];
|
let allReward: { type: number, id: number, count: number }[] = [];
|
||||||
|
let giftPackage = { giftPackageId: giftID };
|
||||||
for (let i = 0; i < giftCount; i++) {
|
for (let i = 0; i < giftCount; i++) {
|
||||||
let rewards = await randomSelectedData(pool, roleId, giftID, count);
|
let { rewards, floors } = await randomSelectedData(pool, roleId, giftID, count);
|
||||||
allReward.push(...rewards);
|
allReward.push(...rewards);
|
||||||
|
giftPackage['floors'] = floors;
|
||||||
}
|
}
|
||||||
result = await addReward(roleId, roleName, sid, serverId, allReward, ITEM_CHANGE_REASON.USE_GIFT_PACKAGE);
|
result = await addReward(roleId, roleName, sid, serverId, allReward, ITEM_CHANGE_REASON.USE_GIFT_PACKAGE);
|
||||||
|
Object.assign(result, { giftPackage });
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case GIFT_PACKAGE_TYPE.GUILD_FUND: // 军团资金
|
case GIFT_PACKAGE_TYPE.GUILD_FUND: // 军团资金
|
||||||
@@ -257,12 +260,16 @@ async function randomSelectedData(pool: DicGiftPackagePlan[], roleId: string, gi
|
|||||||
}
|
}
|
||||||
allSum++;
|
allSum++;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
let result;
|
||||||
|
result = Object.assign({}, { rewards })
|
||||||
if(floorPlans && Object.keys(floorPlans).length > 0) {
|
if(floorPlans && Object.keys(floorPlans).length > 0) {
|
||||||
await GiftPackageFloorModel.updateByGiftPackageId(roleId, giftPackageId, {
|
const { floors: newFloors } = await GiftPackageFloorModel.updateByGiftPackageId(roleId, giftPackageId, {
|
||||||
floors, getSum, allSum
|
floors, getSum, allSum
|
||||||
});
|
});
|
||||||
|
Object.assign(result, { giftPackageId, floors: newFloors });
|
||||||
}
|
}
|
||||||
return rewards
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
//数据格式转换'类型&id&数量|类型&id&数量|' ->> Array<RewardParam> 活动奖励
|
//数据格式转换'类型&id&数量|类型&id&数量|' ->> Array<RewardParam> 活动奖励
|
||||||
|
|||||||
Reference in New Issue
Block a user