From 1a3a244c07ccf33148e255421be53e9a3cbef457 Mon Sep 17 00:00:00 2001 From: phoenix Date: Wed, 31 Dec 2025 14:28:09 -0500 Subject: [PATCH] tsk-59: Changes to store and mock package --- internal/store/message_event_response_store.go | 12 ++++++------ .../store/mock/message_event_response_store.go | 18 ++++++++++++++++++ 2 files changed, 24 insertions(+), 6 deletions(-) diff --git a/internal/store/message_event_response_store.go b/internal/store/message_event_response_store.go index 4075772..ad0300e 100644 --- a/internal/store/message_event_response_store.go +++ b/internal/store/message_event_response_store.go @@ -28,16 +28,16 @@ func (m *PGMessageEventResponseStore) Create(ctx context.Context, mer *message.M queryReturn := "RETURNING id" if mer.ScheduledMessageEventId == uuid.Nil { - query = fmt.Sprintf("%s (response, user_id, sent, contact_id, message_id) VALUES ($1, $2, $3, $4, $5) %s", queryBase, queryReturn) - return m.db.QueryRow(ctx, query, mer.Response, mer.UserId, mer.Sent, mer.ContactId, mer.MessageId).Scan(&mer.Id) + query = fmt.Sprintf("%s (response, user_id, sent, contact_id, message_id, status) VALUES ($1, $2, $3, $4, $5, $6) %s", queryBase, queryReturn) + return m.db.QueryRow(ctx, query, mer.Response, mer.UserId, mer.Sent, mer.ContactId, mer.MessageId, mer.Status).Scan(&mer.Id) } else { - query = fmt.Sprintf("%s (scheduled_message_event_id, response, user_id, sent, contact_id, message_id) VALUES ($1, $2, $3, $4, $5, $6) %s", queryBase, queryReturn) - return m.db.QueryRow(ctx, query, mer.ScheduledMessageEventId, mer.Response, mer.UserId, mer.Sent, mer.ContactId, mer.MessageId).Scan(&mer.Id) + query = fmt.Sprintf("%s (scheduled_message_event_id, response, user_id, sent, contact_id, message_id, status) VALUES ($1, $2, $3, $4, $5, $6, $7) %s", queryBase, queryReturn) + return m.db.QueryRow(ctx, query, mer.ScheduledMessageEventId, mer.Response, mer.UserId, mer.Sent, mer.ContactId, mer.MessageId, mer.Status,).Scan(&mer.Id) } } func (m *PGMessageEventResponseStore) GetWithUserId(ctx context.Context, userId uuid.UUID) ([]*message.MessageEventResponse, error) { - query := "SELECT id, scheduled_message_event_id, response, user_id, sent, contact_id, message_id FROM message_event_responses WHERE user_id = $1" + query := "SELECT id, scheduled_message_event_id, response, user_id, sent, contact_id, message_id, status FROM message_event_responses WHERE user_id = $1" rows, err := m.db.Query(ctx, query) if err != nil { return nil, fmt.Errorf("Error querying: %w", err) @@ -47,7 +47,7 @@ func (m *PGMessageEventResponseStore) GetWithUserId(ctx context.Context, userId var sentMessages []*message.MessageEventResponse for rows.Next() { var msg message.MessageEventResponse - if err := rows.Scan(&msg.Id, &msg.ScheduledMessageEventId, &msg.Response, &msg.UserId, &msg.Sent, &msg.ContactId, &msg.MessageId,); err != nil { + if err := rows.Scan(&msg.Id, &msg.ScheduledMessageEventId, &msg.Response, &msg.UserId, &msg.Sent, &msg.ContactId, &msg.MessageId, &msg.Status,); err != nil { return nil, fmt.Errorf("Scanning row: %w", err) } sentMessages = append(sentMessages, &msg) diff --git a/internal/store/mock/message_event_response_store.go b/internal/store/mock/message_event_response_store.go index 3833738..ee3d668 100644 --- a/internal/store/mock/message_event_response_store.go +++ b/internal/store/mock/message_event_response_store.go @@ -62,3 +62,21 @@ func (m *MockMessageEventResponseStore) Create(ctx context.Context, mer *message } // TODO: Add code to get mock MessageEventResponse +func (m *MockMessageEventResponseStore) GetWithUserId(ctx context.Context, userId uuid.UUID) ([]*message.MessageEventResponse, error) { + m.mu.Lock() + defer m.mu.Unlock() + + if m.Error != nil { + return nil, m.Error + } + + var messages []*message.MessageEventResponse + for _, msg := range m.MessageEventResponses { + if msg.UserId == userId { + messages = append(messages, msg) + } + } + + + return messages, nil +}