users

package
v0.0.0-...-d389d3b Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 14, 2022 License: MIT Imports: 19 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewUserRoutes

func NewUserRoutes(
	logger logger.Logger,
	handler common.RequestHandler,
	userController UserController,
	rootHandler *routeHandlers.RootRouteHandler,
) routes.Route

NewUserRoutes creates new user routes.

Types

type CreateUserRequest

type CreateUserRequest struct {
	Name     string     `json:"name" binding:"required" example:"Name"` // TODO, apply validation
	Email    string     `json:"email" binding:"required" example:"Name@name.com"`
	Age      uint8      `json:"age" binding:"required" example:"50"`
	Birthday types.Date `json:"birthday" binding:"required" example:"2022-06-10"`
}

type UpdateUserRequest

type UpdateUserRequest struct {
	ID       uint       `json:"int,omitempty" uri:"id" binding:"required"`
	Name     string     `json:"name" binding:"required"` // TODO, apply validation
	Age      uint8      `json:"age" binding:"required"`
	Birthday types.Date `json:"birthday" binding:"required"`
}

type UserController

type UserController struct {
	// contains filtered or unexported fields
}

UserController is a struct which handles the typical http requests for a user.

func NewUserController

func NewUserController(
	userService services.UserService,
	logger logger.Logger,
	apiConverter UserAPIConverter,
	overviewAPIConverter UserOverviewAPIConverter,
	validator binding.StructValidator,
) UserController

NewUserController creates a new NewUserController.

func (UserController) CreateUser

CreateUser creates a user using the prerequisites provided. @Param request body CreateUserRequest true "query params" @Summary Creates a user using the prerequisites provided @Success 201 {object} response.UserResponse "if a new user was created" @Failure 400 {object} response.APIErrorResponse "in case of a bad request" @Router /users [post].

func (UserController) DeleteUserByID

func (u UserController) DeleteUserByID(ctx *gin.Context) (*response.APIResponseEnvelope, error)

DeleteUserByID deletes a user by id. @Summary Deletes a user by id. @Success 204 "if the user is deleted successfully" @Failure 400 {object} response.APIErrorResponse "in case of a bad request" @Failure 500 {object} response.APIErrorResponse "in case of an internal error" @Router /users/{id} [delete].

func (UserController) FindAllUsers

func (u UserController) FindAllUsers(ctx *gin.Context) (*response.APIResponseEnvelope, error)

FindAllUsers retrieves paginated response of users. @Summary Retrieves paginated response of users @Success 200 {object} response.PageableResponse[response.UserResponse] @Failure 400 {object} response.APIErrorResponse "in case of an error" @Router /users [get].

func (UserController) FindOneUserByID

func (u UserController) FindOneUserByID(ctx *gin.Context) (*response.APIResponseEnvelope, error)

FindOneUserByID retrieves a user by the provided ID. @Summary Retrieves a user by the provided ID. @Success 200 {object} response.PageableResponse[response.UserResponse] @Failure 400 {object} response.APIErrorResponse "in case of a bad request" @Failure 404 {object} response.APIErrorResponse "if an unknown ID is provided" @Router /users/{id} [get].

func (UserController) Overview

Overview retrieves overview information about users. @Summary Retrieves paginated response of users @Success 200 {object} response.PageableResponse[response.UserResponse] @Failure 400 {object} response.APIErrorResponse "in case of an error" @Router /users/overview [get].

func (UserController) UpdateUser

UpdateUser updates an existing user. @Summary Updates an existing user. @Success 200 {object} response.UserResponse "the updated users" @Failure 400 {object} response.APIErrorResponse "in case of a bad request" @Failure 500 {object} response.APIErrorResponse "in case of an internal error" @Router /users/{id} [post].

type UserRoutes

type UserRoutes struct {
	// contains filtered or unexported fields
}

UserRoutes struct.

func (UserRoutes) Setup

func (s UserRoutes) Setup()

Setup user routes.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL