From d637db70f66390b96d8361fc84600f06c1c3f703 Mon Sep 17 00:00:00 2001
From: lion <120344285@qq.com>
Date: Wed, 10 Jun 2026 10:26:29 +0800
Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/api/admin/banners.ts | 4 +-
src/components/PageTitle.vue | 24 +++
src/components/RemotePagedSelect.vue | 122 ++++++++++++++
src/router/index.ts | 5 +
src/views/assets/banners/index.vue | 155 ++++++++++++------
src/views/assets/crawler/index.vue | 3 +-
src/views/assets/map/index.vue | 3 +-
src/views/assets/papers/index.vue | 3 +-
src/views/assets/universities/index.vue | 3 +-
src/views/dashboard/index.vue | 3 +-
src/views/demands/index.vue | 3 +-
src/views/operations/activities/index.vue | 3 +-
src/views/operations/courses/index.vue | 3 +-
src/views/operations/news/index.vue | 3 +-
src/views/students/index.vue | 3 +-
src/views/system/audit-logs/index.vue | 3 +-
src/views/system/dict/index.vue | 3 +-
src/views/system/grid-members/index.vue | 3 +-
src/views/system/menus/index.vue | 3 +-
.../system/research-directions/index.vue | 3 +-
src/views/system/roles/index.vue | 3 +-
src/views/system/users/index.vue | 3 +-
src/views/teachers/index.vue | 3 +-
23 files changed, 291 insertions(+), 73 deletions(-)
create mode 100644 src/components/PageTitle.vue
create mode 100644 src/components/RemotePagedSelect.vue
diff --git a/src/api/admin/banners.ts b/src/api/admin/banners.ts
index 1929d81..5d51e66 100644
--- a/src/api/admin/banners.ts
+++ b/src/api/admin/banners.ts
@@ -1,7 +1,7 @@
import { http } from '@/utils/http'
import type { ApiBody, Paginated } from '@/api/types'
-export type BannerType = 'course' | 'activity' | 'custom'
+export type BannerType = 'course' | 'activity' | 'news' | 'custom'
export interface BannerRow {
id: number
@@ -11,6 +11,8 @@ export interface BannerRow {
course_title?: string | null
activity_id?: number | null
activity_title?: string | null
+ news_id?: number | null
+ news_title?: string | null
title?: string | null
cover_url?: string | null
content_html?: string | null
diff --git a/src/components/PageTitle.vue b/src/components/PageTitle.vue
new file mode 100644
index 0000000..c7f5db3
--- /dev/null
+++ b/src/components/PageTitle.vue
@@ -0,0 +1,24 @@
+
+
+
+ {{ title }}
+
diff --git a/src/components/RemotePagedSelect.vue b/src/components/RemotePagedSelect.vue
new file mode 100644
index 0000000..791f137
--- /dev/null
+++ b/src/components/RemotePagedSelect.vue
@@ -0,0 +1,122 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/router/index.ts b/src/router/index.ts
index 590d11a..3cd2946 100644
--- a/src/router/index.ts
+++ b/src/router/index.ts
@@ -17,6 +17,11 @@ const router = createRouter({
],
})
+router.afterEach((to) => {
+ const title = typeof to.meta.title === 'string' ? to.meta.title : ''
+ document.title = title ? `${title} - S-lake高校雷达网` : 'S-lake高校雷达网'
+})
+
router.beforeEach(async (to, _from, next) => {
const auth = useAuthStore()
diff --git a/src/views/assets/banners/index.vue b/src/views/assets/banners/index.vue
index a79aec1..f0783bb 100644
--- a/src/views/assets/banners/index.vue
+++ b/src/views/assets/banners/index.vue
@@ -1,4 +1,9 @@