feat: add object storage and points leaderboard

This commit is contained in:
richjohnrambo
2026-10-18 18:11:34 +08:00
parent bce5edfaf5
commit b79b781f15
24 changed files with 359 additions and 212 deletions
+6 -3
View File
@@ -74,7 +74,7 @@
<i v-else>{{ entry.username.slice(0, 1) }}</i>
</span>
<strong>{{ entry.username }}</strong>
<em>{{ formatCount(entry.completed_count) }}</em>
<em>{{ formatPoints(entry.claimed_points) }}积分</em>
<small>{{ entry.status || '领取成功' }}</small>
</router-link>
</div>
@@ -139,7 +139,7 @@
rank: number;
username: string;
avatar_url: string;
completed_count: number;
claimed_points: number;
status: string;
}
const router = useRouter();
@@ -150,7 +150,10 @@
const popupNotice = ref<AnnouncementNotice | null>(null);
const activeBannerIndex = ref(0);
let bannerTimer: number | undefined;
const formatCount = (value: number) => new Intl.NumberFormat('zh-CN').format(value || 0);
const formatPoints = (value: number) =>
new Intl.NumberFormat('zh-CN', { minimumFractionDigits: 2, maximumFractionDigits: 2 }).format(
(value || 0) / 100
);
const currentBanner = computed(() => home.value?.banners?.[activeBannerIndex.value]);
const bannerStyle = computed(() => {
const url = safeImage(currentBanner.value?.image_url);