✨ feat(db): 修改role表数据库操作方式
This commit is contained in:
@@ -4,7 +4,7 @@ import { STATUS, GUILD_OPERATE, GUILD_AUTH, GUILD_JOB, GUILD_APPLY_TYPE, GUILD_S
|
||||
import { UserGuildModel, UserGuildType } from '../../../db/UserGuild';
|
||||
import { checkAuth, joinGuild, getUserGuildWithRefActive, addActive, settleGuildWeekly, getMyGuildInfo, setUserGuildSession, getInvitationList, addGuildRecord, pushChangeGuildLeader, pushGuildMemberQuit, pushGuildDismiss, pushGuildInfoUpdate, getTodayGuildActive, getGuildQuitCdTime } from '../../../services/guildService';
|
||||
import { GuildModel, GuildType, GuildUpdateParam } from '../../../db/Guild';
|
||||
import { RoleModel, RoleType } from '../../../db/Role';
|
||||
import Role, { RoleType } from '../../../db/Role';
|
||||
import { ARMY } from '../../../pubUtils/dicParam';
|
||||
import { handleCost, addItems, getGoldObject } from '../../../services/role/rewardService';
|
||||
import { nowSeconds, getTimeFun, getSeconds, getZeroPointD, DAY_TO_MS, HOUR_TO_MS } from '../../../pubUtils/timeUtil';
|
||||
@@ -60,7 +60,7 @@ export class GuildHandler {
|
||||
if (checkNameResult) return resResult(STATUS.GUILD_NAME_DUP);
|
||||
|
||||
// 检查元宝是否够
|
||||
const role = await RoleModel.findByRoleId(roleId);
|
||||
const role = await Role.findByRoleId(roleId);
|
||||
if (ARMY.ARMY_CREAT_COST > role.gold) {
|
||||
return resResult(STATUS.DAILY_REFRESH_GOLD_LACK);
|
||||
}
|
||||
@@ -82,7 +82,7 @@ export class GuildHandler {
|
||||
const userGuild = await UserGuildModel.createUserGuild(guild.code, role, true);
|
||||
if (!userGuild) return resResult(STATUS.GUILD_CREATE_ERROR);
|
||||
|
||||
await RoleModel.joinGuild(roleId, guild.code, guild.name, true);
|
||||
await Role.joinGuild(roleId, guild.code, guild.name, true);
|
||||
await UserGuildApplyModel.deleteApply(roleId); // 删除玩家所有对其他公会的申请
|
||||
|
||||
// 加入排行
|
||||
@@ -118,7 +118,7 @@ export class GuildHandler {
|
||||
const guildList = await GuildModel.getGuildList(page, showPeopleMax, name, serverId);
|
||||
const applyList = await UserGuildApplyModel.findApplyByRole(roleId);
|
||||
|
||||
const { quitGuildTime: quitTime = 0 } = await RoleModel.findByRoleId(roleId);
|
||||
const { quitGuildTime: quitTime = 0 } = await Role.findByRoleId(roleId);
|
||||
|
||||
const list = new Array<GuildListInfo>();
|
||||
for (let guild of guildList) {
|
||||
@@ -162,7 +162,7 @@ export class GuildHandler {
|
||||
for(let roleId of guild.members) {
|
||||
await updateUserInfo(REDIS_KEY.USER_INFO, roleId, [{ field: 'guildName', value: name }]);
|
||||
}
|
||||
await RoleModel.updateGuildName(code, name);
|
||||
await Role.updateGuildName(code, name);
|
||||
}
|
||||
if (notice != undefined) {
|
||||
pushGuildNoticeUpdateMsg(roleId, roleName, guild);
|
||||
@@ -230,15 +230,15 @@ export class GuildHandler {
|
||||
}
|
||||
await this.app.rpc.connector.connectorRemote.setOtherUserGuildSession.broadcast([{ roleId: memberRoleId, userGuild }]);
|
||||
|
||||
const role = await RoleModel.findByRoleId(memberRoleId);
|
||||
const role = await Role.findByRoleId(memberRoleId);
|
||||
let updateObject = {};
|
||||
if (auth == GUILD_AUTH.LEADER) { // 转让团长
|
||||
updateObject['leader'] = role._id;
|
||||
let myUserGuild = await UserGuildModel.updateInfo(roleId, { auth: GUILD_AUTH.MEMBER, job: GUILD_JOB.SHIBING }, {}); // 自己降权限
|
||||
setUserGuildSession(session, myUserGuild);
|
||||
await updateUserInfo(REDIS_KEY.GUILD_INFO, code, [{ field: 'leader', value: new GuildLeader(role) }]);
|
||||
await RoleModel.updateRoleInfo(memberRoleId, { isGuildLeader: true });
|
||||
await RoleModel.updateRoleInfo(roleId, { isGuildLeader: false });
|
||||
await Role.updateRoleInfo(memberRoleId, { isGuildLeader: true });
|
||||
await Role.updateRoleInfo(roleId, { isGuildLeader: false });
|
||||
await guildAbdicateToLeague(guild, roleId, role);
|
||||
}
|
||||
|
||||
@@ -306,7 +306,7 @@ export class GuildHandler {
|
||||
return resResult(STATUS.GUILD_MEMBER_MAX);
|
||||
}
|
||||
|
||||
const role = await RoleModel.findByRoleId(roleId, null, true);
|
||||
const role = await Role.findByRoleId(roleId, null, true);
|
||||
if (ceLimit > role.ce) {
|
||||
return resResult(STATUS.GUILD_NOT_REACH_CONDI);
|
||||
}
|
||||
@@ -403,8 +403,8 @@ export class GuildHandler {
|
||||
|
||||
const day = <number>getTimeFun().getBeforeDay(3);
|
||||
|
||||
const { quitGuildTime: quitTime = 0 } = await RoleModel.findByRoleId(roleId);
|
||||
let allList = await RoleModel.getInviteList(day, serverId);
|
||||
const { quitGuildTime: quitTime = 0 } = await Role.findByRoleId(roleId);
|
||||
let allList = await Role.getInviteList(day, serverId);
|
||||
allList = allList.filter(cur => !invitedMembers.includes(cur.roleId))
|
||||
let list = getRandEelm(allList, 10);
|
||||
if (!list.length) list = allList;
|
||||
@@ -429,7 +429,7 @@ export class GuildHandler {
|
||||
const guild = await GuildModel.findByCode(code, serverId, GUILD_SELECT.INVITED_MEMBER);
|
||||
if (guild.isMemberMax) return resResult(STATUS.GUILD_MEMBER_MAX);
|
||||
|
||||
const roleList = await RoleModel.findByRoleIds(roleIds);
|
||||
const roleList = await Role.findByRoleIds(roleIds);
|
||||
let result = new Array<string>();
|
||||
|
||||
for (let role of roleList) {
|
||||
@@ -568,7 +568,7 @@ export class GuildHandler {
|
||||
await sendMailToGuildByContent(MAIL_TYPE.GUILD_DISSMISS, code, {}, guild);
|
||||
await UserGuildModel.dismiss(code);
|
||||
const { members } = guild;
|
||||
await RoleModel.dissmissGuild(members);
|
||||
await Role.dissmissGuild(members);
|
||||
await UserGuildApplyModel.deleteApplyByGuild(code);
|
||||
await guildDismissToLeague(guild);
|
||||
|
||||
@@ -605,7 +605,7 @@ export class GuildHandler {
|
||||
const userGuild = await UserGuildModel.quit(code, roleId);
|
||||
if (!userGuild) return resResult(STATUS.GUILD_QUIT_ERROR);
|
||||
|
||||
const role = await RoleModel.quitGuild(roleId, nowSeconds());
|
||||
const role = await Role.quitGuild(roleId, nowSeconds());
|
||||
if (!role) return resResult(STATUS.GUILD_QUIT_ERROR);
|
||||
|
||||
const guild = await GuildModel.quit(code, roleId, serverId, role.ce, userGuild.auth == GUILD_AUTH.MANAGER);
|
||||
@@ -642,7 +642,7 @@ export class GuildHandler {
|
||||
const userGuild = await UserGuildModel.quit(code, memberRoleId);
|
||||
if (!userGuild) return resResult(STATUS.GUILD_KICK_ERROR);
|
||||
|
||||
const role = await RoleModel.quitGuild(memberRoleId, nowSeconds());
|
||||
const role = await Role.quitGuild(memberRoleId, nowSeconds());
|
||||
if (!role) return resResult(STATUS.GUILD_KICK_ERROR);
|
||||
|
||||
const guild = await GuildModel.quit(code, memberRoleId, serverId, role.ce, userGuild.auth == GUILD_AUTH.MANAGER);
|
||||
@@ -684,7 +684,7 @@ export class GuildHandler {
|
||||
const { code, roleId: leaderRoleId } = msg;
|
||||
|
||||
// 离线72小时
|
||||
const { roleName: oldRoleName, quitTime } = await RoleModel.findByRoleId(leaderRoleId);
|
||||
const { roleName: oldRoleName, quitTime } = await Role.findByRoleId(leaderRoleId);
|
||||
if (quitTime > <number>getTimeFun().getBeforeDay(3)) {
|
||||
return resResult(STATUS.GUILD_LEADER_LOGIN);
|
||||
}
|
||||
@@ -695,7 +695,7 @@ export class GuildHandler {
|
||||
}
|
||||
let topUserGuild: UserGuildType;
|
||||
for (let userGuild of topUserGuilds) {
|
||||
let role = await RoleModel.findByRoleId(userGuild.roleId, 'quitTime');
|
||||
let role = await Role.findByRoleId(userGuild.roleId, 'quitTime');
|
||||
if (role && role.quitTime > <number>getTimeFun().getBeforeDay(3)) {
|
||||
topUserGuild = userGuild; break;
|
||||
}
|
||||
@@ -705,7 +705,7 @@ export class GuildHandler {
|
||||
}
|
||||
|
||||
// 检查元宝是否够
|
||||
const role = await RoleModel.findByRoleId(roleId);
|
||||
const role = await Role.findByRoleId(roleId);
|
||||
if (ARMY.ARMY_IMPEACH_COST > role.gold) {
|
||||
return resResult(STATUS.DAILY_REFRESH_GOLD_LACK);
|
||||
}
|
||||
@@ -731,8 +731,8 @@ export class GuildHandler {
|
||||
await sendMailByContent(MAIL_TYPE.GUILD_BE_SET_LEADER, topUser.roleId, { sendName: roleName, params: [guild.name] });
|
||||
|
||||
await updateUserInfo(REDIS_KEY.GUILD_INFO, code, [{ field: 'leader', value: new GuildLeader(topUser) }]);
|
||||
await RoleModel.updateRoleInfo(leaderRoleId, { isGuildLeader: false });
|
||||
let newLeader = await RoleModel.updateRoleInfo(topUser.roleId, { isGuildLeader: true });
|
||||
await Role.updateRoleInfo(leaderRoleId, { isGuildLeader: false });
|
||||
let newLeader = await Role.updateRoleInfo(topUser.roleId, { isGuildLeader: true });
|
||||
await guildAbdicateToLeague(guild, leaderRoleId, newLeader);
|
||||
reportTAEvent(roleId, TA_EVENT.GUILD_MASTER_CHANGE, { way: GUILD_MASTER_CHANGE_WAY.IMPEACH, change_id_after: topUser.roleId }, ip)
|
||||
|
||||
@@ -953,7 +953,7 @@ export class GuildHandler {
|
||||
const guild = await GuildModel.findByCode(code, serverId);
|
||||
const leader = <RoleType>guild.leader;
|
||||
let threeDaysBefore = <number>getTimeFun().getBeforeDay(3);
|
||||
await RoleModel.updateRoleInfo(leader.roleId, { quitTime: threeDaysBefore });
|
||||
await Role.updateRoleInfo(leader.roleId, { quitTime: threeDaysBefore });
|
||||
|
||||
return resResult(STATUS.SUCCESS, { code });
|
||||
}
|
||||
@@ -967,7 +967,7 @@ export class GuildHandler {
|
||||
}
|
||||
const roleId = session.get('roleId');
|
||||
const quitGuildTime = type ? Math.floor((new Date().getTime() - HOUR_TO_MS * 2) / 1000) : 0;
|
||||
await RoleModel.updateRoleInfo(roleId, { quitGuildTime: quitGuildTime });
|
||||
await Role.updateRoleInfo(roleId, { quitGuildTime: quitGuildTime });
|
||||
|
||||
return resResult(STATUS.SUCCESS);
|
||||
}
|
||||
@@ -988,13 +988,13 @@ export class GuildHandler {
|
||||
|
||||
const { isMemberMax, isAuto, ceLimit, lv } = guild;
|
||||
|
||||
let role = await RoleModel.findByRoleId(roleId);
|
||||
let role = await Role.findByRoleId(roleId);
|
||||
if (role.guildCode) {
|
||||
let oldCode = role.guildCode;
|
||||
const userGuild = await UserGuildModel.quit(oldCode, roleId);
|
||||
if (!userGuild) return resResult(STATUS.GUILD_QUIT_ERROR);
|
||||
|
||||
role = await RoleModel.quitGuild(roleId, nowSeconds());
|
||||
role = await Role.quitGuild(roleId, nowSeconds());
|
||||
if (!role) return resResult(STATUS.GUILD_QUIT_ERROR);
|
||||
|
||||
const guild = await GuildModel.quit(oldCode, roleId, serverId, role.ce, userGuild.auth == GUILD_AUTH.MANAGER);
|
||||
|
||||
Reference in New Issue
Block a user