Skip to content

Commit 89b6922

Browse files
committed
fix swagger property
1 parent 2ebaa66 commit 89b6922

22 files changed

+154
-102
lines changed

.rc

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
alias dyarn="docker compose exec app yarn"
2+
alias dreset="docker compose restart app"
3+
alias dlog="docker compose logs app -f"

migrations/1697207588388-CreatePermissionsTable.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,9 @@ export class CreatePermissionsTable1697207588388 implements MigrationInterface {
99
{ name: "id", type: "int8", isPrimary: true, isGenerated: true, generationStrategy: 'increment' },
1010
{ name: "name", type: "varchar", isNullable: false },
1111
{ name: "path", type: "varchar", isNullable: true },
12-
{ name: "description", type: "varchar", isNullable: true,},
12+
{ name: "action", type: "varchar", isNullable: true },
13+
{ name: "created_at", type: "timestamp", isNullable: true },
14+
{ name: "updated_at", type: "timestamp", isNullable: true },
1315
],
1416
indices: [
1517
{ columnNames: ['id'] },

nest-cli.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
"compilerOptions": {
66
"deleteOutDir": true,
77
"watchAssets": true,
8+
"plugins": ["@nestjs/swagger"],
89
"assets": [
910
{
1011
"include": "service-account.json",

package.json

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,6 @@
3636
"@nestjs/platform-express": "^10.0.2",
3737
"@nestjs/swagger": "^7.1.13",
3838
"@nestjs/typeorm": "^10.0.0",
39-
"@nestjsx/crud": "^5.0.0-alpha.3",
40-
"@nestjsx/crud-typeorm": "^5.0.0-alpha.3",
4139
"@svtslv/nestjs-ioredis": "^1.0.2",
4240
"bcrypt": "^5.1.0",
4341
"cache-manager-redis-store": "^3.0.1",

src/admin/admin.module.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,13 @@ import { SwaggerModule } from "@nestjs/swagger";
33
import { UserModule } from "src/apps/user/user.module";
44
import { UsersModule } from "./users/users.module";
55
import { RolesModule } from './roles/roles.module';
6+
import { PermissionsModule } from './permissions/permissions.module';
67

78
@Module({
89
imports: [
910
UsersModule,
1011
RolesModule,
12+
PermissionsModule,
1113
]
1214
})
1315
export class AdminModule {}
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
import { ApiProperty } from "@nestjs/swagger";
2+
import { IsNotEmpty } from "class-validator";
3+
4+
export class CreatePermissionDto {
5+
@ApiProperty()
6+
name: string;
7+
8+
@ApiProperty()
9+
path: string;
10+
11+
@ApiProperty()
12+
action: string;
13+
}
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
import { PartialType } from '@nestjs/swagger';
2+
import { CreatePermissionDto } from './create-permission.dto';
3+
4+
export class UpdatePermissionDto extends PartialType(CreatePermissionDto) {}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
import { Controller, Get, Post, Body, Patch, Param, Delete } from '@nestjs/common';
2+
import { PermissionsService } from './permissions.service';
3+
import { CreatePermissionDto } from './dto/create-permission.dto';
4+
import { UpdatePermissionDto } from './dto/update-permission.dto';
5+
import { BaseCrudController } from 'src/shared/base-crud/base-crud.controller';
6+
import { ApiSecurity, ApiTags } from '@nestjs/swagger';
7+
8+
@Controller('admin/permissions')
9+
@ApiTags("Admin > Permissions")
10+
@ApiSecurity('api-key')
11+
export class PermissionsController extends BaseCrudController<CreatePermissionDto, UpdatePermissionDto> {
12+
13+
constructor(public readonly permissionsService: PermissionsService) {
14+
super(permissionsService);
15+
}
16+
17+
@Post()
18+
create(createDTO: CreatePermissionDto) {
19+
return this.create(createDTO);
20+
}
21+
22+
@Patch(':id')
23+
update(@Param('id') id: string, @Body() updateDTO: UpdatePermissionDto) {
24+
return this.service.update(+id, updateDTO);
25+
}
26+
}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
import { Module } from '@nestjs/common';
2+
import { PermissionsService } from './permissions.service';
3+
import { PermissionsController } from './permissions.controller';
4+
import { TypeOrmModule } from '@nestjs/typeorm';
5+
import { Permission } from 'src/entities/permission.entity';
6+
7+
@Module({
8+
imports: [
9+
TypeOrmModule.forFeature([Permission]),
10+
],
11+
controllers: [PermissionsController],
12+
providers: [PermissionsService],
13+
})
14+
export class PermissionsModule {}
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
import { Injectable } from '@nestjs/common';
2+
import { CreatePermissionDto } from './dto/create-permission.dto';
3+
import { UpdatePermissionDto } from './dto/update-permission.dto';
4+
import { BaseCrudService } from 'src/shared/base-crud/base-crud.service';
5+
import { InjectRepository } from '@nestjs/typeorm';
6+
import { Permission } from 'src/entities/permission.entity';
7+
import { Repository } from 'typeorm';
8+
import { IBaseService } from 'src/shared/base-crud/base-service.interface';
9+
10+
@Injectable()
11+
export class PermissionsService extends BaseCrudService<CreatePermissionDto, UpdatePermissionDto> {
12+
constructor(
13+
@InjectRepository(Permission)
14+
repo: Repository<Permission>
15+
) {
16+
super(repo);
17+
}
18+
}

0 commit comments

Comments
 (0)