活动:修改获取活动逻辑,从serverlist上剥离
This commit is contained in:
@@ -61,8 +61,8 @@ export default class Serverlist extends BaseModel {
|
||||
@prop({ required: true, default: 1, enum: SERVER_STATUS })
|
||||
serverStatus: number; // 服务器状态
|
||||
|
||||
@prop({ required: true, type: Number })
|
||||
activityGroupId: number[]; // 活动组
|
||||
// @prop({ required: true, type: Number })
|
||||
// activityGroupId: number[]; // 活动组
|
||||
|
||||
public get status() {
|
||||
let now = nowSeconds();
|
||||
@@ -154,19 +154,19 @@ export default class Serverlist extends BaseModel {
|
||||
return result;
|
||||
}
|
||||
|
||||
public static async updateActivityGroup(id: string, pushArr: number[], pullArr: number[]) {
|
||||
// console.log(id, pushArr, pullArr)
|
||||
let update = {};
|
||||
if(pushArr.length > 0) update['$push'] = { activityGroupId: { $each: pushArr } };
|
||||
if(pullArr.length > 0) update['$pull'] = { activityGroupId: { $in: pullArr } };
|
||||
let result: ServerlistType[] = await ServerlistModel.findOneAndUpdate({ _id: id }, update).lean();
|
||||
return result;
|
||||
}
|
||||
// public static async updateActivityGroup(id: string, pushArr: number[], pullArr: number[]) {
|
||||
// // console.log(id, pushArr, pullArr)
|
||||
// let update = {};
|
||||
// if(pushArr.length > 0) update['$push'] = { activityGroupId: { $each: pushArr } };
|
||||
// if(pullArr.length > 0) update['$pull'] = { activityGroupId: { $in: pullArr } };
|
||||
// let result: ServerlistType[] = await ServerlistModel.findOneAndUpdate({ _id: id }, update).lean();
|
||||
// return result;
|
||||
// }
|
||||
|
||||
public static async pullByGroupId(groupId: number) {
|
||||
let result = await ServerlistModel.updateMany({ activityGroupId: { $elemMatch: { $eq: groupId } }}, { $pull: { activityGroupId: groupId } }, { new: true }).lean(true);
|
||||
return result;
|
||||
}
|
||||
// public static async pullByGroupId(groupId: number) {
|
||||
// let result = await ServerlistModel.updateMany({ activityGroupId: { $elemMatch: { $eq: groupId } }}, { $pull: { activityGroupId: groupId } }, { new: true }).lean(true);
|
||||
// return result;
|
||||
// }
|
||||
|
||||
public static async incRoleCnt(serverId: number) {
|
||||
let server: ServerlistType = await ServerlistModel.findOneAndUpdate({ id: serverId }, { $inc: { playerCnt: 1 } });
|
||||
|
||||
Reference in New Issue
Block a user