From a639b81988b88053cdd4a84de4345691103a0989 Mon Sep 17 00:00:00 2001 From: Quaternions <krakow20@gmail.com> Date: Wed, 2 Apr 2025 18:06:44 -0700 Subject: [PATCH] submissions: implement operation failed internal endpoint --- pkg/service_internal/operations.go | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 pkg/service_internal/operations.go diff --git a/pkg/service_internal/operations.go b/pkg/service_internal/operations.go new file mode 100644 index 0000000..2deeffd --- /dev/null +++ b/pkg/service_internal/operations.go @@ -0,0 +1,21 @@ +package service_internal + +import ( + "context" + + "git.itzana.me/strafesnet/maps-service/pkg/datastore" + internal "git.itzana.me/strafesnet/maps-service/pkg/internal" + "git.itzana.me/strafesnet/maps-service/pkg/model" +) + +// ActionOperationFailed implements actionOperationFailed operation. +// +// Fail the specified OperationID with a StatusMessage. +// +// POST /operations/{OperationID}/failed +func (svc *Service) ActionOperationFailed(ctx context.Context, params internal.ActionOperationFailedParams) (error) { + pmap := datastore.Optional() + pmap.Add("status_id", model.OperationStatusFailed) + pmap.Add("status_message", params.StatusMessage) + return svc.DB.Operations().Update(ctx, params.OperationID, pmap) +}