🐞 fix(新服): 开新服后之前服的活动消失

This commit is contained in:
luying
2022-12-12 16:41:18 +08:00
parent 32b4f789be
commit ec9f0e431f
4 changed files with 26 additions and 3 deletions

View File

@@ -109,6 +109,22 @@ export function saveGroupToServer(groupIds: number[], serverIds: number[]) {
setActivityTypeAndServer();
}
export function addServerToGroup(groupIds: number[], serverIds: number[]) {
for(let groupId of groupIds) {
if(!groupToServer.has(groupId)) {
groupToServer.set(groupId, []);
}
for(let serverId of serverIds) {
let arr = groupToServer.get(groupId)||[];
if(arr.indexOf(serverId) == -1) {
groupToServer.get(groupId).push(serverId);
}
}
}
setActivityTypeAndServer();
}
export function saveActivitiesToGroup(groupId: number, activityDb: number[]) {
for(let activityId of activityDb) {
if(activities.get(activityId)) {

View File

@@ -195,7 +195,7 @@ export async function createNewServer(region: RegionType ,serverId: number, para
if(params.activityGroupId && params.activityGroupId.length > 0) {
await ActivityGroupModel.addServerToGroupData(newServer.id, params.activityGroupId);
let activityGroups = await ActivityGroupModel.findByServerId(newServer.id);
await pinus.app.rpc.activity.activityRemote.saveGroupToServer.broadcast(params.activityGroupId, [newServer.id]);
await pinus.app.rpc.activity.activityRemote.addServerToGroup.broadcast(params.activityGroupId, [newServer.id]);
let aids = activityGroups.reduce((pre, cur) => [...pre, ...cur.activities], []);
let activities = await ActivityModel.findActivityByIds(aids);