refac: separated api content into sub-packages & renamed usecases

This commit is contained in:
Florian Sylvain
2025-03-13 19:43:12 +01:00
parent 7e29c08ea9
commit 4d6054e22b
38 changed files with 181 additions and 152 deletions
+34
View File
@@ -0,0 +1,34 @@
package useCases
import (
"GoCMS/adapters/secondary/gateways"
"GoCMS/domain/user"
"gorm.io/gorm"
)
type CreateUserUseCase struct {
userRepository gateways.UserRepository
}
type CreateUserCommand struct {
Username string
Password string
Email string
VerificationCode string
}
func NewCreateUserUseCase(db *gorm.DB) *CreateUserUseCase {
return &CreateUserUseCase{
userRepository: *gateways.NewUserRepository(db),
}
}
func (g *CreateUserUseCase) CreateUser(createUser CreateUserCommand) (user.User, error) {
return g.userRepository.Create(user.FromApi(
createUser.Username,
createUser.Password,
"",
createUser.Email,
createUser.VerificationCode,
))
}