all repos

onasty @ 4f5482b26e104ea821ac24519c6c9d19e0be15c9

a one-time notes service
4 files changed, 7 insertions(+), 9 deletions(-)
refactor: make NoteSlugDTO type as string alias (#19)

Author: Smirnov Oleksandr ss2316544@gmail.com
Committed by: GitHub noreply@github.com
Committed at: 2024-09-22 13:16:15 +0300
Parent: bcf5056
M internal/dtos/note.go

@@ -6,9 +6,7 @@

"github.com/gofrs/uuid/v5" ) -type NoteSlugDTO string - -func (n NoteSlugDTO) String() string { return string(n) } +type NoteSlugDTO = string type NoteDTO struct { Content string
M internal/service/notesrv/notesrv.go

@@ -44,12 +44,12 @@ return "", err

} if !userID.IsNil() { - if err := n.noterepo.SetAuthorIDBySlug(ctx, dtos.NoteSlugDTO(inp.Slug), userID); err != nil { + if err := n.noterepo.SetAuthorIDBySlug(ctx, inp.Slug, userID); err != nil { return "", err } } - return dtos.NoteSlugDTO(inp.Slug), nil + return inp.Slug, nil } func (n *NoteSrv) GetBySlugAndRemoveIfNeeded(

@@ -79,5 +79,5 @@ }

// TODO: in future not remove, leave some metadata // to shot user that note was alreasy seen - return note, n.noterepo.DeleteBySlug(ctx, dtos.NoteSlugDTO(note.Slug)) + return note, n.noterepo.DeleteBySlug(ctx, note.Slug) }
M internal/store/psql/noterepo/noterepo.go

@@ -98,7 +98,7 @@ }

defer tx.Rollback(ctx) //nolint:errcheck var noteID uuid.UUID - err = tx.QueryRow(ctx, "select id from notes where slug = $1", slug.String()).Scan(&noteID) + err = tx.QueryRow(ctx, "select id from notes where slug = $1", slug).Scan(&noteID) if err != nil { if errors.Is(err, pgx.ErrNoRows) { return models.ErrNoteNotFound
M internal/transport/http/apiv1/note.go

@@ -53,7 +53,7 @@ errorResponse(c, err)

return } - c.JSON(http.StatusCreated, createNoteResponse{slug.String()}) + c.JSON(http.StatusCreated, createNoteResponse{slug}) } type getNoteBySlugResponse struct {

@@ -64,7 +64,7 @@ }

func (a *APIV1) getNoteBySlugHandler(c *gin.Context) { slug := c.Param("slug") - note, err := a.notesrv.GetBySlugAndRemoveIfNeeded(c.Request.Context(), dtos.NoteSlugDTO(slug)) + note, err := a.notesrv.GetBySlugAndRemoveIfNeeded(c.Request.Context(), slug) if err != nil { errorResponse(c, err) return