Commit 66e79b00 authored by fwz's avatar fwz

加购商品

parent 2b202d76
...@@ -49,49 +49,40 @@ ...@@ -49,49 +49,40 @@
<u-gap bgColor="transparent" height="20"></u-gap> <u-gap bgColor="transparent" height="20"></u-gap>
<div class="list"> <div class="list">
<div class="list__item" v-for="(vo,inx) in mallList" :key="inx"> <div class="list__item" v-for="(vo,inx) in mallList" :key="inx">
<div class="list__img"> <image :src="vo.mainImgUrl" class="list__img"></image>
<!-- <image :src="vo.img" /> --> <!-- <div class="list__img">
</div> <image :src="vo.img" />
</div> -->
<div class="list__money"> <div class="list__money">
<div class="money__title"> <div class="money__title">
<text>{{vo.title}}</text> <text>{{vo.title}}</text>
</div> </div>
<div class="code__tips"> <div class="code__tips">
<text>{{vo.tip}}</text> <text>{{vo.spec}}</text>
</div> </div>
<div class="money__num"> <div class="money__num">
<text class="num__one">¥{{vo.currentPrice/100}}</text> <text class="num__one">¥{{vo.currentPrice/100}}</text>
<text class="num__two">¥{{vo.originalPrice/100}}</text> <text class="num__two">¥{{vo.originalPrice/100}}</text>
</div> </div>
</div> </div>
<u-number-box v-model="value" :min="0" @click="selectMall(vo.id)">
<view <u-number-box>
slot="minus" <view slot="minus" class="minus" @click="minusMall(vo)">
class="minus" <u-icon name="minus" size="12"></u-icon>
> </view>
<u-icon <text slot="input" style="width: 50rpx;text-align: center;" class="input">
name="minus" {{mallSelectMap[vo.id]?mallSelectMap[vo.id]:0}}
size="12" </text>
></u-icon> <view slot="plus" class="plus" @click="plusMall(vo)">
</view> <u-icon name="plus" color="#FFFFFF" size="12"></u-icon>
<text </view>
slot="input" </u-number-box>
style="width: 50rpx;text-align: center;"
class="input" <!-- <u-number-box v-model="mallSelectMap[vo.id]" :min="0" @change="selectMall">
>{{value}}</text>
<view </u-number-box> -->
slot="plus"
class="plus"
>
<u-icon
name="plus"
color="#FFFFFF"
size="12"
></u-icon>
</view>
</u-number-box>
<!-- <div class="list__add" @click="add"> <!-- <div class="list__add" @click="add">
<image src="@/static/index/get-car-code2.png" /> <image src="@/static/index/get-car-code2.png" />
</div> --> </div> -->
</div> </div>
...@@ -103,10 +94,10 @@ ...@@ -103,10 +94,10 @@
<div class="price__bottom"> <div class="price__bottom">
<div class="price"> <div class="price">
<div class="price__num"> <div class="price__num">
<span>{{selectMallList.length}}</span> <span>{{countNum}}</span>
</div> </div>
<div class="price__all"> <div class="price__all">
合计<span class="num__two">¥00.00</span> 合计<span class="num__one">{{countMoney/100}}</span>
</div> </div>
</div> </div>
<div class="price__next" @click="pay"> <div class="price__next" @click="pay">
...@@ -160,7 +151,14 @@ export default { ...@@ -160,7 +151,14 @@ export default {
value: 0, value: 0,
// //
selectMallList: [], selectMallList: [],
//选择商品的数量
countNum: 0,
//商品变更为零或者1
quantityChange: false,
countMoney: 0,
mallMoney: 0,
mallSelectMap: {},
carNo: '',
} }
}, },
methods: { methods: {
...@@ -174,12 +172,20 @@ export default { ...@@ -174,12 +172,20 @@ export default {
}); });
}, },
pay() { pay() {
let list = [{
id: this.freeCode.id,
nums: 1,
}]
let idMap = this.mallSelectMap
for(let id in idMap){
if(idMap[id] > 0){
let commodity = { id: id, nums: idMap[id] }
list.push(commodity)
}
}
this.createOrder = { this.createOrder = {
addressId: this.addressId, addressId: this.addressId,
commodityList: [{ commodityList: list,
id: '2022042214065100000000',
nums: 1,
}],
} }
let that = this let that = this
let opts = { url: '/app/mall/create/order', method: 'post' }; let opts = { url: '/app/mall/create/order', method: 'post' };
...@@ -269,31 +275,52 @@ export default { ...@@ -269,31 +275,52 @@ export default {
}) })
}, },
getMallList(){ getMallList(){
let opts = { url: '/app/mall/list', method: 'get' }; let opts = { url: '/app/mall/add/purchase', method: 'get' };
this.http.httpTokenRequest(opts, {classification: "1"}).then(res => { this.http.httpTokenRequest(opts, {}).then(res => {
if (res.data.code == 200) { if (res.data.code == 200) {
this.mallList = res.data.data.rows this.mallList = res.data.data
this.mallList.forEach(element=>{
element.selectNum = 0
})
} }
}) })
}, },
selectMall(id){ selectMoney(value){
console.log(id) this.mallMoney = value
let exist = false },
this.selectMallList.forEach(element=>{ selectMall(num){
if(element == id ){ //当添加数量且数量为1就加总共商品数量
exist = true this.quantityChange = (num.value == 0 || num.value == 1)
} },
}) plusMall(vo){
if(!exist){ if(!this.mallSelectMap[vo.id] || this.mallSelectMap[vo.id] == 0){
this.selectMallList.push(id) this.countNum = this.countNum + 1
} this.mallSelectMap[vo.id] = 1
} }else{
this.mallSelectMap[vo.id] += 1
}
this.countMoney += vo.currentPrice
console.log(this.mallSelectMap)
},
minusMall(vo){
if(this.mallSelectMap[vo.id] && this.mallSelectMap[vo.id] > 0){
if(this.mallSelectMap[vo.id] == 1){
this.countNum -= 1
}
this.mallSelectMap[vo.id] -= 1
this.countMoney -= vo.currentPrice
}
},
}, },
onShow() { onShow() {
this.getAddressList() this.getAddressList()
this.getMoveCode() this.getMoveCode()
this.getMallList() this.getMallList()
}, },
onLoad(option) {
this.carNo = option.carNo
},
}; };
</script> </script>
...@@ -614,33 +641,33 @@ export default { ...@@ -614,33 +641,33 @@ export default {
} }
} }
} }
.minus { .minus {
width: 22px; width: 22px;
height: 22px; height: 22px;
border-width: 1px; border-width: 1px;
border-color: #E6E6E6; border-color: #E6E6E6;
border-top-left-radius: 100px; border-top-left-radius: 100px;
border-top-right-radius: 100px; border-top-right-radius: 100px;
border-bottom-left-radius: 100px; border-bottom-left-radius: 100px;
border-bottom-right-radius: 100px; border-bottom-right-radius: 100px;
@include flex; @include flex;
justify-content: center; justify-content: center;
align-items: center; align-items: center;
} }
.input { .input {
padding: 0 10px; padding: 0 10px;
} }
.plus { .plus {
width: 22px; width: 22px;
height: 22px; height: 22px;
background-color: #FF0000; background-color: #FF0000;
border-radius: 50%; border-radius: 50%;
/* #ifndef APP-NVUE */ /* #ifndef APP-NVUE */
display: flex; display: flex;
/* #endif */ /* #endif */
justify-content: center; justify-content: center;
align-items: center; align-items: center;
} }
</style> </style>
...@@ -128,9 +128,9 @@ export default { ...@@ -128,9 +128,9 @@ export default {
} }
}) })
} }
uni.navigateTo({ uni.navigateTo({
url: '/pagesA/pages/index/getCarCode' url: '/pagesA/pages/index/getCarCode?carNo=' + this.model1.carInfo.carNo
}); });
}).catch(errors => { }).catch(errors => {
uni.$u.toast('校验失败') uni.$u.toast('校验失败')
}) })
......
...@@ -9,7 +9,6 @@ ...@@ -9,7 +9,6 @@
<u-search placeholder="请输入车牌号" :showAction='false' bgColor='#ffffff' v-model="keyword" @change="getMyMoveCodeList"></u-search> <u-search placeholder="请输入车牌号" :showAction='false' bgColor='#ffffff' v-model="keyword" @change="getMyMoveCodeList"></u-search>
</div> </div>
<div class="my__list"> <div class="my__list">
<scroll-list ref="list" :option="option" @load="load">
<div class="list__item" v-for="(vo,inx) in items" :key="inx"> <div class="list__item" v-for="(vo,inx) in items" :key="inx">
<div class="item__top"> <div class="item__top">
<div class="top__img"> <div class="top__img">
...@@ -31,12 +30,11 @@ ...@@ -31,12 +30,11 @@
<span @click="openUnbindModal(vo.id)">解除绑定</span> <span @click="openUnbindModal(vo.id)">解除绑定</span>
<span @click="goView(vo.id)">查看详情</span> <span @click="goView(vo.id)">查看详情</span>
</div> </div>
<div> <div>
<u-modal :show="unbindShow" :title="unbindTitle" :content='unbindContent' <u-modal :show="unbindShow" :title="unbindTitle" :content='unbindContent'
@confirm="unbind" @cancel="cancelModal" showCancelButton="true"></u-modal> @confirm="unbind" @cancel="cancelModal" showCancelButton="true"></u-modal>
</div> </div>
</div> </div>
</scroll-list>
</div> </div>
</div> </div>
</view> </view>
......
...@@ -146,12 +146,11 @@ export default { ...@@ -146,12 +146,11 @@ export default {
flex-wrap: wrap; flex-wrap: wrap;
.one__item { .one__item {
width: 48%; width: 100%;
background: #FFFFFF; background: #FFFFFF;
box-shadow: 0rpx 0rpx 28rpx 1rpx rgba(232, 232, 232, 0.2); box-shadow: 0rpx 0rpx 28rpx 1rpx rgba(232, 232, 232, 0.2);
border-radius: 20rpx; border-radius: 20rpx;
margin-bottom: 30rpx; margin-bottom: 30rpx;
.one__item__img { .one__item__img {
width: 100%; width: 100%;
height: 320rpx; height: 320rpx;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment