package response import ( "net/http" "github.com/gin-gonic/gin" ) type Body struct { Code string `json:"code"` Message string `json:"message"` Data any `json:"data,omitempty"` } func OK(c *gin.Context, data any) { c.JSON(http.StatusOK, Body{ Code: "ok", Message: "ok", Data: data, }) } func Created(c *gin.Context, data any) { c.JSON(http.StatusCreated, Body{ Code: "ok", Message: "created", Data: data, }) } func Error(c *gin.Context, status int, code, message string) { c.JSON(status, Body{ Code: code, Message: message, }) } func BadRequest(c *gin.Context, message string) { Error(c, http.StatusBadRequest, "bad_request", message) } func Unauthorized(c *gin.Context, message string) { Error(c, http.StatusUnauthorized, "unauthorized", message) } func ServiceUnavailable(c *gin.Context, message string) { Error(c, http.StatusServiceUnavailable, "service_unavailable", message) } func NotFound(c *gin.Context, message string) { Error(c, http.StatusNotFound, "not_found", message) } func InternalServerError(c *gin.Context, message string) { Error(c, http.StatusInternalServerError, "internal_server_error", message) }