aditya.siregar 3c80b710af Update Infra
2025-03-04 20:36:17 +07:00

44 lines
919 B
Go

package response
import (
"github.com/gin-gonic/gin"
"enaklo-pos-be/internal/common/errors"
)
type response struct {
Status int `json:"status"`
Meta interface{} `json:"meta,omitempty"`
Message string `json:"message"`
Data interface{} `json:"data"`
Success bool `json:"success,omitempty"`
}
func ErrorWrapper(c *gin.Context, err error) {
var customError errors.Error
customError = errors.ErrorInternalServer
status := customError.MapErrorsToHTTPCode()
code := customError.MapErrorsToCode()
message := err.Error()
if validErr, ok := err.(errors.Error); ok {
status = validErr.MapErrorsToHTTPCode()
code = validErr.MapErrorsToCode()
if code.GetHTTPCode() != 0 {
status = code.GetHTTPCode()
}
message = code.GetMessage()
}
resp := BaseResponse{
ErrorMessage: err.Error(),
Code: code.GetCode(),
Message: message,
}
c.JSON(status, resp)
}