import { UserGuildModel } from '../db/UserGuild'; import { getArmyTrainJuDian, getArmyDevelopConsume } from '../pubUtils/data'; import { nowSeconds, getHourPoint } from '../pubUtils/timeUtil'; import { GUILD_REPORT_NUM, GUILD_DATA_NAME, REFRESH_HOUR } from '../consts/constModules/guildConst'; import { GuildTrainType, GuildTrainModel, TrainInstance } from '../db/GuildTrain'; import { GuildModel } from '../db/Guild'; import { findWhere } from 'underscore'; import { ARMY } from '../pubUtils/dicParam'; import { lockData } from './redLockService'; import { pinus } from 'pinus'; import { MailModel, MailType } from '../db/Mail'; import { getRandomByLen, resResult } from '../pubUtils/util'; import { getRedis } from './redisService'; import { STATUS } from '../consts/statusCode'; import { ScienceTree, GuildRefineModel } from '../db/GuildRefine'; export async function openGuildRefine(code: string) { let developConsumes = getArmyDevelopConsume(); let scienceTrees = new Array(); developConsumes.forEach(developConsume=>{ if (developConsume.fundConsume == 0 && developConsume.timeConsume == 0) { let scienceTree = new ScienceTree(); scienceTree.id = developConsume.id; scienceTree.endTime = 0 scienceTree.assistRoleIds = []; scienceTrees.push(scienceTree); } }); let guildRefine = await GuildRefineModel.createScienceTree(code, scienceTrees); return guildRefine; }