Browse Source

商品规格弹框页面调整修改

master
dy-hu 1 year ago
parent
commit
e51e427695
  1. 2
      pages/tabbar/cart/index.vue
  2. 216
      pages_category_page1/goodsModule/components/GoodSkuSelect.vue
  3. 768
      pages_category_page1/goodsModule/components/GoodSkuSelect2.vue

2
pages/tabbar/cart/index.vue

@ -174,7 +174,7 @@
></image>
<text>{{$t('common.chooseall')}}{{ settleAccountsObj.checkNum }}</text>
</view>
<view class="total-title">{{$t('common.total')}}<text class="total-content">¥{{ settleAccountsObj.checkMoney }}</text></view>
<view class="total-title">{{$t('common.total_small')}}<text class="total-content">¥{{ settleAccountsObj.checkMoney }}</text></view>
</view>
<view class="right">

216
pages_category_page1/goodsModule/components/GoodSkuSelect.vue

@ -19,15 +19,15 @@
:src="selectedSku.image"
></image>
<view class="flex-column-plus mar-left-40">
<view class="font-color-C5AA7B">
<label class="fs24">¥</label>
<view class="font-color-F54639">
<label class="fs30 fs-bold">¥</label>
<label
class="fs36 mar-left-10"
class="fs30 fs-bold mar-left-5"
v-text="selectedSku.activityType === 1 && btnType === 4 ? selectedSku['salePrice'] : selectedSku.price"
></label>
</view>
<label class="fs24 font-color-999 mar-top-20">{{$t('common.stocknum', {number:selectedSku.stockNumber})}}</label>
<label class="fs24 mar-top-20">已选</label>
<label class="fs24 font-color-595B6B mar-top-10">{{$t('common.stocknum', {number:selectedSku.stockNumber})}}</label>
<label class="fs24 font-color-595B6B mar-top-10">已选</label>
</view>
</view>
<view class="color-box flex-column-plus">
@ -54,6 +54,107 @@
</view>
</view>
</view>
<scroll-view class="scroll-view_H" scroll-x="true">
<view class="sku-box">
<view class="sku-image-item">
<image class="sku-image" :src="imageUrl"/>
<label class="sku-name">浅绿色</label>
</view>
</view>
<view class="sku-box">
<view class="sku-image-item">
<image class="sku-image-select" :src="imageUrl"/>
<label class="sku-name">深灰色</label>
</view>
</view>
<view class="sku-box">
<view class="sku-image-item">
<image class="sku-image" :src="imageUrl"/>
<label class="sku-name">黄色</label>
</view>
</view>
<view class="sku-box">
<view class="sku-image-item">
<image class="sku-image" :src="imageUrl"/>
<label class="sku-name">蓝色</label>
</view>
</view>
<view class="sku-box">
<view class="sku-image-item">
<image class="sku-image" :src="imageUrl"/>
<label class="sku-name">军绿色</label>
</view>
</view>
<view class="sku-box">
<view class="sku-image-item">
<image class="sku-image" :src="imageUrl"/>
<label class="sku-name">黑色</label>
</view>
</view>
<view class="sku-box">
<view class="sku-image-item">
<image class="sku-image" :src="imageUrl"/>
<label class="sku-name">黑色1</label>
</view>
</view>
<view class="sku-box">
<view class="sku-image-item">
<image class="sku-image" :src="imageUrl"/>
<label class="sku-name">黑色2</label>
</view>
</view>
</scroll-view>
<!-- <view class="u-flex" style="margin-top: 30rpx">
<view class="sku-image-item">
<image class="sku-image" :src="imageUrl"/>
<label class="sku-name">浅绿色</label>
</view>
<view class="sku-image-item">
<image class="sku-image" :src="imageUrl"/>
<label class="sku-name">深灰色</label>
</view>
<view class="sku-image-item">
<image class="sku-image" :src="imageUrl"/>
<label class="sku-name">黄色</label>
</view>
<view class="sku-image-item">
<image class="sku-image" :src="imageUrl"/>
<label class="sku-name">蓝色</label>
</view>
<view class="sku-image-item">
<image class="sku-image" :src="imageUrl"/>
<label class="sku-name">军绿色</label>
</view>
<view class="sku-image-item">
<image class="sku-image" :src="imageUrl"/>
<label class="sku-name">黑色</label>
</view>
<view class="sku-image-item">
<image class="sku-image" :src="imageUrl"/>
<label class="sku-name">黑色2</label>
</view>
<view class="sku-image-item">
<image class="sku-image" :src="imageUrl"/>
<label class="sku-name">黑色3</label>
</view>
</view>-->
</view>
</view>
<view class="goodsNumCent">
@ -61,23 +162,19 @@
class="goodsNum-box flex-row-plus flex-sp-between"
:class="{'bottom-line' :aliAgingObj.supportHanaUta}"
>
<label class="font-color-333 fs26">数量</label>
<label class="font-color-252744 fs28 fs-bold">数量</label>
<view class="goodsNum">
<image v-if="buyNum === 1" class="image-count-operate" @click="handleNumSub"
src="https://wechat.hnthee.com/ceres-local-file/image/icon_cart_nosub.png"/>
<image v-else @click="handleNumSub" class="image-count-operate" src="https://wechat.hnthee.com/ceres-local-file/image/icon_cart_sub.png"/>
<view
class="item subtract"
@click="handleNumSub"
>-
</view>
<view
class="item goodsNumber"
class="text-count-operate"
v-model="buyNum"
>{{ buyNum }}
</view>
<view
class="item add"
@click="handleNumAdd"
>+
</view>
<image class="image-count-operate" @click="handleNumAdd"
src="https://wechat.hnthee.com/ceres-local-file/image/icon_cart_add.png"/>
</view>
</view>
</view>
@ -229,7 +326,8 @@ export default {
selectIndex: -1,
disableSelectList: [true, true, true],
agingMoneyList: ["0.00", "0.00", "0.00"]
}
},
imageUrl: 'http://122.9.152.120/ceres-local-file/file/2023/05/4237d7abe33d45a485a4b81c865e55bb_9344949001256.png'
}
},
props: {
@ -554,14 +652,15 @@ export default {
width: 690upx;
.detailImg {
width: 180upx;
height: 180upx;
width: 140upx;
height: 140upx;
border-radius: 20rpx;
}
}
.color-box {
padding: 30upx 30upx;
width: 690upx;
padding: 30rpx 30rpx;
width: 100%;
.colorName-box {
display: flex;
@ -637,7 +736,7 @@ export default {
.goodsNum-box {
width: 100%;
padding: 30rpx 0 180rpx 0;
border-top: 2rpx solid #EDEDED;
//border-top: 2rpx solid #EDEDED;
.goodsNum {
height: 50upx;
@ -667,6 +766,19 @@ export default {
}
}
.image-count-operate{
width: 40rpx;
height: 40rpx;
}
.text-count-operate{
width: 60rpx;
text-align: center;
font-size: 28rpx;
color: #252744;
font-weight: 400;
}
.bottom-line {
border-bottom: 1upx solid #EDEDED;
}
@ -722,11 +834,12 @@ export default {
.buyNowBut {
width: 90%;
height: 90upx;
background-color: #333333;
font-size: 28upx;
background: linear-gradient(-10deg, #252744, #484A66);
font-size: 32rpx;
line-height: 90upx;
text-align: center;
color: #FFEBC4;
color: #FFFFFF;
border-radius: 50rpx;
}
}
}
@ -736,16 +849,18 @@ export default {
.selectBtn {
width: 342rpx;
height: 100rpx;
line-height: 100rpx;
height: 98rpx;
line-height: 95rpx;
color: #252744;
text-align: center;
border: 2rpx solid #333333;
font-size: 28rpx;
border-radius: 8rpx;
border: 1px solid #252744;
font-size: 32rpx;
border-radius: 50rpx;
}
.selectBuyNow {
background: #333333;
color: #FFFFFF;
background: linear-gradient(-10deg, #252744, #484A66);
}
}
@ -764,4 +879,41 @@ export default {
text-align: center;
margin-left: 30upx;
}
.sku-box{
display: inline-block;
}
.sku-image-item{
display: flex;
flex-direction: column;
align-items: center;
margin-right: 30rpx;
.sku-image{
width: 86rpx;
height: 86rpx;
border: 2px solid #D3D4DE;
border-radius: 20rpx;
}
.sku-image-select{
width: 86rpx;
height: 86rpx;
border: 2px solid #252744;
border-radius: 20rpx;
margin-right: 30rpx;
}
.sku-name{
font-size: 24rpx;
color: #595B6B;
margin-top: 8rpx;
}
}
.scroll-view_H {
white-space: nowrap;
width: 100%;
}
</style>

768
pages_category_page1/goodsModule/components/GoodSkuSelect2.vue

@ -0,0 +1,768 @@
<!--
* @FileDescription: sku选择器花呗拼团下单
* @Author: kahu
* @Date: 2022/11/7
* @LastEditors: kahu
* @LastEditTime: 2022/11/7
-->
<template>
<div class="content">
<u-popup
v-model="goodsDetailShowFlag"
mode="bottom"
border-radius="14"
>
<view class="goosDetailshow-box">
<view class="detailImg-box flex-row-plus">
<image
class="detailImg"
:src="selectedSku.image"
></image>
<view class="flex-column-plus mar-left-40">
<view class="font-color-F54639">
<label class="fs32 fs-bold">¥</label>
<label
class="fs32 fs-bold mar-left-5"
v-text="selectedSku.activityType === 1 && btnType === 4 ? selectedSku['salePrice'] : selectedSku.price"
></label>
</view>
<label class="fs24 font-color-595B6B mar-top-10">{{$t('common.stocknum', {number:selectedSku.stockNumber})}}</label>
<label class="fs24 font-color-595B6B mar-top-10">已选</label>
</view>
</view>
<view class="color-box flex-column-plus">
<view
v-for="(skuRowItem,skuRowIndex) in productData['names']"
:key="skuRowIndex"
>
<label
class="fs26 font-color-333"
v-if="skuRowItem['nameCode']"
>{{ skuRowItem.skuName }}</label>
<view class="colorName-box">
<view
class="pad-bot-30"
v-for="(skuColItem, skuColIndex) in skuRowItem.values"
:key="skuColIndex"
>
<view
class="colorName"
:class="{'colorName-on' : selectedAttr[skuRowItem['nameCode']] === skuColItem.valueCode}"
@click="handleClickSkuItem(skuRowItem['nameCode'], skuColItem.valueCode)"
>
{{ skuColItem.skuValue }}
</view>
</view>
</view>
</view>
</view>
<view class="goodsNumCent">
<view
class="goodsNum-box flex-row-plus flex-sp-between"
:class="{'bottom-line' :aliAgingObj.supportHanaUta}"
>
<label class="font-color-333 fs26">数量</label>
<view class="goodsNum">
<view
class="item subtract"
@click="handleNumSub"
>-
</view>
<view
class="item goodsNumber"
v-model="buyNum"
>{{ buyNum }}
</view>
<view
class="item add"
@click="handleNumAdd"
>+
</view>
</view>
</view>
</view>
<!-- 花呗分期 -->
<view
class="huabei-box flex-column-plus"
v-if="aliAgingObj.supportHanaUta"
>
<label class="font-color-999 fs24">花呗分期</label>
<scroll-view
class="fenqi-box"
scroll-x="true"
>
<view
class="huabei-item"
:class="[{'fenqi-on' :aliAgingObj.selectIndex === 0},{'disabled' :aliAgingObj.disableSelectList[0]}]"
@click="handleSelectAliAging(0)"
>
<label class="huabei-period">分3期(含手续费)</label>
<label class="huabei-money">{{ aliAgingObj.agingMoneyList[0] }}/</label>
</view>
<view
class="huabei-item"
:class="[{'fenqi-on' :aliAgingObj.selectIndex === 1},{'disabled' :aliAgingObj.disableSelectList[1]}]"
@click="handleSelectAliAging(1)"
>
<label class="huabei-period">分6期(含手续费)</label>
<label class="huabei-money">{{ aliAgingObj.agingMoneyList[1] }}/</label>
</view>
<view
class="huabei-item"
:class="[{'fenqi-on' :aliAgingObj.selectIndex === 2},{'disabled' :aliAgingObj.disableSelectList[2]}]"
@click="handleSelectAliAging(2)"
>
<label class="huabei-period">分12期(含手续费)</label>
<label class="huabei-money">{{ aliAgingObj.agingMoneyList[2] }}/</label>
</view>
</scroll-view>
</view>
<view
v-if="btnType===6"
class="skuSelectBtn"
>
<view
class="flex-row-plus offShelf"
v-if="productData.shelveState === 0"
>
商品已下架
</view>
<view
class="flex-row-plus flex-items flex-sp-around"
v-else-if="selectedSku.activityType === 1"
>
<view
class="selectJoinShop selectBtn font-color-333"
@click="handleBuyNow"
>单独购买
</view>
<view
class="selectBuyNow selectBtn font-color-FFEBC4"
@click="handleBuyWithGroup(1)"
>我要开团
</view>
</view>
<view
class="flex-row-plus flex-items flex-sp-around"
v-else
>
<view
class="selectJoinShop selectBtn font-color-333"
@click="handleAddCart"
>{{$t('common.addtocart')}}
</view>
<view
class="selectBuyNow selectBtn font-color-FFEBC4"
@click="handleBuyNow"
>{{$t('common.buynow')}}
</view>
</view>
</view>
<view v-else>
<view
v-if="selectedSku.activityType === 1 && collageId !== 0"
class="goosDetailbut-box flex-items-plus"
:style="{'padding-bottom':(isIphone === true? 60:20)+'rpx'}"
>
<view
class="joinbuyBut"
@click="handleBuyWithGroup(2)"
>{{$t('common.sure')}}
</view>
</view>
<view
v-else-if="selectedSku.activityType === 1 && btnType === 3"
class="goosDetailbut-box flex-row-plus"
:style="{'padding-bottom':(isIphone === true? 60:20)+'rpx'}"
>
<view
class="buyNowBut"
@click="handleBuyWithGroup(1)"
>去拼团
</view>
</view>
<view
v-else
class="goosDetailbut-box flex-row-plus"
:style="{'padding-bottom':(isIphone === true? 60:20)+'rpx'}"
>
<view
v-if="btnType === 1"
class="buyNowBut"
@click="handleAddCart"
>{{$t('common.sure')}}
</view>
<view
v-else
class="buyNowBut"
@click="handleBuyNow(2)"
>{{$t('common.sure')}}
</view>
</view>
</view>
</view>
</u-popup>
</div>
</template>
<script>
import NET from "../../../utils/request";
import API from "../../../config/api";
export default {
name: "GoodSkuSelect",
data() {
return {
// SKU
goodsDetailShowFlag: false,
// valueCode key => value names.nameCode=>values.valueCode
selectedAttr: {},
// skuMap
selectedSku: {},
// 1 2 3 4 6SKU
btnType: 0,
buyNum: 1,
//
aliAgingObj: {
supportHanaUta: false,
selectIndex: -1,
disableSelectList: [true, true, true],
agingMoneyList: ["0.00", "0.00", "0.00"]
}
}
},
props: {
productData: {
type: Object,
default: () => ({})
},
isIphone: {
type: Boolean,
default: () => false
},
collageId: {
type: Number,
default: () => 0
}
},
methods: {
/**
* 当前SKU数量减少
*/
handleNumSub() {
if (this.buyNum > 1) {
this.buyNum = this.buyNum - 1
} else {
uni.showToast({
title: '亲!至少一件哦!',
icon: "none"
})
}
},
/**
* 当前SKU数量加
*/
handleNumAdd() {
if (this.buyNum < this.selectedSku.stockNumber) {
this.buyNum = this.buyNum + 1
} else {
uni.showToast({
title: this.$t('common.understock'),
icon: "none"
})
}
},
/**
* 根据skuId选择SKU
* @param skuId SkuId
*/
handleSelectBySkuId(skuId) {
if (!skuId) return
// sku
const allSkuValueGroupMap = this.productData.map
for (const allSkuValueGroupMapKey in allSkuValueGroupMap) {
if (parseInt(allSkuValueGroupMap[allSkuValueGroupMapKey].skuId) !== parseInt(skuId)) continue;
this.selectedSku = allSkuValueGroupMap[allSkuValueGroupMapKey]
this.echoFatherRowText(this.productData, this.selectedSku, this.buyNum)
//
const selectValueCodes = this.selectedSku['valueCodes'].split(',')
for (const skuRow of this.productData.names) {
for (const skuCol of skuRow.values) {
if (!selectValueCodes.includes(skuCol['valueCode'])) continue;
this.$set(this.selectedAttr, skuRow['nameCode'], skuCol['valueCode'])
break; // skuvalue
}
}
}
},
/**
* 点击sku的一项
* @param nameCode SKU行的nameCode
* @param valueCode SKU列的valueCode
* nameCodeValueCodeClick
*/
handleClickSkuItem(nameCode, valueCode) {
//
this.$set(this.selectedAttr, nameCode, valueCode)
// skuvalues.valueCode
let values = []
for (const key in this.selectedAttr) {
values.push(this.selectedAttr[key])
}
// skukey
// productData.mapvalues[].valueCode使
const nowSelectSkuValueGroupKey = values.join(',') // allSkuValueGroupMapkey
// skuvalues.valueCode
const allSkuValueGroupMap = this.productData.map
//
for (const allSkuValueGroupMapKey in allSkuValueGroupMap) {
// sku
if (nowSelectSkuValueGroupKey === allSkuValueGroupMapKey) {
this.selectedSku = allSkuValueGroupMap[allSkuValueGroupMapKey]
this.echoFatherRowText(this.productData, this.selectedSku, this.buyNum)
}
}
},
/**
* 回显父组件通讯
* @param productData 当前商品对象
* @param skuItem 当前选中的sku的后端数据
* @param buyNum 当前sku购买数量
*/
echoFatherRowText(productData, skuItem, buyNum) {
// skuvalueCode
const currentSku = []
// valueCode
const nowSelectValueCodeList = skuItem['valueCodes'].split(',')
const skuRows = productData.names
for (const skuRow of skuRows) {
const skuValues = skuRow.values
for (const skuValue of skuValues) {
if (!nowSelectValueCodeList.includes(skuValue.valueCode)) continue;
const currentSkuItem = {skuText: ''}
if (skuValue.valueCode === '单款项') {
currentSkuItem['skuText'] = skuValue['skuValue']
} else {
currentSkuItem['skuText'] = `${ skuValue.skuName }:${ skuValue.skuValue }`
}
currentSku.push(currentSkuItem)
break; // valuebreak
}
}
this.$emit('getCurrentSku', {
skuItem,
currentSku,
buyNum
})
// sku
// postSelectSkugetCurrentSku
this.$emit('postSelectSku')
},
//
async handleAddCart() {
this.handleCheckIsLogin()
if (this.selectedSku.stockNumber < 1) {
return uni.showToast({
title: this.$t('common.understock'),
icon: "none"
})
}
// uni.showLoading({
// mask: true,
// title: '...',
// })
try {
const postData = {
skuId: this.selectedSku.skuId,
number: this.buyNum,
}
await NET.request(API.ShoppingaddCart, postData, 'POST')
//
this.$store.dispatch('doPointer', {
eventType: 2,
productIds: this.productId
})
//
let newAllCartNum = uni.getStorageSync('allCartNum') + this.buyNum
uni.setStorageSync('allCartNum', newAllCartNum)
this.$emit('changeCartNum',newAllCartNum)
uni.showToast({
title: '添加成功',
icon: 'none'
})
setTimeout(()=>{
this.buyNum = 1
this.goodsDetailShowFlag = false
},2000)
}finally {
uni.hideLoading()
}
},
/**
* 立即购买下单
*/
handleBuyNow() {
this.handleCheckIsLogin()
if (this.selectedSku.stockNumber < 1) {
return uni.showToast({
title: this.$t('common.understock'),
icon: "none"
})
}
if (this.buyNum > this.selectedSku.stockNumber && this.selectedSku.stockNumber !== 0) {
return uni.showToast({
title: '已超出最大数量限制',
icon: "none"
})
}
//
let list = [{
ifWork: 0,
shopId: this.productData.shopId,
shopName: this.productData.shopName,
shopDiscountId: this.shopDiscountId > 0 ? this.shopDiscountId : null,
shopSeckillId: this.shopSeckillId > 0 ? this.shopSeckillId : null,
skus: [{
productId: this.productData.productId,
skuId: this.selectedSku.skuId,
productName: this.productData.productName,
image: this.selectedSku.image,
price: this.selectedSku.price,
weight: 0,
number: this.buyNum,
SKU: "",
total: this.selectedSku.price * this.buyNum,
ifLogistics: 1
}]
}]
uni.setStorageSync('skuItemDTOList', list)
this.buyNum = 1
this.goodsDetailShowFlag = false
uni.navigateTo({
url: '../orderModule/orderConfirm?type=1',
})
},
/**
* 拼团下单
* @param type 1单独开团2拼团
*/
handleBuyWithGroup(type) {
this.handleCheckIsLogin()
if (this.selectedSku.stockNumber < 1) {
return uni.showToast({
title: this.$t('common.understock'),
icon: "none"
})
}
const data = {
number: this.buyNum,
productId: this.productId,
shopId: this.shopId,
skuId: this.selectedSku.skuId,
shopGroupWorkId: this.selectedSku.shopGroupWorkId,
type: type
}
if (type !== 1) {
data.collageId = this.collageId
}
uni.removeStorageSync("skuItemDTOList")
uni.setStorageSync('skuItemList', data)
this.goodsDetailShowFlag = false
this.buyNum = 1
uni.navigateTo({
url: '../orderModule/orderConfirm?type=1',
})
},
/**
* 是否登录
* @return {boolean|void}
*/
handleCheckIsLogin() {
const userInfo = uni.getStorageSync('storage_key')
if (!userInfo || (userInfo && JSON.stringify(userInfo) === '{}')) {
return uni.navigateTo({
url: '../../pages_category_page2/userModule/login'
})
}
return true
},
/**
* 选择分期
* @param index 0:3 1:6 2:12
*/
handleSelectAliAging(index) {
const aliAgingObj = this.aliAgingObj
if (aliAgingObj.selectIndex !== index && !aliAgingObj.disableSelectList[index]) {
aliAgingObj.selectIndex = index;
} else {
aliAgingObj.selectIndex = -1;
}
},
/**
* 渲染是否支持花呗
* @param productData 当前商品
* @param skuPrice:number 选中SKU的价格
*/
handleRenderAliAging(productData, skuPrice) {
if (productData.ifHuabei !== 1) return
const aliAgingObj = this.aliAgingObj
if (skuPrice && skuPrice >= 0.03) {
aliAgingObj.supportHanaUta = true
aliAgingObj.disableSelectList[0] = false;
aliAgingObj.agingMoneyList[0] = (parseInt((skuPrice / 3 * 100) / 100 + '')).toFixed(2) + ""
}
if (skuPrice && skuPrice >= 0.06) {
aliAgingObj.supportHanaUta = false;
aliAgingObj.disableSelectList[1] = false;
aliAgingObj.agingMoneyList[1] = (parseInt((skuPrice / 6 * 100) / 100 + '')).toFixed(2) + ""
}
if (skuPrice && skuPrice >= 0.12) {
aliAgingObj.supportHanaUta = true;
aliAgingObj.disableSelectList[2] = false;
aliAgingObj.agingMoneyList[2] = (parseInt((skuPrice / 12 * 100) / 100 + '')).toFixed(2) + ""
}
},
}
}
</script>
<style
lang="scss"
scoped
>
.goosDetailshow-box {
margin-bottom: -5upx;
.detailImg-box {
margin-top: 30upx;
margin-left: 30upx;
border-bottom: 1upx solid #EDEDED;
padding-bottom: 20upx;
width: 690upx;
.detailImg {
width: 140upx;
height: 140upx;
border-radius: 20rpx;
}
}
.color-box {
padding: 30upx 30upx;
width: 690upx;
.colorName-box {
display: flex;
flex-wrap: wrap;
flex-direction: row;
justify-content: flex-start;
align-items: center;
margin-top: 30upx;
margin-left: -30upx;
.colorName {
background-color: #FFFFFF;
margin-left: 30upx;
padding: 10upx 32upx;
font-size: 26upx;
border: 2rpx solid #E4E5E6;
z-index: 2;
color: #333333;
}
.colorName-on {
box-shadow: 0 0 20rpx rgba(0, 0, 0, 0.1);
color: #C5AA7B;
margin-left: 30upx;
padding: 10upx 32upx;
font-size: 26upx;
text-align: center;
z-index: 1;
border: none;
}
}
}
.modelNum-box {
padding: 30upx 30upx;
border-bottom: 1upx solid #EDEDED;
width: 690upx;
.modelNumName-box {
display: flex;
flex-wrap: wrap;
flex-direction: row;
justify-content: flex-start;
align-items: center;
margin-top: 30upx;
margin-left: -30upx;
.modelNumName-on {
background-color: #FFE4D0;
color: #FF7800;
margin-left: 30upx;
padding: 10upx 32upx;
border-radius: 28upx;
border: 1upx solid #FF7800;
font-size: 26upx;
text-align: center;
}
.modelNumName {
background-color: #F5F5F5;
margin-left: 30upx;
padding: 10upx 32upx;
border-radius: 28upx;
font-size: 26upx;
}
}
}
.goodsNumCent {
padding: 0 30upx;
.goodsNum-box {
width: 100%;
padding: 30rpx 0 180rpx 0;
border-top: 2rpx solid #EDEDED;
.goodsNum {
height: 50upx;
display: flex;
align-items: center;
.item {
width: 50upx;
height: 50upx;
line-height: 48rpx;
border: 1upx solid #999999;
text-align: center;
}
.subtract {
border-right: 0upx;
}
.goodsNumber {
line-height: 50rpx;
}
.add {
border-left: 0upx;
}
}
}
}
.bottom-line {
border-bottom: 1upx solid #EDEDED;
}
.huabei-box {
padding: 30upx 30upx;
width: 690upx;
.fenqi-box {
margin-top: 15upx;
width: 120%;
.huabei-item {
display: inline-block;
background: #f3f3f3;
padding: 16upx 24upx;
margin: 5upx 10upx;
border-radius: 15upx;
text-align: center;
font-size: 7upx;
.huabei-period {
display: block;
}
}
.fenqi-on {
border: 1px solid #EF7F93;
color: #EF7F93;
}
.disabled {
color: #cacaca;
}
}
}
.goosDetailbut-box {
justify-content: center;
.joinShopCartBut {
width: 343upx;
height: 80upx;
border-radius: 40upx 0 0 40upx;
background-color: #FFC300;
color: #FFFEFE;
font-size: 28upx;
line-height: 80upx;
text-align: center;
margin-left: 30upx;
}
.buyNowBut {
width: 90%;
height: 90upx;
background-color: #333333;
font-size: 28upx;
line-height: 90upx;
text-align: center;
color: #FFEBC4;
}
}
}
.skuSelectBtn {
padding-bottom: 30rpx;
.selectBtn {
width: 342rpx;
height: 100rpx;
line-height: 100rpx;
text-align: center;
border: 2rpx solid #333333;
font-size: 28rpx;
border-radius: 8rpx;
}
.selectBuyNow {
background: #333333;
}
}
.couponItemimg {
width: 150upx;
height: 60upx;
}
.joinbuyBut {
width: 190upx;
height: 80upx;
background: #333333;
color: #FFEBC4;
font-size: 28upx;
line-height: 80upx;
text-align: center;
margin-left: 30upx;
}
</style>
Loading…
Cancel
Save