feat(user): 新增收货地址管理及售后申请页面

- 新增地址类型定义,增强前端地址数据结构
- 新增地址编辑页面,支持地址智能识别和定位选点功能
- 地址编辑支持省市区选择及默认地址设置
- 新增地址列表页面,支持地址展示、删除、编辑和选择功能
- 实现售后申请页面,支持选择售后类型和退款原因
- 售后申请支持商品选择、退款金额计算和凭证上传
- 新增售后详情页面,支持售后状态展示及申请取消
- 优化页面加载和用户交互体验,增加错误提示和权限处理
This commit is contained in:
2026-07-01 12:11:56 +08:00
parent bf6ed504cc
commit 1fa58040f3
636 changed files with 58878 additions and 716 deletions

View File

@@ -0,0 +1,159 @@
.commission-page {
display: flex;
flex-direction: column;
height: 100vh;
background: #f5f5f5;
}
.stats-card {
margin: 24rpx 24rpx 0;
padding: 32rpx;
background: linear-gradient(135deg, #ff6b35 0%, #ff9a56 100%);
border-radius: 16rpx;
position: relative;
}
.stats-row {
display: flex;
justify-content: space-between;
margin-bottom: 24rpx;
}
.stats-item {
display: flex;
flex-direction: column;
}
.stats-label {
font-size: 24rpx;
color: rgba(255, 255, 255, 0.8);
margin-bottom: 8rpx;
}
.stats-value {
font-size: 40rpx;
font-weight: bold;
color: #fff;
}
.stats-value.pending {
color: #fff;
}
.stats-value.settled {
color: rgba(255, 255, 255, 0.9);
}
.withdraw-btn {
position: absolute;
right: 32rpx;
top: 32rpx;
padding: 12rpx 32rpx;
background: #fff;
color: #ff6b35;
font-size: 26rpx;
font-weight: bold;
border-radius: 32rpx;
}
.tab-bar {
display: flex;
background: #fff;
margin-top: 24rpx;
border-bottom: 1rpx solid #eee;
}
.tab-item {
flex: 1;
text-align: center;
padding: 24rpx 0;
font-size: 28rpx;
color: #666;
position: relative;
}
.tab-item.active {
color: #ff6b35;
font-weight: bold;
}
.tab-item.active::after {
content: '';
position: absolute;
bottom: 0;
left: 50%;
transform: translateX(-50%);
width: 48rpx;
height: 4rpx;
background: #ff6b35;
border-radius: 2rpx;
}
.commission-list {
flex: 1;
padding: 24rpx;
}
.commission-item {
background: #fff;
border-radius: 12rpx;
padding: 24rpx;
margin-bottom: 16rpx;
}
.commission-info {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 12rpx;
}
.commission-order {
font-size: 26rpx;
color: #666;
}
.commission-amount {
font-size: 32rpx;
font-weight: bold;
color: #ff6b35;
}
.commission-meta {
display: flex;
justify-content: space-between;
align-items: center;
}
.meta-text {
font-size: 24rpx;
color: #999;
}
.status-tag {
font-size: 22rpx;
padding: 4rpx 12rpx;
border-radius: 4rpx;
}
.status-0 {
color: #ff9a56;
background: rgba(255, 154, 86, 0.1);
}
.status-1 {
color: #07c160;
background: rgba(7, 193, 96, 0.1);
}
.status-2 {
color: #999;
background: rgba(153, 153, 153, 0.1);
}
.settle-time {
font-size: 22rpx;
color: #999;
margin-top: 8rpx;
display: block;
}