diff --git a/gm-server/app/controller/game.ts b/gm-server/app/controller/game.ts index 448125cf7..92854d190 100644 --- a/gm-server/app/controller/game.ts +++ b/gm-server/app/controller/game.ts @@ -25,4 +25,10 @@ export default class GameController extends Controller { ctx.body = await ctx.service.game.getDicRmb(); return } + + public async getDicActivityType() { + const { ctx } = this; + ctx.body = await ctx.service.game.getDicActivityType(); + return + } } diff --git a/gm-server/app/router.ts b/gm-server/app/router.ts index 551d1f2bb..44827ba32 100644 --- a/gm-server/app/router.ts +++ b/gm-server/app/router.ts @@ -47,6 +47,7 @@ export default (app: Application) => { router.post('/api/game/getserverlistbyenv', controller.game.getServerListByEnv); router.post('/api/game/getdichero', controller.game.getDicHero); router.post('/api/game/getdicrmb', controller.game.getDicRMB); + router.post('/api/game/getdicactivitytype', controller.game.getDicActivityType); router.post('/api/activity/getactivitylist', controller.activity.getActivityList); router.post('/api/activity/updateactivity', controller.activity.updateActivity); diff --git a/gm-server/app/service/Game.ts b/gm-server/app/service/Game.ts index d32cc652a..0a08cd189 100644 --- a/gm-server/app/service/Game.ts +++ b/gm-server/app/service/Game.ts @@ -5,6 +5,7 @@ import { ServerlistModel } from '@db/Serverlist'; import { gameData } from '@pubUtils/data'; import { DicHero } from '@pubUtils/dictionary/DicHero'; import { DicRMB } from '@pubUtils/dictionary/DicRMB'; +import { DicActivityType } from '@pubUtils/dictionary/DicActivityType'; /** * Test Service @@ -62,4 +63,10 @@ export default class Game extends Service { }) } + public async getDicActivityType() { + let list: DicActivityType[] = gameData.activityType; + return this.ctx.service.utils.resResult(STATUS.SUCCESS, { + list + }) + } } diff --git a/shared/consts/constModules/sysConst.ts b/shared/consts/constModules/sysConst.ts index 672f673e6..a5255fcab 100644 --- a/shared/consts/constModules/sysConst.ts +++ b/shared/consts/constModules/sysConst.ts @@ -434,7 +434,8 @@ export const FILENAME = { DIC_GACHA_CONTENT: 'dic_zyz_recruitContent', DIC_GIFT_PACKAGE: 'dic_zyz_giftPackage', DIC_RECRUIT: 'dic_zyz_recruit', - DIC_RMB: 'dic_zyz_rmb' + DIC_RMB: 'dic_zyz_rmb', + DIC_ACTIVITY_TYPE: 'dic_zyz_activityType' } export const WAR_RELATE_TABLES = [ diff --git a/shared/pubUtils/data.ts b/shared/pubUtils/data.ts index 05983c2e4..b382fce94 100644 --- a/shared/pubUtils/data.ts +++ b/shared/pubUtils/data.ts @@ -82,6 +82,7 @@ import { dicGachaContent, dicGachaContentHero, loadGachaContent } from "./dictio import { dicGiftPackage, loadGiftPackage } from "./dictionary/DicGiftPackage"; import { dicRecruit, loadRecruit } from './dictionary/DicRecruit'; import { loadRMB, dicRMB } from './dictionary/DicRMB'; +import { dicActivityType, loadActivityType } from './dictionary/DicActivityType'; export const gameData = { blurprtCompose: dicBlueprtCompose, @@ -200,7 +201,8 @@ export const gameData = { giftPackage: dicGiftPackage, comBtlLvRange: new Map>(), recruit: dicRecruit, - rmb: dicRMB + rmb: dicRMB, + activityType: dicActivityType }; // 在此提供一些原先在gamedata中提供的方法,以便更方便获取gameData数据 @@ -759,6 +761,7 @@ function loadDatas() { loadGiftPackage(); loadRecruit(); loadRMB(); + loadActivityType(); } // 重载dicParam diff --git a/shared/pubUtils/dictionary/DicActivityType.ts b/shared/pubUtils/dictionary/DicActivityType.ts new file mode 100644 index 000000000..528863f05 --- /dev/null +++ b/shared/pubUtils/dictionary/DicActivityType.ts @@ -0,0 +1,32 @@ +import { readFileAndParse } from '../util' +import { FILENAME, ACTIVITY_TYPE } from '../../consts' +type KeysEnum = { [P in keyof Required]: true }; +const _ = require('lodash'); + +export interface DicActivityType { + readonly id: number; + // 活动类型 + readonly activityType: ACTIVITY_TYPE; + // 类型变量名 + readonly name: string; + // 类型描述 + readonly desc: string; +} + +const DicActivityTypeKeys: KeysEnum = { + id: true, + activityType: true, + name: true, + desc: true, +}; + +export const dicActivityType = new Array(); +export function loadActivityType() { + + let arr = readFileAndParse(FILENAME.DIC_ACTIVITY_TYPE); + arr.forEach(o => { + o.desc = o.string; + dicActivityType.push(_.pick(o, Object.keys(DicActivityTypeKeys))); + }); + arr = undefined; +} \ No newline at end of file