From e63e95525d7d65c277372b6e96020fa2a57c9a46 Mon Sep 17 00:00:00 2001 From: qsh <> Date: Wed, 4 Feb 2026 16:33:03 +0800 Subject: [PATCH] sc --- src/api/member/index.js | 9 + src/pages/member/order.vue | 475 ++++++++++++++----------------------- 2 files changed, 186 insertions(+), 298 deletions(-) diff --git a/src/api/member/index.js b/src/api/member/index.js index 8dc02dc..208c6ea 100644 --- a/src/api/member/index.js +++ b/src/api/member/index.js @@ -45,3 +45,12 @@ export const getVipType = async id => { method: 'get' }); }; + +// 查询充值记录 +export const getRechargeRecord = async params => { + return await request({ + url: '/applet/xunjia/pay/page', + method: 'get', + params: params + }); +}; diff --git a/src/pages/member/order.vue b/src/pages/member/order.vue index 1f6f2ab..bfc289e 100644 --- a/src/pages/member/order.vue +++ b/src/pages/member/order.vue @@ -7,7 +7,7 @@ 会员订单管理 - 导出 + @@ -15,16 +15,14 @@ - 状态 + 订单号 - - {{ statusOptions[statusIndex] }} - + @@ -32,21 +30,22 @@ - {{ memberTypeOptions[memberTypeIndex] }} + {{ memberTypeOptions[memberTypeIndex]?.memberName || '全部类型' }} - 搜索 + 手机号 @@ -64,42 +63,46 @@ class="order-item" > - {{ order.code }} - {{ order.status }} + 订单号:{{ order.payId }} 📋 + {{ order.distributionName || '无分销员' }} - 学员姓名: - {{ order.studentName }} + 用户姓名: + {{ order.userName }} + + + 手机号: + {{ order.phone }} 会员类型: - {{ order.memberType }} + {{ order.memberName }} + + + 科目: + {{ order.subjects }} + + + 车型: + {{ order.carName }} 订单金额: - {{ order.amount }} + {{ order.money }} - 下单时间: - {{ order.createTime }} - - - - - - - 处理 - - - 详情 - - - 退款 + 支付时间: + {{ order.payTime }} + + + 会员到期时间: + {{ order.memberEndTime }} + @@ -137,59 +140,23 @@ @@ -434,15 +403,16 @@ /* 订单列表 */ .order-list-section { flex: 1; - padding: 0 16rpx; + padding: 0 20rpx; + margin-top: 20rpx; } .section-title { font-size: 32rpx; font-weight: bold; color: #303133; - margin-bottom: 24rpx; - padding-left: 12rpx; + margin-bottom: 28rpx; + padding-left: 16rpx; border-left: 8rpx solid #409eff; line-height: 1.2; } @@ -450,121 +420,109 @@ .order-list { display: flex; flex-direction: column; - gap: 16rpx; + gap: 20rpx; } .order-item { background-color: #fff; border-radius: 16rpx; - padding: 24rpx; - box-shadow: 0 4rpx 16rpx rgba(0, 0, 0, 0.08); + padding: 28rpx; + box-shadow: 0 4rpx 20rpx rgba(0, 0, 0, 0.08); + transition: all 0.3s ease; + } + + .order-item:hover { + box-shadow: 0 8rpx 32rpx rgba(0, 0, 0, 0.12); + transform: translateY(-2rpx); } .order-header { display: flex; justify-content: space-between; align-items: center; - margin-bottom: 16rpx; - padding-bottom: 16rpx; - border-bottom: 1rpx solid #e0e0e0; + margin-bottom: 24rpx; + padding-bottom: 20rpx; + border-bottom: 2rpx solid #f0f0f0; } .order-code { - font-size: 24rpx; + font-size: 26rpx; font-weight: 600; color: #303133; + word-break: break-all; + cursor: pointer; + display: flex; + align-items: center; + gap: 8rpx; } - .order-status { + .order-code:hover { + color: #409eff; + } + + .copy-icon { font-size: 20rpx; - font-weight: 600; - padding: 4rpx 12rpx; - border-radius: 12rpx; + opacity: 0.7; } - .status-pending { - color: #e6a23c; - background-color: rgba(230, 162, 60, 0.1); - } - - .status-completed { - color: #67c23a; - background-color: rgba(103, 194, 58, 0.1); - } - - .status-exception { - color: #f56c6c; - background-color: rgba(245, 108, 108, 0.1); - } - - .status-refunded { - color: #909399; - background-color: rgba(144, 147, 153, 0.1); + .distributor-name { + font-size: 20rpx; + color: #606266; + background-color: #f5f7fa; + padding: 6rpx 16rpx; + border-radius: 16rpx; + white-space: nowrap; + max-width: 200rpx; + overflow: hidden; + text-overflow: ellipsis; } .order-body { - margin-bottom: 16rpx; + margin-bottom: 0; } .order-info { - display: flex; - flex-direction: column; - gap: 8rpx; + display: grid; + grid-template-columns: repeat(auto-fit, minmax(300rpx, 1fr)); + gap: 16rpx; } .info-item { display: flex; - font-size: 20rpx; + flex-direction: column; + gap: 4rpx; } .info-label { - color: #606266; - width: 120rpx; + color: #909399; + font-size: 24rpx; + width: auto; } .info-value { color: #303133; + font-size: 24rpx; + font-weight: 500; flex: 1; } .info-value.price { color: #f56c6c; font-weight: 600; + font-size: 22rpx; } - .order-footer { - border-top: 1rpx solid #e0e0e0; - padding-top: 16rpx; + /* 响应式调整 */ + @media (max-width: 750rpx) { + .order-info { + grid-template-columns: 1fr; + } + + .order-item { + padding: 24rpx; + } } - .order-actions { - display: flex; - justify-content: flex-end; - gap: 16rpx; - } - - .action-btn { - padding: 8rpx 16rpx; - border-radius: 8rpx; - font-size: 16rpx; - font-weight: 600; - cursor: pointer; - } - - .process-btn { - background-color: #ecf5ff; - color: #409eff; - } - - .detail-btn { - background-color: #f0f9eb; - color: #67c23a; - } - - .refund-btn { - background-color: #fef0f0; - color: #f56c6c; - } /* 空状态 */ .empty-state { @@ -621,85 +579,6 @@ cursor: not-allowed; } - /* 平板响应式 */ - @media screen and (min-width: 768px) { - .member-order-container { - max-width: 900px; - margin: 0 auto; - width: 100%; - } - - .filter-section { - margin: 0 32rpx 24rpx; - padding: 32rpx; - } - - .order-list-section { - padding: 0 32rpx; - } - - .pagination { - margin: 0 32rpx 32rpx; - padding: 32rpx; - } - - .section-title { - font-size: 36rpx; - margin-bottom: 32rpx; - } - - .filter-label { - font-size: 26rpx; - } - - .picker-text, - .search-input { - font-size: 26rpx; - } - - .filter-control { - padding: 20rpx; - } - - .order-item { - padding: 32rpx; - } - - .order-code { - font-size: 28rpx; - } - - .order-status { - font-size: 22rpx; - } - - .info-item { - font-size: 24rpx; - } - - .info-label { - width: 160rpx; - } - - .action-btn { - font-size: 18rpx; - padding: 12rpx 24rpx; - } - - .page-info { - font-size: 22rpx; - } - - .page-btn { - font-size: 22rpx; - padding: 12rpx 24rpx; - } - - .export-btn { - font-size: 28rpx; - } - } - /* 大屏设备响应式 */ @media screen and (min-width: 1024px) { .member-order-container {