From 96943f2640acf4184db6839bde2117be99e03617 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luis=20Eduardo=20Jer=C3=A9z=20Gir=C3=B3n?= Date: Sat, 20 Jul 2024 00:39:00 -0600 Subject: [PATCH] Add service package and implement GetUserByEmail method --- internal/service/service.go | 18 ++++++++++++++++++ internal/service/users/get_user_by_email.go | 13 +++++++++++++ internal/service/users/get_user_by_email.sql | 2 ++ internal/service/users/users.go | 13 +++++++++++++ 4 files changed, 46 insertions(+) create mode 100644 internal/service/service.go create mode 100644 internal/service/users/get_user_by_email.go create mode 100644 internal/service/users/get_user_by_email.sql create mode 100644 internal/service/users/users.go diff --git a/internal/service/service.go b/internal/service/service.go new file mode 100644 index 0000000..f618efc --- /dev/null +++ b/internal/service/service.go @@ -0,0 +1,18 @@ +package service + +import ( + "github.com/eduardolat/pgbackweb/internal/database/dbgen" + "github.com/eduardolat/pgbackweb/internal/service/users" +) + +type Service struct { + UsersService *users.Service +} + +func New(dbgen *dbgen.Queries) *Service { + usersService := users.New(dbgen) + + return &Service{ + UsersService: usersService, + } +} diff --git a/internal/service/users/get_user_by_email.go b/internal/service/users/get_user_by_email.go new file mode 100644 index 0000000..1356f8b --- /dev/null +++ b/internal/service/users/get_user_by_email.go @@ -0,0 +1,13 @@ +package users + +import ( + "context" + + "github.com/eduardolat/pgbackweb/internal/database/dbgen" +) + +func (s *Service) GetUserByEmail( + ctx context.Context, email string, +) (dbgen.User, error) { + return s.dbgen.UsersServiceGetUserByEmail(ctx, email) +} diff --git a/internal/service/users/get_user_by_email.sql b/internal/service/users/get_user_by_email.sql new file mode 100644 index 0000000..f8bc390 --- /dev/null +++ b/internal/service/users/get_user_by_email.sql @@ -0,0 +1,2 @@ +-- name: UsersServiceGetUserByEmail :one +SELECT * FROM users WHERE email = @email; diff --git a/internal/service/users/users.go b/internal/service/users/users.go new file mode 100644 index 0000000..7835b36 --- /dev/null +++ b/internal/service/users/users.go @@ -0,0 +1,13 @@ +package users + +import "github.com/eduardolat/pgbackweb/internal/database/dbgen" + +type Service struct { + dbgen *dbgen.Queries +} + +func New(dbgen *dbgen.Queries) *Service { + return &Service{ + dbgen: dbgen, + } +}