活动:修复七天乐任务

This commit is contained in:
luying
2021-12-24 15:01:09 +08:00
parent f686046822
commit dc00431010
5 changed files with 68 additions and 18 deletions

View File

@@ -32,6 +32,7 @@ import { SignInData } from '../../domain/activityField/signInField';
import { ActivityGroupModel } from '../../db/ActivityGroup';
import { ActivityGroupTypeModel } from '../../db/ActivityGroupType';
import { ServerlistModel } from '../../db/Serverlist';
import { ActivityInRemote, transActivityInRemoteToModelType } from '../../domain/activityField/activityField';
/**
* 获取活动数据
@@ -200,13 +201,15 @@ export async function getActivity(serverId: number, roleId: string, activityId:
export async function getActivityById(activityId: number) {
let serverType = pinus.app.getServerType();
let activity: ActivityInRemote;
if(serverType == 'activity') {
return _getActivityById(activityId);
activity = _getActivityById(activityId);
} else {
let servers = pinus.app.getServersByType('activity');
let server = getRandSingleEelm(servers);
return <ActivityModelType>await pinus.app.rpc.activity.activityRemote.getActivityById.toServer(server.id, activityId);
activity = <ActivityInRemote>await pinus.app.rpc.activity.activityRemote.getActivityById.toServer(server.id, activityId);
}
return transActivityInRemoteToModelType(activity)
}
export async function getActivitiesByType(serverId: number, type: number) {
@@ -227,21 +230,21 @@ export async function getActivities() {
} else {
let servers = pinus.app.getServersByType('activity');
let server = getRandSingleEelm(servers);
return <ActivityModelType[]>await pinus.app.rpc.activity.activityRemote.getActivities.toServer(server.id);
return <ActivityInRemote[]>await pinus.app.rpc.activity.activityRemote.getActivities.toServer(server.id);
}
}
export function _getActivityById(activityId: number) {
return <ActivityModelType>pinus.app.get('activities')?.get(activityId);
return <ActivityInRemote>pinus.app.get('activities')?.get(activityId);
}
export function _getActivitiesByType(serverId: number, type: number) {
let activityByType = pinus.app.get('activityByType')?.get(serverId)?.get(type)||[];
let activities: Map<number, ActivityModelType> = pinus.app.get('activities');
let result: ActivityModelType[] = [];
let activities: Map<number, ActivityInRemote> = pinus.app.get('activities');
let result: ActivityInRemote[] = [];
for(let activityId of activityByType) {
let activity = activities.get(activityId);
if(activity && activity.beginTime <= new Date()) {
if(activity && activity.beginTime <= Date.now()) {
result.push(activity);
}
}
@@ -250,7 +253,7 @@ export function _getActivitiesByType(serverId: number, type: number) {
export function _getActivities() {
let activities = pinus.app.get('activities');
let result: ActivityModelType[] = [];
let result: ActivityInRemote[] = [];
for(let [_, activity] of activities) {
result.push(activity);
}