From af511203a4bfd29a6053c008f9bd0acc220daad4 Mon Sep 17 00:00:00 2001 From: Gabriel De Los Rios Date: Sat, 1 Nov 2025 20:29:39 -0300 Subject: [PATCH] refactor: updates delete method to return affected rows count --- internal/repository/base_repository.go | 9 ++++++--- internal/repository/interfaces.go | 2 +- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/internal/repository/base_repository.go b/internal/repository/base_repository.go index 06195c9..472898e 100644 --- a/internal/repository/base_repository.go +++ b/internal/repository/base_repository.go @@ -69,8 +69,11 @@ func (r *baseRepository[T]) GetAll() ([]T, error) { return entities, nil } -func (r *baseRepository[T]) Delete(id int) error { +func (r *baseRepository[T]) Delete(id int) (int64, error) { query := r.BuildQuery("DELETE %s WHERE id = ? LIMIT 1") - _, err := r.db.Exec(query, id) - return err + res, err := r.db.Exec(query, id) + if err != nil { + return 0, err + } + return res.RowsAffected() } diff --git a/internal/repository/interfaces.go b/internal/repository/interfaces.go index 6e2cea8..8043df5 100644 --- a/internal/repository/interfaces.go +++ b/internal/repository/interfaces.go @@ -4,5 +4,5 @@ type Repository[T any] interface { BuildQuery(s string) string GetByID(id int) (*T, error) GetAll() ([]T, error) - Delete(id int) error + Delete(id int) (int64, error) }