PricingCardView.jsx
11.4 KB
-
✨ feat: enhance model billing aggregation & UI display for unknown quota type · 85ecfd70Summary ------- 1. **Backend** • `controller/model_meta.go` – For prefix/suffix/contains rules, aggregate endpoints, bound channels, enable groups, and quota types across all matched models. – When mixed billing types are detected, return `quota_type = -1` (unknown) instead of defaulting to volume-based. 2. **Frontend** • `web/src/helpers/utils.js` – `calculateModelPrice` now handles `quota_type = -1`, returning placeholder `'-'`. • `web/src/components/table/model-pricing/view/card/PricingCardView.jsx` – Billing tag logic updated: displays “按次计费” (times), “按量计费” (volume), or `'-'` for unknown. • `web/src/components/table/model-pricing/view/table/PricingTableColumns.js` – `renderQuotaType` shows “未知” for unknown billing type. • `web/src/components/table/models/ModelsColumnDefs.js` – Unified `renderQuotaType` to return `'-'` when type is unknown. • `web/src/components/table/model-pricing/modal/components/ModelPricingTable.jsx` – Group price table honors unknown billing type; pricing columns show `'-'` and neutral tag color. 3. **Utilities** • Added safe fallback colours/tags for unknown billing type across affected components. Impact ------ • Ensures correct data aggregation for non-exact model matches. • Prevents UI from implying volume billing when actual type is ambiguous. • Provides consistent placeholder display (`'-'` or “未知”) across cards, tables and modals. No breaking API changes; frontend gracefully handles legacy values.t0ng7u committed