From ed6513d69ed4acd982c3596e986dcfe9f5c66d00 Mon Sep 17 00:00:00 2001
From: xuxueyang <xuxy@fengyuntec.com>
Date: 星期二, 27 八月 2024 13:47:11 +0800
Subject: [PATCH] add 微信发货
---
pages/home/home.vue | 206 ++++++++++++++++++++++++++++++++++++++++-----------
1 files changed, 160 insertions(+), 46 deletions(-)
diff --git a/pages/home/home.vue b/pages/home/home.vue
index 8fa256a..396d4e7 100644
--- a/pages/home/home.vue
+++ b/pages/home/home.vue
@@ -4,20 +4,27 @@
<!-- 顶部,可能 -->
<view class="school" :style="{'padding-top':(StatusBar)+'px'
,height:CustomBar+'rpx','line-height':CustomBar+'rpx' }">
- <picker @change="PickerChangeSchool" :value="areaIndex" :range="schools" range-key="name">
- <view class="picker flex">
- <uni-icons type="location" class="m-r-5" size="18"></uni-icons>
- <view>
- {{ areaIndex>=0&&schools[areaIndex].name ? schools[areaIndex].name : '选择位置' }}
- </view>
+ <!-- <picker @change="PickerChangeSchool" :value="areaIndex" :range="schools" range-key="name">
+ <view class="picker flex">
+ <uni-icons type="location" class="m-r-5" size="18"></uni-icons>
+ <view>
+ {{ areaIndex >= 0 && schools[areaIndex].name ? schools[areaIndex].name : '选择位置' }}
+ </view>
+ </view>
+ </picker> -->
+ <view class="picker flex" @click.stop="goToAddress">
+ <uni-icons type="location" class="m-r-5" size="18"></uni-icons>
+ <view>
+ {{ address&&address.id?address.address: '选择地址' }}
</view>
- </picker>
+ </view>
</view>
- <view class="search-container m-t-12 flex">
+ <view class="search-container m-t-12 flex" @click="goto('/pages/home/components/home-search',false)">
<view class="flex1 input">
- <u-input placeholder="请输入花名" v-model="search_flow">
+ <u-input placeholder="请输入花名或店铺名" disabled v-model="search_flow">
<template slot="suffix">
- <uni-icons color="#20613D" type="search" size="24" @tap="buttonSearchFlow"></uni-icons>
+ <!-- @click="buttonSearchFlow" -->
+ <uni-icons color="#20613D" type="search" size="24"></uni-icons>
</template>
</u-input>
</view>
@@ -30,8 +37,9 @@
v-if="banners&&banners.length>0" :autoplay="true">
<swiper-item v-for="(item, index) in banners" :key="index">
<view class="swiper-item" :class="'swiper-item' + index">
- <image @click="previewImg(item.imageSmall||item.image)" class="home-banner-image"
- mode="aspectFit" :src="item.imageSmall||item.image">
+ <!-- @click="previewImg(item.url||item.image)" -->
+ <image class="home-banner-image" mode="scaleToFill" @click="clickBanner(item)"
+ :src="item.url||item.image">
</image>
</view>
</swiper-item>
@@ -49,7 +57,7 @@
<!-- tip -->
<view class="m-t-12" @click="getNoticeMore">
<uni-notice-bar class="notice-bar" color="#333" background-color="#fff" show-get-more show-icon
- :scrollable="scrollable" :text="currentNotice.title" :key="currentNotice.id" />
+ :scrollable="scrollable" :text="currentNotice.title||'暂无公告'" :key="currentNotice.id" />
<span v-if="!currentNotice||!currentNotice.id"> </span>
</view>
<!-- 当前分类 -->
@@ -57,13 +65,13 @@
<!-- 特别的几个公告图片 -->
<home-banner-imgs></home-banner-imgs>
<!-- 均价情况 -->
- <home-price></home-price>
+ <!-- <home-price></home-price> -->
<!-- 几个专区 -->
<home-zones></home-zones>
<!-- 置顶的花列表 -->
<home-top-flow></home-top-flow>
- <view style="min-height:200rpx">
+ <view style="min-height:140rpx">
</view>
<common-footer flg="0"></common-footer>
@@ -71,6 +79,9 @@
</template>
<script>
+ import {
+ mapState
+ } from 'vuex'
import homePrice from './components/home-price.vue'
import homeBannerImgs from './components/home-banner-imgs.vue'
import homeZones from './components/home-zones.vue'
@@ -78,6 +89,16 @@
import homeCategory from './components/home-category.vue'
export default {
+ computed: {
+ ...mapState({
+ address: state => {
+ return state.defaultaddress || {}
+ },
+ currentInfo: state => {
+ return state.currentInfo || {}
+ },
+ }),
+ },
components: {
homeCategory,
homePrice,
@@ -142,32 +163,39 @@
hide_footer: false,
noticeList: [],
currentNoticeIndex: 0,
- currentNotice: {
-
- }
+ currentNotice: {}
};
},
- // onShareAppMessage() {
- // let that = this;
- // var url =
- // `/pages/home/home?shareId=${this.currentInfo&&this.currentInfo.id||''}&shareName=${this.currentInfo&&this.currentInfo.nickName||''}`; //你的转发页面路径拼接参数
- // return {
- // title: "校购GO小狗狗",
- // path: url,
- // }
- // },
- // onShareTimeline() {
- // let that = this;
- // var url = "/pages/home/home" //你的分享页面路径
- // return {
- // title: '校购GO小狗狗',
- // path: url,
- // query: `shareId=${this.currentInfo&&this.currentInfo.id||''}&shareName=${this.currentInfo&&this.currentInfo.nickName||''}`, //你的参数拼接,注意:不需要加?
- // // imageUrl: 'https://cdn.uviewui.com/uview/swiper/1.jpg' //你分享的封面
- // };
- // },
+ 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,
+ }
+ },
- onLoad() {
+ onLoad(options) {
+ // if(options.partnerUserId){
+ // //需要前往注册了
+ // uni.navigateTo({
+ // url: '/pages/login/supplier-login'
+ // })
+ // }
// console.log('home created')
//这里进行一次初始化即可
// this.$http.request('get', '/api/school/area/list', {
@@ -177,12 +205,53 @@
// this.schools = res.data || []
// }
// })
- //获取banner图
- this.$http.request('get', '/api/ua/banner/list', {
- }).then(res => {
+ // uni.navigateTo({
+ // url: '/sub_pages/customer/trade/detail'
+ // })
+
+ //获取banner图
+ this.$http.request('get', '/api/pub/banner/list', {}).then(res => {
if (res.code == 0) {
- this.banners = res.data.records || []
+ this.banners = []
+
+ var tarr = res.data || []
+ if (tarr.length == 0) {
+ // tarr.push({
+ // url: 'https://hmy-flower.oss-cn-shanghai.aliyuncs.com/62/62ddac6297104e369aba646be704064dbanner@2x.png'
+ // })
+ this.banners = tarr
+ } else {
+ var result = []
+ for (var item of tarr) {
+ // http://106.14.123.210/files/group1/e8/e1c17f7229514e5da211d8d47b09906b.jpeg
+ try {
+ if (item.url) {
+ var t = JSON.parse(item.url)
+ if (Array.isArray(t)) {
+ // item.url = t[0] || ''
+ for (var url of t) {
+ result.push({
+ ...item,
+ url: url || ''
+ })
+ }
+ } else {
+ // item.url = t.url || ''
+ result.push({
+ ...item,
+ url: t.url || ''
+ })
+ }
+ }
+
+ } catch (e) {
+ // console.log('error',e)
+ }
+ }
+ this.banners = result
+ }
+ console.log('this.banners', this.banners)
}
})
@@ -192,18 +261,42 @@
} else {
this.areaIndex = areaIndex
}
+ //如果已经登录,加载一下默认地址
+ let that = this
+ setTimeout(() => {
+ if (that.currentInfo.id && !that.address.id) {
+ that.$http.request('get', '/api/address/default/detail').then(res => {
+ if (res.data) {
+ that.$store.commit('setDefaultAddress', {
+ ...res.data
+ })
+ }
+ })
+ }
-
+ }, 2000)
//公告
- this.$http.request('get', '/api/ua/announcement/list', {
+ var type = ''
+ // #ifdef PUB_CUSTOMER
+ type = 'customer'
+ // #endif
+ // #ifdef PUB_SUPPLIER
+ type = 'supplier'
+ // #endif
+ // #ifdef PUB_PARTNER
+ type = 'partner'
+ // #endif
+
+ this.$http.request('get', '/api/pub/announcement/list/' + type, {
params: {
size: 5,
status: 'A'
}
}).then(res => {
- if (res.code == 0) {
- this.noticeList = (res.data && res.data.records || [])
+ if (res.code === 0) {
+ // (res.data && res.data.records || [])
+ this.noticeList = res.data || []
console.log('this.noticeList', this.noticeList)
if (this.noticeList.length > 0) {
this.currentNotice = this.noticeList[0]
@@ -239,8 +332,29 @@
},
methods: {
+ clickBanner(item) {
+ if (item.id) {
+ uni.navigateTo({
+ url: '/pages/home/components/home-banner-detail?id=' + item.id
+ })
+ } else if (item.url) {
+ this.previewImg(item.url)
+ }
+ },
+ goToAddress() {
+ if (!this.currentInfo.id) {
+ this.$message.showToast('请先前往登录')
+ return
+ }
+ uni.navigateTo({
+ url: '/pages/user/address/address?source=select'
+ })
+ },
buttonSearchFlow() {
console.log('buttonSearchFlow')
+ uni.navigateTo({
+ url: '/sub_pages/customer/trade/list?name=' + this.search_flow
+ })
},
pop(status) {
this.hide_footer = !!status
--
Gitblit v1.9.3