refactor(payments): one canonical catalog order (storefront/offer/admin) + admin active/all toggle #261
Reference in New Issue
Block a user
Delete Branch "feature/wallet-catalog-order"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Единый канонический порядок каталога для всех трёх мест + тумблер активные/все в админке.
Проблема
Витрина кошелька (и «купить», и «потратить») отдавала продукты в порядке создания — в отличие от админки и оферты, которые уже сортируют. Плюс сам компаратор был продублирован (админка + оферта над двумя типами).
Что сделано
compareCatalogRank(+ уже общийvalueGroup) поверх маленького ключа-ранга, применён во всех трёх: витрина (projectCatalog), оферта (projectOfferPricing), админка (SortAdminCatalog). Порядок: паки первыми по рублёвой цене, затем values по подгруппам подсказки → без-рекламы → комбо → турнир и по цене в Фишках внутри подгруппы. Подгруппа и полный порядок теперь в одном месте.wallet.rewardChips), рендерится над паками; сортировкой не затронут, остаётся вверху (как просил).AdminCatalog(ctx, includeInactive), консоль по умолчанию показывает активные,?all=1— плюс архивные. Detail/grant-формы грузят все.Тесты
TestProjectCatalog_CanonicalOrder(сперва воспроизвёл баг с заглушённым сортом → FAIL, затем зелёный).TestConsoleCatalogActiveToggle(по умолчанию активные,?all=1— с архивными).Вне этого PR (по твоим вопросам — отдельно обсуждаем)