Przeglądaj źródła

fix(pricing): 统一 sort_order 排序逻辑,有 meta 但未设置的不优先

之前有 meta 记录但 sort_order=999999 的模型排在没 meta 记录的模型前面,
导致部分"未设置排序"的模型仍然挤在前面。现在统一处理:不论是否有
meta 记录,sort_order=999999 的都视为未设置,排在后面。

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
master
fengsilin 2 tygodni temu
rodzic
commit
d5157a779c
1 zmienionych plików z 11 dodań i 9 usunięć
  1. +11
    -9
      model/pricing.go

+ 11
- 9
model/pricing.go Wyświetl plik

@@ -336,18 +336,20 @@ func updatePricing() {
pricingMap = append(pricingMap, pricing)
}

// 按 sort_order 排序 pricingMap
// 按 sort_order 排序 pricingMap,999999 视为未设置
sort.Slice(pricingMap, func(i, j int) bool {
mi, okI := metaMap[pricingMap[i].ModelName]
mj, okJ := metaMap[pricingMap[j].ModelName]
if okI && okJ {
if mi.SortOrder != mj.SortOrder {
return mi.SortOrder < mj.SortOrder
}
} else if okI {
return true
} else if okJ {
return false
si := 999999
sj := 999999
if okI {
si = mi.SortOrder
}
if okJ {
sj = mj.SortOrder
}
if si != sj {
return si < sj
}
return pricingMap[i].ModelName < pricingMap[j].ModelName
})


Ładowanie…
Anuluj
Zapisz