添加优惠券功能,实现价格计算

This commit is contained in:
2025-04-19 14:59:19 +08:00
parent 999d0b0a1d
commit 058c4f4313
9 changed files with 581 additions and 19 deletions

View File

@@ -2,18 +2,32 @@ package web
import (
"errors"
"log/slog"
"platform/web/common"
"reflect"
"github.com/gofiber/fiber/v2"
)
func ErrorHandler(c *fiber.Ctx, err error) error {
code := fiber.StatusInternalServerError
message := "服务器异常"
var e *fiber.Error
if errors.As(err, &e) {
code = e.Code
message = e.Message
var code int
var message string
var fiberErr *fiber.Error
var serviceErr common.ServiceErr
if errors.As(err, &fiberErr) {
code = fiberErr.Code
message = fiberErr.Message
} else if errors.As(err, &fiberErr) {
code = serviceErr.Code()
message = serviceErr.Error()
} else {
code = fiber.StatusInternalServerError
message = "服务器异常"
slog.Debug("未处理的异常", slog.String("type", reflect.TypeOf(err).Name()), slog.String("error", err.Error()))
}
c.Set(fiber.HeaderContentType, fiber.MIMETextPlainCharsetUTF8)
return c.Status(code).SendString(message)
}