mirror of
https://git.oceanpay.cc/danial/kami_scripts.git
synced 2025-12-18 22:13:23 +00:00
- 更新 .gitignore 文件,添加日志和IDE相关目录 - 修改 config.yaml,更新提交URL和商户配置- 在 interfaces.go 中添加新方法并修改现有方法 - 优化 logger_adapter.go 中的日志记录功能 - 调整 main.go 中的定时任务间隔 - 在 order.go 中实现新的 FindRandomFailedOrders 方法 - 更新 order_service.go,添加 CSV 文件处理逻辑 - 新增 road.go 文件,实现 FindRoadByRoadUid 方法 - 修改 submit_order.go,更新订单提交逻辑
48 lines
1.1 KiB
Go
48 lines
1.1 KiB
Go
package utils
|
|
|
|
import (
|
|
"order/internal/interfaces"
|
|
|
|
"go.uber.org/zap"
|
|
)
|
|
|
|
// ZapLoggerAdapter zap日志适配器
|
|
type ZapLoggerAdapter struct {
|
|
logger *zap.Logger
|
|
}
|
|
|
|
// NewZapLoggerAdapter 创建zap日志适配器
|
|
func NewZapLoggerAdapter(logger *zap.Logger) interfaces.Logger {
|
|
return &ZapLoggerAdapter{logger: logger}
|
|
}
|
|
|
|
// Info 实现 Logger 接口
|
|
func (l *ZapLoggerAdapter) Info(msg string, fields ...any) {
|
|
l.logger.Info(msg, convertFields(fields)...)
|
|
}
|
|
|
|
// Error 实现 Logger 接口
|
|
func (l *ZapLoggerAdapter) Error(msg string, fields ...any) {
|
|
l.logger.Error(msg, convertFields(fields)...)
|
|
}
|
|
|
|
// Fatal 实现 Logger 接口
|
|
func (l *ZapLoggerAdapter) Fatal(msg string, fields ...interface{}) {
|
|
l.logger.Fatal(msg, convertFields(fields)...)
|
|
}
|
|
|
|
// convertFields 转换字段
|
|
func convertFields(fields []any) []zap.Field {
|
|
zapFields := make([]zap.Field, 0, len(fields)/2)
|
|
for i := 0; i < len(fields); i += 2 {
|
|
if i+1 < len(fields) {
|
|
key, ok := fields[i].(string)
|
|
if !ok {
|
|
continue
|
|
}
|
|
zapFields = append(zapFields, zap.Any(key, fields[i+1]))
|
|
}
|
|
}
|
|
return zapFields
|
|
}
|