diff --git a/module/ai-key/iml.go b/module/ai-key/iml.go index 80a3991b..0e939306 100644 --- a/module/ai-key/iml.go +++ b/module/ai-key/iml.go @@ -416,7 +416,7 @@ func (i *imlKeyModule) Sort(ctx context.Context, providerId string, input *ai_ke if err != nil { return err } - list, err := i.aiKeyService.List(ctx) + list, err := i.aiKeyService.KeysByProvider(ctx, providerId) if err != nil { return err } diff --git a/module/ai/dto/output.go b/module/ai/dto/output.go index 7ea2681e..83914ae6 100644 --- a/module/ai/dto/output.go +++ b/module/ai/dto/output.go @@ -37,9 +37,10 @@ type ConfiguredProviderItem struct { } type KeyStatus struct { - Id string `json:"id"` - Name string `json:"name"` - Status string `json:"status"` + Id string `json:"id"` + Name string `json:"name"` + Status string `json:"status"` + Priority int `json:"-"` } type ProviderItem struct { diff --git a/module/ai/iml.go b/module/ai/iml.go index 2dae83c3..1b1cc324 100644 --- a/module/ai/iml.go +++ b/module/ai/iml.go @@ -185,11 +185,15 @@ func (i *imlProviderModule) ConfiguredProviders(ctx context.Context) ([]*ai_dto. status = ai_key_dto.KeyError } keysStatus = append(keysStatus, &ai_dto.KeyStatus{ - Id: k.ID, - Name: k.Name, - Status: status.String(), + Id: k.ID, + Name: k.Name, + Status: status.String(), + Priority: k.Priority, }) } + sort.Slice(keysStatus, func(i, j int) bool { + return keysStatus[i].Priority < keysStatus[j].Priority + }) providers = append(providers, &ai_dto.ConfiguredProviderItem{ Id: l.Id,