From e998d551df1c96572838bbf661be938aa79d1be8 Mon Sep 17 00:00:00 2001 From: xuxueyang <xuxy@fengyuntec.com> Date: 星期四, 25 七月 2024 15:01:16 +0800 Subject: [PATCH] fix bug --- sub_pages/customer/shopping/shopping.vue | 178 ++++++++++++++++++++++++++++++---------------------------- 1 files changed, 92 insertions(+), 86 deletions(-) diff --git a/sub_pages/customer/shopping/shopping.vue b/sub_pages/customer/shopping/shopping.vue index 54ca191..96f93dd 100644 --- a/sub_pages/customer/shopping/shopping.vue +++ b/sub_pages/customer/shopping/shopping.vue @@ -1,14 +1,14 @@ <template> <view class="shopping-container"> - <view class="top-title"> 苏州市一价全含,市区内包邮派送到店 + <view class="top-title"><span class="t-red">*</span> 苏州市一价全含,市区内包邮派送到店 </view> <view class="top-desc"> 全程鲜花冷链专线,时效快,损耗小 </view> - <view class="flex"> - <image class="icon-clock m-r-6" src="../../../static/common/icon-call.png"></image> + <view class="flex top-kf"> + <image class="icon-clock m-r-6" src="../../../static/common/icon-kf.png"></image> <view class="name"> - 客服电话 : <span class="topic-gray">{{ tel }}</span> + 15974805814 </view> </view> <view class=""> @@ -54,14 +54,14 @@ <view style="min-height:200rpx"> </view> <view class="bottom-price flex"> - <view> - <radio :checked="checkall" @change="selectAll"></radio> + <view class="m-t-12"> + <radio :checked="checkall" @click="selectAll"></radio> 全选 </view> - <view> - 合计:¥ {{ totalprice }} 元 + <view class="m-t-12 m-l-a m-r-20 text-center"> + 合计:<span class="t-red">¥ {{ totalprice || 0 }}</span> 元 </view> - <view class="button-green-1"> + <view class="button-green-1 m-l-a m-r-0" style="min-width: 240rpx"> 提交订单 </view> </view> @@ -97,8 +97,8 @@ totalprice() { let totalprice = 0 - this.list.forEach(dto => { - dto.flowerList.forEach(item => { + this.list && this.list.forEach(dto => { + dto.flowerList && dto.flowerList.forEach(item => { if (this.ids.indexOf(item.id) >= 0) { totalprice += item.price * item.num } @@ -176,87 +176,91 @@ } } } - } - }, - selectAll() { - if (this.checkall) { - this.ids = [] - this.checkall = false - } else { - list.for(dto => { + }, + + selectAll() { + console.log('selectAll', this.checkall) + if (this.checkall) { + this.ids = [] + this.checkall = false + // this.$forceUpdate() + } else { + this.list.forEach(dto => { + if (this.ids.indexOf(dto.id) < 0) { + this.ids.push(dto.id) + } + dto.flowerList.forEach(item => { + if (this.ids.indexOf(item.id) < 0) { + this.ids.push(item.id) + } + }) + }) + this.checkall = true + } + }, + changeItem(dto, type) { + if (type === 'supplier') { + //全选上 if (this.ids.indexOf(dto.id) < 0) { this.ids.push(dto.id) + dto.flowerList.forEach(item => { + if (this.ids.indexOf(item.id) < 0) { + this.ids.push(item.id) + } + }) + } else { + this.checkall = false + this.ids.splice(this.ids.indexOf(dto.id), 1) + dto.flowerList.forEach(item => { + this.ids.splice(this.ids.indexOf(item.id), 1) + }) } - dto.flowerList.forEach(item => { - if (this.ids.indexOf(item.id) < 0) { - this.ids.push(item.id) - } - }) - }) - } - }, - changeItem(dto, type) { - if (type === 'supplier') { - //全选上 - if (this.ids.indexOf(dto.id) < 0) { - this.ids.push(dto.id) - dto.flowerList.forEach(item => { - if (this.ids.indexOf(item.id) < 0) { - this.ids.push(item.id) - } - }) + } else { - this.checkall = false - this.ids.splice(this.ids.indexOf(dto.id), 1) - dto.flowerList.forEach(item => { - this.ids.splice(this.ids.indexOf(item.id), 1) - }) - } + //更换个人的 + if (this.ids.indexOf(dto.id) < 0) { + this.ids.push(dto.id) + } else { + this.checkall = false - } else { - //更换个人的 - if (this.ids.indexOf(dto.id) < 0) { - this.ids.push(dto.id) - } else { - this.checkall = false - - if (this.ids.indexOf(dto.supplierId) >= 0) { - this.ids.splice(this.ids.indexOf(dto.supplierId), 1) - } - } - - } - }, - async addnum(dto, addnum) { - if (dto.num + addnum >= 0) { - - } else { - return - } - this.$message.showLoading() - const {code} = await http.request('post', '/api/api/customer/flower/cart/change-num', { - data: { - id: dto.id, - num: addnum + if (this.ids.indexOf(dto.supplierId) >= 0) { + this.ids.splice(this.ids.indexOf(dto.supplierId), 1) } } - ) - this.$message.hideLoading() - if (code === 0) { - dto.num += addnum + + } + }, + async addnum(dto, addnum) { + if (dto.num + addnum >= 0) { + + } else { + return + } + this.$message.showLoading() + const {code} = await http.request('post', '/api/api/customer/flower/cart/change-num', { + data: { + id: dto.id, + num: addnum + } + } + ) + this.$message.hideLoading() + if (code === 0) { + dto.num += addnum + } + }, + async init() { + this.$message.showLoading() + await this.$store.dispatch('sign_clear', 'shopping'); + const {code, data} = await this.$http.request('get', '/api/customer/flower/cart/list', {}) + this.$message.hideLoading() + this.list = [] + if (code === 0) { + this.list = data.list || [] + + } } }, - async init() { - this.$message.showLoading() - await this.$store.dispatch('sign_clear', 'shopping'); - const {code, data} = await this.$http.request('get', '/api/customer/flower/cart/list', {}) - this.$message.hideLoading() - this.list = [] - if (code === 0) { - this.list = data.list || [] - - } - } } } </script> @@ -268,6 +272,7 @@ .bottom-price { position: fixed; + background-color: #ffffff; left: 0rpx; padding: 20rpx; right: 0rpx; @@ -323,15 +328,15 @@ } .top-title { - font-size: 28rpx; + font-size: 32rpx; color: #000000; line-height: 40rpx; } .top-desc { - font-size: 24rpx; + font-size: 28rpx; color: #666666; - line-height: 34rpx; + line-height: 40rpx; } .top-kf { @@ -339,6 +344,7 @@ border-radius: 8rpx; font-weight: 400; font-size: 24rpx; + margin-top: 10rpx; color: #20613D; line-height: 52rpx; height: 52rpx; -- Gitblit v1.9.3