feat(db): 修改role表数据库操作方式

This commit is contained in:
liangtongchuan
2023-05-06 15:48:16 +08:00
parent 2ff9f8c5f1
commit e65efa4192
79 changed files with 423 additions and 423 deletions

View File

@@ -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);