feat(dealer): 添加分销商收益明细页面并优化订单管理功能

- 新增收益明细页面,支持下拉刷新和上拉加载更多
- 在app.config.ts中注册收益明细页面路由
- 更新API基础URL配置,统一使用mp-api域名
- 优化提交表单逻辑,确保refereeId参数为数字类型
- 修改订单页面,添加resourceId参数以正确过滤分销订单
- 修复订单号显示逻辑,优先使用接口返回的订单号
- 优化订单列表项点击事件,跳转到收益明细页面
- 更新客户名称显示格式,包含昵称和用户ID
- 调整订单详情展示布局和信息内容
This commit is contained in:
2026-01-25 13:32:49 +08:00
parent 0d6eb331c8
commit aff888794f
9 changed files with 247 additions and 21 deletions

View File

@@ -24,7 +24,8 @@ const DealerOrders: React.FC = () => {
// 获取订单数据
const fetchOrders = useCallback(async (page: number = 1, isRefresh: boolean = false) => {
if (!dealerUser?.userId) return
// 需要当前登录用户ID用于 resourceId 参数)
if (!dealerUser || !dealerUser.userId) return
try {
if (isRefresh) {
@@ -37,14 +38,17 @@ const DealerOrders: React.FC = () => {
const result = await pageShopDealerOrder({
page,
limit: 10
limit: 10,
// 后端需要 resourceId=当前登录用户ID 才能正确过滤分销订单
resourceId: dealerUser.userId
})
if (result?.list) {
const newOrders = result.list.map(order => ({
...order,
orderNo: `${order.orderId}`,
customerName: `用户${order.userId}`,
// 优先使用接口返回的订单号;没有则降级展示 orderId
orderNo: order.orderNo ?? (order.orderId != null ? String(order.orderId) : undefined),
customerName: `${order.nickname}${order.userId}`,
userCommission: order.firstMoney || '0.00'
}))
@@ -102,32 +106,37 @@ const DealerOrders: React.FC = () => {
return 'warning'
}
const handleGoCapital = () => {
Taro.navigateTo({url: '/dealer/capital/index'})
}
const renderOrderItem = (order: OrderWithDetails) => (
<View key={order.id} className="bg-white rounded-lg p-4 mb-3 shadow-sm">
<View
key={order.id}
className="bg-white rounded-lg p-4 mb-3 shadow-sm"
onClick={handleGoCapital}
>
<View className="flex justify-between items-start mb-1">
<Text className="font-semibold text-gray-800">
{order.orderNo}
{order.orderNo || '-'}
</Text>
<Tag type={getStatusColor(order.isSettled, order.isInvalid)}>
{getStatusText(order.isSettled, order.isInvalid)}
</Tag>
</View>
<View className="flex justify-between items-center mb-1">
<Text className="text-sm text-gray-400">
¥{order.orderPrice || '0.00'}
</Text>
<Text className="text-sm text-orange-500 font-semibold">
¥{order.userCommission}
</Text>
</View>
{/*<View className="flex justify-between items-center mb-1">*/}
{/* <Text className="text-sm text-gray-400">*/}
{/* 订单金额:¥{order.orderPrice || '0.00'}*/}
{/* </Text>*/}
{/*</View>*/}
<View className="flex justify-between items-center">
<Text className="text-sm text-gray-400">
{order.customerName}
{order.createTime}
</Text>
<Text className="text-sm text-gray-400">
{order.createTime}
¥{order.orderPrice || '0.00'}
</Text>
</View>
</View>