diff --git a/docsfera.json b/docsfera.json index 1b2e1cd..fc297fa 100644 --- a/docsfera.json +++ b/docsfera.json @@ -4001,7 +4001,7 @@ ] } }, - "/platform/pipelines": { + "/platform/pipeline": { "post": { "operationId": "PlatformApiController_createPipeline", "summary": "Create a new pipeline", @@ -4026,7 +4026,9 @@ "access-token": [] } ] - }, + } + }, + "/platform/pipelines": { "get": { "operationId": "PlatformApiController_getPipelines", "summary": "List all pipelines for customer", @@ -4053,7 +4055,7 @@ ] } }, - "/platform/pipelines/{pipelineId}": { + "/platform/pipeline/{pipelineId}": { "get": { "operationId": "PlatformApiController_getPipeline", "summary": "Get pipeline by ID", @@ -4157,7 +4159,7 @@ ] } }, - "/platform/pipelines/execute": { + "/platform/pipeline/execute": { "post": { "operationId": "PlatformApiController_executePipeline", "summary": "Execute a pipeline", @@ -4184,7 +4186,7 @@ ] } }, - "/platform/pipelines/pause": { + "/platform/pipeline/pause": { "post": { "operationId": "PlatformApiController_pausePipeline", "summary": "Pause a pipeline", @@ -4211,7 +4213,7 @@ ] } }, - "/platform/pipelines/unpause": { + "/platform/pipeline/unpause": { "post": { "operationId": "PlatformApiController_unpausePipeline", "summary": "Unpause a pipeline", @@ -4238,7 +4240,7 @@ ] } }, - "/platform/pipelines/{pipelineId}/memory": { + "/platform/pipeline/{pipelineId}/memory": { "put": { "operationId": "PlatformApiController_updatePipelineMemory", "summary": "Update pipeline memory configuration", @@ -4274,7 +4276,7 @@ ] } }, - "/platform/pipelines/{pipelineId}/metadata": { + "/platform/pipeline/{pipelineId}/metadata": { "put": { "operationId": "PlatformApiController_updatePipelineMetadata", "summary": "Update pipeline metadata", @@ -4401,7 +4403,7 @@ ] } }, - "/platform/pipelines/{pipelineId}/pipeline_run": { + "/platform/pipeline/{pipelineId}/pipeline_run": { "get": { "operationId": "PlatformApiController_getPipelineRuns", "summary": "Get pipeline runs for a pipeline", @@ -4437,7 +4439,7 @@ ] } }, - "/platform/pipelines/{pipelineId}/pipeline_run/{runId}": { + "/platform/pipeline/{pipelineId}/pipeline_run/{runId}": { "get": { "operationId": "PlatformApiController_getPipelineRun", "summary": "Get specific pipeline run", @@ -4481,7 +4483,7 @@ ] } }, - "/platform/pipelines/pipeline_run/{runId}/logs": { + "/platform/pipeline/pipeline_run/{runId}/logs": { "get": { "operationId": "PlatformApiController_getPipelineRunLogs", "summary": "Get pipeline run logs", @@ -4517,7 +4519,7 @@ ] } }, - "/platform/pipelines/{pipelineId}/pipeline_run/{runId}/cancel": { + "/platform/pipeline/{pipelineId}/pipeline_run/{runId}/cancel": { "post": { "operationId": "PlatformApiController_cancelPipelineRun", "summary": "Cancel a running pipeline run", @@ -5431,6 +5433,48 @@ ] } }, + "/catalog/schemas": { + "get": { + "operationId": "CatalogController_findSchemas", + "parameters": [ + { + "name": "dadosfera-lang", + "in": "header", + "required": false, + "schema": { + "enum": [ + "pt-br", + "en-us" + ], + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "type": "object" + } + } + } + } + }, + "tags": [ + "Catalog" + ], + "security": [ + { + "access-token": [] + }, + { + "access-token": [] + } + ] + } + }, "/catalog/data-asset/{id}": { "get": { "operationId": "CatalogController_getDataAsset", diff --git a/package-lock.json b/package-lock.json index 8fd7864..e3c9383 100644 --- a/package-lock.json +++ b/package-lock.json @@ -17,7 +17,7 @@ "@aws-sdk/signature-v4": "^3.370.0", "@dadosfera/dadosfera-logs": "^1.0.0-beta.4", "@dadosfera/protospack": "2.5.3", - "@dadosfera/protospack-v2": "^3.40.0-beta.5", + "@dadosfera/protospack-v2": "file:../protospack-v2/dadosfera-protospack-v2-0.0.0.tgz", "@grpc/grpc-js": "^1.9.3", "@grpc/proto-loader": "^0.7.9", "@nestjs/cli": "^9.5.0", @@ -1745,9 +1745,10 @@ } }, "node_modules/@dadosfera/protospack-v2": { - "version": "3.40.0-beta.5", - "resolved": "https://dadosfera-611330257153.d.codeartifact.us-east-1.amazonaws.com/npm/dadosfera-npm/@dadosfera/protospack-v2/-/protospack-v2-3.40.0-beta.5.tgz", - "integrity": "sha512-iocKv/XXp2jKAasO5ONgm31cKfLgNsU4pEKZMr6YnR7nQaH11WcW7rnuagNxWoik++wLUqbYyf0bZWRDzMlCPA==", + "version": "0.0.0", + "resolved": "file:../protospack-v2/dadosfera-protospack-v2-0.0.0.tgz", + "integrity": "sha512-qIJcW1zQyRr6hyg4d/6AQW9GPB2Sywzol76bRPw6rztd00eiVAlcfB8YPL+dtqwzhIYwmnWn3Fgzb5ibyOZUtw==", + "license": "ISC", "dependencies": { "@grpc/grpc-js": "^1.9.3", "rxjs": "^7.5.5" diff --git a/package.json b/package.json index b750c0e..b8341db 100644 --- a/package.json +++ b/package.json @@ -35,7 +35,7 @@ "@aws-sdk/signature-v4": "^3.370.0", "@dadosfera/dadosfera-logs": "^1.0.0-beta.4", "@dadosfera/protospack": "2.5.3", - "@dadosfera/protospack-v2": "^3.40.0-beta.5", + "@dadosfera/protospack-v2": "3.40.0-beta.7", "@grpc/grpc-js": "^1.9.3", "@grpc/proto-loader": "^0.7.9", "@nestjs/cli": "^9.5.0", diff --git a/src/modules/catalog/catalog.controller.ts b/src/modules/catalog/catalog.controller.ts index 83c1386..f097115 100644 --- a/src/modules/catalog/catalog.controller.ts +++ b/src/modules/catalog/catalog.controller.ts @@ -241,6 +241,34 @@ export class CatalogController { return res; } + @Get('schemas') + @RequireSomePermission( + PERMISSIONS_GROUPS.CATALOG.permissions.GET, + PERMISSIONS_GROUPS.CATALOG.permissions.DATA_MANAGER, + ) + async findSchemas(@User() user: RequestUser) { + const { username, user_id, customer_id, customer_name } = user; + this.logger.info(`/catalog - ON FIND SCHEMAS ROUTE`, { + username, + customer_name, + }); + + const metadata = PackTheMetadata({ + username, + user_id, + customer_id, + customer_name, + }); + + try { + const res = await this.catalogService.findSchemas(metadata); + return res; + } catch (error) { + throw new HttpException(error.message, HttpStatus.NOT_FOUND); + } + + } + @Get('data-asset/:id') @RequireSomePermission( PERMISSIONS_GROUPS.CATALOG.permissions.GET, diff --git a/src/modules/catalog/catalog.service.ts b/src/modules/catalog/catalog.service.ts index ebb888c..638e7b4 100644 --- a/src/modules/catalog/catalog.service.ts +++ b/src/modules/catalog/catalog.service.ts @@ -214,15 +214,6 @@ class CatalogService implements OnModuleInit { this.logger.debug('Extracted filters:', { filters }); - console.log('MAESTRO VAI CHAMAR PI-FACTORY COM (ANTES AJUSTE):', { - search, - page, - size, - sort_by, - order, - filters, - }); - if ( filters.manually !== undefined && filters.manually !== null && @@ -233,15 +224,6 @@ class CatalogService implements OnModuleInit { delete filters.manually; } - console.log('MAESTRO VAI CHAMAR PI-FACTORY COM (DEPOIS AJUSTE):', { - search, - page, - size, - sort_by, - order, - filters, - }); - if (filters.owner) { const { users: customer_users } = await this.userService.findAllUsersByCustomerId(customer_id); @@ -517,6 +499,22 @@ class CatalogService implements OnModuleInit { return response; } + async findSchemas(metadata: Metadata) { + this.logger.info('CatalogService - findSchemas'); + + try { + const response = await lastValueFrom( + this.catalogReadService.GetSchemas({}, metadata), + ); + + return response; + + } catch (error) { + this.logger.error('Error fetching schemas:', error); + throw error; + } + } + async getAssetsUsersAndRoles(data_assets: Array, customer_id: string) { const { users: customer_users } = await this.userService.findAllUsersByCustomerId(customer_id);