Files
ai_dianshang/miniprogram/pages/refund/refund-list/index.wxml

124 lines
3.4 KiB
Plaintext
Raw Normal View History

2025-11-17 14:11:46 +08:00
<!--pages/refund/refund-list/index.wxml-->
<view class="refund-list">
<!-- 页面标题 -->
<view class="page-header">
<text class="page-title">退款记录</text>
</view>
<!-- 状态筛选 -->
<view class="status-filter">
<view
class="filter-item {{currentStatus === '' ? 'active' : ''}}"
data-status=""
bindtap="onStatusFilter"
>
全部
</view>
<view
class="filter-item {{currentStatus === 'pending' ? 'active' : ''}}"
data-status="pending"
bindtap="onStatusFilter"
>
待审核
</view>
<view
class="filter-item {{currentStatus === 'approved' ? 'active' : ''}}"
data-status="approved"
bindtap="onStatusFilter"
>
审核通过
</view>
<view
class="filter-item {{currentStatus === 'rejected' ? 'active' : ''}}"
data-status="rejected"
bindtap="onStatusFilter"
>
审核拒绝
</view>
<view
class="filter-item {{currentStatus === 'processing' ? 'active' : ''}}"
data-status="processing"
bindtap="onStatusFilter"
>
退款中
</view>
<view
class="filter-item {{currentStatus === 'completed' ? 'active' : ''}}"
data-status="completed"
bindtap="onStatusFilter"
>
退款成功
</view>
<view
class="filter-item {{currentStatus === 'failed' ? 'active' : ''}}"
data-status="failed"
bindtap="onStatusFilter"
>
退款失败
</view>
</view>
<!-- 退款记录列表 -->
<view class="refund-items" wx:if="{{refundList.length > 0}}">
<view
class="refund-item"
wx:for="{{refundList}}"
wx:key="id"
bindtap="onRefundItemTap"
data-refund="{{item}}"
>
<!-- 退款状态和时间 -->
<view class="refund-header">
<view class="refund-status {{item.status}}">{{item.statusText}}</view>
<view class="refund-time">{{item.createdAt}}</view>
</view>
<!-- 订单信息 -->
<view class="order-info">
<text class="order-label">订单号:</text>
<text class="order-no">{{item.orderNo}}</text>
</view>
<!-- 退款金额 -->
<view class="refund-amount">
<text class="amount-label">退款金额:</text>
<text class="amount-value">¥{{item.refundAmount}}</text>
</view>
<!-- 退款原因 -->
<view class="refund-reason" wx:if="{{item.reason}}">
<text class="reason-label">退款原因:</text>
<text class="reason-text">{{item.reason}}</text>
</view>
<!-- 操作按钮 -->
<view class="refund-actions" wx:if="{{item.actions && item.actions.length > 0}}">
<view
class="action-btn {{action.type}}"
wx:for="{{item.actions}}"
wx:for-item="action"
wx:key="type"
data-refund-id="{{item.id}}"
data-action="{{action.type}}"
bindtap="onActionTap"
>
{{action.text}}
</view>
</view>
</view>
</view>
<!-- 空状态 -->
<view class="empty-state" wx:if="{{refundList.length === 0 && !loading}}">
<image class="empty-icon" src="/assets/images/empty-refund.png" mode="aspectFit"></image>
<text class="empty-text">暂无退款记录</text>
</view>
<!-- 加载状态 -->
<view class="loading-state" wx:if="{{loading}}">
<text>加载中...</text>
</view>
</view>
<!-- Toast 组件 -->
<t-toast id="t-toast" />