军团:添加在线离线时间
This commit is contained in:
@@ -94,7 +94,7 @@ export default class Guild extends BaseModel {
|
||||
const code = genCode(6);
|
||||
const result: GuildType = await GuildModel.findOneAndUpdate({ code }, update, { upsert: true, new: true })
|
||||
.select({ _id: 0, __v: 0, createdAt: 0, updatedAt: 0 })
|
||||
.populate('leader', { roleId: 1, roleName: 1, sHid: 1, headHid: 1, lv: 1, loginTime: 1, ce: 1, title: 1, _id: 0 }, 'Role')
|
||||
.populate('leader', { roleId: 1, roleName: 1, sHid: 1, headHid: 1, lv: 1, quitTime: 1, ce: 1, title: 1, _id: 0 }, 'Role')
|
||||
.lean();
|
||||
|
||||
return result;
|
||||
@@ -142,7 +142,7 @@ export default class Guild extends BaseModel {
|
||||
public static async findByCode(code: string, serverId: number, select?: string) {
|
||||
const result: GuildType = await GuildModel.findOne({ code, status: GUILD_STATUS.RUNNING, serverId })
|
||||
.select(select)
|
||||
.populate('leader', {roleId: 1, roleName: 1, sHid: 1, headHid: 1, lv: 1, loginTime: 1, ce: 1, title: 1, _id: 0}, 'Role')
|
||||
.populate('leader', {roleId: 1, roleName: 1, sHid: 1, headHid: 1, lv: 1, quitTime: 1, ce: 1, title: 1, _id: 0}, 'Role')
|
||||
.lean();
|
||||
return result;
|
||||
}
|
||||
|
||||
@@ -154,6 +154,8 @@ export default class Role extends BaseModel {
|
||||
createTime: number; // 创建时间
|
||||
@prop({ required: true, default: nowSeconds() })
|
||||
loginTime: number; // 更新 / 登录时间
|
||||
@prop({ required: true, default: 0 })
|
||||
quitTime: number; // 更新 / 登录时间
|
||||
|
||||
@prop({ required: true, type: Number, default: [], _id: false })
|
||||
funcs: Array<number>; // 开启了的功能
|
||||
@@ -414,9 +416,9 @@ export default class Role extends BaseModel {
|
||||
|
||||
// 获取未加入公会且登录时间在三天内的人
|
||||
public static async getInviteList(time: number, serverId: number) {
|
||||
const result = await RoleModel.find({ loginTime: { $gt: time }, hasGuild: false, serverId })
|
||||
.select('roleId roleName ce headHid sHid lv title job loginTime')
|
||||
.sort({loginTime: -1, lv: -1, ce: -1})
|
||||
const result = await RoleModel.find({ quitTime: { $gt: time }, hasGuild: false, serverId })
|
||||
.select('roleId roleName ce headHid sHid lv title job quitTime')
|
||||
.sort({quitTime: -1, lv: -1, ce: -1})
|
||||
.limit(100).lean();
|
||||
return result;
|
||||
}
|
||||
|
||||
@@ -88,7 +88,7 @@ export default class UserGuild extends BaseModel {
|
||||
const userGuilds: UserGuildType[] = await UserGuildModel.find({ guildCode, status: USER_GUILD_STATUS.ON })
|
||||
.select(select)
|
||||
.sort(sort)
|
||||
.populate('role', 'roleId roleName ce headHid sHid lv title loginTime', 'Role')
|
||||
.populate('role', 'roleId roleName ce headHid sHid lv title quitTime', 'Role')
|
||||
.lean();
|
||||
return userGuilds;
|
||||
}
|
||||
@@ -97,7 +97,7 @@ export default class UserGuild extends BaseModel {
|
||||
const userGuilds: UserGuildType = await UserGuildModel.findOne({ guildCode, status: USER_GUILD_STATUS.ON, auth: { $ne: GUILD_AUTH.LEADER } })
|
||||
.sort({ activeWeekly: -1, activeUpdateTime: 1 })
|
||||
.select(select)
|
||||
.populate('role', 'roleId roleName ce headHid sHid lv title loginTime', 'Role')
|
||||
.populate('role', 'roleId roleName ce headHid sHid lv title quitTime', 'Role')
|
||||
.lean();
|
||||
return userGuilds;
|
||||
}
|
||||
|
||||
@@ -79,7 +79,7 @@ export default class UserGuildApply extends BaseModel {
|
||||
const list: UserGuildApplyType[] = await UserGuildApplyModel.find(condition)
|
||||
.sort({ createdAt: -1 })
|
||||
.select('applyCode role')
|
||||
.populate('role', 'roleId roleName ce headHid sHid lv title job loginTime', 'Role')
|
||||
.populate('role', 'roleId roleName ce headHid sHid lv title job quitTime', 'Role')
|
||||
.limit(GUILD_PER_PAGE).lean();
|
||||
return list
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user