✨ feat(gvg): 添加组建期邮件、添加自动解散定时任务
This commit is contained in:
@@ -1,5 +1,15 @@
|
||||
import { GVGLeagueType } from "../../db/GVGLeague";
|
||||
|
||||
|
||||
/**
|
||||
* TODO 检查上周是否有占领城池
|
||||
* @param league
|
||||
* @returns boolean 是否占领
|
||||
*/
|
||||
export async function checkHasCities(league: GVGLeagueType) {
|
||||
return false
|
||||
}
|
||||
|
||||
/**
|
||||
* TODO 获取本联军上周占领的城池
|
||||
* @param league
|
||||
|
||||
@@ -11,6 +11,7 @@ import { getRandSingleEelm } from "../../pubUtils/util";
|
||||
import { GVG } from "../../pubUtils/dicParam";
|
||||
import { ServerlistModel } from "../../db/Serverlist";
|
||||
import { GuildModel, GuildType } from "../../db/Guild";
|
||||
import { checkHasCities } from "./gvgBattleService";
|
||||
|
||||
// 定时器相关
|
||||
export async function createNewGVGConfig() {
|
||||
@@ -24,7 +25,13 @@ export async function createNewGVGConfig() {
|
||||
} catch(e) {
|
||||
console.log('remote未初始完');
|
||||
}
|
||||
// TODO 每周自动解散一些联军
|
||||
// 每周自动解散一些联军
|
||||
let autoLeagues = await GVGLeagueModel.findAutoCreateLeague();
|
||||
let needDissmissLeagueId: string[] = [];
|
||||
for(let league of autoLeagues) {
|
||||
if(!await checkHasCities(league)) needDissmissLeagueId.push(league._id);
|
||||
}
|
||||
await GVGLeagueModel.dismissByIds(needDissmissLeagueId);
|
||||
return config;
|
||||
}
|
||||
|
||||
|
||||
@@ -209,28 +209,20 @@ function getAuthFromManageType(type: LEAGUE_MANAGE_TYPE) {
|
||||
|
||||
export async function memberJoinGuildToLeague(guild: GuildType, role: RoleType) {
|
||||
if(!guild.leagueCode) return;
|
||||
let league = await GVGLeagueModel.joinMember(guild.leagueCode, guild.code, role.roleId);
|
||||
// TODO redis联军更新
|
||||
console.log(league);
|
||||
await GVGLeagueModel.joinMember(guild.leagueCode, guild.code, role.roleId);
|
||||
}
|
||||
|
||||
export async function memberQuitGuildToLeague(guild: GuildType, role: RoleType) {
|
||||
if(!guild.leagueCode) return;
|
||||
let league = await GVGLeagueModel.quitMember(guild.leagueCode, role.roleId);
|
||||
// TODO redis联军更新
|
||||
console.log(league);
|
||||
await GVGLeagueModel.quitMember(guild.leagueCode, role.roleId);
|
||||
}
|
||||
|
||||
export async function guildDismissToLeague(guild: GuildType) {
|
||||
if(!guild.leagueCode) return;
|
||||
let league = await GVGLeagueModel.quitGuild(guild.leagueCode, guild);
|
||||
// TODO redis联军更新
|
||||
console.log(league);
|
||||
await GVGLeagueModel.quitGuild(guild.leagueCode, guild);
|
||||
}
|
||||
|
||||
export async function guildAbdicateToLeague(guild: GuildType, fromRoleId: string, toRole: RoleType) {
|
||||
if(!guild.leagueCode) return;
|
||||
let league = await GVGLeagueModel.abdicateGuild(guild.leagueCode, fromRoleId, toRole.roleId, toRole._id);
|
||||
// TODO redis联军更新
|
||||
console.log(league);
|
||||
await GVGLeagueModel.abdicateGuild(guild.leagueCode, fromRoleId, toRole.roleId, toRole._id);
|
||||
}
|
||||
Reference in New Issue
Block a user