连接:修复有军团的人没有推送
This commit is contained in:
@@ -86,7 +86,7 @@ export async function pushData(hasInit: boolean, role: RoleType, session: Fronte
|
||||
for(let { type, init, refresh, guild } of modules) {
|
||||
if(!hasInit && !init) continue;
|
||||
if(pushType == 'refresh' && !refresh) continue;
|
||||
if(guildData.hasGuild && !guild) continue;
|
||||
if(!guildData.hasGuild && !guild) continue;
|
||||
|
||||
let data = await getModuleData(type, { role, session }, guildData);
|
||||
if (data) {
|
||||
|
||||
@@ -85,6 +85,7 @@ export async function initActivitiesRank(serverId: number, activityGroupId: numb
|
||||
let r = new Rank(redisKey, { serverId, activityId: data.activityId });
|
||||
r.setIsInit(true);
|
||||
for (let rank of ranks) {
|
||||
console.log('##### rank', rank);
|
||||
if(r.infoKey == REDIS_KEY.USER_INFO) {
|
||||
await r.setRankWithRoleInfo(rank.roleId, rank.score, rank.time||0, <RoleType>rank.role);
|
||||
} else if(r.infoKey == REDIS_KEY.GUILD_INFO) {
|
||||
|
||||
@@ -18,13 +18,13 @@ export default class Activity_Time_Limit_Rank extends BaseModel {
|
||||
@prop({ required: false })
|
||||
guildCode: string; // 军团
|
||||
|
||||
@prop({ ref: 'Guild', type: mongoose.Schema.Types.ObjectId })
|
||||
@prop({ ref: () => Guild, type: mongoose.Schema.Types.ObjectId })
|
||||
guild: Ref<Guild>;
|
||||
|
||||
@prop({ required: false })
|
||||
roleId: string; // 军团
|
||||
|
||||
@prop({ ref: 'Role', type: mongoose.Schema.Types.ObjectId })
|
||||
@prop({ ref: () => Role, type: mongoose.Schema.Types.ObjectId })
|
||||
role: Ref<Role>;
|
||||
|
||||
@prop({ required: true })
|
||||
@@ -54,9 +54,16 @@ export default class Activity_Time_Limit_Rank extends BaseModel {
|
||||
|
||||
public static async getRank(serverId: number, activityId: number) {
|
||||
let rec: ActivityTimeLimitRankModelType[] = await ActivityTimeLimitRankModel.find({ serverId, activityId })
|
||||
.populate('role').populate('guild')
|
||||
.populate('leader', { roleId: 1, roleName: 1, head: 1, frame: 1, spine: 1, lv: 1, quitTime: 1, ce: 1, title: 1, _id: 0 }, 'Role')
|
||||
.sort({ score: -1, time: 1 }).lean();
|
||||
.populate('role')
|
||||
.populate({
|
||||
path: 'guild',
|
||||
select: 'code icon name lv memberCnt leader ceLimit',
|
||||
model: 'Guild',
|
||||
populate: {
|
||||
path: 'leader',
|
||||
model: 'Role'
|
||||
}
|
||||
}).sort({ score: -1, time: 1 }).lean({ getters: true, virtuals: true });
|
||||
return rec;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import BaseModel from './BaseModel';
|
||||
import { index, getModelForClass, prop, DocumentType, Ref } from '@typegoose/typegoose';
|
||||
import { index, getModelForClass, prop, DocumentType, Ref, mongoose } from '@typegoose/typegoose';
|
||||
import Role, { RoleType } from './Role';
|
||||
import { GUILD_STRUCTURE, GUILD_STATUS, GUILD_PER_PAGE, GUILD_SELECT, REDIS_KEY, SHOP_REFRESH_TYPE } from '../consts';
|
||||
import { getZeroPoint, getZeroPointD, nowSeconds } from '../pubUtils/timeUtil';
|
||||
@@ -41,7 +41,7 @@ export default class Guild extends BaseModel {
|
||||
@prop({ required: true, default: 0 })
|
||||
managerCnt: number;
|
||||
|
||||
@prop({ required: true })
|
||||
@prop({ required: true, ref: () => Role, type: mongoose.Schema.Types.ObjectId })
|
||||
leader: Ref<Role>;
|
||||
|
||||
@prop({ required: true, default: true })
|
||||
|
||||
Reference in New Issue
Block a user