Hub-Api/commands/owner_handler.go

55 lines
1.1 KiB
Go

package commands
import (
"netina/models"
o "netina/repositories/owner"
"time"
)
type CreateOwnerHandler struct{
Repository o.OwnerCommandRepository
}
func (r *CreateOwnerHandler) Handle(command models.CreateOwnerCommand) error {
owner := &models.Owner{
PhoneNumber: command.PhoneNumber,
FirstName: command.FirstName,
LastName: command.LastName,
NationalCode: command.NationalCode,
Created_at: time.Now(),
Modified_by: command.Modified_by,
}
return r.Repository.CreateOwner(owner)
}
type UpdateOwnerHandler struct {
Repository o.OwnerCommandRepository
}
func (r *UpdateOwnerHandler) Handle(id uint , command models.UpdateOwnerCommand)(*models.Owner , error) {
owner := &models.Owner{
PhoneNumber: command.PhoneNumber,
FirstName: command.FirstName,
LastName: command.LastName,
NationalCode: command.NationalCode,
Modified_by: command.Modified_by,
}
return r.Repository.UpdateOwner(id , owner)
}
type RemoveOwnerCommand struct {
Repository o.OwnerCommandRepository
}
func (r *RemoveOwnerCommand) Handle(id uint) error {
return r.Repository.RemoveOwner(id)
}