76 lines
2.6 KiB
TypeScript
76 lines
2.6 KiB
TypeScript
import { Application, BackendSession } from 'pinus';
|
|
import { resResult } from '../../../pubUtils/util';
|
|
import { STATUS, } from '../../../consts';
|
|
import { getPlayerGrowthData } from '../../../services/growthService';
|
|
|
|
|
|
export default function (app: Application) {
|
|
return new SevenDaysHandler(app);
|
|
}
|
|
|
|
export class SevenDaysHandler {
|
|
constructor(private app: Application) {
|
|
}
|
|
|
|
/**
|
|
* @description 获取七天乐活动数据
|
|
* @param {{ activityId: number}} msg
|
|
* @param {BackendSession} session
|
|
* @memberof SevenDaysHandler
|
|
*/
|
|
async getSevenDaysGrowthActivity(msg: { activityId: number }, session: BackendSession) {
|
|
const { activityId } = msg;
|
|
const roleId = session.get('roleId');
|
|
const serverId = session.get('serverId');
|
|
// const funcs: number[] = session.get('funcs');
|
|
// const sid = session.get('sid');
|
|
|
|
let playerData = getPlayerGrowthData(activityId, serverId, roleId)
|
|
|
|
if (!playerData) return resResult(STATUS.ACTIVITY_MISSING);
|
|
|
|
return resResult(STATUS.SUCCESS, playerData);
|
|
}
|
|
|
|
/**
|
|
* @description 获取成长任务每天完成的单个奖励
|
|
* @param {{ activityId: number, dayIndex: number, cellIndex: number, type: number}} msg
|
|
* @param {BackendSession} session
|
|
* @memberof SevenDaysHandler
|
|
*/
|
|
async getGrowthCellReward(msg: { activityId: number, dayIndex: number, cellIndex: number, type: number }, session: BackendSession) {
|
|
const { activityId } = msg;
|
|
const roleId = session.get('roleId');
|
|
const serverId = session.get('serverId');
|
|
// const funcs: number[] = session.get('funcs');
|
|
// const sid = session.get('sid');
|
|
|
|
let playerData = getPlayerGrowthData(activityId, serverId, roleId)
|
|
|
|
if (!playerData) return resResult(STATUS.ACTIVITY_MISSING);
|
|
|
|
return resResult(STATUS.SUCCESS, playerData);
|
|
}
|
|
|
|
/**
|
|
* @description 成长任务每天奖章兑换奖励
|
|
* @param {{ activityId: number, dayIndex: number}} msg
|
|
* @param {BackendSession} session
|
|
* @memberof SevenDaysHandler
|
|
*/
|
|
async getGrowthDayReward(msg: { activityId: number, dayIndex: number }, session: BackendSession) {
|
|
const { activityId } = msg;
|
|
const roleId = session.get('roleId');
|
|
const serverId = session.get('serverId');
|
|
// const funcs: number[] = session.get('funcs');
|
|
// const sid = session.get('sid');
|
|
|
|
let playerData = getPlayerGrowthData(activityId, serverId, roleId)
|
|
|
|
if (!playerData) return resResult(STATUS.ACTIVITY_MISSING);
|
|
|
|
return resResult(STATUS.SUCCESS, playerData);
|
|
}
|
|
|
|
}
|