メニューを追加する

メニューはLogin時にLoginAction.login()でロードされCommonResources.userDto.menuDtoListに格納される。
UserDtoが

@Component(instance = InstanceType.SESSION)

とセッションスコープになっていてこれをセッション内で使いまわす構造となる。

メニューのロードはroot.service.MenuService.findMenuByUserId()を通して行われる。

データ構成


データの取得はroot.entity.sql.menu.FindMenuByUserId.sqlで。
parentId=nullの親階層はユーザーRollに関係なく常に取り込まれる。
子階層はGrantRollで有効になっているもののみが取得される。

これらのメニューはMenuService.convertMenuJoinToDto()で整形されメニューとして利用される。
この際子の無い親階層は省略されることに注意。