优化交易创建流程,客户管理新增折扣与来源字段及功能

This commit is contained in:
2026-03-27 16:16:55 +08:00
parent 75ad12efb3
commit 7e8d824ba6
26 changed files with 523 additions and 140 deletions

View File

@@ -8,6 +8,7 @@ import (
"platform/web/auth"
"platform/web/core"
"reflect"
"time"
"github.com/gofiber/fiber/v2"
)
@@ -22,6 +23,7 @@ func ErrorHandler(c *fiber.Ctx, err error) error {
var bizErr *core.BizErr
var servErr *core.ServErr
var jsonErr *json.UnmarshalTypeError
var timeErr *time.ParseError
switch {
@@ -55,9 +57,21 @@ func ErrorHandler(c *fiber.Ctx, err error) error {
code = fiber.StatusBadRequest
message = fmt.Sprintf("参数 %s 类型不正确,传入类型为 %s正确类型应该为 %s", jsonErr.Field, jsonErr.Value, jsonErr.Type.Name())
case errors.As(err, &timeErr):
code = fiber.StatusBadRequest
message = fmt.Sprintf("时间格式不正确,传入值为 %s检查传参是否为时间类型", timeErr.Value)
// 所有未手动声明的错误类型
default:
slog.Warn("未处理的异常", slog.String("type", reflect.TypeOf(err).Name()), slog.String("error", err.Error()))
t := reflect.TypeOf(err)
for {
if t.Kind() == reflect.Pointer {
t = t.Elem()
continue
}
break
}
slog.Warn("未处理的异常", slog.String("type", t.String()), slog.String("error", err.Error()))
}
c.Set(fiber.HeaderContentType, fiber.MIMETextPlainCharsetUTF8)