From 666bcc20d989be1c7a2acb314594e8e017a611ac Mon Sep 17 00:00:00 2001 From: xuxueyang <xuxy@fengyuntec.com> Date: 星期日, 11 八月 2024 23:18:51 +0800 Subject: [PATCH] update花店的一些问题等 --- sub_pages/customer/trade/trade.vue | 242 +++++++++++++++++++++++++++++++++++------------ 1 files changed, 179 insertions(+), 63 deletions(-) diff --git a/sub_pages/customer/trade/trade.vue b/sub_pages/customer/trade/trade.vue index cf1a60b..e99cd81 100644 --- a/sub_pages/customer/trade/trade.vue +++ b/sub_pages/customer/trade/trade.vue @@ -1,15 +1,25 @@ <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="flex m-r-20"> + <view class="m-r-10" style="line-height: 80rpx;" @click="changeSearchType"> + {{type=='category'?'按分类':'按店铺'}} + </view> + <u-icon name="arrow-down"></u-icon> + + </view> <view class="flex1 input"> - <u-input placeholder="请输入分类名称" v-model="query.name"> + <u-input :placeholder="type==='category'?'请输入分类名称':'请输入店铺名称'" v-model="query.name" clearable + @confirm="buttonSearchFlow" @clear="()=>{ + $nextTick(()=>{buttonSearchFlow()}) + }"> <template slot="suffix"> - <uni-icons color="#20613D" type="search" size="24" @tap="buttonSearchFlow"></uni-icons> + <uni-icons color="#20613D" type="search" size="24" @click="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> @@ -22,45 +32,38 @@ </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" :lazy-load="true" - @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> - <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> @@ -103,6 +106,8 @@ export default { props: { hidefooter: false, + catgoryTree: [], + supplierId: '', }, data() { return { @@ -112,10 +117,36 @@ name: '', categoryId: '', }, - currentCategory: {} + currentCategory: {}, + type: 'category', //supplier + } }, + // #ifdef PUB_CUSTOMER + onShareAppMessage() { + let that = this; + var name = that.currentInfo.customerDTO && that.currentInfo.customerDTO.name || that.currentInfo.supplierDTO && + that.currentInfo.supplierDTO.name || that.currentInfo.partnerDTO && that.currentInfo.partnerDTO.name || '' + var url = + `/pages/home/home?shareId=${this.currentInfo&&this.currentInfo.id||''}&shareName=${name||''}`; //你的转发页面路径拼接参数 + return { + title: "花满芫", + path: url, + } + }, + onShareTimeline() { + let that = this; + var name = that.currentInfo.customerDTO && that.currentInfo.customerDTO.name || that.currentInfo.supplierDTO && + that.currentInfo.supplierDTO.name || that.currentInfo.partnerDTO && that.currentInfo.partnerDTO.name || '' + var url = + `/pages/home/home?shareId=${this.currentInfo&&this.currentInfo.id||''}&shareName=${name||''}`; //你的转发页面路径拼接参数 + return { + title: "花满芫", + path: url, + } + }, + // #endif onPullDownRefresh() { this.$http.request('get', '/api/customer/flower/category/tree', {}).then(res => { var data = res.data @@ -128,22 +159,96 @@ 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.$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) { - this.query.categoryId = this.list[0].id || '' - this.currentCategory = this.list[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: { - async updateParamsAndSearch(){ + changeSearchType() { + if (this.type == 'category') { + this.type = 'supplier' + this.query.name = '' + } else { + this.type = 'category' + this.query.name = '' + } + }, + 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] || {} + } + }, + async updateParamsAndSearch() { //todo 设置参数并查询 await this.refreshList() this.$refs.popup_param.close() @@ -156,30 +261,39 @@ this.$refs.popup_param.close() }, buttonSearchFlow() { - //根据名称查询 - this.$message.showLoading() - this.$http.request('get', '/api/customer/flower/category/tree', { - params: { - name: this.query.name || '' - } - }).then(res => { - var data = res.data - this.list = data || [] - if (this.list.length > 0) { - this.query.categoryId = this.list[0].id || '' - this.currentCategory = this.list[0] || {} - } else { - this.query.categoryId = '' - this.currentCategory = {} - } - }).finally(() => { - this.$message.hideLoading() - }) + + if (this.type == 'category') { + //根据分类名称查询 + this.$message.showLoading() + this.$http.request('get', '/api/customer/flower/category/tree', { + params: { + name: this.query.name || '' + } + }).then(res => { + var data = res.data + this.list = data || [] + if (this.list.length > 0) { + this.query.categoryId = this.list[0].id || '' + this.currentCategory = this.list[0] || {} + } else { + this.query.categoryId = '' + this.currentCategory = {} + } + }).finally(() => { + this.$message.hideLoading() + }) + } else { + uni.navigateTo({ + url: '/sub_pages/customer/trade/list?' + 'supplierName=' + this.query.name + }) + + } }, toDetailList(item) { - //去商品列表页面 + //去商品列表页面 + console.log('toDetailList',this.supplierId) uni.navigateTo({ - url: `/sub_pages/customer/trade/list?categoryId=${item.id}` + url: `/sub_pages/customer/trade/list?categoryId=${item.id}&supplierId=${this.supplierId||''}` }) }, changeType(item) { @@ -289,7 +403,7 @@ width: 164rpx; // width: 690rpx; // max-width: 690rpx; - height: 266rpx; + min-height: 266rpx; background: #FFFFFF; margin-bottom: 44rpx; max-width: 164rpx; @@ -307,6 +421,8 @@ font-size: 28rpx; color: #000000; line-height: 40rpx; + min-height: 80rpx; + text-align: center; } .desc { -- Gitblit v1.9.3