wangzhibo
6 天以前 3f249e399659dcd09d3fe58071b146e50e45c17f
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
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();
  }
}