活动:转盘
This commit is contained in:
34
game-server/app/services/activity/luckyTurntableService.ts
Normal file
34
game-server/app/services/activity/luckyTurntableService.ts
Normal file
@@ -0,0 +1,34 @@
|
||||
import { ActivityTurntableModel } from "../../db/ActivityTurntableRec";
|
||||
import { RoleModel } from "../../db/Role";
|
||||
import { LuckyTurntableData } from "../../domain/activityField/luckyTurntableField";
|
||||
import { shouldRefresh } from "../../pubUtils/util";
|
||||
import { getActivityById } from "./activityService";
|
||||
|
||||
/**
|
||||
* 玩家活动数据
|
||||
*
|
||||
* @param {number} serverId 区Id
|
||||
* @param {number} activityId 活动Id
|
||||
* @param {string} roleId 角色Id
|
||||
*
|
||||
*/
|
||||
export async function getPlayerLuckyTurntableData(activityId: number, serverId: number, roleId: string) {
|
||||
let activityData = await getActivityById(activityId);
|
||||
let playerRecord = await ActivityTurntableModel.findByActivityId(serverId, activityId, roleId);
|
||||
if(playerRecord && shouldRefresh(playerRecord.refTodayCount, new Date())) {
|
||||
playerRecord = await ActivityTurntableModel.refreshTodayCount(serverId, activityId, roleId);
|
||||
}
|
||||
|
||||
let { createTime } = await RoleModel.findByRoleId(roleId);
|
||||
let playerData = new LuckyTurntableData(activityData, createTime);
|
||||
playerData.setPlayerRecords(playerRecord);
|
||||
return playerData;
|
||||
}
|
||||
|
||||
export async function getPlayerLuckyTurntableDataShow(activityId: number, serverId: number, roleId: string) {
|
||||
let playerData = await getPlayerLuckyTurntableData(activityId, serverId, roleId);
|
||||
if(playerData && playerData.canShow && playerData.canShow()) {
|
||||
return playerData.getShowResult();
|
||||
}
|
||||
return null
|
||||
}
|
||||
Reference in New Issue
Block a user