From f3ea26d161fb6ee4fa0c3e5ed976b86fbd0aeea0 Mon Sep 17 00:00:00 2001 From: xcbyy <2578898740@qq.com> Date: Tue, 20 Oct 2026 15:52:04 +0800 Subject: [PATCH] =?UTF-8?q?feat(admin):=20=E6=96=B9=E6=A1=88A=E2=80=94?= =?UTF-8?q?=E6=B6=88=E6=81=AF=E9=93=83=E9=93=9B=E6=8E=A5=E7=9C=9F=E5=AE=9E?= =?UTF-8?q?=E5=BE=85=E5=8A=9E=E8=81=9A=E5=90=88=20+=20=E6=B8=85=E7=90=86?= =?UTF-8?q?=E7=A9=BA=E5=A3=B3=E6=8E=A5=E5=8F=A3=E4=B8=8E=E7=A9=BA=E5=8D=A1?= =?UTF-8?q?=E7=89=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 【消息铃铛(真实数据)】 - POST /api/message/list 改为待办聚合:待接单订单/待审核大神/待审核提现/待处理举报/待仲裁工单(复用 getDashboardTodos + 新增 pendingOrdersCount) - POST /api/message/read 持久化已读:新表 admin_message_reads 记录"已读时的数量",待办数量增加会重新变未读 - 两个接口均加 requireAdmin(待办数量属运营数据,不再匿名可见) 【删除空壳/死接口(前端已无调用方)】 - /api/user/save-info、/api/chat/list、/api/user/my-team/list、/api/user/latest-activity、/api/user/my-project/list 【后台页面清理】 - 「用户与个人中心 → 管理员资料」移除 我的项目/最近动态/我的团队/站内通知 四张空卡(保留真实的管理员资料头部) - 删除对应 4 个组件;api/user-center.ts 移除 queryMyProjectList/queryMyTeamList/queryLatestActivity/saveUserInfo;api/message.ts 移除 queryChatList 【验证】 - 新增 admin-todo-bell.spec.ts;更新 admin-demo-data-cleanup.spec.ts - 全量 101 套件 / 690 用例全绿;冒烟 8/8(未登录50008、待办数量、已读、新增后重新未读) - 后台 pnpm build 通过 --- admin/arco-design-pro-vite/src/api/message.ts | 16 +--- .../src/api/user-center.ts | 39 -------- .../user/info/components/latest-activity.vue | 88 ------------------ .../info/components/latest-notification.vue | 27 ------ .../views/user/info/components/my-project.vue | 91 ------------------- .../views/user/info/components/my-team.vue | 64 ------------- .../src/views/user/info/index.vue | 65 ------------- pwuniapp/pages/expert/detail.vue | 37 ++++++-- pwuniapp/pages/expert/workspace.vue | 37 ++++++-- pwuniapp/pages/order/create.vue | 2 +- pwuniapp/pages/order/list.vue | 28 +++++- server/src/db/mysql.ts | 9 ++ server/src/db/repository.ts | 40 ++++++++ server/src/index.ts | 91 +++++++++++-------- server/tests/admin-demo-data-cleanup.spec.ts | 17 ++-- server/tests/admin-todo-bell.spec.ts | 54 +++++++++++ 16 files changed, 250 insertions(+), 455 deletions(-) delete mode 100644 admin/arco-design-pro-vite/src/views/user/info/components/latest-activity.vue delete mode 100644 admin/arco-design-pro-vite/src/views/user/info/components/latest-notification.vue delete mode 100644 admin/arco-design-pro-vite/src/views/user/info/components/my-project.vue delete mode 100644 admin/arco-design-pro-vite/src/views/user/info/components/my-team.vue create mode 100644 server/tests/admin-todo-bell.spec.ts diff --git a/admin/arco-design-pro-vite/src/api/message.ts b/admin/arco-design-pro-vite/src/api/message.ts index e2d60ee..9752910 100644 --- a/admin/arco-design-pro-vite/src/api/message.ts +++ b/admin/arco-design-pro-vite/src/api/message.ts @@ -10,6 +10,10 @@ export interface MessageRecord { time: string; status: 0 | 1; messageType?: number; + /** 待办跳转路径(可选) */ + link?: string; + /** 待办数量(可选) */ + count?: number; } export type MessageListType = MessageRecord[]; @@ -24,15 +28,3 @@ interface MessageStatus { export function setMessageStatus(data: MessageStatus) { return axios.post('/api/message/read', data); } - -export interface ChatRecord { - id: number; - username: string; - content: string; - time: string; - isCollect: boolean; -} - -export function queryChatList() { - return axios.post('/api/chat/list'); -} diff --git a/admin/arco-design-pro-vite/src/api/user-center.ts b/admin/arco-design-pro-vite/src/api/user-center.ts index fb6a53d..c244bdf 100644 --- a/admin/arco-design-pro-vite/src/api/user-center.ts +++ b/admin/arco-design-pro-vite/src/api/user-center.ts @@ -1,44 +1,5 @@ import axios from 'axios'; -export interface MyProjectRecord { - id: number; - name: string; - description: string; - peopleNumber: number; - contributors: { - name: string; - email: string; - avatar: string; - }[]; -} -export function queryMyProjectList() { - return axios.post('/api/user/my-project/list'); -} - -export interface MyTeamRecord { - id: number; - avatar: string; - name: string; - peopleNumber: number; -} -export function queryMyTeamList() { - return axios.post('/api/user/my-team/list'); -} - -export interface LatestActivity { - id: number; - title: string; - description: string; - avatar: string; -} -export function queryLatestActivity() { - return axios.post('/api/user/latest-activity'); -} - -export function saveUserInfo() { - return axios.post('/api/user/save-info'); -} - export interface BasicInfoModel { email: string; nickname: string; diff --git a/admin/arco-design-pro-vite/src/views/user/info/components/latest-activity.vue b/admin/arco-design-pro-vite/src/views/user/info/components/latest-activity.vue deleted file mode 100644 index 3d67a9a..0000000 --- a/admin/arco-design-pro-vite/src/views/user/info/components/latest-activity.vue +++ /dev/null @@ -1,88 +0,0 @@ - - - - - diff --git a/admin/arco-design-pro-vite/src/views/user/info/components/latest-notification.vue b/admin/arco-design-pro-vite/src/views/user/info/components/latest-notification.vue deleted file mode 100644 index fc39afe..0000000 --- a/admin/arco-design-pro-vite/src/views/user/info/components/latest-notification.vue +++ /dev/null @@ -1,27 +0,0 @@ - - - - - diff --git a/admin/arco-design-pro-vite/src/views/user/info/components/my-project.vue b/admin/arco-design-pro-vite/src/views/user/info/components/my-project.vue deleted file mode 100644 index 6905a99..0000000 --- a/admin/arco-design-pro-vite/src/views/user/info/components/my-project.vue +++ /dev/null @@ -1,91 +0,0 @@ - - - - - diff --git a/admin/arco-design-pro-vite/src/views/user/info/components/my-team.vue b/admin/arco-design-pro-vite/src/views/user/info/components/my-team.vue deleted file mode 100644 index 51eda3e..0000000 --- a/admin/arco-design-pro-vite/src/views/user/info/components/my-team.vue +++ /dev/null @@ -1,64 +0,0 @@ - - - - - diff --git a/admin/arco-design-pro-vite/src/views/user/info/index.vue b/admin/arco-design-pro-vite/src/views/user/info/index.vue index 0b99563..fa69df3 100644 --- a/admin/arco-design-pro-vite/src/views/user/info/index.vue +++ b/admin/arco-design-pro-vite/src/views/user/info/index.vue @@ -2,37 +2,11 @@
-
-
- - - - - - - - -
-
- - - - - - - - -
-