活动:活动按照合集调整数据结构

This commit is contained in:
qiaoxin
2021-06-15 20:53:07 +08:00
parent 79d1c438d4
commit d794deffad
7 changed files with 154 additions and 13 deletions

View File

@@ -1,6 +1,6 @@
import { Application, BackendSession } from 'pinus';
import { resResult } from '../../../pubUtils/util';
import { ACTIVITY_TYPE, FIRST_GIFT_STATE, SERVER_OPEN_TIME, STATUS, TASK_TYPE } from '../../../consts';
import { ACTIVITY_TYPE, ACTIVITY_GROUP_TYPE, SERVER_OPEN_TIME, STATUS, TASK_TYPE } from '../../../consts';
import { firstGiftActivity, getPlayerFirstGiftData } from '../../../services/firstGiftService';
import { newPlayerSignInActivity, signInActivity, signInVIPActivity } from '../../../services/signInService';
import { growthFundActivity } from '../../../services/growthFundService';
@@ -24,6 +24,10 @@ import { getSelfServiceShopActivityData } from '../../../services/selfServiceSho
import { ActivitySelfServiceGoodsModel } from '../../../db/ActivitySelfServiceGoods';
import { dailyMealActivity } from '../../../services/dailyMealService';
import { dailyCoinActivity } from '../../../services/dailyCoinService';
import { ActivityGroupModel } from '../../../db/ActivityGroup';
import { ServerlistModel } from '../../../db/Serverlist';
import { getActivity } from '../../../services/activityService';
import { ActivityModel } from '../../../db/Activity';
// import { ActivityDailyChallengesModel } from '../../../db/ActivityDailyChallenges';
// import { isComplete } from '../../../pubUtils/taskUtil';
@@ -466,7 +470,27 @@ export class ActivityHandler {
}
}
return resResult(STATUS.SUCCESS, { playerActivityArray });
let { activityGroupId } = await ServerlistModel.findByServerId(serverId);
let groups = await ActivityGroupModel.findGroupsData(activityGroupId);
let playerGroupArray = [];
for (let groupData of groups) {
if (groupData.type !== ACTIVITY_GROUP_TYPE.UNKNOW) {
let playerActivityArray = [];
for (let activityId of groupData.activities) {
let activityData = await ActivityModel.findActivity(activityId);
if (activityData) {
let playerActivityData = await getActivity(serverId, roleId, activityId, activityData.type)
if (playerActivityData) playerActivityArray.push(playerActivityData);
}
}
playerGroupArray.push({
type: groupData.type,
activities: playerActivityArray,
});
}
}
return resResult(STATUS.SUCCESS, { playerActivityArray, playerGroupArray });
}
//测试活动任务数据

View File

@@ -64,6 +64,7 @@ export class DailyCoinHandler {
let allConsume: Array<ItemInter> = []
let allReward: Array<RewardParam> = [];
let role = await RoleModel.findByRoleId(roleId)
let rateArray = [];//暴击记录
for (let i = 1; i <= count; i++) {
let index = curIndex + i;
console.log('第几次抽奖', index)
@@ -75,7 +76,7 @@ export class DailyCoinHandler {
allConsume = allConsume.concat(consume)
}
let rate = playerData.getRate()//翻几倍
rateArray.push(rate);
let rewardItem: CoinRewardFormulaItem = playerData.findCoinRewardFormulaItem(index);
let lv = role.lv;//玩家等级
let coinRewardCount = eval(rewardItem.rewardFormula);
@@ -86,10 +87,12 @@ export class DailyCoinHandler {
reward.count = reward.count * rate;
}
allReward = allReward.concat(baseRewardParamArr);
if (playerData.isExtra(index)) {//额外奖励
let extraIndex = playerData.isExtra(index);
if (extraIndex != -1) {//额外奖励
let extraRewardParamArr: Array<RewardParam> = stringToRewardParam(playerData.extraReward);
console.log('额外奖励', JSON.stringify(extraRewardParamArr))
allReward = allReward.concat(extraRewardParamArr);
let extraReward = extraRewardParamArr[extraIndex];
console.log('额外奖励', JSON.stringify(extraReward))
allReward.push(extraReward);
}
}
@@ -125,7 +128,7 @@ export class DailyCoinHandler {
let exchangeCount = playerData.exchangeCount + count;
return resResult(STATUS.SUCCESS, Object.assign(result, {
param: { activityId, count },
item: { exchangeCount },
item: { exchangeCount, recordMsg: `${count}&${consumeGold}&${addCoin}`, rateArray },
}));
}