Add users
This commit is contained in:
parent
5966301165
commit
8322bbef18
@ -49,6 +49,7 @@ type LoginResponse struct {
|
||||
|
||||
type UserResponse struct {
|
||||
ID uuid.UUID `json:"id"`
|
||||
Username string `json:"username"`
|
||||
Name string `json:"name"`
|
||||
Email string `json:"email"`
|
||||
IsActive bool `json:"is_active"`
|
||||
|
||||
@ -41,6 +41,7 @@ func (p *Permissions) Scan(value interface{}) error {
|
||||
|
||||
type User struct {
|
||||
ID uuid.UUID `gorm:"type:uuid;primary_key;default:gen_random_uuid()" json:"id"`
|
||||
Username string `gorm:"uniqueIndex;not null;size:100" json:"username" validate:"required,min=1,max=100"`
|
||||
Name string `gorm:"not null;size:255" json:"name" validate:"required,min=1,max=255"`
|
||||
Email string `gorm:"uniqueIndex;not null;size:255" json:"email" validate:"required,email"`
|
||||
PasswordHash string `gorm:"not null;size:255" json:"-"`
|
||||
|
||||
@ -351,6 +351,7 @@ func (p *UserProcessorImpl) BulkCreateUsersWithTransaction(ctx context.Context,
|
||||
|
||||
user := &entities.User{
|
||||
ID: uuid.New(),
|
||||
Username: req.Email,
|
||||
Name: req.Name,
|
||||
Email: req.Email,
|
||||
PasswordHash: string(hashedPassword),
|
||||
|
||||
@ -81,7 +81,7 @@ func (r *Router) addAppRoutes(rg *gin.Engine) {
|
||||
users.Use(r.authMiddleware.RequireAuth())
|
||||
{
|
||||
users.GET("", r.userHandler.ListUsers)
|
||||
users.POST("/bulk", r.userHandler.BulkCreateUsers)
|
||||
users.POST("/bulk", r.userHandler.BulkCreateUsersAsync)
|
||||
users.POST("/bulk/async", r.userHandler.BulkCreateUsersAsync)
|
||||
users.GET("/bulk/job/:jobId", r.userHandler.GetBulkJobStatus)
|
||||
users.GET("/profile", r.userHandler.GetProfile)
|
||||
|
||||
@ -10,6 +10,7 @@ func CreateUserRequestToEntity(req *contract.CreateUserRequest, passwordHash str
|
||||
return nil
|
||||
}
|
||||
return &entities.User{
|
||||
Username: req.Email,
|
||||
Name: req.Name,
|
||||
Email: req.Email,
|
||||
PasswordHash: passwordHash,
|
||||
@ -26,6 +27,7 @@ func UpdateUserEntity(existing *entities.User, req *contract.UpdateUserRequest)
|
||||
}
|
||||
if req.Email != nil {
|
||||
existing.Email = *req.Email
|
||||
existing.Username = *req.Email
|
||||
}
|
||||
if req.IsActive != nil {
|
||||
existing.IsActive = *req.IsActive
|
||||
@ -40,6 +42,7 @@ func EntityToContract(user *entities.User) *contract.UserResponse {
|
||||
|
||||
resp := &contract.UserResponse{
|
||||
ID: user.ID,
|
||||
Username: user.Username,
|
||||
Name: user.Name,
|
||||
Email: user.Email,
|
||||
IsActive: user.IsActive,
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user