From fe00d6dea91ccaf4b0fa9e4e125b7bee9f05f7a0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=B5=B5=E5=BF=A0=E6=9E=97?= <170083662@qq.com>
Date: Wed, 27 Aug 2025 23:01:43 +0800
Subject: [PATCH] =?UTF-8?q?refactor(dealer/team):=E7=B2=BE=E7=AE=80?=
=?UTF-8?q?=E5=9B=A2=E9=98=9F=E9=A1=B5=E9=9D=A2=E7=BB=84=E4=BB=B6=E7=BB=93?=
=?UTF-8?q?=E6=9E=84?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- 移除了团队总览、层级分布和最新成员等冗余组件
- 保留了成员列表的渲染逻辑
- 优化了代码格式和结构,提高了代码可读性
---
src/dealer/team/index.tsx | 227 +++++++++-----------------------------
1 file changed, 53 insertions(+), 174 deletions(-)
diff --git a/src/dealer/team/index.tsx b/src/dealer/team/index.tsx
index 923aa17..64be14f 100644
--- a/src/dealer/team/index.tsx
+++ b/src/dealer/team/index.tsx
@@ -1,12 +1,12 @@
-import React, { useState, useEffect, useCallback } from 'react'
-import { View, Text } from '@tarojs/components'
-import { Empty, Tabs, Avatar, Tag, Progress, Loading, PullToRefresh } from '@nutui/nutui-react-taro'
-import { User, Star, StarFill } from '@nutui/icons-react-taro'
+import React, {useState, useEffect, useCallback} from 'react'
+import {View, Text} from '@tarojs/components'
+import {Space, Tabs, Avatar, Tag, Progress, Loading, PullToRefresh} from '@nutui/nutui-react-taro'
+import {User, Star, StarFill} from '@nutui/icons-react-taro'
import Taro from '@tarojs/taro'
-import { useDealerUser } from '@/hooks/useDealerUser'
-import { listShopDealerReferee } from '@/api/shop/shopDealerReferee'
-import { pageShopDealerOrder } from '@/api/shop/shopDealerOrder'
-import type { ShopDealerReferee } from '@/api/shop/shopDealerReferee/model'
+import {useDealerUser} from '@/hooks/useDealerUser'
+import {listShopDealerReferee} from '@/api/shop/shopDealerReferee'
+import {pageShopDealerOrder} from '@/api/shop/shopDealerOrder'
+import type {ShopDealerReferee} from '@/api/shop/shopDealerReferee/model'
interface TeamMemberWithStats extends ShopDealerReferee {
name?: string
@@ -31,7 +31,7 @@ const DealerTeam: React.FC = () => {
monthlyCommission: '0.00'
})
- const { dealerUser } = useDealerUser()
+ const {dealerUser} = useDealerUser()
// 获取团队数据
const fetchTeamData = useCallback(async () => {
@@ -73,8 +73,8 @@ const DealerTeam: React.FC = () => {
const orderCount = orders.length
const commission = orders.reduce((sum, order) => {
const levelCommission = member.level === 1 ? order.firstMoney :
- member.level === 2 ? order.secondMoney :
- order.thirdMoney
+ member.level === 2 ? order.secondMoney :
+ order.thirdMoney
return sum + parseFloat(levelCommission || '0')
}, 0).toFixed(2)
@@ -142,19 +142,27 @@ const DealerTeam: React.FC = () => {
const getLevelColor = (level: number) => {
switch (level) {
- case 1: return '#f59e0b'
- case 2: return '#8b5cf6'
- case 3: return '#ec4899'
- default: return '#6b7280'
+ case 1:
+ return '#f59e0b'
+ case 2:
+ return '#8b5cf6'
+ case 3:
+ return '#ec4899'
+ default:
+ return '#6b7280'
}
}
const getLevelIcon = (level: number) => {
switch (level) {
- case 1: return
- case 2: return
- case 3: return
- default: return
+ case 1:
+ return
+ case 2:
+ return
+ case 3:
+ return
+ default:
+ return
}
}
@@ -164,7 +172,7 @@ const DealerTeam: React.FC = () => {
}
+ icon={}
className="mr-3"
/>
@@ -172,194 +180,65 @@ const DealerTeam: React.FC = () => {
{member.name}
- {getLevelIcon(Number(member.level))}
-
- {member.level}级
-
+ {/*{getLevelIcon(Number(member.level))}*/}
+ {/**/}
+ {/* {member.level}级*/}
+ {/**/}
加入时间:{member.joinTime}
-
-
- {member.status === 'active' ? '活跃' : '沉默'}
-
-
+ {/**/}
+ {/* */}
+ {/* {member.status === 'active' ? '活跃' : '沉默'}*/}
+ {/* */}
+ {/**/}
-
+
+ 订单数
{member.orderCount}
- 订单数
-
-
+
+
+ 贡献佣金
¥{member.commission}
- 贡献佣金
-
-
+
+
+ 团队成员
{member.subMembers}
- 团队成员
-
+
)
const renderOverview = () => (
-
- {/* 团队统计卡片 */}
-
- {/* 装饰背景 - 小程序兼容版本 */}
-
-
-
-
- 团队总览
-
-
- {teamStats.total}
- 团队总人数
-
-
- ¥{teamStats.monthlyCommission}
- 本月团队佣金
-
-
-
-
-
- {/* 层级分布 */}
-
- 层级分布
-
-
-
-
- 一级成员
-
-
- {teamStats.firstLevel}
-
-
-
-
-
-
-
- 二级成员
-
-
- {teamStats.secondLevel}
-
-
-
-
-
-
-
- 三级成员
-
-
- {teamStats.thirdLevel}
-
-
-
-
-
-
- {/* 最新成员 */}
-
- 最新成员
- {teamMembers.slice(0, 3).map(renderMemberItem)}
-
+
+ {teamMembers.slice(0, 3).map(renderMemberItem)}
)
- const renderMemberList = (level?: number) => (
-
-
- {loading ? (
-
-
- 加载中...
-
- ) : teamMembers
- .filter(member => !level || member.level === level)
- .length > 0 ? (
- teamMembers
- .filter(member => !level || member.level === level)
- .map(renderMemberItem)
- ) : (
-
- )}
-
-
- )
-
if (!dealerUser) {
return (
-
+
加载中...
)
}
return (
-
- setActiveTab}>
-
- {renderOverview()}
-
-
-
- {renderMemberList(1)}
-
-
-
- {renderMemberList(2)}
-
-
-
- {renderMemberList(3)}
-
-
+
+ {renderOverview()}
)
}