字典表筛选字段,修改FILENAME位置

This commit is contained in:
luying
2020-12-16 16:47:29 +08:00
parent 7118e1bca3
commit aef1ad9403
27 changed files with 108 additions and 38 deletions
+53
View File
@@ -44,3 +44,56 @@ export const FRIEND_DROP_TYPE = {
export const FRIEND_DROP_MAX = { export const FRIEND_DROP_MAX = {
COM_BTL: 150 COM_BTL: 150
} }
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
]
+5 -3
View File
@@ -1,14 +1,14 @@
import { COUNTER } from './../consts'; import { COUNTER } from './../consts';
import { CounterModel } from './Counter'; import { CounterModel } from './Counter';
import BaseModel from './BaseModel'; import BaseModel from './BaseModel';
import { index, getModelForClass, prop, DocumentType } from '@typegoose/typegoose'; import { index, getModelForClass, prop, DocumentType, modelOptions } from '@typegoose/typegoose';
/** /**
* GM用户组接口 * GM用户组接口
*/ */
@index({ id: 1 }) @index({ id: 1 })
@index({ group: 1 }) @index({ group: 1 })
@modelOptions({schemaOptions: {id: false}})
export default class GMGroup extends BaseModel { export default class GMGroup extends BaseModel {
@prop({ required: true }) @prop({ required: true })
id: number; id: number;
@@ -76,4 +76,6 @@ export default class GMGroup extends BaseModel {
export const GMGroupModel = getModelForClass(GMGroup); export const GMGroupModel = getModelForClass(GMGroup);
export interface GMGroupType extends Pick<DocumentType<GMGroup>, keyof GMGroup>{}; export interface GMGroupType extends Pick<DocumentType<GMGroup>, keyof GMGroup>{
id: number;
};
@@ -1,6 +1,6 @@
// 藏宝图合成表 // 藏宝图合成表
import { readJsonFile } from '../util' import { readJsonFile } from '../util'
import { FILENAME } from '../../consts/consts' import { FILENAME } from '../../consts'
export interface DicBlueprtCompose { export interface DicBlueprtCompose {
@@ -1,6 +1,6 @@
// 藏宝图掉落率 // 藏宝图掉落率
import { decodeArrayListStr, readJsonFile } from '../util' import { decodeArrayListStr, readJsonFile } from '../util'
import { FILENAME } from '../../consts/consts' import { FILENAME } from '../../consts'
export interface DicBlueprtPossibility { export interface DicBlueprtPossibility {
+1 -1
View File
@@ -1,6 +1,6 @@
// 主公经验 // 主公经验
import {readJsonFile} from '../util' import {readJsonFile} from '../util'
import { FILENAME } from '../../consts/consts' import { FILENAME } from '../../consts'
export interface DicCharExp { export interface DicCharExp {
// 等级 // 等级
+1 -1
View File
@@ -1,6 +1,6 @@
// 每日总表 // 每日总表
import { readJsonFile, parseNumberList } from '../util' import { readJsonFile, parseNumberList } from '../util'
import { FILENAME } from '../../consts/consts' import { FILENAME } from '../../consts'
export interface DicDaily { export interface DicDaily {
// 每日类型 // 每日类型
+1 -1
View File
@@ -1,6 +1,6 @@
// 奇遇表 // 奇遇表
import { parseReward, decodeArrayStr, readJsonFile, parseNumberList } from '../util' import { parseReward, decodeArrayStr, readJsonFile, parseNumberList } from '../util'
import { FILENAME } from '../../consts/consts' import { FILENAME } from '../../consts'
import { RewardInter } from '../../pubUtils/interface'; import { RewardInter } from '../../pubUtils/interface';
interface SuitLevel { interface SuitLevel {
+1 -1
View File
@@ -1,6 +1,6 @@
// 远征关卡表 // 远征关卡表
import { readJsonFile } from '../util' import { readJsonFile } from '../util'
import { FILENAME } from '../../consts/consts' import { FILENAME } from '../../consts'
export interface DicExpedition { export interface DicExpedition {
// 远征id // 远征id
@@ -1,6 +1,6 @@
// 远征点数奖励表 // 远征点数奖励表
import { parseReward, readJsonFile } from '../util'; import { parseReward, readJsonFile } from '../util';
import { FILENAME } from '../../consts/consts'; import { FILENAME } from '../../consts';
import { RewardInter } from '../interface'; import { RewardInter } from '../interface';
export interface DicExpeditionPoint { export interface DicExpeditionPoint {
+1 -1
View File
@@ -1,6 +1,6 @@
// 时装表 // 时装表
import { decodeArrayListStr, readJsonFile, parseNumberList } from '../util'; import { decodeArrayListStr, readJsonFile, parseNumberList } from '../util';
import { FILENAME } from '../../consts/consts'; import { FILENAME } from '../../consts';
export interface DicFashions { export interface DicFashions {
// 时装id // 时装id
+1 -1
View File
@@ -1,6 +1,6 @@
// 武将羁绊表 // 武将羁绊表
import { decodeArrayListStr, readJsonFile, parseNumberList } from '../util'; import { decodeArrayListStr, readJsonFile, parseNumberList } from '../util';
import { FILENAME } from '../../consts/consts'; import { FILENAME } from '../../consts';
export interface DicFriendShip { export interface DicFriendShip {
// id // id
@@ -1,6 +1,6 @@
// 武将羁绊好感等级表 // 武将羁绊好感等级表
import { readJsonFile } from '../util'; import { readJsonFile } from '../util';
import { FILENAME } from '../../consts/consts'; import { FILENAME } from '../../consts';
export interface DicFriendShipLevel { export interface DicFriendShipLevel {
// 等级 // 等级
+1 -1
View File
@@ -1,6 +1,6 @@
// 开启功能表 // 开启功能表
import { readJsonFile } from '../util'; import { readJsonFile } from '../util';
import { FILENAME } from '../../consts/consts'; import { FILENAME } from '../../consts';
export interface DicFuncSwitch { export interface DicFuncSwitch {
// 功能id // 功能id
+6 -3
View File
@@ -1,8 +1,8 @@
// 物品表 // 物品表
import {decodeArrayListStr, readJsonFile, parseReward} from '../util' 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 { RewardInter } from '../interface';
import { ABI_TYPE } from '../../consts'; const _ = require('lodash');
export interface DicGoods { export interface DicGoods {
// 物品id // 物品id
@@ -43,6 +43,9 @@ export interface DicGoods {
const str = readJsonFile(FILENAME.DIC_GOODS); const str = readJsonFile(FILENAME.DIC_GOODS);
let arr = JSON.parse(str); let arr = JSON.parse(str);
type KeysEnum<T> = { [P in keyof Required<T>]: true };
const DicGoodsKeys: KeysEnum<DicGoods> = {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<number, DicGoods>(); export const dicGoods = new Map<number, DicGoods>();
export const blueprt = new Map<number, Array<number>>(); export const blueprt = new Map<number, Array<number>>();
@@ -52,7 +55,7 @@ arr.forEach(o => {
o.composeMaterial = parseReward(o.composeMaterial); o.composeMaterial = parseReward(o.composeMaterial);
o.decomposeItem = parseReward(o.decomposeItem); o.decomposeItem = parseReward(o.decomposeItem);
o.specialAttr = parseSpecialAttr(o.specialAttr); 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) { if(o.itid == IT_TYPE.BLUEPRT) {
let arr = blueprt.get(o.quality)||new Array<number>(); let arr = blueprt.get(o.quality)||new Array<number>();
+5 -3
View File
@@ -1,8 +1,8 @@
// 武将表 // 武将表
import { ABI_TYPE } from '../../consts' import { ABI_TYPE, FILENAME } from '../../consts'
import { readJsonFile } from '../util' import { readJsonFile } from '../util'
import { FILENAME } from '../../consts/consts' const _ = require('lodash');
export interface DicHero { export interface DicHero {
// 武将id // 武将id
@@ -31,12 +31,14 @@ export interface DicHero {
const str = readJsonFile(FILENAME.DIC_HERO); const str = readJsonFile(FILENAME.DIC_HERO);
let arr = JSON.parse(str); let arr = JSON.parse(str);
type KeysEnum<T> = { [P in keyof Required<T>]: true };
const DicHeroKeys: KeysEnum<DicHero> = {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<number, DicHero>(); export const dicHero = new Map<number, DicHero>();
arr.forEach(o => { arr.forEach(o => {
o.baseAbilityArr = parseBaseAbilityArr(o); o.baseAbilityArr = parseBaseAbilityArr(o);
o.baseAbilityUpArr = parseBaseAbilityUpArr(o); o.baseAbilityUpArr = parseBaseAbilityUpArr(o);
dicHero.set(o.heroId, o); dicHero.set(o.heroId, _.pick(o, Object.keys(DicHeroKeys)));
}); });
function parseBaseAbilityArr(json) { function parseBaseAbilityArr(json) {
@@ -1,6 +1,6 @@
// 武将技能表 // 武将技能表
import {parseReward, readJsonFile} from '../util' import {parseReward, readJsonFile} from '../util'
import { FILENAME } from '../../consts/consts' import { FILENAME } from '../../consts'
import { RewardInter } from '../interface'; import { RewardInter } from '../interface';
export interface DicHeroQualityUp { export interface DicHeroQualityUp {
+1 -1
View File
@@ -1,6 +1,6 @@
// 武将技能表 // 武将技能表
import {decodeArrayListStr, readJsonFile} from '../util' import {decodeArrayListStr, readJsonFile} from '../util'
import { FILENAME } from '../../consts/consts' import { FILENAME } from '../../consts'
export interface DicHeroSkill { export interface DicHeroSkill {
+6 -3
View File
@@ -1,7 +1,7 @@
// 武将升星表 // 武将升星表
import { readJsonFile } from '../util' import { readJsonFile } from '../util'
import { FILENAME } from '../../consts/consts' import { ABI_STAGE, FILENAME } from '../../consts';
import { ABI_STAGE } from '../../consts'; const _ = require('lodash');
export interface DicHeroStar { export interface DicHeroStar {
@@ -21,10 +21,13 @@ export interface DicHeroStar {
const str = readJsonFile(FILENAME.DIC_HERO_STAR); const str = readJsonFile(FILENAME.DIC_HERO_STAR);
let arr = JSON.parse(str); let arr = JSON.parse(str);
type KeysEnum<T> = { [P in keyof Required<T>]: true };
const DicHeroStarKeys: KeysEnum<DicHeroStar> = {id: true, quality: true, star: true, advanceUpFragmentNum: true, ceAttr: true};
export const dicHeroStar = new Map<string, DicHeroStar>(); export const dicHeroStar = new Map<string, DicHeroStar>();
arr.forEach(o => { arr.forEach(o => {
o.ceAttr = parseCeAttr(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) { function parseCeAttr(elem) {
+6 -3
View File
@@ -1,8 +1,8 @@
// 武将觉醒表 // 武将觉醒表
import { readJsonFile, parseReward } from '../util' import { readJsonFile, parseReward } from '../util'
import { FILENAME } from '../../consts/consts' import { ABI_STAGE, FILENAME } from '../../consts';
import { ABI_STAGE } from '../../consts';
import { RewardInter } from '../interface'; import { RewardInter } from '../interface';
const _ = require('lodash');
export interface DicHeroWake { export interface DicHeroWake {
@@ -24,11 +24,14 @@ export interface DicHeroWake {
const str = readJsonFile(FILENAME.DIC_HERO_WAKE); const str = readJsonFile(FILENAME.DIC_HERO_WAKE);
let arr = JSON.parse(str); let arr = JSON.parse(str);
type KeysEnum<T> = { [P in keyof Required<T>]: true };
const DicHeroWakeKeys: KeysEnum<DicHeroWake> = {id: true, quality: true, star: true, fragmentNum: true, consume: true, ceAttr: true};
export const dicHeroWake = new Map<string, DicHeroWake>(); export const dicHeroWake = new Map<string, DicHeroWake>();
arr.forEach(o => { arr.forEach(o => {
o.consume = parseReward(o.consume); o.consume = parseReward(o.consume);
o.ceAttr = parseCeAttr(o); 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) { function parseCeAttr(elem) {
+6 -2
View File
@@ -1,7 +1,8 @@
// 兵种表 // 兵种表
import {readJsonFile, parseNumberList, parseReward} from '../util' import {readJsonFile, parseNumberList, parseReward} from '../util'
import { FILENAME } from '../../consts/consts' import { FILENAME } from '../../consts'
import { RewardInter } from '../interface'; import { RewardInter } from '../interface';
const _ = require('lodash');
export interface DicJob { export interface DicJob {
// 兵种id // 兵种id
@@ -40,6 +41,9 @@ export interface DicJob {
const str = readJsonFile(FILENAME.DIC_JOB); const str = readJsonFile(FILENAME.DIC_JOB);
let arr = JSON.parse(str); let arr = JSON.parse(str);
type KeysEnum<T> = { [P in keyof Required<T>]: true };
const DicJobKeys: KeysEnum<DicJob> = {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<number, DicJob>(); export const dicJob = new Map<number, DicJob>();
export const jobClassMaxGrades = new Map<number, {grade:number, jobid:number}>(); export const jobClassMaxGrades = new Map<number, {grade:number, jobid:number}>();
export const jobClassAndgrades = new Map<string, {jobid:number, unlockLevel:number}>(); export const jobClassAndgrades = new Map<string, {jobid:number, unlockLevel:number}>();
@@ -48,7 +52,7 @@ arr.forEach(o => {
o.seid = parseNumberList(o.seid); o.seid = parseNumberList(o.seid);
o.trainingConsume = parseReward(o.trainingConsume); o.trainingConsume = parseReward(o.trainingConsume);
o.upGradeConsume = parseReward(o.upGradeConsume); 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); let jobClass = jobClassMaxGrades.get(o.job_class);
if (!!jobClass && jobClass.grade < o.grade) { if (!!jobClass && jobClass.grade < o.grade) {
jobClassMaxGrades.set(o.job_class, {grade: o.grade,jobid: o.jobid}); jobClassMaxGrades.set(o.job_class, {grade: o.grade,jobid: o.jobid});
+1 -1
View File
@@ -1,6 +1,6 @@
// 主公经验 // 主公经验
import {readJsonFile} from '../util' import {readJsonFile} from '../util'
import { FILENAME } from '../../consts/consts' import { FILENAME } from '../../consts'
export interface DicKingExp { export interface DicKingExp {
// 等级 // 等级
+1 -1
View File
@@ -1,6 +1,6 @@
// 奇遇题库 // 奇遇题库
import {readJsonFile} from '../util' import {readJsonFile} from '../util'
import { FILENAME } from '../../consts/consts' import { FILENAME } from '../../consts'
export interface DicQuestion { export interface DicQuestion {
// 题目id // 题目id
+1 -1
View File
@@ -1,6 +1,6 @@
// 武将特技表 // 武将特技表
import { readJsonFile, parseNumberList } from '../util' import { readJsonFile, parseNumberList } from '../util'
import { FILENAME } from '../../consts/consts' import { FILENAME } from '../../consts'
export interface DicSe { export interface DicSe {
+1 -1
View File
@@ -1,6 +1,6 @@
// 镇念塔表 // 镇念塔表
import {parseReward, decodeArrayListStr, readJsonFile, parseNumberList} from '../util' import {parseReward, decodeArrayListStr, readJsonFile, parseNumberList} from '../util'
import { FILENAME } from '../../consts/consts'; import { FILENAME } from '../../consts';
import { RewardInter } from '../../pubUtils/interface'; import { RewardInter } from '../../pubUtils/interface';
export interface DicTower { export interface DicTower {
+1 -1
View File
@@ -1,6 +1,6 @@
// 镇念塔派遣任务表 // 镇念塔派遣任务表
import {parseReward, decodeArrayListStr, decodeArrayStr, readJsonFile} from '../util' import {parseReward, decodeArrayListStr, decodeArrayStr, readJsonFile} from '../util'
import { FILENAME } from '../../consts/consts'; import { FILENAME } from '../../consts';
import { RewardInter } from '../interface'; import { RewardInter } from '../interface';
interface SuitFloor { interface SuitFloor {
+1 -1
View File
@@ -1,6 +1,6 @@
// 关卡表 // 关卡表
import {decodeArrayListStr, readJsonFile} from '../util' import {decodeArrayListStr, readJsonFile} from '../util'
import { WAR_RELATE_TABLES } from '../../consts/consts'; import { WAR_RELATE_TABLES } from '../../consts';
export interface DicWar { export interface DicWar {
+1 -1
View File
@@ -1,6 +1,6 @@
// 寻宝表 // 寻宝表
import { readJsonFile } from '../util' import { readJsonFile } from '../util'
import { FILENAME } from '../../consts/consts' import { FILENAME } from '../../consts'
export interface DicXunbao { export interface DicXunbao {