refactor: 调整adminResource服务结构
This commit is contained in:
@@ -9,8 +9,12 @@ import { AdminWebBlogController } from './controller/web/admin-web-blog.controll
|
||||
import { ResourceModule } from 'src/resource/resource.module';
|
||||
import { BlogModule } from 'src/blog/blog.module';
|
||||
import { AuthModule } from 'src/auth/auth.module';
|
||||
import { AdminResourceService } from './services/admin.resource.service';
|
||||
|
||||
@Module({
|
||||
providers: [
|
||||
AdminResourceService,
|
||||
],
|
||||
imports: [
|
||||
TypeOrmModule.forFeature([User]),
|
||||
UserModule,
|
||||
|
||||
@@ -10,17 +10,18 @@ import {
|
||||
UseGuards,
|
||||
} from '@nestjs/common';
|
||||
import { CreateResourceDto } from 'src/admin/dto/admin-web/create-resource.dto';
|
||||
import { AdminResourceService } from 'src/admin/services/admin.resource.service';
|
||||
import { AuthGuard } from 'src/auth/guards/auth.guard';
|
||||
import { Role } from 'src/auth/role.enum';
|
||||
import { Roles } from 'src/common/decorators/role.decorator';
|
||||
import { RolesGuard } from 'src/common/guard/roles.guard';
|
||||
import { ResourceService } from 'src/resource/resource.service';
|
||||
|
||||
@Controller('/admin/web/resource')
|
||||
@UseGuards(AuthGuard, RolesGuard)
|
||||
@Roles(Role.Admin)
|
||||
export class AdminWebResourceController {
|
||||
constructor(private readonly resourceService: ResourceService) { }
|
||||
|
||||
constructor(private readonly resourceService: AdminResourceService) { }
|
||||
|
||||
@Get()
|
||||
async list() {
|
||||
@@ -42,7 +43,10 @@ export class AdminWebResourceController {
|
||||
@Param('id', new ParseUUIDPipe({ version: '4' })) id: string,
|
||||
@Body() data: CreateResourceDto,
|
||||
) {
|
||||
return this.resourceService.update(id, data);
|
||||
return this.resourceService.update({
|
||||
...data,
|
||||
id,
|
||||
});
|
||||
}
|
||||
|
||||
@Delete(':id')
|
||||
|
||||
38
apps/backend/src/admin/services/admin.resource.service.ts
Normal file
38
apps/backend/src/admin/services/admin.resource.service.ts
Normal file
@@ -0,0 +1,38 @@
|
||||
import { Injectable } from "@nestjs/common";
|
||||
import { InjectRepository } from "@nestjs/typeorm";
|
||||
import { Resource } from "src/resource/entity/resource.entity";
|
||||
import { Repository } from "typeorm";
|
||||
|
||||
@Injectable()
|
||||
export class AdminResourceService {
|
||||
|
||||
constructor(
|
||||
@InjectRepository(Resource)
|
||||
private readonly resourceRepository: Repository<Resource>,
|
||||
) { }
|
||||
|
||||
|
||||
async findAll() {
|
||||
return this.resourceRepository.find();
|
||||
}
|
||||
|
||||
async findById(id: string): Promise<Resource> {
|
||||
return this.resourceRepository.findOne({ where: { id } });
|
||||
}
|
||||
|
||||
async create(data: Partial<Resource>): Promise<Resource> {
|
||||
const resource = this.resourceRepository.create(data);
|
||||
return this.resourceRepository.save(resource);
|
||||
}
|
||||
|
||||
async update(data: Partial<Resource>): Promise<Resource> {
|
||||
// const updateRes = await this.resourceRepository.update(id, data);
|
||||
// updateRes.affected
|
||||
// return this.resourceRepository.findOne({ where: { id } });
|
||||
return this.resourceRepository.save(data);
|
||||
}
|
||||
|
||||
async delete(id: string): Promise<void> {
|
||||
await this.resourceRepository.delete(id);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user