From c49d07dbaf78eba117ba5483716e88a2a86d22fd Mon Sep 17 00:00:00 2001 From: snowgitea Date: Wed, 1 Jul 2026 17:56:06 +0800 Subject: [PATCH] chore: src/modules/base/event/menu.ts --- src/modules/base/event/menu.ts | 50 ++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 src/modules/base/event/menu.ts diff --git a/src/modules/base/event/menu.ts b/src/modules/base/event/menu.ts new file mode 100644 index 0000000..f504eb4 --- /dev/null +++ b/src/modules/base/event/menu.ts @@ -0,0 +1,50 @@ +import { CoolEvent, CoolEventManager, Event } from '@cool-midway/core'; +import { BaseSysMenuService } from '../service/sys/menu'; +import { + App, + ILogger, + IMidwayApplication, + Inject, + Logger, +} from '@midwayjs/core'; +import { BaseTranslateService } from '../service/translate'; + +/** + * 导入菜单 + */ +@CoolEvent() +export class BaseMenuEvent { + @Logger() + coreLogger: ILogger; + + @Inject() + baseSysMenuService: BaseSysMenuService; + + @App() + app: IMidwayApplication; + + @Inject() + coolEventManager: CoolEventManager; + + @Inject() + baseTranslateService: BaseTranslateService; + + @Event('onMenuImport') + async onMenuImport(datas) { + for (const module in datas) { + await this.baseSysMenuService.import(datas[module]); + this.coreLogger.info( + '\x1B[36m [cool:module:base] midwayjs cool module base import [' + + module + + '] module menu success \x1B[0m' + ); + } + this.coolEventManager.emit('onMenuInit', {}); + this.baseTranslateService.check(); + } + + @Event('onServerReady') + async onServerReady() { + this.baseTranslateService.loadTranslations(); + } +}