Skip to content

Commit 8affe04

Browse files
committed
fix(next-nest/permission): find all permission filter (opentiny#212)
* fix(next-nest/permission): find all permission filter * fix(next-nest/permission): add api-param swagger
1 parent 56b0134 commit 8affe04

3 files changed

Lines changed: 23 additions & 21 deletions

File tree

template/nest-next/src/permission/dto/remove-permission.dto.ts

Lines changed: 7 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { I18nTranslations } from '@app/shared';
22
import { ApiProperty } from '@nestjs/swagger';
3-
import { IsNotEmpty, IsNumber } from 'class-validator';
3+
import { IsNotEmpty, IsString } from 'class-validator';
44
import { i18nValidationMessage } from 'nestjs-i18n';
55
import type { PermissionId } from '../permission.entry';
66

@@ -9,18 +9,12 @@ export class RemovePermissionRequest {
99
@IsNotEmpty({
1010
message: i18nValidationMessage<I18nTranslations>('validation.NOT_EMPTY'),
1111
})
12-
@IsNumber(
13-
{},
14-
{
15-
message: i18nValidationMessage<I18nTranslations>(
16-
'validation.TYPE_ERROR',
17-
{
18-
type: 'string',
19-
property: 'id',
20-
},
21-
),
22-
},
23-
)
12+
@IsString({
13+
message: i18nValidationMessage<I18nTranslations>('validation.TYPE_ERROR', {
14+
type: 'string',
15+
property: 'id',
16+
}),
17+
})
2418
id: PermissionId;
2519
}
2620

template/nest-next/src/permission/permission.controller.ts

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,11 @@ import {
2323
ApiParam,
2424
ApiQuery,
2525
} from '@nestjs/swagger';
26-
import { RemovePermissionResponse } from './dto/remove-permission.dto';
26+
import {
27+
RemovePermissionRequest,
28+
RemovePermissionResponse,
29+
} from './dto/remove-permission.dto';
2730
import { Reject } from '@app/shared/decorator';
28-
import type { PermissionId } from './permission.entry';
2931

3032
@Controller('permission')
3133
export class PermissionController {
@@ -50,7 +52,7 @@ export class PermissionController {
5052
@ApiOperation({ summary: '分页查询权限' })
5153
@ApiQuery({ name: 'page', description: '页码, 必须是一个正整数' })
5254
@ApiQuery({ name: 'limit', description: '页大小, 必须是一个正整数' })
53-
@ApiQuery({ name: 'name', description: '模糊查找条件' })
55+
@ApiQuery({ name: 'name', description: '模糊查找条件', required: false })
5456
@Get()
5557
findAllPermission(
5658
@Query('page', new DefaultValuePipe('1'), ParseIntPipe) page: number,
@@ -61,10 +63,14 @@ export class PermissionController {
6163
}
6264

6365
@ApiOperation({ summary: '删除权限字段' })
64-
@ApiParam({ name: 'id', description: '你想删除的权限字段的数据库主键' })
66+
@ApiParam({
67+
name: 'id',
68+
description: '你想删除的权限字段的数据库主键',
69+
type: String,
70+
})
6571
@ApiOkResponse({ type: RemovePermissionResponse })
6672
@Delete(':id')
67-
remove(@Param('id', ParseIntPipe) id: PermissionId) {
73+
remove(@Param() { id }: RemovePermissionRequest) {
6874
return this.permissionService.remove(id);
6975
}
7076
}

template/nest-next/src/permission/queries/get-all-permissions.query.ts

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,11 @@ export class GetAllPermissionQueryHandler implements IQueryHandler<GetAllPermiss
2626
) {}
2727
async execute(query: GetAllPermissionQuery): Promise<GetPermissionResponse> {
2828
const [items, total] = await this.permissionRepo.findAndCount(
29-
{
30-
name: { $like: `%${query.name}%` },
31-
},
29+
query.name
30+
? {
31+
name: { $like: query.name },
32+
}
33+
: {},
3234
{
3335
offset: (query.page - 1) * query.size,
3436
limit: query.size,

0 commit comments

Comments
 (0)