From fff386c00055f8c4bc993d564a359edb3f270d6a Mon Sep 17 00:00:00 2001 From: hailin Date: Wed, 7 Jan 2026 22:14:39 -0800 Subject: [PATCH] =?UTF-8?q?feat(admin-web):=20=E4=BC=98=E5=8C=96=E5=BC=95?= =?UTF-8?q?=E8=8D=90=E5=85=B3=E7=B3=BB=E6=A0=91=E5=B1=95=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - "认种"改名为"本人认种" - 直推下级默认收起状态 - 有直推下级时在当前用户节点下方显示"+"按钮 - 点击"+"展开显示直推下级,按钮变为"-" - 点击"-"收起直推下级 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 --- .../src/app/(dashboard)/users/[id]/page.tsx | 20 ++++++++++---- .../users/[id]/user-detail.module.scss | 26 ++++++++++++++++++- 2 files changed, 40 insertions(+), 6 deletions(-) diff --git a/frontend/admin-web/src/app/(dashboard)/users/[id]/page.tsx b/frontend/admin-web/src/app/(dashboard)/users/[id]/page.tsx index 84e81432..96705ac5 100644 --- a/frontend/admin-web/src/app/(dashboard)/users/[id]/page.tsx +++ b/frontend/admin-web/src/app/(dashboard)/users/[id]/page.tsx @@ -139,6 +139,7 @@ export default function UserDetailPage() { const [treeRootUser, setTreeRootUser] = useState(accountSequence); const [plantingPage, setPlantingPage] = useState(1); const [walletPage, setWalletPage] = useState(1); + const [showDirectReferrals, setShowDirectReferrals] = useState(false); // 默认收起直推下级 // 获取用户完整信息 const { data: userDetail, isLoading: detailLoading, error: detailError } = useUserFullDetail(accountSequence); @@ -356,7 +357,7 @@ export default function UserDetailPage() { {ancestor.nickname || '未设置'} - 认种: {formatNumber(ancestor.personalAdoptions)} + 本人认种: {formatNumber(ancestor.personalAdoptions)} {index < referralTree.ancestors.length - 1 && ( @@ -386,16 +387,25 @@ export default function UserDetailPage() { {referralTree.currentUser.nickname || '未设置'} - 认种: {formatNumber(referralTree.currentUser.personalAdoptions)} + 本人认种: {formatNumber(referralTree.currentUser.personalAdoptions)} 引荐: {formatNumber(referralTree.currentUser.directReferralCount)} + {/* 展开/收起直推下级按钮 */} + {referralTree.directReferrals.length > 0 && ( + + )} - {/* 引荐用户 */} - {referralTree.directReferrals.length > 0 && ( + {/* 引荐用户 - 默认收起,点击展开 */} + {referralTree.directReferrals.length > 0 && showDirectReferrals && (
@@ -413,7 +423,7 @@ export default function UserDetailPage() { {referral.nickname || '未设置'} - 认种: {formatNumber(referral.personalAdoptions)} + 本人认种: {formatNumber(referral.personalAdoptions)} {referral.directReferralCount > 0 && ( diff --git a/frontend/admin-web/src/app/(dashboard)/users/[id]/user-detail.module.scss b/frontend/admin-web/src/app/(dashboard)/users/[id]/user-detail.module.scss index afac0e4e..c4722d68 100644 --- a/frontend/admin-web/src/app/(dashboard)/users/[id]/user-detail.module.scss +++ b/frontend/admin-web/src/app/(dashboard)/users/[id]/user-detail.module.scss @@ -345,7 +345,31 @@ } .referralTree__current { - @include flex-center; + @include flex-column; + align-items: center; +} + +.referralTree__toggleButton { + display: flex; + align-items: center; + justify-content: center; + width: 28px; + height: 28px; + margin-top: $spacing-sm; + background-color: $primary-color; + color: white; + border: none; + border-radius: 50%; + cursor: pointer; + font-size: 18px; + font-weight: bold; + line-height: 1; + @include transition-fast; + + &:hover { + background-color: darken($primary-color, 10%); + transform: scale(1.1); + } } .referralTree__node {