军团:修改弹劾逻辑
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
import { Application, BackendSession, ChannelService } from 'pinus';
|
import { Application, BackendSession, ChannelService } from 'pinus';
|
||||||
import { resResult, getRandEelm, shouldRefresh, sortArrRandom } from '../../../pubUtils/util';
|
import { resResult, getRandEelm, shouldRefresh, sortArrRandom } from '../../../pubUtils/util';
|
||||||
import { STATUS, GUILD_OPERATE, GUILD_AUTH, GUILD_JOB, GUILD_APPLY_TYPE, GUILD_STRUCTURE, GUILD_REC_TYPE, GUILD_STRUCTURE_NAME, MAIL_TYPE, REDIS_KEY, GUILD_SELECT, USER_GUILD_SELECT, TASK_TYPE } from '../../../consts';
|
import { STATUS, GUILD_OPERATE, GUILD_AUTH, GUILD_JOB, GUILD_APPLY_TYPE, GUILD_STRUCTURE, GUILD_REC_TYPE, GUILD_STRUCTURE_NAME, MAIL_TYPE, REDIS_KEY, GUILD_SELECT, USER_GUILD_SELECT, TASK_TYPE } from '../../../consts';
|
||||||
import { UserGuildModel } from '../../../db/UserGuild';
|
import { UserGuildModel, UserGuildType } from '../../../db/UserGuild';
|
||||||
import { checkAuth, joinGuild, getGuildWithRefActive, getUserGuildWithRefActive, addActive, settleGuildWeekly, getMyGuildInfo } from '../../../services/guildService';
|
import { checkAuth, joinGuild, getGuildWithRefActive, getUserGuildWithRefActive, addActive, settleGuildWeekly, getMyGuildInfo } from '../../../services/guildService';
|
||||||
import { GuildModel, GuildType } from '../../../db/Guild';
|
import { GuildModel, GuildType } from '../../../db/Guild';
|
||||||
import { RoleModel, RoleType } from '../../../db/Role';
|
import { RoleModel, RoleType } from '../../../db/Role';
|
||||||
@@ -704,7 +704,17 @@ export class GuildHandler {
|
|||||||
return resResult(STATUS.GUILD_LEADER_LOGIN);
|
return resResult(STATUS.GUILD_LEADER_LOGIN);
|
||||||
}
|
}
|
||||||
// 上周周功勋最高的人
|
// 上周周功勋最高的人
|
||||||
const topUserGuild = await UserGuildModel.findTopActive(code, 'auth role roleId');
|
const topUserGuilds = await UserGuildModel.findTopActive(code, 'auth role roleId');
|
||||||
|
if (topUserGuilds.length <= 0) {
|
||||||
|
return resResult(STATUS.GUILD_MEMBER_NOT_FOUND);
|
||||||
|
}
|
||||||
|
let topUserGuild: UserGuildType;
|
||||||
|
for(let userGuild of topUserGuilds) {
|
||||||
|
let role = await RoleModel.findByRoleId(userGuild.roleId, 'quitTime');
|
||||||
|
if(role && role.quitTime > <number>getTimeFun().getBeforeDay(3)) {
|
||||||
|
topUserGuild = userGuild; break;
|
||||||
|
}
|
||||||
|
}
|
||||||
if (!topUserGuild) {
|
if (!topUserGuild) {
|
||||||
return resResult(STATUS.GUILD_MEMBER_NOT_FOUND);
|
return resResult(STATUS.GUILD_MEMBER_NOT_FOUND);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -125,7 +125,7 @@ export default class UserGuild extends BaseModel {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static async findTopActive(guildCode: string, select?: string) {
|
public static async findTopActive(guildCode: string, select?: string) {
|
||||||
const userGuilds: UserGuildType = await UserGuildModel.findOne({ guildCode, status: USER_GUILD_STATUS.ON, auth: { $ne: GUILD_AUTH.LEADER } })
|
const userGuilds: UserGuildType[] = await UserGuildModel.find({ guildCode, status: USER_GUILD_STATUS.ON, auth: { $ne: GUILD_AUTH.LEADER } })
|
||||||
.sort({ activeWeekly: -1, activeUpdateTime: 1 })
|
.sort({ activeWeekly: -1, activeUpdateTime: 1 })
|
||||||
.select(select)
|
.select(select)
|
||||||
.populate('role', 'roleId roleName ce head frame spine lv title quitTime', 'Role')
|
.populate('role', 'roleId roleName ce head frame spine lv title quitTime', 'Role')
|
||||||
|
|||||||
Reference in New Issue
Block a user