diff --git a/packages/toolkits/pro/template/server/nestJs/src/menu/dto/delete-menu.dto.ts b/packages/toolkits/pro/template/server/nestJs/src/menu/dto/delete-menu.dto.ts
deleted file mode 100644
index fba71a0f..00000000
--- a/packages/toolkits/pro/template/server/nestJs/src/menu/dto/delete-menu.dto.ts
+++ /dev/null
@@ -1,8 +0,0 @@
-import { IsNotEmpty } from 'class-validator';
-
-export class DeleteMenuDto {
- @IsNotEmpty()
- id: number;
- @IsNotEmpty()
- name: string;
-}
diff --git a/packages/toolkits/pro/template/server/nestJs/src/menu/dto/update-menu.dto.ts b/packages/toolkits/pro/template/server/nestJs/src/menu/dto/update-menu.dto.ts
index a8de5514..13a859e8 100644
--- a/packages/toolkits/pro/template/server/nestJs/src/menu/dto/update-menu.dto.ts
+++ b/packages/toolkits/pro/template/server/nestJs/src/menu/dto/update-menu.dto.ts
@@ -1,6 +1,8 @@
import { PartialType } from '@nestjs/mapped-types';
import { CreateMenuDto } from './create-menu.dto';
+import {IsNotEmpty} from "class-validator";
export class UpdateMenuDto extends PartialType(CreateMenuDto) {
+ @IsNotEmpty()
id: number;
}
diff --git a/packages/toolkits/pro/template/server/nestJs/src/menu/menu.controller.ts b/packages/toolkits/pro/template/server/nestJs/src/menu/menu.controller.ts
index 5913c059..acbc9b7a 100644
--- a/packages/toolkits/pro/template/server/nestJs/src/menu/menu.controller.ts
+++ b/packages/toolkits/pro/template/server/nestJs/src/menu/menu.controller.ts
@@ -4,22 +4,27 @@ import {
Post,
Body,
Patch,
- Req,
- Delete,
+ Query,
+ Delete, Param,
} from '@nestjs/common';
import { MenuService } from './menu.service';
import { CreateMenuDto } from './dto/create-menu.dto';
import { Permission } from '../public/permission.decorator';
import { UpdateMenuDto } from './dto/update-menu.dto';
-import { DeleteMenuDto } from './dto/delete-menu.dto';
@Controller('menu')
export class MenuController {
constructor(private readonly menuService: MenuService) {}
+ @Get('/role/:email')
+ async getMenus(@Param('email') email: string) {
+ return this.menuService.findRoleMenu(email);
+ }
+
@Get()
- async getMenus(@Req() req) {
- return this.menuService.findAll(req.user);
+ @Permission('menu::query')
+ async getAllMenus() {
+ return this.menuService.findAllMenu();
}
@Post()
@@ -36,7 +41,7 @@ export class MenuController {
@Delete()
@Permission('menu::remove')
- async deleteMenu(@Body() dto: DeleteMenuDto) {
- return this.menuService.deleteMenu(dto);
+ async deleteMenu(@Query('id') id: number, @Query('parentId') parentId: number) {
+ return this.menuService.deleteMenu(id, parentId);
}
}
diff --git a/packages/toolkits/pro/template/server/nestJs/src/menu/menu.service.ts b/packages/toolkits/pro/template/server/nestJs/src/menu/menu.service.ts
index 8609f651..67b474bc 100644
--- a/packages/toolkits/pro/template/server/nestJs/src/menu/menu.service.ts
+++ b/packages/toolkits/pro/template/server/nestJs/src/menu/menu.service.ts
@@ -4,7 +4,6 @@ import { Menu, User } from '@app/models';
import { Repository } from 'typeorm';
import { CreateMenuDto } from './dto/create-menu.dto';
import { UpdateMenuDto } from './dto/update-menu.dto';
-import { DeleteMenuDto } from './dto/delete-menu.dto';
export interface ITreeNodeData {
// node-key='id' 设置节点的唯一标识
@@ -17,6 +16,14 @@ export interface ITreeNodeData {
url: string;
//组件
component: string;
+ //图标
+ icon: string;
+ //类型
+ menuType: string;
+ //父节点
+ parentId: number;
+ //排序
+ order: number;
}
interface MenuMap {
@@ -30,6 +37,10 @@ const toNode = (menu: Menu): ITreeNodeData => {
children: [],
url: menu.path,
component: menu.component,
+ icon: menu.icon,
+ menuType: menu.menuType,
+ parentId: menu.parentId,
+ order: menu.order,
};
};
@@ -58,13 +69,13 @@ export class MenuService {
@InjectRepository(Menu)
private menu: Repository