Files
IDP-Backend/internal/api/user/handler/impl.go

54 lines
1.3 KiB
Go

package handler
import (
"context"
"git.logidex.ru/fakz9/logidex-id/internal/api/user/service"
"github.com/gofiber/fiber/v2"
"github.com/jinzhu/copier"
)
type UserHandler struct {
service service.UserService
}
func (h UserHandler) CreateUser(ctx context.Context, request CreateUserRequestObject) (CreateUserResponseObject, error) {
//TODO implement me
panic("implement me")
}
func (h UserHandler) GetUserById(ctx context.Context, request GetUserByIdRequestObject) (GetUserByIdResponseObject, error) {
user, err := h.service.GetUserByUuid(ctx, request.UserId)
if err != nil {
return GetUserById404JSONResponse{
Message: err.Error(),
}, nil
}
var responseUser User
err = copier.Copy(responseUser, user)
if err != nil {
return GetUserById404JSONResponse{Message: err.Error()}, nil
}
return GetUserById200JSONResponse{User: responseUser}, nil
}
var _ StrictServerInterface = (*UserHandler)(nil)
func NewUserHandler(
service service.UserService,
) *UserHandler {
return &UserHandler{service: service}
}
func (h UserHandler) RegisterRoutes(router fiber.Router) {
server := NewStrictHandler(h, nil)
RegisterHandlers(router, server)
}
//func RegisterUserHandler(router fiber.Router) {
// server := NewStrictHandler(NewUserHandler(), nil)
// RegisterHandlers(router, server)
//
//}