diff --git a/src/modules/catalog/catalog.controller.ts b/src/modules/catalog/catalog.controller.ts index afcf702..b955139 100644 --- a/src/modules/catalog/catalog.controller.ts +++ b/src/modules/catalog/catalog.controller.ts @@ -1,4 +1,12 @@ -import { Body, Controller, Delete, Get, Param, Post } from '@nestjs/common'; +import { + Body, + Controller, + Delete, + Get, + Param, + Post, + Query, +} from '@nestjs/common'; import { CatalogService } from './catalog.service'; @Controller('catalog') @@ -33,7 +41,7 @@ export class CatalogController { const { id } = params; const catalogService = new CatalogService(); - const res = await catalogService.dataAppsOne(body, id); + const res = await catalogService.dataAppsOne(id, body); return res; } @@ -56,30 +64,33 @@ export class CatalogController { const catalogService = new CatalogService(); - const res = await catalogService.getOneDashboardMetabase(body, id); + const res = await catalogService.getOneDashboardMetabase(id, body); return res; } @Get('table-metadata') - async getAllTableMetadata(@Body() body) { + async getAllTableMetadata(@Body() body, @Query() query) { console.log(`/catalog`, 'ON GET ALL TABLES METADATA ROUTE'); const catalogService = new CatalogService(); - - const res = await catalogService.getAllTableMetadata(body); - - return res; + if (!query) { + const res = await catalogService.getAllTableMetadata(body); + return res; + } else { + const res = await catalogService.getOneTableMetadata(body, query); + return res; + } } - @Delete('table-metadata') + @Delete('table-metadata/:id') async deleteOneTableMetadata(@Param() params, @Body() body) { const { id } = params; console.log(`/catalog`, 'ON DELETE ONE TABLE METADATA ROUTE'); const catalogService = new CatalogService(); - const res = await catalogService.deleteOneTableMetadata(body, id); + const res = await catalogService.deleteOneTableMetadata(id, body); return res; } @@ -95,14 +106,14 @@ export class CatalogController { return res; } - @Delete('column-metadata') + @Delete('column-metadata/:id') async deleteOneColumnMetadata(@Param() params, @Body() body) { console.log(`/catalog`, 'ON DELETE ONE COLUMN METADATA ROUTE'); const { id } = params; const catalogService = new CatalogService(); - const res = await catalogService.deleteOneColumnMetadata(body, id); + const res = await catalogService.deleteOneColumnMetadata(id, body); return res; } @@ -225,7 +236,7 @@ export class CatalogController { const catalogService = new CatalogService(); - const res = await catalogService.deleteTags(body, id); + const res = await catalogService.deleteTags(id, body); return res; } @@ -252,14 +263,14 @@ export class CatalogController { return res; } - @Delete('table-tags') + @Delete('table-tags/:id') async deleteTableTags(@Param() params, @Body() body) { console.log(`/catalog`, 'ON CREATE TABLE TAGS ROUTE'); const { id } = params; const catalogService = new CatalogService(); - const res = await catalogService.deleteTableTags(body, id); + const res = await catalogService.deleteTableTags(id, body); return res; } @@ -275,14 +286,14 @@ export class CatalogController { return res; } - @Delete('table-rules') + @Delete('table-rules/:id') async deleteTableRules(@Param() params, @Body() body) { console.log(`/catalog`, 'ON DELETE TABLE RULES ROUTE'); const { id } = params; const catalogService = new CatalogService(); - const res = await catalogService.deleteTableRules(body, id); + const res = await catalogService.deleteTableRules(id, body); return res; } diff --git a/src/modules/catalog/catalog.service.ts b/src/modules/catalog/catalog.service.ts index d6b2bad..525e0f1 100644 --- a/src/modules/catalog/catalog.service.ts +++ b/src/modules/catalog/catalog.service.ts @@ -51,7 +51,7 @@ class CatalogService { return data; } - async getOneDashboardMetabase(body, id) { + async getOneDashboardMetabase(id, body) { const customer = body.info.customer.toLowerCase() === 'dadosfera' ? `` @@ -75,6 +75,19 @@ class CatalogService { return data; } + async getOneTableMetadata(body, params) { + const customer = + body.info.customer.toLowerCase() === 'dadosfera' + ? `` + : `-${body.info.customer.toLowerCase()}`; + + const { data } = await axios.get( + `${process.env.NIMBUS_BASE_URL}${customer}.${process.env.ENV}.dadosfera/api/catalog/table-metadata/`, + { params: params }, + ); + return data; + } + async deleteOneTableMetadata(id, body) { const customer = body.info.customer.toLowerCase() === 'dadosfera'