feat: 更新 API 请求参数与组件样式优化

- 在 account.js 和 member.js 中添加 loading 和 skipMessage 参数,提升 API 调用的用户体验。
- 在 ShowGoods.vue 中优化商品详情展示样式,增强可读性和交互性。
- 在 Cart.vue 中重构购物车商品列表结构,提升布局一致性。
- 在多个页面中修复了提示信息的内容,确保用户操作的清晰反馈。
This commit is contained in:
田香琪
2026-07-06 16:33:21 +08:00
parent e13ca6281d
commit 297bdd95dd
28 changed files with 689 additions and 259 deletions

View File

@@ -26,9 +26,9 @@
</el-form-item>
</el-form>
</div>
<div class="mt_20">
<el-button type="primary" class="mr_10" :loading="loading" @click="save">保存收货地址</el-button>
<div class="action-bar mt_20">
<el-button @click="$router.back()">返回</el-button>
<el-button type="primary" class="ml_10" :loading="loading" @click="save">保存收货地址</el-button>
</div>
</UserCenterLayout>
@@ -153,4 +153,9 @@ export default {
.add-box {
margin: 40px 0;
}
.action-bar {
display: flex;
justify-content: flex-end;
}
</style>

View File

@@ -39,7 +39,7 @@
</div>
</div>
<div>
<span @click="shopPage(order.shopId)">{{ order.storeName }}</span>
<span @click="shopPage(order.storeId)">{{ order.storeName }}</span>
</div>
<div class="order-actions">
<!-- 订单基础操作 -->
@@ -89,7 +89,7 @@
</div>
<div class="mt_10">
<span class="global_color"
>{{ $filters.unitPrice(singleOrder.flowPrice, "¥") }} </span>x {{ singleOrder.num }}
>{{ $filters.unitPrice(singleOrder.flowPrice, "¥") }} </span> x {{ singleOrder.num }}
</div>
</div>
</div>
@@ -173,7 +173,7 @@ export default {
cancel(sn) { // 取消售后申请
this.$Modal.confirm({
title: '取消',
content: '<p>确定取消此次售后申请吗?</p>',
content: '确定取消此次售后申请吗?',
onOk: () => {
cancelAfterSale(sn).then(res => {
if (res.success) {

View File

@@ -4,8 +4,12 @@
<!-- 操作按钮 -->
<el-card class="mb_10" shadow="never" v-if="(afterSale.serviceStatus == 'PASS' &&
afterSale.serviceType != 'RETURN_MONEY') || (afterSale.afterSaleAllowOperationVO && afterSale.afterSaleAllowOperationVO.cancel)">
<el-button type="success" @click="openModal" v-if="afterSale.serviceStatus == 'PASS' &&
afterSale.serviceType != 'RETURN_MONEY'" size="small">提交物流</el-button>&nbsp;
<el-button
@click="openModal"
v-if="afterSale.serviceStatus == 'PASS' && afterSale.serviceType != 'RETURN_MONEY'"
size="small"
class="submit-logistics-btn"
>提交物流</el-button>&nbsp;
<el-button type="danger" @click="cancel(afterSale.sn)" v-if="afterSale.afterSaleAllowOperationVO && afterSale.afterSaleAllowOperationVO.cancel" size="small">取消售后</el-button>
</el-card>
<div class="order-card">
@@ -302,4 +306,17 @@ table{
padding: 5px;
}
}
:deep(.submit-logistics-btn) {
background-color: #ff9900 !important;
border-color: #ff9900 !important;
color: #fff !important;
&:hover,
&:focus {
background-color: #e68a00 !important;
border-color: #e68a00 !important;
color: #fff !important;
}
}
</style>

View File

@@ -17,10 +17,12 @@
<div class="eval-con">
<div class="eval-form">
<span class="color999">投诉主题</span>
<el-select v-model="form.complainTopic" style="width:260px;margin-bottom:10px">
<el-option v-for="item in reasonList" :value="item.reason" :key="item.id">{{ item.reason }}</el-option>
</el-select>
<div class="topic-row">
<span class="color999 topic-label">投诉主题</span>
<el-select v-model="form.complainTopic" class="topic-select">
<el-option v-for="item in reasonList" :value="item.reason" :key="item.id">{{ item.reason }}</el-option>
</el-select>
</div>
<el-input type="textarea" maxlength="500" show-word-limit :rows="4" placeholder="请输入投诉内容" v-model="form.content" />
</div>
<div class="upload-section">
@@ -186,6 +188,22 @@ export default {
}
}
.topic-row {
display: flex;
align-items: center;
margin-bottom: 10px;
}
.topic-label {
flex-shrink: 0;
margin-right: 8px;
}
.topic-select {
width: 200px;
flex-shrink: 0;
}
.demo-upload-list{
display: block;
width: 60px;

View File

@@ -174,17 +174,6 @@
<td>{{ $filters.unitPrice(goods.refundPrice, "¥") }}</td>
<td>{{ $filters.unitPrice((goods.goodsPrice * goods.num), "¥") }}</td>
<td class="order-item-actions">
<el-button
v-if="
goods.afterSaleStatus.includes('NOT_APPLIED') ||
goods.afterSaleStatus.includes('PART_AFTER_SALE')
"
@click="applyAfterSale(goods.sn)"
type="default"
size="small"
class="order-item-action-btn mb_5"
>申请售后</el-button
>
<el-button
v-if="goods.commentStatus == 'UNFINISHED'"
@click="comment(order.order.sn, goodsIndex)"
@@ -201,6 +190,17 @@
size="small"
>投诉</el-button
>
<el-button
v-if="
goods.afterSaleStatus.includes('NOT_APPLIED') ||
goods.afterSaleStatus.includes('PART_AFTER_SALE')
"
@click="applyAfterSale(goods.sn)"
type="default"
size="small"
class="order-item-action-btn mb_5"
>申请售后</el-button
>
</td>
</tr>
</tbody>
@@ -256,7 +256,7 @@
</el-dialog>
<!--查询物流-->
<el-dialog v-model="logisticsModal" width="40">
<el-dialog v-model="logisticsModal" width="40%">
<template #header><p><span>查询物流</span></p></template>
<div class="layui-layer-wrap">
<dl>