fix(*): 平台稳定性 - 修复会话隔离、运行时缓存与部署镜像更新链路

This commit is contained in:
ddcat666
2026-09-24 06:05:04 +08:00
parent 10c8e19d94
commit a79b54ada5
32 changed files with 788 additions and 116 deletions

View File

@@ -188,6 +188,18 @@ func (s *Service) AdminReferences(actor *model.User) (*AdminReferenceData, error
if err != nil {
return nil, err
}
channelIDs := make([]string, 0, len(channels))
for _, channel := range channels {
channelIDs = append(channelIDs, channel.ID)
}
channelModels, err := s.repo.ChannelModelReferences(channelIDs)
if err != nil {
return nil, err
}
modelsByChannel := make(map[string][]model.ChannelModel, len(channels))
for _, item := range channelModels {
modelsByChannel[item.ChannelID] = append(modelsByChannel[item.ChannelID], item)
}
result := &AdminReferenceData{
Users: make([]AdminUserReference, 0, len(users)),
Channels: make([]AdminChannelReference, 0, len(channels)),
@@ -196,10 +208,7 @@ func (s *Service) AdminReferences(actor *model.User) (*AdminReferenceData, error
result.Users = append(result.Users, AdminUserReference{ID: user.ID, Username: user.Username, DisplayName: user.DisplayName})
}
for _, channel := range channels {
items, itemErr := s.repo.ChannelModels(channel.ID, true)
if itemErr != nil {
return nil, itemErr
}
items := modelsByChannel[channel.ID]
models := make([]string, 0, len(items))
displayNames := make([]string, 0, len(items))
for _, item := range items {