diff --git a/pkg/probo/trust_center_access_service.go b/pkg/probo/trust_center_access_service.go index 0905e0444..5c9e3234a 100644 --- a/pkg/probo/trust_center_access_service.go +++ b/pkg/probo/trust_center_access_service.go @@ -364,8 +364,8 @@ func (s TrustCenterAccessService) Update( } if shouldUpdateSlackMessage { - if err := s.svc.SlackMessages.QueueSlackAccessMessageUpdate(ctx, access.Email, access.TrustCenterID); err != nil { - return nil, fmt.Errorf("cannot queue slack access message update: %w", err) + if err := s.svc.SlackMessages.QueueSlackNotification(ctx, access.Email, access.TrustCenterID); err != nil { + return nil, fmt.Errorf("cannot queue slack notification: %w", err) } } diff --git a/pkg/slack/slack_message_service.go b/pkg/slack/slack_message_service.go index 4c1bed752..a7ed22328 100644 --- a/pkg/slack/slack_message_service.go +++ b/pkg/slack/slack_message_service.go @@ -286,102 +286,6 @@ func (s *SlackMessageService) QueueSlackNotification( }) } -func (s *SlackMessageService) QueueSlackAccessMessageUpdate( - ctx context.Context, - requesterEmail mail.Addr, - trustCenterID gid.GID, -) error { - return s.svc.pg.WithTx(ctx, func(tx pg.Conn) error { - var trustCenter coredata.TrustCenter - if err := trustCenter.LoadByID(ctx, tx, s.svc.scope, trustCenterID); err != nil { - return fmt.Errorf("cannot load trust center: %w", err) - } - - var trustCenterAccess coredata.TrustCenterAccess - if err := trustCenterAccess.LoadByTrustCenterIDAndEmail(ctx, tx, s.svc.scope, trustCenterID, requesterEmail); err != nil { - return fmt.Errorf("cannot load trust center access: %w", err) - } - - var existingMessage coredata.SlackMessage - err := existingMessage.LoadLatestByRequesterEmailAndType( - ctx, - tx, - s.svc.scope, - trustCenter.OrganizationID, - requesterEmail, - coredata.SlackMessageTypeTrustCenterAccessRequest, - time.Time{}, - ) - if err != nil { - var notFoundErr coredata.ErrSlackMessageNotFound - if errors.Is(err, notFoundErr) { - return nil - } - return fmt.Errorf("cannot load existing slack message: %w", err) - } - - if existingMessage.MessageTS == nil || existingMessage.ChannelID == nil { - return nil - } - - if existingMessage.ID != existingMessage.InitialSlackMessageID { - var originalMessage coredata.SlackMessage - if err := originalMessage.LoadById(ctx, tx, s.svc.scope, existingMessage.InitialSlackMessageID); err != nil { - return nil - } - existingMessage = originalMessage - } - - documents, reports, files, err := s.loadDocumentsReportsAndFilesFromAccesses(ctx, tx, trustCenterAccess.ID) - if err != nil { - return fmt.Errorf("cannot load documents, reports and files: %w", err) - } - - newSlackMessageID := gid.New(s.svc.scope.GetTenantID(), coredata.SlackMessageEntityType) - - updatedBody, err := s.buildAccessRequestMessage( - newSlackMessageID, - trustCenterAccess.Name, - requesterEmail, - trustCenter.OrganizationID, - documents, - reports, - files, - ) - if err != nil { - return fmt.Errorf("cannot build access request message: %w", err) - } - - metadata := SlackMessageMetadata{ - Documents: documents, - Reports: reports, - Files: files, - } - - now := time.Now() - newSlackMessage := &coredata.SlackMessage{ - ID: newSlackMessageID, - OrganizationID: existingMessage.OrganizationID, - Type: existingMessage.Type, - Body: updatedBody, - MessageTS: existingMessage.MessageTS, - ChannelID: existingMessage.ChannelID, - RequesterEmail: existingMessage.RequesterEmail, - Metadata: metadata.toMap(), - InitialSlackMessageID: existingMessage.InitialSlackMessageID, - CreatedAt: now, - UpdatedAt: now, - SentAt: nil, - } - - if err := newSlackMessage.Insert(ctx, tx, s.svc.scope); err != nil { - return fmt.Errorf("cannot insert slack message: %w", err) - } - - return nil - }) -} - func (s *SlackMessageService) loadDocumentsReportsAndFilesFromAccesses( ctx context.Context, conn pg.Conn,