mirror of
https://github.com/bigcapitalhq/bigcapital.git
synced 2026-02-16 04:40:32 +00:00
refactor(nestjs): resource meta endpoint
This commit is contained in:
@@ -1,13 +1,12 @@
|
||||
import { Injectable } from '@nestjs/common';
|
||||
import { BaseModel } from '@/models/Model';
|
||||
import { View } from './models/View.model';
|
||||
import { ResourceService } from '../Resource/ResourceService';
|
||||
|
||||
@Injectable()
|
||||
export class GetResourceViewsService {
|
||||
constructor(private readonly resourceService: ResourceService) {}
|
||||
/**
|
||||
* Listing resource views.
|
||||
* @param {number} tenantId -
|
||||
* @param {string} resourceModel -
|
||||
*/
|
||||
public async getResourceViews(resourceName: string): Promise<View[]> {
|
||||
@@ -15,7 +14,7 @@ export class GetResourceViewsService {
|
||||
const resourceModel = this.resourceService.getResourceModel(resourceName);
|
||||
|
||||
// Default views.
|
||||
const defaultViews = resourceModel.getDefaultViews();
|
||||
const defaultViews = resourceModel().getDefaultViews();
|
||||
|
||||
return defaultViews;
|
||||
}
|
||||
|
||||
20
packages/server/src/modules/Views/Views.controller.ts
Normal file
20
packages/server/src/modules/Views/Views.controller.ts
Normal file
@@ -0,0 +1,20 @@
|
||||
import { Controller, Get, Param } from '@nestjs/common';
|
||||
import { ApiOperation, ApiResponse, ApiTags } from '@nestjs/swagger';
|
||||
import { GetResourceViewsService } from './GetResourceViews.service';
|
||||
|
||||
@Controller('views')
|
||||
@ApiTags('views')
|
||||
export class ViewsController {
|
||||
constructor(
|
||||
private readonly getResourceViewsService: GetResourceViewsService,
|
||||
) {}
|
||||
|
||||
@Get('/resource/:resourceModel')
|
||||
@ApiResponse({ status: 200, description: 'Specific resource views' })
|
||||
@ApiOperation({ summary: 'Get the given resource views' })
|
||||
async getResourceViews(@Param('resourceModel') resourceModel: string) {
|
||||
const views =
|
||||
await this.getResourceViewsService.getResourceViews(resourceModel);
|
||||
return { views };
|
||||
}
|
||||
}
|
||||
11
packages/server/src/modules/Views/Views.module.ts
Normal file
11
packages/server/src/modules/Views/Views.module.ts
Normal file
@@ -0,0 +1,11 @@
|
||||
import { Module } from '@nestjs/common';
|
||||
import { GetResourceViewsService } from './GetResourceViews.service';
|
||||
import { ViewsController } from './Views.controller';
|
||||
import { ResourceModule } from '../Resource/Resource.module';
|
||||
|
||||
@Module({
|
||||
imports: [ResourceModule],
|
||||
controllers: [ViewsController],
|
||||
providers: [GetResourceViewsService],
|
||||
})
|
||||
export class ViewsModule {}
|
||||
Reference in New Issue
Block a user