user commands
parent
dd6c3666af
commit
0a48d7104c
|
@ -0,0 +1,65 @@
|
||||||
|
package commands
|
||||||
|
|
||||||
|
import (
|
||||||
|
m "netina/models"
|
||||||
|
c "netina/models/commands"
|
||||||
|
u "netina/repositories/user"
|
||||||
|
"netina/validation"
|
||||||
|
"time"
|
||||||
|
)
|
||||||
|
|
||||||
|
type CreateUserHandler struct {
|
||||||
|
Repository u.UserCommandRepository
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
func (r *CreateUserHandler) Handle(command c.CreateUserCommand) error {
|
||||||
|
|
||||||
|
if err := validation.ValidateStruct(command); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
User := &m.User{
|
||||||
|
Name: command.Name,
|
||||||
|
PhoneNumber: command.PhoneNumber,
|
||||||
|
Role_id: command.Role_id,
|
||||||
|
Created_at: time.Now(),
|
||||||
|
Modified_by: command.Modified_by,
|
||||||
|
}
|
||||||
|
|
||||||
|
return r.Repository.CreateUser(User)
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
type UpdateUserHandler struct {
|
||||||
|
Repository u.UserCommandRepository
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
func (r *UpdateUserHandler) Handle (id uint , command c.UpdateUserCommand)(*m.User , error) {
|
||||||
|
if err := validation.ValidateStruct(command); err != nil {
|
||||||
|
return nil , err
|
||||||
|
}
|
||||||
|
|
||||||
|
User := &m.User{
|
||||||
|
Name: command.Name,
|
||||||
|
PhoneNumber: command.PhoneNumber,
|
||||||
|
Role_id: command.Role_id,
|
||||||
|
Modified_by: command.Modified_by,
|
||||||
|
Modified_at: time.Now(),
|
||||||
|
}
|
||||||
|
|
||||||
|
return r.Repository.UpdateUser(id , User)
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
type RemoveUserHandler struct {
|
||||||
|
Repository u.UserCommandRepository
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
func (r *RemoveUserHandler) Handle (id uint )error {
|
||||||
|
return r.Repository.RemoveUser(id)
|
||||||
|
}
|
Loading…
Reference in New Issue