diff --git a/shared/consts/constModules/sysConst.ts b/shared/consts/constModules/sysConst.ts index bba09d0ce..a5052eb6b 100644 --- a/shared/consts/constModules/sysConst.ts +++ b/shared/consts/constModules/sysConst.ts @@ -43,4 +43,57 @@ export const FRIEND_DROP_TYPE = { // 每日情谊点上限 export const FRIEND_DROP_MAX = { COM_BTL: 150 -} \ No newline at end of file +} + + +export const FILENAME = { + DIC_BLUEPRT_COMPOSE: 'dic_blueprt_compose', + DIC_BLUEPRT_POSSIBILITY: 'dic_blueprt_possibility', + DIC_EXPEDITION: 'dic_expedition', + DIC_EXPEDITION_POINT: 'dic_expedition_point', + DIC_FUNC_SWITCH: 'dic_func_switch', + DIC_GOODS: 'dic_goods', + DIC_CHAREXP: 'dic_zyz_charexp', + DIC_DAILY: 'dic_zyz_daily', + DIC_EVENT: 'dic_zyz_event', + DIC_FASHIONS: 'dic_zyz_fashions', + DIC_FRIEND_SHIP: 'dic_zyz_friend_ship', + DIC_FRIEND_SHIP_LEVEL: 'dic_zyz_friend_ship_level', + DIC_GACHA: 'dic_gacha', + DIC_GK_BRANCH: 'dic_zyz_gk_branch', + DIC_GK_DAILY: 'dic_zyz_gk_daily', + DIC_GK_DUNGEON: 'dic_zyz_gk_dungeon', + DIC_GK_DUNGEON_ELITE: 'dic_zyz_gk_dungeonElite', + DIC_GK_EVENT: 'dic_zyz_gk_event', + DIC_GK_EXPEDITION: 'dic_zyz_gk_expedition', + DIC_GK_MAIN: 'dic_zyz_gk_main', + DIC_GK_MAIN_ELITE: 'dic_zyz_gk_mainElite', + DIC_GK_TOWER: 'dic_zyz_gk_tower', + DIC_GK_TREASURE: 'dic_zyz_gk_Treasure', + DIC_HERO: 'dic_zyz_hero', + DIC_HERO_QUALITY_UP: 'dic_zyz_hero_quality_up', + DIC_HERO_STAR: 'dic_zyz_hero_star', + DIC_HERO_WAKE: 'dic_zyz_hero_wake', + DIC_HERO_SKILL: 'dic_zyz_heroskill', + DIC_JOB: 'dic_zyz_job', + DIC_KING_EXP: 'dic_zyz_kingexp', + DIC_CHAR_EXP: 'dic_zyz_charexp', + DIC_SE: 'dic_zyz_se', + DIC_TOWER_TASK: 'dic_zyz_search', + DIC_TOWER: 'dic_zyz_tower', + DIC_XUNBAO: 'dic_zyz_xunbao', + DIC_QUESTION: 'Questions', +} + +export const WAR_RELATE_TABLES = [ + FILENAME.DIC_GK_BRANCH, + FILENAME.DIC_GK_DAILY, + FILENAME.DIC_GK_DUNGEON, + FILENAME.DIC_GK_DUNGEON_ELITE, + FILENAME.DIC_GK_EVENT, + FILENAME.DIC_GK_EXPEDITION, + FILENAME.DIC_GK_MAIN, + FILENAME.DIC_GK_MAIN_ELITE, + FILENAME.DIC_GK_TOWER, + FILENAME.DIC_GK_TREASURE +] diff --git a/shared/db/GMGroup.ts b/shared/db/GMGroup.ts index 1b619745b..c7b5da5a3 100644 --- a/shared/db/GMGroup.ts +++ b/shared/db/GMGroup.ts @@ -1,14 +1,14 @@ import { COUNTER } from './../consts'; import { CounterModel } from './Counter'; import BaseModel from './BaseModel'; -import { index, getModelForClass, prop, DocumentType } from '@typegoose/typegoose'; +import { index, getModelForClass, prop, DocumentType, modelOptions } from '@typegoose/typegoose'; /** * GM用户组接口 */ @index({ id: 1 }) @index({ group: 1 }) - +@modelOptions({schemaOptions: {id: false}}) export default class GMGroup extends BaseModel { @prop({ required: true }) id: number; @@ -76,4 +76,6 @@ export default class GMGroup extends BaseModel { export const GMGroupModel = getModelForClass(GMGroup); -export interface GMGroupType extends Pick, keyof GMGroup>{}; +export interface GMGroupType extends Pick, keyof GMGroup>{ + id: number; +}; diff --git a/shared/pubUtils/dictionary/DicBlueprtCompose.ts b/shared/pubUtils/dictionary/DicBlueprtCompose.ts index ded76deb9..149aa8b71 100644 --- a/shared/pubUtils/dictionary/DicBlueprtCompose.ts +++ b/shared/pubUtils/dictionary/DicBlueprtCompose.ts @@ -1,6 +1,6 @@ // 藏宝图合成表 import { readJsonFile } from '../util' -import { FILENAME } from '../../consts/consts' +import { FILENAME } from '../../consts' export interface DicBlueprtCompose { diff --git a/shared/pubUtils/dictionary/DicBlueprtPossibility.ts b/shared/pubUtils/dictionary/DicBlueprtPossibility.ts index a8b536a5e..a42b3b15a 100644 --- a/shared/pubUtils/dictionary/DicBlueprtPossibility.ts +++ b/shared/pubUtils/dictionary/DicBlueprtPossibility.ts @@ -1,6 +1,6 @@ // 藏宝图掉落率 import { decodeArrayListStr, readJsonFile } from '../util' -import { FILENAME } from '../../consts/consts' +import { FILENAME } from '../../consts' export interface DicBlueprtPossibility { diff --git a/shared/pubUtils/dictionary/DicCharExp.ts b/shared/pubUtils/dictionary/DicCharExp.ts index 7c4534a28..7f23cdcb8 100644 --- a/shared/pubUtils/dictionary/DicCharExp.ts +++ b/shared/pubUtils/dictionary/DicCharExp.ts @@ -1,6 +1,6 @@ // 主公经验 import {readJsonFile} from '../util' -import { FILENAME } from '../../consts/consts' +import { FILENAME } from '../../consts' export interface DicCharExp { // 等级 diff --git a/shared/pubUtils/dictionary/DicDaily.ts b/shared/pubUtils/dictionary/DicDaily.ts index 874da0752..35727f90f 100644 --- a/shared/pubUtils/dictionary/DicDaily.ts +++ b/shared/pubUtils/dictionary/DicDaily.ts @@ -1,6 +1,6 @@ // 每日总表 import { readJsonFile, parseNumberList } from '../util' -import { FILENAME } from '../../consts/consts' +import { FILENAME } from '../../consts' export interface DicDaily { // 每日类型 diff --git a/shared/pubUtils/dictionary/DicEvent.ts b/shared/pubUtils/dictionary/DicEvent.ts index 9d0f03409..49a187ad6 100644 --- a/shared/pubUtils/dictionary/DicEvent.ts +++ b/shared/pubUtils/dictionary/DicEvent.ts @@ -1,6 +1,6 @@ // 奇遇表 import { parseReward, decodeArrayStr, readJsonFile, parseNumberList } from '../util' -import { FILENAME } from '../../consts/consts' +import { FILENAME } from '../../consts' import { RewardInter } from '../../pubUtils/interface'; interface SuitLevel { diff --git a/shared/pubUtils/dictionary/DicExpedition.ts b/shared/pubUtils/dictionary/DicExpedition.ts index 4198e763e..d581821a0 100644 --- a/shared/pubUtils/dictionary/DicExpedition.ts +++ b/shared/pubUtils/dictionary/DicExpedition.ts @@ -1,6 +1,6 @@ // 远征关卡表 import { readJsonFile } from '../util' -import { FILENAME } from '../../consts/consts' +import { FILENAME } from '../../consts' export interface DicExpedition { // 远征id diff --git a/shared/pubUtils/dictionary/DicExpeditionPoint.ts b/shared/pubUtils/dictionary/DicExpeditionPoint.ts index 8df6d1aaa..ee8f0fdb6 100644 --- a/shared/pubUtils/dictionary/DicExpeditionPoint.ts +++ b/shared/pubUtils/dictionary/DicExpeditionPoint.ts @@ -1,6 +1,6 @@ // 远征点数奖励表 import { parseReward, readJsonFile } from '../util'; -import { FILENAME } from '../../consts/consts'; +import { FILENAME } from '../../consts'; import { RewardInter } from '../interface'; export interface DicExpeditionPoint { diff --git a/shared/pubUtils/dictionary/DicFashions.ts b/shared/pubUtils/dictionary/DicFashions.ts index 9eb4bed73..e128ed592 100644 --- a/shared/pubUtils/dictionary/DicFashions.ts +++ b/shared/pubUtils/dictionary/DicFashions.ts @@ -1,6 +1,6 @@ // 时装表 import { decodeArrayListStr, readJsonFile, parseNumberList } from '../util'; -import { FILENAME } from '../../consts/consts'; +import { FILENAME } from '../../consts'; export interface DicFashions { // 时装id diff --git a/shared/pubUtils/dictionary/DicFriendShip.ts b/shared/pubUtils/dictionary/DicFriendShip.ts index ec1c6a121..0c8230bd3 100644 --- a/shared/pubUtils/dictionary/DicFriendShip.ts +++ b/shared/pubUtils/dictionary/DicFriendShip.ts @@ -1,6 +1,6 @@ // 武将羁绊表 import { decodeArrayListStr, readJsonFile, parseNumberList } from '../util'; -import { FILENAME } from '../../consts/consts'; +import { FILENAME } from '../../consts'; export interface DicFriendShip { // id diff --git a/shared/pubUtils/dictionary/DicFriendShipLevel.ts b/shared/pubUtils/dictionary/DicFriendShipLevel.ts index da223e524..aab9f8e4c 100644 --- a/shared/pubUtils/dictionary/DicFriendShipLevel.ts +++ b/shared/pubUtils/dictionary/DicFriendShipLevel.ts @@ -1,6 +1,6 @@ // 武将羁绊好感等级表 import { readJsonFile } from '../util'; -import { FILENAME } from '../../consts/consts'; +import { FILENAME } from '../../consts'; export interface DicFriendShipLevel { // 等级 diff --git a/shared/pubUtils/dictionary/DicFuncSwitch.ts b/shared/pubUtils/dictionary/DicFuncSwitch.ts index 619a83fe2..6b2f11e49 100644 --- a/shared/pubUtils/dictionary/DicFuncSwitch.ts +++ b/shared/pubUtils/dictionary/DicFuncSwitch.ts @@ -1,6 +1,6 @@ // 开启功能表 import { readJsonFile } from '../util'; -import { FILENAME } from '../../consts/consts'; +import { FILENAME } from '../../consts'; export interface DicFuncSwitch { // 功能id diff --git a/shared/pubUtils/dictionary/DicGoods.ts b/shared/pubUtils/dictionary/DicGoods.ts index c141acec9..fec003d02 100644 --- a/shared/pubUtils/dictionary/DicGoods.ts +++ b/shared/pubUtils/dictionary/DicGoods.ts @@ -1,8 +1,8 @@ // 物品表 import {decodeArrayListStr, readJsonFile, parseReward} from '../util' -import { FILENAME, IT_TYPE } from '../../consts/consts' +import { FILENAME, IT_TYPE, ABI_TYPE } from '../../consts' import { RewardInter } from '../interface'; -import { ABI_TYPE } from '../../consts'; +const _ = require('lodash'); export interface DicGoods { // 物品id @@ -43,6 +43,9 @@ export interface DicGoods { const str = readJsonFile(FILENAME.DIC_GOODS); let arr = JSON.parse(str); +type KeysEnum = { [P in keyof Required]: true }; +const DicGoodsKeys: KeysEnum = {good_id: true, name: true, lvLimted: true, pieces: true, composeMaterial: true, decomposeItem: true, quality: true, hole: true, itid: true, goodType: true, hid: true, goodsAbility: true, goodsAbilityUp: true, setid: true, specialAttr: true, value: true } + export const dicGoods = new Map(); export const blueprt = new Map>(); @@ -52,7 +55,7 @@ arr.forEach(o => { o.composeMaterial = parseReward(o.composeMaterial); o.decomposeItem = parseReward(o.decomposeItem); o.specialAttr = parseSpecialAttr(o.specialAttr); - dicGoods.set(o.good_id, o); + dicGoods.set(o.good_id, _.pick(o, Object.keys(DicGoodsKeys))); if(o.itid == IT_TYPE.BLUEPRT) { let arr = blueprt.get(o.quality)||new Array(); diff --git a/shared/pubUtils/dictionary/DicHero.ts b/shared/pubUtils/dictionary/DicHero.ts index 1bc9579be..71a3c7866 100644 --- a/shared/pubUtils/dictionary/DicHero.ts +++ b/shared/pubUtils/dictionary/DicHero.ts @@ -1,8 +1,8 @@ // 武将表 -import { ABI_TYPE } from '../../consts' +import { ABI_TYPE, FILENAME } from '../../consts' import { readJsonFile } from '../util' -import { FILENAME } from '../../consts/consts' +const _ = require('lodash'); export interface DicHero { // 武将id @@ -31,12 +31,14 @@ export interface DicHero { const str = readJsonFile(FILENAME.DIC_HERO); let arr = JSON.parse(str); +type KeysEnum = { [P in keyof Required]: true }; +const DicHeroKeys: KeysEnum = {heroId: true, name: true, quality: true, camp: true, jobid: true, skill: true, pieceId: true, initialStars: true, pieceCount: true, baseAbilityArr: true, baseAbilityUpArr: true}; export const dicHero = new Map(); arr.forEach(o => { o.baseAbilityArr = parseBaseAbilityArr(o); o.baseAbilityUpArr = parseBaseAbilityUpArr(o); - dicHero.set(o.heroId, o); + dicHero.set(o.heroId, _.pick(o, Object.keys(DicHeroKeys))); }); function parseBaseAbilityArr(json) { diff --git a/shared/pubUtils/dictionary/DicHeroQualityUp.ts b/shared/pubUtils/dictionary/DicHeroQualityUp.ts index e0f54b14e..9169cc155 100644 --- a/shared/pubUtils/dictionary/DicHeroQualityUp.ts +++ b/shared/pubUtils/dictionary/DicHeroQualityUp.ts @@ -1,6 +1,6 @@ // 武将技能表 import {parseReward, readJsonFile} from '../util' -import { FILENAME } from '../../consts/consts' +import { FILENAME } from '../../consts' import { RewardInter } from '../interface'; export interface DicHeroQualityUp { diff --git a/shared/pubUtils/dictionary/DicHeroSkill.ts b/shared/pubUtils/dictionary/DicHeroSkill.ts index 9bfa632d0..9da637772 100644 --- a/shared/pubUtils/dictionary/DicHeroSkill.ts +++ b/shared/pubUtils/dictionary/DicHeroSkill.ts @@ -1,6 +1,6 @@ // 武将技能表 import {decodeArrayListStr, readJsonFile} from '../util' -import { FILENAME } from '../../consts/consts' +import { FILENAME } from '../../consts' export interface DicHeroSkill { diff --git a/shared/pubUtils/dictionary/DicHeroStar.ts b/shared/pubUtils/dictionary/DicHeroStar.ts index a08c56802..4fdec7f7b 100644 --- a/shared/pubUtils/dictionary/DicHeroStar.ts +++ b/shared/pubUtils/dictionary/DicHeroStar.ts @@ -1,7 +1,7 @@ // 武将升星表 import { readJsonFile } from '../util' -import { FILENAME } from '../../consts/consts' -import { ABI_STAGE } from '../../consts'; +import { ABI_STAGE, FILENAME } from '../../consts'; +const _ = require('lodash'); export interface DicHeroStar { @@ -21,10 +21,13 @@ export interface DicHeroStar { const str = readJsonFile(FILENAME.DIC_HERO_STAR); let arr = JSON.parse(str); +type KeysEnum = { [P in keyof Required]: true }; +const DicHeroStarKeys: KeysEnum = {id: true, quality: true, star: true, advanceUpFragmentNum: true, ceAttr: true}; + export const dicHeroStar = new Map(); arr.forEach(o => { o.ceAttr = parseCeAttr(o); - dicHeroStar.set(`${o.quality}_${o.star}`, o); + dicHeroStar.set(`${o.quality}_${o.star}`, _.pick(o, Object.keys(DicHeroStarKeys))); }); function parseCeAttr(elem) { diff --git a/shared/pubUtils/dictionary/DicHeroWake.ts b/shared/pubUtils/dictionary/DicHeroWake.ts index 26628f2f3..2c423e04e 100644 --- a/shared/pubUtils/dictionary/DicHeroWake.ts +++ b/shared/pubUtils/dictionary/DicHeroWake.ts @@ -1,8 +1,8 @@ // 武将觉醒表 import { readJsonFile, parseReward } from '../util' -import { FILENAME } from '../../consts/consts' -import { ABI_STAGE } from '../../consts'; +import { ABI_STAGE, FILENAME } from '../../consts'; import { RewardInter } from '../interface'; +const _ = require('lodash'); export interface DicHeroWake { @@ -24,11 +24,14 @@ export interface DicHeroWake { const str = readJsonFile(FILENAME.DIC_HERO_WAKE); let arr = JSON.parse(str); +type KeysEnum = { [P in keyof Required]: true }; +const DicHeroWakeKeys: KeysEnum = {id: true, quality: true, star: true, fragmentNum: true, consume: true, ceAttr: true}; + export const dicHeroWake = new Map(); arr.forEach(o => { o.consume = parseReward(o.consume); o.ceAttr = parseCeAttr(o); - dicHeroWake.set(`${o.quality}_${o.star}`, o); + dicHeroWake.set(`${o.quality}_${o.star}`, _.pick(o, Object.keys(DicHeroWakeKeys))); }); function parseCeAttr(elem) { diff --git a/shared/pubUtils/dictionary/DicJob.ts b/shared/pubUtils/dictionary/DicJob.ts index 3fd87e466..7b1c0736e 100644 --- a/shared/pubUtils/dictionary/DicJob.ts +++ b/shared/pubUtils/dictionary/DicJob.ts @@ -1,7 +1,8 @@ // 兵种表 import {readJsonFile, parseNumberList, parseReward} from '../util' -import { FILENAME } from '../../consts/consts' +import { FILENAME } from '../../consts' import { RewardInter } from '../interface'; +const _ = require('lodash'); export interface DicJob { // 兵种id @@ -40,6 +41,9 @@ export interface DicJob { const str = readJsonFile(FILENAME.DIC_JOB); let arr = JSON.parse(str); +type KeysEnum = { [P in keyof Required]: true }; +const DicJobKeys: KeysEnum = {jobid: true, name: true, grade: true, unlockLevel: true, job_class: true, type: true, seid: true,trainingConsume: true, upGradeConsume: true, hp: true, atk: true, def: true, mdef: true, agi: true, luk: true}; + export const dicJob = new Map(); export const jobClassMaxGrades = new Map(); export const jobClassAndgrades = new Map(); @@ -48,7 +52,7 @@ arr.forEach(o => { o.seid = parseNumberList(o.seid); o.trainingConsume = parseReward(o.trainingConsume); o.upGradeConsume = parseReward(o.upGradeConsume); - dicJob.set(o.jobid, o); + dicJob.set(o.jobid, _.pick(o, Object.keys(DicJobKeys))); let jobClass = jobClassMaxGrades.get(o.job_class); if (!!jobClass && jobClass.grade < o.grade) { jobClassMaxGrades.set(o.job_class, {grade: o.grade,jobid: o.jobid}); diff --git a/shared/pubUtils/dictionary/DicKingExp.ts b/shared/pubUtils/dictionary/DicKingExp.ts index 951f3b962..e28960875 100644 --- a/shared/pubUtils/dictionary/DicKingExp.ts +++ b/shared/pubUtils/dictionary/DicKingExp.ts @@ -1,6 +1,6 @@ // 主公经验 import {readJsonFile} from '../util' -import { FILENAME } from '../../consts/consts' +import { FILENAME } from '../../consts' export interface DicKingExp { // 等级 diff --git a/shared/pubUtils/dictionary/DicQuestion.ts b/shared/pubUtils/dictionary/DicQuestion.ts index 76b7bf757..b0e3e3fcd 100644 --- a/shared/pubUtils/dictionary/DicQuestion.ts +++ b/shared/pubUtils/dictionary/DicQuestion.ts @@ -1,6 +1,6 @@ // 奇遇题库 import {readJsonFile} from '../util' -import { FILENAME } from '../../consts/consts' +import { FILENAME } from '../../consts' export interface DicQuestion { // 题目id diff --git a/shared/pubUtils/dictionary/DicSe.ts b/shared/pubUtils/dictionary/DicSe.ts index 44947f813..0b65eef54 100644 --- a/shared/pubUtils/dictionary/DicSe.ts +++ b/shared/pubUtils/dictionary/DicSe.ts @@ -1,6 +1,6 @@ // 武将特技表 import { readJsonFile, parseNumberList } from '../util' -import { FILENAME } from '../../consts/consts' +import { FILENAME } from '../../consts' export interface DicSe { diff --git a/shared/pubUtils/dictionary/DicTower.ts b/shared/pubUtils/dictionary/DicTower.ts index 544d6cd9f..25d4fd71d 100644 --- a/shared/pubUtils/dictionary/DicTower.ts +++ b/shared/pubUtils/dictionary/DicTower.ts @@ -1,6 +1,6 @@ // 镇念塔表 import {parseReward, decodeArrayListStr, readJsonFile, parseNumberList} from '../util' -import { FILENAME } from '../../consts/consts'; +import { FILENAME } from '../../consts'; import { RewardInter } from '../../pubUtils/interface'; export interface DicTower { diff --git a/shared/pubUtils/dictionary/DicTowerTask.ts b/shared/pubUtils/dictionary/DicTowerTask.ts index abfc77f7c..8bed36e1c 100644 --- a/shared/pubUtils/dictionary/DicTowerTask.ts +++ b/shared/pubUtils/dictionary/DicTowerTask.ts @@ -1,6 +1,6 @@ // 镇念塔派遣任务表 import {parseReward, decodeArrayListStr, decodeArrayStr, readJsonFile} from '../util' -import { FILENAME } from '../../consts/consts'; +import { FILENAME } from '../../consts'; import { RewardInter } from '../interface'; interface SuitFloor { diff --git a/shared/pubUtils/dictionary/DicWar.ts b/shared/pubUtils/dictionary/DicWar.ts index 60875ef4b..1c21f0361 100644 --- a/shared/pubUtils/dictionary/DicWar.ts +++ b/shared/pubUtils/dictionary/DicWar.ts @@ -1,6 +1,6 @@ // 关卡表 import {decodeArrayListStr, readJsonFile} from '../util' -import { WAR_RELATE_TABLES } from '../../consts/consts'; +import { WAR_RELATE_TABLES } from '../../consts'; export interface DicWar { diff --git a/shared/pubUtils/dictionary/DicXunbao.ts b/shared/pubUtils/dictionary/DicXunbao.ts index 386b04070..ad59c8ecc 100644 --- a/shared/pubUtils/dictionary/DicXunbao.ts +++ b/shared/pubUtils/dictionary/DicXunbao.ts @@ -1,6 +1,6 @@ // 寻宝表 import { readJsonFile } from '../util' -import { FILENAME } from '../../consts/consts' +import { FILENAME } from '../../consts' export interface DicXunbao {