From 05a8f0cbc70a3f8d422a5c52052c7b48509bc68e Mon Sep 17 00:00:00 2001 From: d3m0k1d Date: Sat, 14 Feb 2026 15:42:43 +0300 Subject: [PATCH] fix: add return after failure req --- backend/docs/docs.go | 20 ++++++++++++++++---- backend/docs/swagger.json | 20 ++++++++++++++++---- backend/docs/swagger.yaml | 11 ++++++++--- backend/internal/handlers/post_handlers.go | 9 ++++++++- 4 files changed, 48 insertions(+), 12 deletions(-) diff --git a/backend/docs/docs.go b/backend/docs/docs.go index 8fb7a5b..0d0daa9 100644 --- a/backend/docs/docs.go +++ b/backend/docs/docs.go @@ -94,10 +94,22 @@ const docTemplate = `{ "200": { "description": "OK", "schema": { - "type": "array", - "items": { - "$ref": "#/definitions/gitea_d3m0k1d_ru_d3m0k1d_d3m0k1d_ru_backend_internal_storage.PostReq" - } + "allOf": [ + { + "$ref": "#/definitions/gitea_d3m0k1d_ru_d3m0k1d_d3m0k1d_ru_backend_internal_models.SuccessResponse" + }, + { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/definitions/gitea_d3m0k1d_ru_d3m0k1d_d3m0k1d_ru_backend_internal_storage.PostReq" + } + } + } + } + ] } }, "400": { diff --git a/backend/docs/swagger.json b/backend/docs/swagger.json index fe2e9e7..707d3f0 100644 --- a/backend/docs/swagger.json +++ b/backend/docs/swagger.json @@ -83,10 +83,22 @@ "200": { "description": "OK", "schema": { - "type": "array", - "items": { - "$ref": "#/definitions/gitea_d3m0k1d_ru_d3m0k1d_d3m0k1d_ru_backend_internal_storage.PostReq" - } + "allOf": [ + { + "$ref": "#/definitions/gitea_d3m0k1d_ru_d3m0k1d_d3m0k1d_ru_backend_internal_models.SuccessResponse" + }, + { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/definitions/gitea_d3m0k1d_ru_d3m0k1d_d3m0k1d_ru_backend_internal_storage.PostReq" + } + } + } + } + ] } }, "400": { diff --git a/backend/docs/swagger.yaml b/backend/docs/swagger.yaml index e90652a..0815700 100644 --- a/backend/docs/swagger.yaml +++ b/backend/docs/swagger.yaml @@ -99,9 +99,14 @@ paths: "200": description: OK schema: - items: - $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_d3m0k1d_ru_backend_internal_storage.PostReq' - type: array + allOf: + - $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_d3m0k1d_ru_backend_internal_models.SuccessResponse' + - properties: + data: + items: + $ref: '#/definitions/gitea_d3m0k1d_ru_d3m0k1d_d3m0k1d_ru_backend_internal_storage.PostReq' + type: array + type: object "400": description: Invalid ID format schema: diff --git a/backend/internal/handlers/post_handlers.go b/backend/internal/handlers/post_handlers.go index 52017ab..8a92bb0 100644 --- a/backend/internal/handlers/post_handlers.go +++ b/backend/internal/handlers/post_handlers.go @@ -25,7 +25,7 @@ func NewPostHandlers(repo repositories.PostRepository) *PostHandlers { // @Tags posts // @Accept json // @Produce json -// @Success 200 {object} []storage.PostReq +// @Success 200 {object} models.SuccessResponse{data=[]storage.PostReq} // @Failure 404 {object} models.ErrorResponse "No Post found" // @Failure 500 {object} models.ErrorResponse "Internal server error" // @Failure 400 {object} models.ErrorResponse "Invalid ID format" @@ -36,9 +36,11 @@ func (h *PostHandlers) GetPosts(c *gin.Context) { if err != nil { h.logger.Error("error request: " + err.Error()) models.Error(c, 500, "Internal server error", err.Error()) + return } if result == nil { models.Error(c, 404, "No Post found", "") + return } h.logger.Info("200 OK GET /posts") models.Success(c, result) @@ -62,12 +64,14 @@ func (h *PostHandlers) GetPost(c *gin.Context) { if err != nil { h.logger.Error("error request: " + err.Error()) models.Error(c, 500, "Internal server error", err.Error()) + return } id_p := c.Param("id") id, err := strconv.Atoi(id_p) if err != nil { h.logger.Error("error request: " + err.Error()) models.Error(c, 400, "Invalid ID format", err.Error()) + return } if id > last_id { models.Error(c, 404, "Post not found", "") @@ -77,6 +81,7 @@ func (h *PostHandlers) GetPost(c *gin.Context) { if err != nil { h.logger.Error("error request: " + err.Error()) models.Error(c, 500, "Internal server error", err.Error()) + return } h.logger.Info("200 OK GET /posts/" + id_p) models.Success(c, result) @@ -133,6 +138,7 @@ func (h *PostHandlers) UpdatePost(c *gin.Context) { if err != nil { h.logger.Error("error request: " + err.Error()) models.Error(c, 500, "Internal server error", err.Error()) + return } var req storage.Post if err := c.ShouldBindJSON(&req); err != nil { @@ -167,6 +173,7 @@ func (h *PostHandlers) DeletePost(c *gin.Context) { if err != nil { h.logger.Error("error request: " + err.Error()) models.Error(c, 400, "Invalid ID format", err.Error()) + return } exsist := h.repo.IsExist(c.Request.Context(), id) if !exsist {