From 21c5bb9b57743819b6a9269d9f2f8f9203e7d38e Mon Sep 17 00:00:00 2001 From: Ethanfly Date: Mon, 9 Feb 2026 19:13:01 +0800 Subject: [PATCH] feat(user): Add logic to conditionally display "Add as Ladder User" button - Implemented a check to hide the "Add as Ladder User" button for users already designated as ladder users in any store. - Enhanced the user retrieval process to include a flag indicating whether a user is a ladder user, optimizing front-end rendering and reducing unnecessary actions. --- admin/src/views/user/index.vue | 7 ++++++- server/src/controllers/adminController.js | 15 ++++++++++++++- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/admin/src/views/user/index.vue b/admin/src/views/user/index.vue index 36a383a1..3c2ebd31 100644 --- a/admin/src/views/user/index.vue +++ b/admin/src/views/user/index.vue @@ -73,7 +73,12 @@ 查看 - + 添加为天梯用户 u.id); + let ladderUserIdSet = new Set(); + if (userIds.length > 0) { + const ladderUsers = await LadderUser.findAll({ + where: { user_id: { [Op.in]: userIds } }, + attributes: ['user_id'] + }); + ladderUserIdSet = new Set(ladderUsers.map(lu => lu.user_id)); + } + res.json(pageResult(rows.map(user => ({ id: user.id, nickname: user.nickname, @@ -134,7 +145,9 @@ class AdminController { memberCode: user.member_code, totalPoints: user.total_points, status: user.status, - createdAt: user.created_at + createdAt: user.created_at, + // 前端根据该字段隐藏“添加为天梯用户”按钮 + hasLadderUser: ladderUserIdSet.has(user.id) })), count, page, pageSize)); } catch (err) { console.error('获取用户列表失败:', err);