完善套餐与账单接口 & 完善支付数据保存,记录实付价格并关联优惠券

This commit is contained in:
2026-03-26 14:39:19 +08:00
parent 5ffa151f58
commit 75ad12efb3
23 changed files with 706 additions and 613 deletions

View File

@@ -1,7 +1,9 @@
package web
import (
"encoding/json"
"errors"
"fmt"
"log/slog"
"platform/web/auth"
"platform/web/core"
@@ -19,6 +21,7 @@ func ErrorHandler(c *fiber.Ctx, err error) error {
var authErr auth.AuthErr
var bizErr *core.BizErr
var servErr *core.ServErr
var jsonErr *json.UnmarshalTypeError
switch {
@@ -48,6 +51,10 @@ func ErrorHandler(c *fiber.Ctx, err error) error {
code = fiber.StatusInternalServerError
message = err.Error()
case errors.As(err, &jsonErr):
code = fiber.StatusBadRequest
message = fmt.Sprintf("参数 %s 类型不正确,传入类型为 %s正确类型应该为 %s", jsonErr.Field, jsonErr.Value, jsonErr.Type.Name())
// 所有未手动声明的错误类型
default:
slog.Warn("未处理的异常", slog.String("type", reflect.TypeOf(err).Name()), slog.String("error", err.Error()))