From 8aa82df35da58d84a189df66c71d85f9eed8ad0e Mon Sep 17 00:00:00 2001 From: xuxueyang <xuxy@fengyuntec.com> Date: 星期五, 02 八月 2024 11:35:43 +0800 Subject: [PATCH] 1 --- sub_pages/customer/trade/trade.vue | 156 ++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 110 insertions(+), 46 deletions(-) diff --git a/sub_pages/customer/trade/trade.vue b/sub_pages/customer/trade/trade.vue index c232d78..61d8823 100644 --- a/sub_pages/customer/trade/trade.vue +++ b/sub_pages/customer/trade/trade.vue @@ -1,15 +1,15 @@ <template> - <view class="container-trade" style="min-height: calc(100vh - 20rpx );"> - <view class="search-container m-t-12 flex" v-if="!(!list||list.length==0)&&true&&!hidefooter"> + <view class="container-trade" :style="{'min-height':hidefooter?'':'calc(100vh - 20rpx)'}"> + <view class="search-container m-t-12 flex" v-if="!hidefooter"> <view class="flex1 input"> - <u-input placeholder="请输入分类名称" v-model="query.name"> + <u-input placeholder="请输入分类名称" v-model="query.name" clearable> <template slot="suffix"> <uni-icons color="#20613D" type="search" size="24" @tap="buttonSearchFlow"></uni-icons> </template> </u-input> </view> </view> - <view class="canteen-items" style="min-height: calc(100vh - 160rpx);"> + <view class="canteen-items" :style="{'min-height':hidefooter?'':'calc(100vh - 160rpx)'}"> <view v-if="(!list||list.length==0)&&true" style="width: 100%;min-height: 200rpx;"> </view> @@ -17,50 +17,44 @@ <view class="" style="display: flex;flex-wrap: inherit;" v-else> <view class="type-list"> <view v-for="(item,index) of list" @click="changeType(item)" - :class="[query.categoryId==item.id?'current':'']" :key="index" class="p10 flex type-item"> + :class="[query.categoryId===item.id?'current':'']" :key="index" class="p10 flex type-item"> {{item.name || '-'}} </view> </view> <view class="canteen-item-container"> - <view class="component-filter-container" style="padding-top: 12rpx;"> - <view class="flex1" @click="openParamPop"> - 筛选 - </view> - <view class="flex1"> - 颜色<image src="../../../static/common/icon-arrow-down.png" class="icon-arrow-down"></image> - </view> - <view class="flex1"> - 筛选<image src="../../../static/common/icon-arrow-down.png" class="icon-arrow-down"></image> - </view> - </view> - <u-divider></u-divider> + <!-- <view class="component-filter-container" style="padding-top: 12rpx;">--> + <!-- <view class="flex1" @click="openParamPop">--> + <!-- 筛选--> + <!-- </view>--> + <!-- <view class="flex1">--> + <!-- 颜色<image src="../../../static/common/icon-arrow-down.png" class="icon-arrow-down"></image>--> + <!-- </view>--> + <!-- <view class="flex1">--> + <!-- 筛选<image src="../../../static/common/icon-arrow-down.png" class="icon-arrow-down"></image>--> + <!-- </view>--> + <!-- </view>--> + <!-- <u-divider></u-divider>--> <view class="flex"> <view v-for="(item,index) of listFilter" :key="item.id" class="canteen-item list" @click.stop="toDetailList(item)"> <view class="m-r-10"> - <image :src="item.imageUrl" mode="scaleToFill" class="cover" - @click.stop="previewImg(item.imageUrl)"> + <!-- @click.stop="previewImg(item.imageUrl)" --> + <image :src="item.imageUrl" :class="[!item.stock?'':'']" + mode="scaleToFill" class="cover" :lazy-load="true"> </image> </view> <view class="cateen_infos list"> <view class="title">{{item.name}}</view> - <view class="price">¥29.01-30.01</view> + <view class="price">¥{{item.priceLow || 0}}-{{item.priceHigh||0}}</view> + <view class="desc">在售 {{item.stock||'0'}} 扎</view> - <view class="desc">在售14410扎</view> - <!-- <view class="icons flex"> - <uni-icons v-if="item.shopnum&&item.shopnum>=1" type="minus" size="32" - @click="mulnum(item)"></uni-icons> - <view class="curnums" v-if="item.shopnum&&item.shopnum>=1">{{item.shopnum}}</view> - <uni-icons type="plus-filled" size="32" @click="addnum(item)"></uni-icons> - </view> --> </view> - <view style="padding-bottom:100rpx"> - </view> + </view> - + <view style="padding-bottom:100rpx"> + </view> </view> - <footer-msg - :more="page.total>0&&page.total>page.current*page.size"></footer-msg> + <footer-msg v-if="!hidefooter" :more="page.total>0&&page.total>page.current*page.size"></footer-msg> </view> </view> @@ -86,10 +80,10 @@ </view> </view> </view> - <view class="button-space"></view> - <view> - <view class="button-green button-white" @click="closeParamPop">关闭</view> - <view class="button-green" @click="updateParamsAndSearch">查询</view> + <view class="button-space"></view> + <view> + <view class="button-green button-white" @click="closeParamPop">关闭</view> + <view class="button-green" @click="updateParamsAndSearch">查询</view> </view> </view> </uni-popup> @@ -103,6 +97,7 @@ export default { props: { hidefooter: false, + catgoryTree: [], }, data() { return { @@ -128,23 +123,90 @@ uni.stopPullDownRefresh() }) }, - async onLoad() { - + async onLoad(options) { + let selectId = options.categoryId || '' //加载分类 + this.$message.showLoading() this.$http.request('get', '/api/customer/flower/category/tree', {}).then(res => { + this.$message.hideLoading() var data = res.data this.list = data || [] + if (this.list.length > 0) { + if (selectId) { + for (var item of this.list) { + if (item.id == selectId) { + this.query.categoryId = item.id || '' + this.currentCategory = item + break + } + } + } else { + this.query.categoryId = this.list[0].id || '' + this.currentCategory = this.list[0] || {} + } + + } + }) + }, + methods: { + maxWeightPrice(item) { + var p = 0 + if (item.weightA && item.weightA > p) { + p = item.weightA + } + if (item.weightB && item.weightB > p) { + p = item.weightB + } + if (item.weightC && item.weightC > p) { + p = item.weightC + } + if (item.weightD && item.weightD > p) { + p = item.weightD + } + if (item.weightE && item.weightE > p) { + p = item.weightE + } + if (item.weightO && item.weightO > p) { + p = item.weightO + } + return p + }, + minWeightPrice(item) { + var p = -1 + if (item.weightA && item.weightA < p) { + p = item.weightA + } + if (item.weightB && item.weightB < p) { + p = item.weightB + } + if (item.weightC && item.weightC < p) { + p = item.weightC + } + if (item.weightD && item.weightD < p) { + p = item.weightD + } + if (item.weightE && item.weightE < p) { + p = item.weightE + } + if (item.weightO && item.weightO < p) { + p = item.weightO + } + if (p < 0) { + p = 0 + } + return p + }, + refInit(catgoryTree) { + this.list = catgoryTree || [] if (this.list.length > 0) { this.query.categoryId = this.list[0].id || '' this.currentCategory = this.list[0] || {} } - }) - }, - methods: { - async updateParamsAndSearch(){ - //todo 设置参数并查询 - await this.refreshList() - this.$refs.popup_param.close() + }, + async updateParamsAndSearch() { + //todo 设置参数并查询 + await this.refreshList() + this.$refs.popup_param.close() }, openParamPop() { //todo 同时设置查询参数为空吧 @@ -287,7 +349,7 @@ width: 164rpx; // width: 690rpx; // max-width: 690rpx; - height: 266rpx; + min-height: 266rpx; background: #FFFFFF; margin-bottom: 44rpx; max-width: 164rpx; @@ -305,6 +367,8 @@ font-size: 28rpx; color: #000000; line-height: 40rpx; + min-height: 80rpx; + text-align: center; } .desc { -- Gitblit v1.9.3