From e073ef240ce19d07a337887e32cea0fb849deb4c Mon Sep 17 00:00:00 2001
From: yuetsh <517252939@qq.com>
Date: Sun, 4 Jan 2026 15:53:35 +0800
Subject: [PATCH] =?UTF-8?q?=E9=87=8D=E6=9E=84=E6=8E=92=E5=90=8D?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/oj/api.ts | 16 +-
src/oj/class/my-rank.vue | 95 --------
src/oj/class/rank.vue | 144 ------------
src/oj/rank/list.vue | 380 ++++++++++++++++++++++++++-----
src/routes.ts | 16 +-
src/shared/components/Header.vue | 26 +--
6 files changed, 339 insertions(+), 338 deletions(-)
delete mode 100644 src/oj/class/my-rank.vue
delete mode 100644 src/oj/class/rank.vue
diff --git a/src/oj/api.ts b/src/oj/api.ts
index bcc1dac..3df84a9 100644
--- a/src/oj/api.ts
+++ b/src/oj/api.ts
@@ -143,18 +143,18 @@ export function getActivityRank(start: string) {
})
}
-export function getClassRank(
- offset: number,
- limit: number,
- grade?: number | null,
-) {
+export function getClassRank(grade?: number | null) {
return http.get("class_rank", {
- params: { offset, limit, grade },
+ params: { grade },
})
}
-export function getUserClassRank() {
- return http.get("user_class_rank")
+export function getUserClassRank(
+ scope?: "all" | "window",
+ offset?: number,
+ limit?: number,
+) {
+ return http.get("user_class_rank", { params: { scope, offset, limit } })
}
export function getClassPK(
diff --git a/src/oj/class/my-rank.vue b/src/oj/class/my-rank.vue
deleted file mode 100644
index eabac54..0000000
--- a/src/oj/class/my-rank.vue
+++ /dev/null
@@ -1,95 +0,0 @@
-
-
-
-
- 我的班级排名
-
- 班级:{{ className }} | 我的排名:{{
- myRank > 0 ? `第${myRank}名` : "暂无排名"
- }}
- | 班级总人数:{{ data.length }}
-
- 您还没有加入班级
-
-
-
-
diff --git a/src/oj/class/rank.vue b/src/oj/class/rank.vue
deleted file mode 100644
index 77ae6f5..0000000
--- a/src/oj/class/rank.vue
+++ /dev/null
@@ -1,144 +0,0 @@
-
-
-
-
- 班级排名
-
-
-
-
-
-
-
diff --git a/src/oj/rank/list.vue b/src/oj/rank/list.vue
index 3734241..d8b4650 100644
--- a/src/oj/rank/list.vue
+++ b/src/oj/rank/list.vue
@@ -1,7 +1,13 @@
-
-
-
- 天梯排名
-
-
- 活跃度排名
-
-
-
-
-
+
+
+
+
+
+ 全服 Top10
+
+
+
+
+
+
+
+ 日活 Top10
+
+
+
+
+
+
+
+
+
+ 全服 Top100
+
+
+
+
+
+
+
+
+ 班级排名
+
+
+
+
+
+
+
+
+ 我在班级的排名
+
+
+
+
+
+
+
+
+
+
-
-
-
- 全校前100名
-
-
-
+
+
diff --git a/src/routes.ts b/src/routes.ts
index 2a40ffa..6cc0950 100644
--- a/src/routes.ts
+++ b/src/routes.ts
@@ -68,21 +68,7 @@ export const ojs: RouteRecordRaw = {
},
{
path: "class",
- children: [
- {
- path: "rank",
- component: () => import("oj/class/rank.vue"),
- },
- {
- path: "pk",
- component: () => import("oj/class/pk.vue"),
- },
- {
- path: "my-rank",
- component: () => import("oj/class/my-rank.vue"),
- meta: { requiresAuth: true },
- },
- ],
+ component: () => import("oj/class/pk.vue"),
},
{
path: "announcement",
diff --git a/src/shared/components/Header.vue b/src/shared/components/Header.vue
index adbd593..8eb99fb 100644
--- a/src/shared/components/Header.vue
+++ b/src/shared/components/Header.vue
@@ -119,32 +119,10 @@ const menus = computed(() => [
icon: renderIcon("streamline-emojis:hibiscus"),
},
{
- label: () => "班级",
- key: "class",
+ label: () => h(RouterLink, { to: "/class/pk" }, { default: () => "班级" }),
show: false,
+ key: "class",
icon: renderIcon("twemoji:crossed-swords"),
- children: [
- {
- label: () =>
- h(RouterLink, { to: "/class/rank" }, { default: () => "班级排名" }),
- key: "class-rank",
- },
- {
- label: () =>
- h(RouterLink, { to: "/class/pk" }, { default: () => "班级PK" }),
- key: "class-pk",
- },
- {
- label: () =>
- h(
- RouterLink,
- { to: "/class/my-rank" },
- { default: () => "我的排名" },
- ),
- key: "my-rank",
- show: userStore.isAuthed,
- },
- ],
},
{
label: () =>