diff --git a/buyer/src/api/account.js b/buyer/src/api/account.js index b7b133b1..53aaf414 100644 --- a/buyer/src/api/account.js +++ b/buyer/src/api/account.js @@ -55,7 +55,9 @@ export function editPwd (params) { url: `/buyer/passport/member/modifyPass`, method: Method.PUT, needToken: true, - data: params + data: params, + loading: false, + skipMessage: true }) } diff --git a/buyer/src/api/member.js b/buyer/src/api/member.js index 0106de9d..31a55140 100644 --- a/buyer/src/api/member.js +++ b/buyer/src/api/member.js @@ -427,7 +427,9 @@ export function distCash (params) { url: `/buyer/distribution/cash`, method: Method.POST, needToken: true, - params + params, + loading: false, + skipMessage: true }); } diff --git a/buyer/src/components/goodsDetail/ShowGoods.vue b/buyer/src/components/goodsDetail/ShowGoods.vue index 1c8dcd55..44e1c7df 100644 --- a/buyer/src/components/goodsDetail/ShowGoods.vue +++ b/buyer/src/components/goodsDetail/ShowGoods.vue @@ -28,28 +28,36 @@
- {{ isCollected ? "已收藏" : "收藏" }} + + + {{ isCollected ? '已收藏' : '收藏' }} +
-

- {{ skuDetail.goodsName }} +

+ {{ skuDetail.goodsName }} 实物商品 虚拟商品 -

+
{{ skuDetail.sellingPoint }} @@ -224,13 +232,13 @@
- 库存{{ skuDetail.quantity }} +   库存{{ skuDetail.quantity }}
@@ -325,9 +333,7 @@ export default { handler(val) { this.skuDetail = val.data; this.wholesaleList = val.wholesaleList; - if (this.wholesaleList && this.wholesaleList.length > 0) { - this.count = this.wholesaleList[0].num; - } + this.syncCountWithQuantity(); this.promotion(); this.swiperGoodsImg(); }, @@ -388,6 +394,13 @@ export default { }) : []; }, + quantityMax() { + const qty = Number(this.skuDetail.quantity) || 0; + return qty > 0 ? qty : 1; + }, + isOutOfStock() { + return (Number(this.skuDetail.quantity) || 0) <= 0; + }, }, methods: { // 初始化video @@ -408,6 +421,22 @@ export default { }, + syncCountWithQuantity() { + const qty = Number(this.skuDetail.quantity) || 0; + if (qty <= 0) { + this.count = 1; + return; + } + if (this.wholesaleList && this.wholesaleList.length > 0) { + this.count = Math.min(Math.max(this.wholesaleList[0].num, 1), qty); + return; + } + if (this.count > qty) { + this.count = qty; + } else if (this.count < 1) { + this.count = 1; + } + }, changeCount(val) { if (this.wholesaleList && this.wholesaleList.length > 0) { if (this.count <= this.wholesaleList[0].num) { @@ -688,11 +717,23 @@ export default { flex-direction: column; } -.item-detail-title p { +.item-detail-title-row { + display: flex; + align-items: center; + flex-wrap: wrap; + gap: 8px; + padding: 8px 0; +} + +.item-detail-name { @include content_color($light_content_color); font-weight: bold; font-size: 20px; - padding: 8px 0; + line-height: 1.4; +} + +.goods-type-tag { + flex-shrink: 0; } .item-detail-express { @@ -941,13 +982,32 @@ export default { .goodsConfig { display: flex; justify-content: space-between; - > span { + + .collect-btn { + display: inline-flex; + align-items: center; + gap: 4px; padding-right: 10px; - &:hover { - cursor: pointer; - color: $theme_color; + color: #666; + cursor: pointer; + line-height: 1; + + &.is-collected { + .collect-icon { + color: #ffc107; + } } } + + .collect-icon { + display: inline-flex; + align-items: center; + font-size: 16px; + } + + .collect-text { + line-height: 1; + } } .sell-point { font-size: 12px; diff --git a/buyer/src/components/goodsDetail/ShowGoodsDetail.vue b/buyer/src/components/goodsDetail/ShowGoodsDetail.vue index e4c4d177..e01e7cee 100644 --- a/buyer/src/components/goodsDetail/ShowGoodsDetail.vue +++ b/buyer/src/components/goodsDetail/ShowGoodsDetail.vue @@ -338,7 +338,7 @@ export default { font-weight: bolder; } .item-intro-detail{ - margin: 0 30px; + margin: 0; width: 100%; } .item-intro-nav{ @@ -365,6 +365,8 @@ export default { } .item-intro-img { width: 100%; + box-sizing: border-box; + padding: 0 30px; min-height: 300px; :deep img{ margin:0 auto; @@ -377,6 +379,8 @@ export default { .item-param-container { display: flex; flex-direction: column; + box-sizing: border-box; + padding: 0 30px; } .item-param-box { padding: 5px; @@ -400,6 +404,10 @@ export default { color: #666666; background-color: #F7F7F7; } +.remarks-container { + box-sizing: border-box; + padding: 0 30px; +} .remarks-analyse-box { padding: 15px; display: flex; @@ -507,31 +515,36 @@ export default { } /***************商品详情介绍和推荐侧边栏结束***************/ /* 改变标签页样式 */ -:deep(.el-tabs__active-bar) { - background-color: $theme_color !important; -} -:deep(.el-tabs__header) { - border: none; -} -.item-tabs > .el-tabs > .el-tabs__header .el-tabs__item { - border-radius: 0px; - color: #999; - height: 38px; -} -.item-tabs > .el-tabs > .el-tabs__header .el-tabs__item.is-active { - color: #fff; - background-color: $theme_color; -} -.item-tabs > .el-tabs > .el-tabs__header .el-tabs__item.is-active:before { - content: ''; - display: block; - width: 100%; - height: 1px; - color: #fff; - background: #F7F7F7; - position: absolute; - top: 0; - left: 0; +.item-tabs { + :deep(.el-tabs__header) { + border: none; + margin: 0; + background-color: #f7f7f7; + } + + :deep(.el-tabs__active-bar) { + background-color: $theme_color !important; + } + + :deep(.el-tabs__item) { + border-radius: 0; + color: #999; + height: 38px; + padding: 0 20px; + + &:hover { + color: #999; + } + } + + :deep(.el-tabs__nav) { + padding-left: 10px; + } + + :deep(.el-tabs__item.is-active) { + color: $theme_color !important; + background-color: transparent; + } } :deep(.el-rate__icon) { color: $theme_color; diff --git a/buyer/src/pages/Cart.vue b/buyer/src/pages/Cart.vue index 5d728f4c..7e11566c 100644 --- a/buyer/src/pages/Cart.vue +++ b/buyer/src/pages/Cart.vue @@ -25,8 +25,9 @@
+
-
+
购物车空空如也

去选购>
-
-
-
- - {{ - shop.storeName - }} -
- - -
-
- ¥{{ item.price }} - {{ item.couponDiscount }}折 - 满{{ item.consumeThreshold }}元可用 - {{ item.disabled ? "已领取" : "领取" }} -
+
+
+
+
+
- -
{{ shop.promotionNotice }}
-
- +
+