diff --git a/buyer/src/pages/home/memberCenter/AccountSafe.vue b/buyer/src/pages/home/memberCenter/AccountSafe.vue
index 51d765e7d..a92bb3f3e 100644
--- a/buyer/src/pages/home/memberCenter/AccountSafe.vue
+++ b/buyer/src/pages/home/memberCenter/AccountSafe.vue
@@ -27,9 +27,9 @@
{{ wechatConnect.label }}
-
+
{{ isBound(wechatConnect.type) ? "已绑定" : "未绑定" }}
-
+
@@ -277,8 +277,9 @@ onMounted(() => {
.safe-card {
padding: 20px;
- border: 1px solid #f0f0f0;
+ border: 1px solid #eee;
border-radius: 8px;
+ background: #fff;
}
.safe-card-connect {
@@ -295,7 +296,7 @@ onMounted(() => {
width: 48px;
height: 48px;
border-radius: 8px;
- background: #fff5f4;
+ background: color-mix(in srgb, #{$theme_color} 8%, #fff);
color: $theme_color;
display: flex;
align-items: center;
@@ -309,7 +310,7 @@ onMounted(() => {
.safe-title {
margin: 0;
- color: #171A26;
+ color: #333;
font-size: 16px;
font-weight: 600;
line-height: 24px;
@@ -333,26 +334,11 @@ onMounted(() => {
}
.connect-name {
- color: #171A26;
+ color: #333;
font-size: 14px;
line-height: 22px;
}
- .connect-status {
- height: 22px;
- padding: 0 8px;
- border-radius: 4px;
- background: #f5f5f5;
- color: #999;
- font-size: 12px;
- line-height: 22px;
- }
-
- .connect-status.is-bound {
- background: #f0faf3;
- color: #1f9d55;
- }
-
.connect-skeleton {
width: 120px;
height: 22px;
diff --git a/buyer/src/pages/home/memberCenter/CommentList.vue b/buyer/src/pages/home/memberCenter/CommentList.vue
index f239be54d..da2ad2aea 100644
--- a/buyer/src/pages/home/memberCenter/CommentList.vue
+++ b/buyer/src/pages/home/memberCenter/CommentList.vue
@@ -34,7 +34,7 @@
@@ -230,19 +230,4 @@ onMounted(() => {
display: flex;
justify-content: center;
}
-
-.text-link {
- border: none;
- background: none;
- padding: 0;
- color: #171A26;
- font-family: inherit;
- font-size: 14px;
- line-height: 22px;
- cursor: pointer;
-
- &:hover {
- color: $theme_color;
- }
-}
diff --git a/buyer/src/pages/home/memberCenter/ComplainList.vue b/buyer/src/pages/home/memberCenter/ComplainList.vue
index c5d6fad5c..39d863418 100644
--- a/buyer/src/pages/home/memberCenter/ComplainList.vue
+++ b/buyer/src/pages/home/memberCenter/ComplainList.vue
@@ -32,17 +32,19 @@
{{ item.goodsName }}
- {{ statusLabel[item.complainStatus] || item.complainStatus }}
+
+ {{ statusLabel[item.complainStatus] || item.complainStatus }}
+
{{ item.complainTopic }}
{{ item.content }}
-
-
+ >取消投诉
@@ -84,6 +86,18 @@ const params = reactive({ // 请求参数
pageSize: 20
});
+function statusTagType(status) { // 投诉状态标签类型
+ const map = {
+ COMPLETE: 'success',
+ APPLYING: 'warning',
+ NEW: 'warning',
+ CANCEL: 'info',
+ EXPIRED: 'info',
+ NO_APPLY: 'info'
+ };
+ return map[status] || 'info';
+}
+
function getList() { // 获取投诉列表
complainList(params).then(res => {
if (res.success) {
@@ -268,20 +282,9 @@ onMounted(() => {
flex-direction: column;
align-items: center;
gap: 8px;
-}
-.text-link {
- border: none;
- background: none;
- padding: 0;
- color: #171A26;
- font-family: inherit;
- font-size: 14px;
- line-height: 22px;
- cursor: pointer;
-
- &:hover {
- color: $theme_color;
+ .el-button + .el-button {
+ margin-left: 0;
}
}
diff --git a/buyer/src/pages/home/memberCenter/EvalDetail.vue b/buyer/src/pages/home/memberCenter/EvalDetail.vue
new file mode 100644
index 000000000..e69de29bb
diff --git a/buyer/src/pages/home/memberCenter/Favorites.vue b/buyer/src/pages/home/memberCenter/Favorites.vue
index cdc7ea16e..1fda6bfdf 100644
--- a/buyer/src/pages/home/memberCenter/Favorites.vue
+++ b/buyer/src/pages/home/memberCenter/Favorites.vue
@@ -33,10 +33,10 @@
{{ $filters.unitPrice(item.price, '¥') }}
-
-
-
-
+ 立即购买
+ 查看店铺
+ 取消收藏
+ 取消收藏
@@ -72,10 +72,10 @@
{{ $filters.unitPrice(item.price, '¥') }}
-
-
-
-
+ 立即购买
+ 查看店铺
+ 取消收藏
+ 取消收藏
@@ -316,7 +316,7 @@ onMounted(() => {
margin-top: 6px;
padding: 0 6px;
border-radius: 4px;
- background: #fff1f0;
+ background: color-mix(in srgb, #{$theme_color} 8%, #fff);
color: $theme_color;
font-size: 12px;
line-height: 20px;
@@ -336,37 +336,4 @@ onMounted(() => {
justify-content: center;
gap: 16px;
}
-
-.op-btn {
- min-width: 96px;
- height: 32px;
- padding: 0 12px;
- border: 1px solid $theme_color;
- border-radius: 4px;
- background: $theme_color;
- color: #fff;
- font-family: inherit;
- font-size: 14px;
- line-height: 30px;
- cursor: pointer;
-
- &:hover {
- opacity: 0.9;
- }
-}
-
-.text-link {
- border: none;
- background: none;
- padding: 0;
- color: #171A26;
- font-family: inherit;
- font-size: 14px;
- line-height: 22px;
- cursor: pointer;
-
- &:hover {
- color: $theme_color;
- }
-}
diff --git a/buyer/src/pages/home/memberCenter/ModifyPwd.vue b/buyer/src/pages/home/memberCenter/ModifyPwd.vue
index 7ec1e7407..f7655d9d2 100644
--- a/buyer/src/pages/home/memberCenter/ModifyPwd.vue
+++ b/buyer/src/pages/home/memberCenter/ModifyPwd.vue
@@ -15,10 +15,10 @@
输入验证码
+
+ 下一步
+
-
- 下一步
-
@@ -43,11 +43,10 @@
-
+
+ 修改
+
-
- 修改
-
@@ -65,10 +64,10 @@
+
+ 设置
+
-
- 设置
-
@@ -252,9 +251,6 @@ onMounted(() => {
diff --git a/buyer/src/pages/home/memberCenter/evaluation/EvalDetail.vue b/buyer/src/pages/home/memberCenter/evaluation/EvalDetail.vue
index 4c7509504..064bedc4f 100644
--- a/buyer/src/pages/home/memberCenter/evaluation/EvalDetail.vue
+++ b/buyer/src/pages/home/memberCenter/evaluation/EvalDetail.vue
@@ -4,7 +4,7 @@
-
{{ gradeText }}
+
{{ gradeText }}
评价时间:{{ orderGoods.createTime }}
@@ -99,6 +99,10 @@ const gradeText = computed(() => {
const map = { GOOD: '好评', MODERATE: '中评', WORSE: '差评' }
return map[orderGoods.value.grade] || '评价详情'
});
+const gradeTagType = computed(() => {
+ const map = { GOOD: 'success', MODERATE: 'warning', WORSE: 'info' }
+ return map[orderGoods.value.grade] || 'info'
+});
function getDetail() {
// 获取评价详情
@@ -130,33 +134,23 @@ onMounted(() => {
}
.order-card {
- padding: 4px 0 16px;
- margin-bottom: 8px;
- border-bottom: 1px solid #f0f0f0;
+ margin-top: 16px;
+ padding: 16px 20px;
+ border: 1px solid #eee;
+ border-radius: 8px;
+ background: #fff;
h3 {
margin: 0 0 12px;
- font-size: 15px;
+ font-size: 16px;
font-weight: 600;
color: #333;
- line-height: 1.4;
- }
-
- &:last-of-type {
- border-bottom: none;
+ line-height: 24px;
}
}
.status-card {
- padding-top: 8px;
-}
-
-.status-text {
- margin: 0;
- color: $theme_color;
- font-size: 18px;
- font-weight: 600;
- line-height: 1.4;
+ margin-top: 0;
}
.status-sn {
diff --git a/buyer/src/pages/home/orderCenter/AfterSale.vue b/buyer/src/pages/home/orderCenter/AfterSale.vue
index a3ec487b0..512db73d5 100644
--- a/buyer/src/pages/home/orderCenter/AfterSale.vue
+++ b/buyer/src/pages/home/orderCenter/AfterSale.vue
@@ -33,7 +33,9 @@
{{ order.createTime }}售后单号 {{ order.sn }}{{ order.storeName }}
-
{{ filterOrderStatus(order.serviceStatus) }}
+
+ {{ filterOrderStatus(order.serviceStatus) }}
+
@@ -59,19 +61,19 @@
{{ $filters.unitPrice(order.applyRefundPrice, "¥") }}
-
-
-
+ >取消售后
@@ -253,6 +255,14 @@ function filterOrderStatus(status) { // 获取订单状态中文
});
return ob && ob[0] ? ob[0].name : status
}
+function statusTagType(status) { // 售后状态对应标签类型
+ const map = {
+ APPLY: 'warning', APPLYING: 'warning',
+ COMPLETE: 'success',
+ CANCEL: 'info', EXPIRED: 'info'
+ }
+ return map[status] || 'info'
+}
// 获取物流公司列表
function getCompany() {
getLogisticsCompany().then(res => {
@@ -372,7 +382,7 @@ onMounted(() => {
align-items: center;
min-width: 0;
font-size: 14px;
- color: #171A26;
+ color: #333;
line-height: 1.5;
span {
@@ -476,38 +486,9 @@ onMounted(() => {
flex-direction: column;
align-items: center;
gap: 8px;
- }
- .op-btn {
- min-width: 96px;
- height: 32px;
- padding: 0 12px;
- border: 1px solid $theme_color;
- border-radius: 4px;
- background: $theme_color;
- color: #fff;
- font-family: inherit;
- font-size: 14px;
- line-height: 30px;
- cursor: pointer;
-
- &:hover {
- opacity: 0.9;
- }
- }
-
- .text-link {
- border: none;
- background: none;
- padding: 0;
- color: #171A26;
- font-family: inherit;
- font-size: 14px;
- line-height: 22px;
- cursor: pointer;
-
- &:hover {
- color: $theme_color;
+ :deep(.el-button + .el-button) {
+ margin-left: 0;
}
}
}
diff --git a/buyer/src/pages/home/orderCenter/AfterSaleDetail.vue b/buyer/src/pages/home/orderCenter/AfterSaleDetail.vue
index 402abc37c..00a891558 100644
--- a/buyer/src/pages/home/orderCenter/AfterSaleDetail.vue
+++ b/buyer/src/pages/home/orderCenter/AfterSaleDetail.vue
@@ -1,10 +1,10 @@
-
+
-
{{ afterSale.serviceName }}
+
{{ afterSale.serviceName }}
售后单号:{{ afterSale.sn }}
订单号:{{ afterSale.orderSn }}
@@ -13,8 +13,8 @@
创建时间:{{ afterSale.createTime }}
-
-
+ 提交物流
+ 取消售后
@@ -28,7 +28,7 @@
-
+
售后进程
-
+
服务单信息
-
+
+ 退款方式
+ {{ afterSale.refundWay == 'ORIGINAL' ? '原路退回' : '账号退款' }}
+
+
+ 申请退款金额
+ {{ $filters.unitPrice(afterSale.applyRefundPrice, '¥') }}
+
+
+ 实际退款金额
+ {{ $filters.unitPrice(afterSale.actualRefundPrice, '¥') }}
+
+
- 退款方式
- {{ afterSale.refundWay == 'ORIGINAL' ? '原路退回' : '账号退款' }}
+ 退款开户行
+ {{ afterSale.bankDepositName }}
- 申请退款金额
- {{ $filters.unitPrice(afterSale.applyRefundPrice, '¥') }}
-
-
- 实际退款金额
- {{ $filters.unitPrice(afterSale.actualRefundPrice, '¥') }}
-
-
-
- 退款开户行
- {{ afterSale.bankDepositName }}
-
-
- 退款开户名
- {{ afterSale.bankAccountName }}
-
-
- 退款卡号
- {{ afterSale.bankAccountNumber }}
-
-
-
- 商品处理方式
- {{ afterSale.serviceType == 'RETURN_MONEY' ? '退款' : '退货' }}
+ 退款开户名
+ {{ afterSale.bankAccountName }}
- 退款原因
- {{ afterSale.reasonName }}
-
-
- 问题描述
- {{ afterSale.problemDesc }}
+ 退款卡号
+ {{ afterSale.bankAccountNumber }}
+
+
+ 商品处理方式
+ {{ afterSale.serviceType == 'RETURN_MONEY' ? '退款' : '退货' }}
+
+
+ 退款原因
+ {{ afterSale.reasonName }}
+
+
+ 问题描述
+ {{ afterSale.problemDesc }}
-
+
图片信息
![]()
{
return afterSale.value.afterSaleAllowOperationVO && afterSale.value.afterSaleAllowOperationVO.cancel
});
+const statusTagType = computed(() => {
+ const map = {
+ APPLY: 'warning',
+ PASS: 'success',
+ REFUSE: 'info',
+ BUYER_RETURN: 'warning',
+ SELLER_CONFIRM: 'warning',
+ SELLER_TERMINATION: 'info',
+ BUYER_CONFIRM: 'warning',
+ BUYER_CANCEL: 'info',
+ COMPLETE: 'success',
+ WAIT_REFUND: 'warning'
+ };
+ return map[afterSale.value.serviceStatus] || 'info';
+});
+
function getDetail () { // 售后详情
afterSaleDetail(route.query.sn).then(res => {
if (res.success) {
@@ -286,26 +300,22 @@ onMounted(() => {
color: #333;
}
-.order-card {
- padding: 4px 0 16px;
- margin-bottom: 8px;
- border-bottom: 1px solid #f0f0f0;
+.panel {
+ margin-top: 16px;
+ padding: 16px 20px;
+ border: 1px solid #eee;
+ border-radius: 8px;
+ background: #fff;
h3 {
margin: 0 0 12px;
- font-size: 15px;
+ padding-bottom: 12px;
+ border-bottom: 1px solid #f5f5f5;
+ font-size: 16px;
font-weight: 600;
color: #333;
- line-height: 1.4;
+ line-height: 24px;
}
-
- &:last-child {
- border-bottom: none;
- }
-}
-
-.status-card {
- padding-top: 8px;
}
.status-head {
@@ -315,17 +325,16 @@ onMounted(() => {
gap: 16px;
}
-.status-text {
- margin: 0;
- color: $theme_color;
- font-size: 18px;
- font-weight: 600;
- line-height: 1.4;
+.status-main {
+ display: flex;
+ align-items: center;
+ gap: 12px;
+ flex-wrap: wrap;
}
.status-sn {
- margin: 6px 0 0;
- color: #171A26;
+ margin: 0;
+ color: #999;
font-size: 14px;
line-height: 22px;
@@ -340,7 +349,7 @@ onMounted(() => {
}
.operation-time {
- color: #171A26;
+ color: #999;
font-size: 14px;
line-height: 22px;
}
@@ -392,7 +401,7 @@ onMounted(() => {
span {
margin: 0 4px;
- color: #438cde;
+ color: #333;
cursor: pointer;
&:hover {
@@ -435,35 +444,30 @@ onMounted(() => {
}
}
-.info-list {
- border: 1px solid #f0f0f0;
- border-radius: 8px;
- overflow: hidden;
-}
-
.info-row {
- display: grid;
- grid-template-columns: 140px minmax(0, 1fr);
- min-height: 44px;
- border-top: 1px solid #f0f0f0;
+ display: flex;
+ gap: 16px;
+ padding: 12px 0;
+ border-bottom: 1px solid #f5f5f5;
font-size: 14px;
line-height: 22px;
- &:first-child {
- border-top: none;
+ &:last-child {
+ border-bottom: none;
+ padding-bottom: 4px;
}
+}
- span {
- display: flex;
- align-items: center;
- padding: 10px 16px;
- color: #171A26;
- }
+.info-label {
+ flex: 0 0 96px;
+ color: #999;
+}
- .label {
- background: #fafafa;
- color: #666;
- }
+.info-value {
+ flex: 1;
+ min-width: 0;
+ color: #333;
+ word-break: break-all;
}
.image-list {
@@ -480,37 +484,4 @@ onMounted(() => {
cursor: pointer;
}
}
-
-.op-btn {
- min-width: 96px;
- height: 32px;
- padding: 0 12px;
- border: 1px solid $theme_color;
- border-radius: 4px;
- background: $theme_color;
- color: #fff;
- font-family: inherit;
- font-size: 14px;
- line-height: 30px;
- cursor: pointer;
-
- &:hover {
- opacity: 0.9;
- }
-}
-
-.text-link {
- border: none;
- background: none;
- padding: 0;
- color: #171A26;
- font-family: inherit;
- font-size: 14px;
- line-height: 22px;
- cursor: pointer;
-
- &:hover {
- color: $theme_color;
- }
-}
diff --git a/buyer/src/pages/home/orderCenter/ApplyAfterSale.vue b/buyer/src/pages/home/orderCenter/ApplyAfterSale.vue
index 90cd9c149..2092829e4 100644
--- a/buyer/src/pages/home/orderCenter/ApplyAfterSale.vue
+++ b/buyer/src/pages/home/orderCenter/ApplyAfterSale.vue
@@ -1,26 +1,20 @@
-
-
-
-
-
![]()
-
{{ row.goodsName }}
-
-
-
-
-
- {{ $filters.unitPrice(row.applyRefundPrice, '¥') }}
-
-
-
-
+
+
![]()
+
+
{{ goods.goodsName }}
+
+ {{ $filters.unitPrice(goods.applyRefundPrice, '¥') }}
+ ×{{ goods.num }}
+
+
+
-
+
退货
退款
@@ -224,6 +218,50 @@ onMounted(() => {