r2/game-server/app/servers/guild/guildService.js
2023-05-08 20:02:52 +08:00

100 lines
2.3 KiB
JavaScript

const guildDao = require("../../dao/guildDao");
class GuildService {
async listGuild() {
return await guildDao.listGuild();
}
async searchGuild(guildName) {
return await guildDao.searchGuild(guildName);
}
async createGuild(guildName, logo, creator) {
const guildId = await guildDao.createGuild(guildName, logo, creator);
return guildId;
}
async joinGuild(player, guildId) {
const result = await guildDao.joinGuild(guildId, player);
return result;
}
async approveGuild(uid, guildId, newuid) {
const result = await guildDao.approveGuild(uid, guildId, newuid);
return result;
}
async inviteNewMember(uid, guildId, newuid) {
const result = await guildDao.inviteNewMember(guildId, uid, newuid);
return result;
}
async getGuildInfoByUID(uid) {
const result = await guildDao.getGuildInfoByUID(uid);
return result;
}
async getGuildInfo(guildId) {
const result = await guildDao.getGuildInfo(guildId);
}
async getMembers(guildId, apply) {
const result = await guildDao.getGuildMembers(guildId, apply);
return result;
}
async getInviteList(uid,) {
const result = await guildDao.getInviteList(uid);
return result;
}
async confirmInvite(uid, guildId) {
const result = await guildDao.confirmInvite(guildId, uid);
return result;
}
async leaveGuild(uid) {
const result = await guildDao.leaveGuild(uid);
return result;
}
async kick(uid, muid) {
const result = await guildDao.kick(uid, muid);
return result;
}
async disbandGuild(uid) {
const result = await guildDao.disbandGuild(uid);
return result;
}
async updateMemberRank(uid, guildId, memberUid, g_rank) {
return await guildDao.updateMemberRank(guildId, uid, memberUid, g_rank);
}
async setAnnounce(uid, gid, announce) {
return await guildDao.setAnnounce(gid, uid, announce);
}
sendGuildMessage(player, message) {
const playerGuild = this.getPlayerGuild(player);
if (playerGuild) {
for (const member of playerGuild.members) {
member.sendChatMessage(`[Guild] ${player.name}: ${message}`);
}
}
}
getPlayerGuild(player) {
for (const guild of this.guilds.values()) {
if (guild.members.has(player)) {
return guild;
}
}
return null;
}
}
// ...
module.exports = GuildService;