From 40c66003892f82324cb4021d6c273265c641eedc Mon Sep 17 00:00:00 2001 From: Haukur Ingi Date: Thu, 3 Oct 2024 09:36:45 +0000 Subject: [PATCH] Admin lock signature list endpoint --- .../src/lib/signatureCollectionAdmin.resolver.ts | 9 +++++++++ .../src/lib/signatureCollectionAdmin.service.ts | 15 ++++++++++++++- .../src/lib/signature-collection-admin.service.ts | 14 ++++++++++++++ 3 files changed, 37 insertions(+), 1 deletion(-) 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 c3f5970941a6..8f430a0ae4e3 100644 --- a/libs/api/domains/signature-collection/src/lib/signatureCollectionAdmin.resolver.ts +++ b/libs/api/domains/signature-collection/src/lib/signatureCollectionAdmin.resolver.ts @@ -275,4 +275,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 8c4e53ae0bc6..47c55375eeca 100644 --- a/libs/api/domains/signature-collection/src/lib/signatureCollectionAdmin.service.ts +++ b/libs/api/domains/signature-collection/src/lib/signatureCollectionAdmin.service.ts @@ -22,7 +22,10 @@ import { SignatureCollectionSlug } from './models/slug.model' import { SignatureCollectionListStatus } from './models/status.model' import { SignatureCollectionIdInput } from './dto/collectionId.input' import { SignatureCollectionSignatureUpdateInput } from './dto/signatureUpdate.input' -import { SignatureCollectionAreaInput } from './dto' +import { + SignatureCollectionAreaInput, + SignatureCollectionListIdInput, +} from './dto' import { SignatureCollectionAreaSummaryReportInput } from './dto/areaSummaryReport.input' import { SignatureCollectionAreaSummaryReport } from './models/areaSummaryReport.model' @@ -209,4 +212,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 a14fe5eaa178..0e209ef216ac 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 @@ -351,4 +351,18 @@ export class SignatureCollectionAdminClientService { return {} as AreaSummaryReport } } + + 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 } + } + } }