diff --git a/src/app/handler/image/image.handler.go b/src/app/handler/image/image.handler.go index 143fc9e..483451b 100644 --- a/src/app/handler/image/image.handler.go +++ b/src/app/handler/image/image.handler.go @@ -20,27 +20,18 @@ func NewHandler(service imageSvc.Service, validate validator.IDtoValidator) *Han return &Handler{service, validate} } -func (h *Handler) FindByPetId(c *router.FiberCtx) { - id, err := c.ID() - if err != nil { - c.JSON(http.StatusBadRequest, dto.ResponseErr{ - StatusCode: http.StatusInternalServerError, - Message: constant.InvalidIDMessage, - Data: nil, - }) - return - } - - response, respErr := h.service.FindByPetId(id) - if respErr != nil { - c.JSON(respErr.StatusCode, respErr) - return - } - - c.JSON(http.StatusOK, response) - return -} - +// Upload is a function for uploading image to bucket +// @Summary Upload image +// @Description Returns the data of image. If updating pet, add petId. If creating pet, petId is not specified, but keep the imageId. +// @Param image body dto.UploadImageRequest true "upload image request dto" +// @Tags image +// @Accept json +// @Produce json +// @Success 201 {object} dto.ImageResponse +// @Failure 400 {object} dto.ResponseBadRequestErr "Invalid request body" +// @Failure 500 {object} dto.ResponseInternalErr "Internal service error" +// @Failure 503 {object} dto.ResponseServiceDownErr "Service is down" +// @Router /v1/images/ [post] func (h *Handler) Upload(c *router.FiberCtx) { request := &dto.UploadImageRequest{} err := c.Bind(request) @@ -76,6 +67,17 @@ func (h *Handler) Upload(c *router.FiberCtx) { return } +// Delete is a function for deleting image from bucket +// @Summary Delete image +// @Description Returns status of deleting image +// @Param id path string true "image id" +// @Tags image +// @Accept json +// @Produce json +// @Success 200 {object} dto.DeleteResponse +// @Failure 500 {object} dto.ResponseInternalErr "Internal service error" +// @Failure 503 {object} dto.ResponseServiceDownErr "Service is down" +// @Router /v1/images/{id} [delete] func (h *Handler) Delete(c *router.FiberCtx) { id, err := c.ID() if err != nil { @@ -96,38 +98,3 @@ func (h *Handler) Delete(c *router.FiberCtx) { c.JSON(http.StatusOK, res.Success) return } - -func (h *Handler) AssignPet(c *router.FiberCtx) { - request := &dto.AssignPetRequest{} - err := c.Bind(request) - if err != nil { - c.JSON(http.StatusBadRequest, dto.ResponseErr{ - StatusCode: http.StatusBadRequest, - Message: constant.BindingRequestErrorMessage + err.Error(), - Data: nil, - }) - return - } - - if err := h.validate.Validate(request); err != nil { - var errorMessage []string - for _, reqErr := range err { - errorMessage = append(errorMessage, reqErr.Message) - } - c.JSON(http.StatusBadRequest, dto.ResponseErr{ - StatusCode: http.StatusBadRequest, - Message: constant.InvalidRequestBodyMessage + strings.Join(errorMessage, ", "), - Data: nil, - }) - return - } - - response, respErr := h.service.AssignPet(request) - if respErr != nil { - c.JSON(respErr.StatusCode, respErr) - return - } - - c.JSON(http.StatusOK, response) - return -} diff --git a/src/app/handler/pet/pet.handler.go b/src/app/handler/pet/pet.handler.go index b9689c8..dfce616 100644 --- a/src/app/handler/pet/pet.handler.go +++ b/src/app/handler/pet/pet.handler.go @@ -259,7 +259,7 @@ func (h *Handler) ChangeView(c router.IContext) { // @Failure 400 {object} dto.ResponseBadRequestErr "Invalid request body" // @Failure 500 {object} dto.ResponseInternalErr "Internal service error" // @Failure 503 {object} dto.ResponseServiceDownErr "Service is down" -// @Router /v1/pets/ [delete] +// @Router /v1/pets/{id} [delete] func (h *Handler) Delete(c router.IContext) { id, err := c.Param("id") if err != nil { diff --git a/src/docs/markdown/image.md b/src/docs/markdown/image.md new file mode 100644 index 0000000..33ecf3c --- /dev/null +++ b/src/docs/markdown/image.md @@ -0,0 +1,2 @@ +# Image Tag API Documentation +**Image** functions goes here \ No newline at end of file diff --git a/src/docs/markdown/pet.md b/src/docs/markdown/pet.md new file mode 100644 index 0000000..a3348c3 --- /dev/null +++ b/src/docs/markdown/pet.md @@ -0,0 +1,2 @@ +# Pet Tag API Documentation +**Pet** functions goes here \ No newline at end of file diff --git a/src/docs/markdown/user.md b/src/docs/markdown/user.md new file mode 100644 index 0000000..18f1710 --- /dev/null +++ b/src/docs/markdown/user.md @@ -0,0 +1,2 @@ +# User Tag API Documentation +**User** functions goes here \ No newline at end of file diff --git a/src/main.go b/src/main.go index 9f06285..8c8fcb4 100644 --- a/src/main.go +++ b/src/main.go @@ -148,7 +148,6 @@ func main() { r.PostImage("/", imageHandler.Upload) r.DeleteImage("/:id", imageHandler.Delete) - r.PostImage("/assign", imageHandler.AssignPet) v1 := router.NewAPIv1(r, conf.App)