fix(camel_oil): 修复预取订单日志时间顺序

- 引入切片反转函数以倒序存储单分钟日志
- 避免日志顺序混乱,确保时间戳递减排列
- 优化日志处理逻辑,提升数据准确性
- 创建临时日志切片以批量操作再合并结果列表
This commit is contained in:
danial
2025-12-08 16:44:45 +08:00
parent ff0d6e2d9f
commit e3fc3f08c1

View File

@@ -5,6 +5,7 @@ import (
"encoding/json"
"fmt"
"github.com/gogf/gf/v2/errors/gcode"
"slices"
"time"
v1 "kami/api/camel_oil/v1"
@@ -66,6 +67,7 @@ func (s *sCamelOil) GetPrefetchOrderLogs(ctx context.Context, req *v1.GetPrefetc
continue
}
tmpLogs := make([]v1.PrefetchOrderLogItem, 0)
// 处理每条日志
for _, log := range minuteLogs {
// 提取时间戳
@@ -81,13 +83,14 @@ func (s *sCamelOil) GetPrefetchOrderLogs(ctx context.Context, req *v1.GetPrefetc
}
// 添加到结果列表,只包含时间戳和响应数据
logs = append(logs, v1.PrefetchOrderLogItem{
tmpLogs = append(tmpLogs, v1.PrefetchOrderLogItem{
Timestamp: timestamp,
ResponseData: respStr,
})
logCount++
}
slices.Reverse(tmpLogs)
logs = append(logs, tmpLogs...)
actualStartTime = currentTime
currentTime = currentTime.Add(-gtime.M)
}