F3.1: usar familia técnica y exponer merge de catálogo
This commit is contained in:
@@ -6,15 +6,22 @@ import { CreateFindingCatalogItemDto } from './dto/create-finding-catalog-item.d
|
||||
import { CreateFindingCategoryDto } from './dto/create-finding-category.dto';
|
||||
import { ListFindingCatalogProposalsQueryDto } from './dto/list-finding-catalog-proposals-query.dto';
|
||||
import { ListFindingCatalogQueryDto } from './dto/list-finding-catalog-query.dto';
|
||||
import { MergeFindingCatalogItemDto } from './dto/merge-finding-catalog-item.dto';
|
||||
import { ReplaceFindingCatalogSelectionDto } from './dto/replace-finding-catalog-selection.dto';
|
||||
import { ReviewFindingCatalogProposalDto } from './dto/review-finding-catalog-proposal.dto';
|
||||
import { UpdateFindingCatalogItemDto } from './dto/update-finding-catalog-item.dto';
|
||||
import { UpdateFindingCategoryDto } from './dto/update-finding-category.dto';
|
||||
import { F3FindingCatalogResolverService } from './f3-finding-catalog-resolver.service';
|
||||
import { FindingCatalogMergeService } from './finding-catalog-merge.service';
|
||||
import { FindingCatalogService } from './finding-catalog.service';
|
||||
|
||||
@Controller('finding-catalog')
|
||||
export class FindingCatalogController {
|
||||
constructor(private readonly catalog: FindingCatalogService) {}
|
||||
constructor(
|
||||
private readonly catalog: FindingCatalogService,
|
||||
private readonly applicableCatalog: F3FindingCatalogResolverService,
|
||||
private readonly catalogMerges: FindingCatalogMergeService,
|
||||
) {}
|
||||
|
||||
@Get()
|
||||
@RequirePermissions('finding_catalog.read')
|
||||
@@ -27,8 +34,8 @@ export class FindingCatalogController {
|
||||
applicable(
|
||||
@Param('assetId', new ParseUUIDPipe({ version: '4' })) assetId: string,
|
||||
@Query() query: ListFindingCatalogQueryDto,
|
||||
) {
|
||||
return this.catalog.listApplicableForAsset(assetId, query);
|
||||
): Promise<unknown> {
|
||||
return this.applicableCatalog.listApplicableForAsset(assetId, query);
|
||||
}
|
||||
|
||||
@Get('admin')
|
||||
@@ -123,6 +130,25 @@ export class FindingCatalogController {
|
||||
return this.catalog.createItem(dto, principal, request);
|
||||
}
|
||||
|
||||
@Get('items/:id/merge-status')
|
||||
@RequirePermissions('finding_catalog.manage')
|
||||
mergeStatus(
|
||||
@Param('id', new ParseUUIDPipe({ version: '4' })) id: string,
|
||||
): Promise<unknown> {
|
||||
return this.catalogMerges.status(id);
|
||||
}
|
||||
|
||||
@Post('items/:id/merge')
|
||||
@RequirePermissions('finding_catalog.manage')
|
||||
mergeItem(
|
||||
@Param('id', new ParseUUIDPipe({ version: '4' })) id: string,
|
||||
@Body() dto: MergeFindingCatalogItemDto,
|
||||
@CurrentAuth() principal: AuthPrincipal,
|
||||
@Req() request: RequestWithContext,
|
||||
): Promise<unknown> {
|
||||
return this.catalogMerges.merge(id, dto, principal, request);
|
||||
}
|
||||
|
||||
@Patch('items/:id')
|
||||
@RequirePermissions('finding_catalog.manage')
|
||||
updateItem(
|
||||
|
||||
Reference in New Issue
Block a user