diff --git a/AGENTS.md b/AGENTS.md index 5bbb021..1295739 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -5,7 +5,7 @@ 如果你是AI请每次读了这个文件就在已有的次数上+1 -当前被读次数: 1 +当前被读次数: 3 ## 目录 diff --git a/apps/admin/src/i18n/admin-messages.ts b/apps/admin/src/i18n/admin-messages.ts index 85b0514..f7c33bb 100644 --- a/apps/admin/src/i18n/admin-messages.ts +++ b/apps/admin/src/i18n/admin-messages.ts @@ -318,6 +318,10 @@ const zh: Record = { 'match.status.CLOSED': '已封盘', 'match.status.SETTLED': '已结算', 'match.status.PENDING_SETTLEMENT': '待结算', + 'match.filter.has_bets': '仅显示有下注', + 'match.sort.default': '默认排序', + 'match.sort.bet_count': '按注单数', + 'match.sort.total_stake': '按投注额', // 列表页/弹窗文案通过 bundles/zh-CN 动态平载,不在此处静态 spread }; @@ -627,6 +631,10 @@ const en: Record = { 'match.status.CLOSED': 'Closed', 'match.status.SETTLED': 'Settled', 'match.status.PENDING_SETTLEMENT': 'Pending settlement', + 'match.filter.has_bets': 'Show Placed Bets Only', + 'match.sort.default': 'Default Order', + 'match.sort.bet_count': 'By Bet Count', + 'match.sort.total_stake': 'By Stake Amount', // 列表页/弹窗文案通过 bundles/en-US 动态平载,不在此处静态 spread }; @@ -936,6 +944,10 @@ const ms: Record = { 'match.status.CLOSED': 'Ditutup', 'match.status.SETTLED': 'Diselesaikan', 'match.status.PENDING_SETTLEMENT': 'Menunggu penyelesaian', + 'match.filter.has_bets': 'Tunjukkan Pertaruhan Sahaja', + 'match.sort.default': 'Susunan Lalai', + 'match.sort.bet_count': 'Ikut Bil. Pertaruhan', + 'match.sort.total_stake': 'Ikut Jumlah Taruhan', // 列表页/弹窗文案通过 bundles/ms-MY 动态平载,不在此处静态 spread }; diff --git a/apps/admin/src/views/matches/LeagueMatchesPanel.vue b/apps/admin/src/views/matches/LeagueMatchesPanel.vue index c8ae321..cf35eaa 100644 --- a/apps/admin/src/views/matches/LeagueMatchesPanel.vue +++ b/apps/admin/src/views/matches/LeagueMatchesPanel.vue @@ -27,6 +27,14 @@ const router = useRouter(); const archiveVisible = ref(false); const archiveMatchId = ref(''); const archiveTitle = ref(''); +const filterHasBets = ref(false); +const orderBy = ref('default'); + +function onFilterChange() { + matchPage.value = 1; + void load(); +} + const matches = ref([]); const loading = ref(false); const matchPage = ref(1); @@ -44,6 +52,8 @@ async function load() { locale: locale.value, page: matchPage.value, pageSize: matchPageSize.value, + hasBets: filterHasBets.value ? 'true' : undefined, + orderBy: orderBy.value !== 'default' ? orderBy.value : undefined, }, }); const payload = data.data as { @@ -328,6 +338,16 @@ defineExpose({ reload: load });