Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type GetProfileModel ¶
type GetProfileModel struct {
ID int
}
type LoginModel ¶
type RegisterModel ¶
type UserHandler ¶
type UserHandler struct {
Usecase UserUseCase
}
func ConstructUserHandler ¶
func ConstructUserHandler(router *gin.Engine, usecase UserUseCase, jwtAuth authentication.IJwtAuth) UserHandler
func (*UserHandler) GetProfile ¶
func (u *UserHandler) GetProfile(c *gin.Context)
@Summary Get profile @Description Get detailed user profile @Tags accounts @Produce json @Router /api/v1/user/me [get] @Security JwtAuth
func (*UserHandler) Login ¶
func (u *UserHandler) Login(c *gin.Context)
login godoc @Summary Login @Description Authenticate a user to get access token @Tags accounts @Accept json @Produce json @Param body body string true "Login body" @Router /api/v1/user/login [post] @Security BasicAuth
func (*UserHandler) Register ¶
func (u *UserHandler) Register(c *gin.Context)
@Summary Register new account @Description Register new account @Tags accounts @Accept json @Produce json @Param body body string true "Register body" @Router /api/v1/user/register [post] @Security BasicAuth
type UserLoginDto ¶
type UserProfileDto ¶
type UserUseCase ¶
type UserUseCase interface { Register(c context.Context, model RegisterModel) utils.Response Login(c context.Context, model LoginModel) utils.Response GetProfile(c context.Context, model GetProfileModel) utils.Response }
func ConstructUserUseCase ¶
func ConstructUserUseCase(db *gorm.DB, jwtAuth authentication.IJwtAuth) UserUseCase
type UserUseCaseImpl ¶
type UserUseCaseImpl struct { Database *gorm.DB JwtAuth authentication.IJwtAuth }
func (*UserUseCaseImpl) GetProfile ¶
func (u *UserUseCaseImpl) GetProfile(c context.Context, model GetProfileModel) utils.Response
func (*UserUseCaseImpl) Login ¶
func (u *UserUseCaseImpl) Login(c context.Context, model LoginModel) utils.Response
func (*UserUseCaseImpl) Register ¶
func (u *UserUseCaseImpl) Register(c context.Context, model RegisterModel) utils.Response