From 0c100f6c702db0dd8cf696c595e83fb3fead0232 Mon Sep 17 00:00:00 2001 From: xuxueyang <xuxy@fengyuntec.com> Date: 星期六, 03 八月 2024 14:17:54 +0800 Subject: [PATCH] add 分享 --- sub_pages/customer/trade/list.vue | 102 +++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 79 insertions(+), 23 deletions(-) diff --git a/sub_pages/customer/trade/list.vue b/sub_pages/customer/trade/list.vue index 74f6d23..b65b6ef 100644 --- a/sub_pages/customer/trade/list.vue +++ b/sub_pages/customer/trade/list.vue @@ -35,7 +35,7 @@ <!-- 查询条件 --> <view class="component-filter-container"> <view class="flex1" @click.stop="order_show=true"> - {{ query.columnStr || '排序' }} + 排序{{ query.columnStr&&('-'+query.columnStr) || '' }} <image src="../../../static/common/icon-arrow-down.png" class="icon-arrow-down"></image> </view> <view class="flex1" @click.stop="level_show=true"> @@ -59,7 +59,7 @@ <view class="component-shop-item flex" v-for="(item,index) of list" :key="index"> <view class="img" @click.stop="toDetail(item)"> - <image class="img img100" :src="item.cover"> + <image class="img img100" :class="[!item.stock?'component-stock-zero':'']" :src="item.cover"> </image> <view class="level"> {{item.levelStr||''}} @@ -129,8 +129,8 @@ <view v-for="(item,i) in params" :key="i" class="m-t-20"> <view class="title topic-font" style="font-size: 40rpx;font-weight: 600;">{{ item.name }}</view> <view class="m-t-12 flex value-items"> - <view class="value-item" @click="updateValue(item,each)" :class="[item.value===each?'cur':'']" - v-for="(each, j) in item.values" :key="j"> + <view class="value-item" @click="updateValue(item,each)" + :class="[item.value.indexOf(each)>=0?'cur':'']" v-for="(each, j) in item.values" :key="j"> {{ each || '-' }} </view> </view> @@ -138,12 +138,13 @@ <view class="button-space"></view> <view> <view class="button-green" - style="background-color: #fff;border: 2rpx solid #666; color: #666;width: 200rpx;left: 40rpx;right: unset;" - @click="closeParamPopAndQuery"> - 查询 + style="background-color: #fff;border: 2rpx solid #666; color: #666;min-width: 240rpx;left: 40rpx;right: unset;" + @click="closeParamPop"> + 关闭 </view> - <view class="button-green" style="width: 200rpx;right: 40rpx;left: unset;" @click="closeParamPop">关闭 + <view class="button-green" style="min-width: 240rpx;right: 40rpx;left: unset;" + @click="closeParamPopAndQuery">查询 </view> </view> </view> @@ -183,7 +184,29 @@ [] ] } - }, + }, + // #ifdef PUB_CUSTOMER + onShareAppMessage() { + let that = this; + var name = that.currentInfo.customerDTO&¤tInfo.customerDTO.name || that.currentInfo.supplierDTO&¤tInfo.supplierDTO.name || that.currentInfo.partnerDTO&¤tInfo.partnerDTO.name || '' + var url = + `/sub_pages/customer/trade/list?category=${this.query.category}&zoneId=${this.query.zoneId}&name=${this.query.name}&shareId=${this.currentInfo&&this.currentInfo.id||''}&shareName=${name||''}`; //你的转发页面路径拼接参数 + return { + title: "花满芫-商品列表", + path: url, + } + }, + onShareTimeline() { + let that = this; + var name = that.currentInfo.customerDTO&¤tInfo.customerDTO.name || that.currentInfo.supplierDTO&¤tInfo.supplierDTO.name || that.currentInfo.partnerDTO&¤tInfo.partnerDTO.name || '' + var url = + `/sub_pages/customer/trade/list?category=${this.query.category}&zoneId=${this.query.zoneId}&name=${this.query.name}&shareId=${this.currentInfo&&this.currentInfo.id||''}&shareName=${name||''}`; //你的转发页面路径拼接参数 + return { + title: "花满芫-商品列表", + path: url, + } + }, + // #endif async onLoad(options) { // this.list = [{},{}] console.log('options', options) @@ -224,12 +247,12 @@ if (this.query.category) { await this.getDetail() } + this.refreshShopNum() // await this.getList('post') // this. }, onReachBottom() { - this.page.current += 1 this.getMore('post') }, async onPullDownRefresh() { @@ -237,7 +260,19 @@ await this.getList('post') uni.stopPullDownRefresh() }, + async onShow() { + if (this.sign['shopnum']) { + await this.$store.dispatch('sign_clear', 'shopnum'); + //重新获取商品数目 + //只需要刷新列表的部分信息即可 + this.getList('post') + } + this.refreshShopNum() + }, methods: { + async refreshShopNum() { + this.shoptotal = await this.$store.dispatch('countShopping'); + }, async getDetail() { this.$message.showLoading() //获取到分类的详情信息 @@ -255,8 +290,19 @@ } }, updateValue(item, value) { - item.value = value - this.$set(item, 'value', value) + // item.value = value + // this.$set(item, 'value', value) + if (item.name == '优点' || item.name === '缺点') { + if (item.value.indexOf(value) < 0) { + item.value.push(value) + } else { + item.value.splice(item.value.indexOf(value), 1) + } + } else { + //单选 + item.value = [value] + } + this.$forceUpdate() }, closeParamPop() { @@ -267,10 +313,10 @@ //设置参数 this.query.params = [] for (var param of this.params) { - if (param.value) { + if (param.value && param.value.length > 0) { this.query.params.push({ id: param.id, - value: param.value + value: param.value.join(',') }) } } @@ -279,7 +325,7 @@ async showSelectParams() { //得有分类才有参数 this.$message.showLoading() - const res = await this.$http.request('get', '/api/supplier/flower/params', { + const res = await this.$http.request('get', '/api/customer/flower/params', { params: { categoryId: this.query.category } @@ -288,6 +334,13 @@ if (res.code === 0) { // this.columns_params = res.data || [] this.params = res.data || [] + for (var k of this.params) { + if (!k.value) { + k.value = [] + } else { + k.value = k.value.split(',') || [] + } + } this.$refs.popup_param.open() } @@ -330,15 +383,15 @@ } if (!item.stock) { item.stock = 0 - } - if (!item.shopnum) { - item.shopnum = 0 } - if (item.shopnum + addnum > item.stock) { - this.$message.showToast('库存不足,无法添加') + if (!item.shopnum) { + item.shopnum = 0 + } + if (addnum > 0 & item.shopnum + addnum > item.stock) { + this.$message.showToast('库存不足,无法修改') return } - + if (item.shopnum + addnum >= 0) { } else { @@ -347,7 +400,7 @@ this.$message.showLoading() const { code - } = await http.request('post', '/api/customer/flower/cart/change-num', { + } = await this.$http.request('post', '/api/customer/flower/cart/change-num', { data: { id: item.id, num: addnum @@ -356,8 +409,11 @@ this.$message.hideLoading() if (code === 0) { item.shopnum += addnum + this.$forceUpdate() + + this.refreshShopNum() + } - this.$forceUpdate() }, } } -- Gitblit v1.9.3