diff --git a/libs/api/domains/signature-collection/src/lib/signatureCollectionAdmin.resolver.ts b/libs/api/domains/signature-collection/src/lib/signatureCollectionAdmin.resolver.ts index fc0a1a15c77b..ab22683576e9 100644 --- a/libs/api/domains/signature-collection/src/lib/signatureCollectionAdmin.resolver.ts +++ b/libs/api/domains/signature-collection/src/lib/signatureCollectionAdmin.resolver.ts @@ -287,4 +287,13 @@ export class SignatureCollectionAdminResolver { ): Promise { return this.signatureCollectionService.getAreaSummaryReport(input, user) } + + @Mutation(() => SignatureCollectionSuccess) + @Audit() + async signatureCollectionLockList( + @CurrentUser() user: User, + @Args('input') input: SignatureCollectionListIdInput, + ): Promise { + return this.signatureCollectionService.lockList(input, user) + } } diff --git a/libs/api/domains/signature-collection/src/lib/signatureCollectionAdmin.service.ts b/libs/api/domains/signature-collection/src/lib/signatureCollectionAdmin.service.ts index c3f5a569d4ee..10f1dc605d8e 100644 --- a/libs/api/domains/signature-collection/src/lib/signatureCollectionAdmin.service.ts +++ b/libs/api/domains/signature-collection/src/lib/signatureCollectionAdmin.service.ts @@ -25,6 +25,7 @@ import { SignatureCollectionSignatureUpdateInput } from './dto/signatureUpdate.i import { SignatureCollectionSignatureLookupInput } from './dto/signatureLookup.input' import { SignatureCollectionAreaSummaryReportInput } from './dto/areaSummaryReport.input' import { SignatureCollectionAreaSummaryReport } from './models/areaSummaryReport.model' +import { SignatureCollectionListIdInput } from './dto' @Injectable() export class SignatureCollectionAdminService { @@ -220,4 +221,14 @@ export class SignatureCollectionAdminService { input.areaId, ) } + + async lockList( + input: SignatureCollectionListIdInput, + user: User, + ): Promise { + return await this.signatureCollectionClientService.lockList( + user, + input.listId, + ) + } } diff --git a/libs/clients/signature-collection/src/lib/signature-collection-admin.service.ts b/libs/clients/signature-collection/src/lib/signature-collection-admin.service.ts index 6c083138d43c..9421457055fe 100644 --- a/libs/clients/signature-collection/src/lib/signature-collection-admin.service.ts +++ b/libs/clients/signature-collection/src/lib/signature-collection-admin.service.ts @@ -374,4 +374,18 @@ export class SignatureCollectionAdminClientService { return [] } } + + async lockList(auth: Auth, listId: string): Promise { + try { + const res = await this.getApiWithAuth( + this.adminApi, + auth, + ).adminMedmaelalistiIDLockListPatch({ + iD: parseInt(listId, 10), + }) + return { success: res.listaLokad ?? false } + } catch { + return { success: false } + } + } }