Documentation
¶
Index ¶
- func GeneratePDFminio(multipartFile *multipart.FileHeader, basicUserName string, c *gin.Context, ...) (string, error)
- func GetIdFromToken(r *http.Request, cfg *config.Config) (string, int)
- type HandlerV1
- func (h HandlerV1) BasicResumeData(c *gin.Context)
- func (h *HandlerV1) CreateUser(c *gin.Context)
- func (h *HandlerV1) DeleteResume(c *gin.Context)
- func (h *HandlerV1) DeleteUser(c *gin.Context)
- func (h HandlerV1) ForgetPassword(c *gin.Context)
- func (h HandlerV1) ForgetPasswordVerify(c *gin.Context)
- func (h *HandlerV1) GenerateResume(c *gin.Context)
- func (h *HandlerV1) GetByToken(c *gin.Context)
- func (h *HandlerV1) GetUser(c *gin.Context)
- func (h *HandlerV1) LastGenerateResume(c *gin.Context)
- func (h *HandlerV1) ListResume(c *gin.Context)
- func (h *HandlerV1) ListUserResume(c *gin.Context)
- func (h *HandlerV1) ListUsers(c *gin.Context)
- func (h HandlerV1) Login(c *gin.Context)
- func (h HandlerV1) MainResumeData(c *gin.Context)
- func (h HandlerV1) RegisterUser(c *gin.Context)
- func (h HandlerV1) SetNewPassword(c *gin.Context)
- func (h HandlerV1) UpdateToken(c *gin.Context)
- func (h *HandlerV1) UpdateUser(c *gin.Context)
- func (h *HandlerV1) UploadMedia(c *gin.Context)
- func (h *HandlerV1) UploadResumePhoto(c *gin.Context)
- func (h HandlerV1) Verification(c *gin.Context)
- type HandlerV1Config
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GeneratePDFminio ¶
Types ¶
type HandlerV1 ¶
type HandlerV1 struct { Config *config.Config Logger *zap.Logger ContextTimeout time.Duration JwtHandler tokens.JwtHandler Service grpcClients.ServiceClient AppVersion appV.AppVersion BrokerProducer event.BrokerProducer // contains filtered or unexported fields }
func New ¶
func New(c *HandlerV1Config) *HandlerV1
func (HandlerV1) BasicResumeData ¶
BasicReume BASIC RESUME ... @Security BearerAuth @Router /v1/resume/basic [POST] @Summary BASIC RESUME @Description Api for post basic resume @Tags STEP-RESUME @Accept json @Produce json @Param BasicResumeData body models.Basics true "BasicResumeData" @Success 200 {object} models.RegisterRes @Failure 400 {object} models.Error @Failure 500 {object} models.Error
func (*HandlerV1) CreateUser ¶
CreateUser @Summary CREATE @Security BearerAuth @Description Api for Create @Tags USER @Accept json @Produce json @Param User body models.UserReq true "createModel" @Success 200 {object} models.UserResCreate @Failure 400 {object} models.Error @Failure 500 {object} models.Error @Router /v1/users [post]
func (*HandlerV1) DeleteResume ¶
DeleteResume @Summary DELETE @Security BearerAuth @Description Api for Delete Resume @Tags RESUME @Accept json @Produce json @Param id query string true "ID" @Success 200 {object} models.RegisterRes @Failure 400 {object} models.Error @Failure 500 {object} models.Error @Router /v1/resumes/{id} [delete]
func (*HandlerV1) DeleteUser ¶
DeleteUser @Summary DELETE @Security BearerAuth @Description Api for Delete @Tags USER @Accept json @Produce json @Param id query string true "ID" @Success 200 {object} models.RegisterRes @Failure 400 {object} models.Error @Failure 500 {object} models.Error @Router /v1/users/{id} [delete]
func (HandlerV1) ForgetPassword ¶
ForgetPassword @Security BearerAuth @Router /v1/users/set/{email} [GET] @Summary FORGET PASSWORD @Description Api for set new password @Tags SET-PASSWORD @Accept json @Produce json @Param email query string true "EMAIL" @Success 200 {object} models.RegisterRes @Failure 400 {object} models.Error @Failure 500 {object} models.Error
func (HandlerV1) ForgetPasswordVerify ¶
ForgetPasswordVerify @Security BearerAuth @Router /v1/users/code [GET] @Summary FORGET PASSWORD CODE @Description Api for verify new password code @Tags SET-PASSWORD @Accept json @Produce json @Param request query models.Verify true "request" @Success 200 {object} models.RegisterRes @Failure 400 {object} models.Error @Failure 500 {object} models.Error
func (*HandlerV1) GenerateResume ¶
GenerateResume @Security BearerAuth @Summary Generate a Resume @Description This API for generate a resume @Tags RESUME @Accept json @Produce json @Param data body models.ResumeGenetare true "Resume Model" @Success 200 {object} models.ResumeResponse @Failure 400 {object} models.Error @Failure 401 {object} models.Error @Failure 403 {object} models.Error @Failure 500 {object} models.Error @Router /v1/resume/generate-resume [POST]
func (*HandlerV1) GetByToken ¶
GetByToken @Summary GET BY TOKEN @Security BearerAuth @Description Api for Get user by token @Tags USER @Accept json @Produce json @Success 200 {object} models.UserRes @Failure 400 {object} models.Error @Failure 500 {object} models.Error @Router /v1/users/token [get]
func (*HandlerV1) GetUser ¶
GetUser @Summary GET @Security BearerAuth @Description Api for Get @Tags USER @Accept json @Produce json @Param id path string true "ID" @Success 200 {object} models.UserRes @Failure 400 {object} models.Error @Failure 500 {object} models.Error @Router /v1/users/{id} [get]
func (*HandlerV1) LastGenerateResume ¶
GenerateResume @Security BearerAuth @Summary Generate a Resume @Description This API for generate a resume @Tags STEP-RESUME @Accept json @Produce json @Param data body models.LastResumeReq true "Resume Model" @Success 200 {object} string "Resume URL" @Failure 400 {object} models.Error @Failure 401 {object} models.Error @Failure 403 {object} models.Error @Failure 500 {object} models.Error @Router /v1/resume/generate [POST]
func (*HandlerV1) ListResume ¶
ListResume @Summary LIST RESUME @Security BearerAuth @Description Api for ListREsume @Tags RESUME @Accept json @Produce json @Param request query models.Pagination true "request" @Param request query models.Filter true "request" @Success 200 {object} models.ResResumeList @Failure 400 {object} models.Error @Failure 500 {object} models.Error @Router /v1/resume/list [get]
func (*HandlerV1) ListUserResume ¶
ListUsersResume @Summary LIST USER RESUME @Security BearerAuth @Description Api for ListUsersResume @Tags RESUME @Accept json @Produce json @Param request query models.Pagination true "request" @Success 200 {object} []models.ResResume @Failure 400 {object} models.Error @Failure 500 {object} models.Error @Router /v1/users/resume/list [get]
func (*HandlerV1) ListUsers ¶
ListUsers @Summary LIST USERS @Security BearerAuth @Description Api for ListUsers @Tags USER @Accept json @Produce json @Param request query models.Pagination true "request" @Success 200 {object} models.Users @Failure 400 {object} models.Error @Failure 500 {object} models.Error @Router /v1/users/list [get]
func (HandlerV1) Login ¶
Login @Security BearerAuth @Router /v1/users/login [POST] @Summary LOGIN @Description Api for login user @Tags LOGIN @Accept json @Produce json @Param User body models.Login true "Login" @Success 200 {object} models.UserResCreate @Failure 400 {object} models.Error @Failure 500 {object} models.Error
func (HandlerV1) MainResumeData ¶
MainReume Main RESUME ... @Security BearerAuth @Router /v1/resume/main [POST] @Summary Main RESUME @Description Api for post Main resume @Tags STEP-RESUME @Accept json @Produce json @Param MainResumeData body models.MainResumeReq true "MainResumeData" @Success 200 {object} models.RegisterRes @Failure 400 {object} models.Error @Failure 500 {object} models.Error
func (HandlerV1) RegisterUser ¶
RegisterUser REGISTER USER ... @Security BearerAuth @Router /v1/users/register [POST] @Summary REGISTER USER @Description Api for register a new user @Tags SIGNUP @Accept json @Produce json @Param User body models.RegisterReq true "RegisterUser" @Success 200 {object} models.RegisterRes @Failure 400 {object} models.Error @Failure 500 {object} models.Error
func (HandlerV1) SetNewPassword ¶
SetNewPassword @Security BearerAuth @Router /v1/users/password [PUT] @Summary SET NEW PASSWORD @Description Api for update new password @Tags SET-PASSWORD @Accept json @Produce json @Param request query models.Login true "request" @Success 200 {object} models.UserResCreate @Failure 400 {object} models.Error @Failure 500 {object} models.Error
func (HandlerV1) UpdateToken ¶
UpdateToken @Security BearerAuth @Router /v1/token/{refresh} [GET] @Summary UPDATE TOKEN @Description Api for updated access token @Tags TOKEN @Accept json @Produce json @Param refresh path string true "Refresh Token" @Success 200 {object} models.TokenResp @Failure 400 {object} models.Error @Failure 500 {object} models.Error
func (*HandlerV1) UpdateUser ¶
UpdateUserm @Summary UPDATE @Security BearerAuth @Description Api for Update @Tags USER @Accept json @Produce json @Param User body models.UserUpdateReq true "createModel" @Success 200 {object} models.UserRes @Failure 400 {object} models.Error @Failure 500 {object} models.Error @Router /v1/users [put]
func (*HandlerV1) UploadMedia ¶
UploadMedia @Summary Upload User photo @Security BearerAuth @Description Through this api front-ent can upload user photo and get the link to the media. @Tags MEDIA @Accept json @Produce json @Param file formData file true "Image" @Success 200 {object} string @Failure 400 {object} models.Error @Failure 500 {object} models.Error @Router /v1/media/user-photo [POST]
func (*HandlerV1) UploadResumePhoto ¶
UploadMedia @Summary Upload Resume Photo @Security BearerAuth @Description Through this api front-ent can upload resume photo and get the link to the resume. @Tags MEDIA @Accept json @Produce json @Param file formData file true "Image" @Success 200 {object} models.ResponseUrl @Failure 400 {object} models.Error @Failure 500 {object} models.Error @Router /v1/resume/resume-photo [POST]
func (HandlerV1) Verification ¶
Verification @Security BearerAuth @Router /v1/users/verify [GET] @Summary VERIFICATION @Description Api for verify a new user @Tags SIGNUP @Accept json @Produce json @Param request query models.Verify true "request" @Success 200 {object} models.UserResCreate @Failure 400 {object} models.Error @Failure 500 {object} models.Error
type HandlerV1Config ¶
type HandlerV1Config struct { Config *config.Config Logger *zap.Logger ContextTimeout time.Duration JwtHandler tokens.JwtHandler Service grpcClients.ServiceClient AppVersion appV.AppVersion BrokerProducer event.BrokerProducer Enforcer *casbin.Enforcer Redis repo.Cache Writer *rabbitmq.RabbitMQProducerImpl }