From ff9da333eba96185a5425cd068fce7aefdad19cd Mon Sep 17 00:00:00 2001 From: Quaternions <krakow20@gmail.com> Date: Wed, 9 Apr 2025 20:14:19 -0700 Subject: [PATCH] submissions: push audit error event on error endpoints --- pkg/service_internal/mapfixes.go | 48 +++++++++++++++++++++++++++ pkg/service_internal/submissions.go | 51 +++++++++++++++++++++++++++++ 2 files changed, 99 insertions(+) diff --git a/pkg/service_internal/mapfixes.go b/pkg/service_internal/mapfixes.go index 7b2c906..c52c533 100644 --- a/pkg/service_internal/mapfixes.go +++ b/pkg/service_internal/mapfixes.go @@ -129,6 +129,29 @@ func (svc *Service) ActionMapfixRequestChanges(ctx context.Context, params inter return err } + { + event_data := model.AuditEventDataError{ + Error: params.ErrorMessage, + } + + EventData, err := json.Marshal(event_data) + if err != nil { + return err + } + + _, err = svc.DB.AuditEvents().Create(ctx, model.AuditEvent{ + ID: 0, + User: ValidtorUserID, + ResourceType: model.ResourceMapfix, + ResourceID: params.MapfixID, + EventType: model.AuditEventTypeError, + EventData: EventData, + }) + if err != nil { + return err + } + } + event_data := model.AuditEventDataAction{ TargetStatus: uint32(target_status), } @@ -180,6 +203,31 @@ func (svc *Service) ActionMapfixAccepted(ctx context.Context, params internal.Ac return err } + //push an error audit event + { + event_data := model.AuditEventDataError{ + Error: params.ErrorMessage, + } + + EventData, err := json.Marshal(event_data) + if err != nil { + return err + } + + _, err = svc.DB.AuditEvents().Create(ctx, model.AuditEvent{ + ID: 0, + User: ValidtorUserID, + ResourceType: model.ResourceMapfix, + ResourceID: params.MapfixID, + EventType: model.AuditEventTypeError, + EventData: EventData, + }) + if err != nil { + return err + } + } + + // push an action audit event event_data := model.AuditEventDataAction{ TargetStatus: uint32(target_status), } diff --git a/pkg/service_internal/submissions.go b/pkg/service_internal/submissions.go index 647ec65..5e6abd0 100644 --- a/pkg/service_internal/submissions.go +++ b/pkg/service_internal/submissions.go @@ -128,6 +128,31 @@ func (svc *Service) ActionSubmissionRequestChanges(ctx context.Context, params i return err } + //push an error audit event + { + event_data := model.AuditEventDataError{ + Error: params.ErrorMessage, + } + + EventData, err := json.Marshal(event_data) + if err != nil { + return err + } + + _, err = svc.DB.AuditEvents().Create(ctx, model.AuditEvent{ + ID: 0, + User: ValidtorUserID, + ResourceType: model.ResourceSubmission, + ResourceID: params.SubmissionID, + EventType: model.AuditEventTypeError, + EventData: EventData, + }) + if err != nil { + return err + } + } + + // push an action audit event event_data := model.AuditEventDataAction{ TargetStatus: uint32(target_status), } @@ -206,6 +231,32 @@ func (svc *Service) ActionSubmissionAccepted(ctx context.Context, params interna return err } + + //push an error audit event + { + event_data := model.AuditEventDataError{ + Error: params.ErrorMessage, + } + + EventData, err := json.Marshal(event_data) + if err != nil { + return err + } + + _, err = svc.DB.AuditEvents().Create(ctx, model.AuditEvent{ + ID: 0, + User: ValidtorUserID, + ResourceType: model.ResourceSubmission, + ResourceID: params.SubmissionID, + EventType: model.AuditEventTypeError, + EventData: EventData, + }) + if err != nil { + return err + } + } + + // push an action audit event event_data := model.AuditEventDataAction{ TargetStatus: uint32(target_status), }