From 598c987031bc0fd8014481ec792cdb701d0b7931 Mon Sep 17 00:00:00 2001 From: enlineawork Date: Tue, 8 Sep 2026 19:59:50 -0300 Subject: [PATCH] feat(inventory): expose area-owned inventory browser --- .../inventory-browser.controller.ts | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 api-v3/src/asset-master/inventory-browser.controller.ts diff --git a/api-v3/src/asset-master/inventory-browser.controller.ts b/api-v3/src/asset-master/inventory-browser.controller.ts new file mode 100644 index 0000000..2e0592f --- /dev/null +++ b/api-v3/src/asset-master/inventory-browser.controller.ts @@ -0,0 +1,23 @@ +import { Controller, Get, Param, ParseUUIDPipe, Query } from '@nestjs/common'; +import { RequirePermissions } from '../authorization/decorators/require-permissions.decorator'; +import { InventoryBrowserQueryDto } from './dto/inventory-browser-query.dto'; +import { InventoryBrowserService } from './inventory-browser.service'; + +@Controller('inventory-browser') +@RequirePermissions('assets.read') +export class InventoryBrowserController { + constructor(private readonly inventoryBrowser: InventoryBrowserService) {} + + @Get('areas') + areas(@Query() query: InventoryBrowserQueryDto) { + return this.inventoryBrowser.areas(query); + } + + @Get(':parentId/children') + children( + @Param('parentId', new ParseUUIDPipe({ version: '4' })) parentId: string, + @Query() query: InventoryBrowserQueryDto, + ) { + return this.inventoryBrowser.children(parentId, query); + } +}