merch-api/internal/user/service.go
2026-03-20 16:09:12 +03:00

42 lines
866 B
Go

package user
import (
"context"
"errors"
"merch-api/pkg/utils"
)
type service struct {
repo Repository
utils utils.Utils
}
func newService(repo Repository, utils utils.Utils) *service {
return &service{
repo: repo,
utils: utils,
}
}
func (s *service) GetUserId(ctx context.Context, userUuid string) (int64, error) {
if userUuid == "" {
return 0, errors.New("user uuid is empty")
}
return s.repo.getUserId(ctx, userUuid)
}
func (s *service) createUser(ctx context.Context, userUuid string) error {
now := s.utils.TimeNowUTC()
return s.repo.addUser(ctx, &userModel{
CreatedAt: now,
UpdatedAt: s.utils.NullTimeFromNow(now),
DeletedAt: s.utils.DeletedNullTime(),
Uuid: userUuid,
})
}
func (s *service) deleteUser(ctx context.Context, userUuid string) error {
return s.repo.deleteUser(ctx, userUuid, s.utils.NullTimeNowUTC())
}