🐛 fix(log): optimize channel ID collection by using a map to prevent duplicates

This commit is contained in:
CaIon
2025-06-14 18:23:25 +08:00
parent d57e6425e5
commit 8978dc7a8b

View File

@@ -227,13 +227,18 @@ func GetAllLogs(logType int, startTimestamp int64, endTimestamp int64, modelName
return nil, 0, err return nil, 0, err
} }
channelIds := make([]int, 0) channelIdsMap := make(map[int]struct{})
channelMap := make(map[int]string) channelMap := make(map[int]string)
for _, log := range logs { for _, log := range logs {
if log.ChannelId != 0 { if log.ChannelId != 0 {
channelIds = append(channelIds, log.ChannelId) channelIdsMap[log.ChannelId] = struct{}{}
} }
} }
channelIds := make([]int, 0, len(channelIdsMap))
for channelId := range channelIdsMap {
channelIds = append(channelIds, channelId)
}
if len(channelIds) > 0 { if len(channelIds) > 0 {
var channels []struct { var channels []struct {
Id int `gorm:"column:id"` Id int `gorm:"column:id"`