| | |
| | | <span v-if="!currentNotice||!currentNotice.id"> </span>
|
| | | </view>
|
| | | <!-- 当前分类 -->
|
| | | <home-category></home-category>
|
| | | <home-category ref="home_category"></home-category>
|
| | | <!-- 特别的几个公告图片 -->
|
| | | <home-banner-imgs></home-banner-imgs>
|
| | | <home-banner-imgs ref="home_banner"></home-banner-imgs>
|
| | | <!-- 均价情况 -->
|
| | | <!-- <home-price></home-price> -->
|
| | | <!-- 几个专区 -->
|
| | | <home-zones></home-zones>
|
| | | <home-zones ref="home_zeros"></home-zones>
|
| | | <!-- 置顶的花列表 -->
|
| | | <home-top-flow ref="home_top_flow"></home-top-flow>
|
| | |
|
| | |
| | | </view>
|
| | | <common-footer flg="0"></common-footer>
|
| | |
|
| | | <uni-popup ref="coupon_home" type="bottom" border-radius="10px 10px 0 0">底部弹出 Popup 自定义圆角</uni-popup>
|
| | | <uni-popup ref="coupon_home" type="center" border-radius="10px 10px 0 0">
|
| | | <view class="coupon-container" style="width: 690rpx;">
|
| | | <view v-if="dto_home_coupon.imageUrl" class="coupont-item all" style="display: flex; justify-content: center; align-items: center; height: 100vh;">
|
| | | <view @click="getCoupon(dto_home_coupon)"
|
| | | :style="{ |
| | | backgroundImage: `url(${dto_home_coupon.imageUrl})`, |
| | | backgroundSize: 'contain', |
| | | backgroundPosition: 'center', |
| | | backgroundRepeat: 'no-repeat' ,
|
| | | width: '600px', // 设置宽度
|
| | | height: '600px' // 设置高度
|
| | | }">
|
| | | </view>
|
| | | </view>
|
| | | |
| | | <view class="coupont-item all" v-else>
|
| | | <view class="flex container img100">
|
| | | |
| | | <view class="info-price">
|
| | | <view class="price1">
|
| | | {{dto_home_coupon.maxDiscountAmount?(`${dto_home_coupon.maxDiscountAmount}折`):(`¥${dto_home_coupon.couponDiscountValue}`)}}
|
| | | </view>
|
| | | <view class="price2">
|
| | | {{dto_home_coupon.minOrderAmount?(`满¥${dto_home_coupon.minOrderAmount}可用`):'无门槛'}}
|
| | | </view>
|
| | | </view>
|
| | | <view class="info flex1">
|
| | | <view class="title">
|
| | | {{dto_home_coupon.couponName||'-'}}
|
| | | </view>
|
| | | <view class="time" v-if="dto_home_coupon.getEndDate">
|
| | | <!-- 领取后{{dto_home_coupon.usageTimeNum||''}}{{dto_home_coupon.usageTimeTypeName||''}}有效 -->
|
| | | {{dto_home_coupon.getEndDate|| '-'}}前有效
|
| | | </view>
|
| | | <view class="button" @click="getCoupon(dto_home_coupon)">
|
| | | 立即领取
|
| | | </view>
|
| | | </view>
|
| | | </view>
|
| | |
|
| | | <view class="tip">
|
| | | <span class="t-red">*</span>{{dto_home_coupon.couponDescription || '此券每人限领1张。仅限用于花满芫鲜花交易平台鲜切花花款满额使用,不可与其他优惠同享、不可叠加使用'}}
|
| | | </view>
|
| | | </view>
|
| | | </view>
|
| | | </uni-popup>
|
| | |
|
| | |
|
| | | </view>
|
| | | </template>
|
| | |
| | | homeZones,
|
| | | homeTopFlow
|
| | | },
|
| | |
|
| | | onPullDownRefresh() {
|
| | | // 下拉刷新方法
|
| | | this.init()
|
| | | this.$message.showLoading()
|
| | | this.init_children()
|
| | | setTimeout(() => {
|
| | | this.$message.hideLoading()
|
| | | uni.stopPullDownRefresh()
|
| | | }, 2000)
|
| | | },
|
| | | data() {
|
| | | return {
|
| | | search_flow: '',
|
| | |
| | | hide_footer: false,
|
| | | noticeList: [],
|
| | | currentNoticeIndex: 0,
|
| | | currentNotice: {}
|
| | | currentNotice: {},
|
| | | dto_home_coupon: {}
|
| | | };
|
| | | },
|
| | | onShareAppMessage() {
|
| | |
| | | }
|
| | | },
|
| | | onLoad(options) {
|
| | | // if(options.partnerUserId){
|
| | | // //需要前往注册了
|
| | | // uni.navigateTo({
|
| | | // url: '/pages/login/supplier-login'
|
| | | // })
|
| | | // }
|
| | | // console.log('home created')
|
| | | //这里进行一次初始化即可
|
| | | // this.$http.request('get', '/api/school/area/list', {
|
| | |
|
| | | // }).then(res => {
|
| | | // if (res.code == 0) {
|
| | | // this.schools = res.data || []
|
| | | // }
|
| | | // })
|
| | |
|
| | | // 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 = []
|
| | |
|
| | | 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)
|
| | | }
|
| | | })
|
| | |
|
| | | var areaIndex = uni.getStorageSync('areaIndex')
|
| | | if (!areaIndex && areaIndex !== 0) {
|
| | |
|
| | | } 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)
|
| | | //公告
|
| | | 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) {
|
| | | // (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]
|
| | | if (this.currentNotice.title && this.currentNotice.title.length >= 30) {
|
| | | this.scrollable = true
|
| | | } else {
|
| | | this.scrollable = false
|
| | | }
|
| | | let that = this
|
| | | if (this.noticeList.length >= 1) {
|
| | | setInterval(() => {
|
| | | console.log('interval,1')
|
| | | that.currentNoticeIndex += 1
|
| | | that.currentNoticeIndex %= that.noticeList.length
|
| | | that.currentNotice = that.noticeList[that.currentNoticeIndex]
|
| | | that.scrollable = false
|
| | | that.$nextTick(() => {
|
| | | if (that.currentNotice.title && that.currentNotice.title
|
| | | .length >= 30) {
|
| | | that.scrollable = true
|
| | | } else {
|
| | | that.scrollable = false
|
| | | }
|
| | | })
|
| | |
|
| | | }, 8000)
|
| | | }
|
| | |
|
| | | }
|
| | | }
|
| | | })
|
| | |
|
| | | // let tmp = this
|
| | | // //首页优惠券
|
| | | // this.$http.request('get', '/api/v2/coupon/app' + `/home/list`).then(res => {
|
| | | // if (res.code == 0) {
|
| | | // var list = res.data || []
|
| | | // var dto = list.length >= 1 ? list[0] : undefined
|
| | | // if (dto) {
|
| | | // // 显示弹窗图片
|
| | | // tmp.$refs.coupon_home.open()
|
| | | // }
|
| | | // }
|
| | | // })
|
| | | this.init()
|
| | | },
|
| | | methods: {
|
| | | async getCoupon(item) {
|
| | | if (!this.currentInfo.id) {
|
| | | await this.$message.confirm('请先前往登录')
|
| | | this.$storage.removeItem('cache_home_show_coupon')
|
| | | return
|
| | | }
|
| | | this.$message.showLoading()
|
| | | const {
|
| | | code,
|
| | | data
|
| | | } = await this.$http.request('post', '/api/v2/coupon/app/receive', {
|
| | | data: {
|
| | | couponId: item.id,
|
| | | num: 1
|
| | | }
|
| | | })
|
| | | if (code == 0) {
|
| | | this.$refs.coupon_home.close()
|
| | |
|
| | | this.$message.showToast('领取成功')
|
| | | }
|
| | | },
|
| | | init_children() {
|
| | | this.$refs.home_top_flow && this.$refs.home_top_flow.init && this.$refs.home_top_flow.init()
|
| | | this.$refs.home_category && this.$refs.home_category.init && this.$refs.home_category.init()
|
| | | this.$refs.home_banner && this.$refs.home_banner.init && this.$refs.home_banner.init()
|
| | | this.$refs.home_zeros && this.$refs.home_zeros.init && this.$refs.home_zeros.init()
|
| | | },
|
| | | init() {
|
| | | // if(options.partnerUserId){
|
| | | // //需要前往注册了
|
| | | // uni.navigateTo({
|
| | | // url: '/pages/login/supplier-login'
|
| | | // })
|
| | | // }
|
| | | // console.log('home created')
|
| | | //这里进行一次初始化即可
|
| | | // this.$http.request('get', '/api/school/area/list', {
|
| | |
|
| | | // }).then(res => {
|
| | | // if (res.code == 0) {
|
| | | // this.schools = res.data || []
|
| | | // }
|
| | | // })
|
| | |
|
| | | // 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 = []
|
| | |
|
| | | 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)
|
| | | }
|
| | | })
|
| | |
|
| | | var areaIndex = uni.getStorageSync('areaIndex')
|
| | | if (!areaIndex && areaIndex !== 0) {
|
| | |
|
| | | } 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)
|
| | | //公告
|
| | | 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) {
|
| | | // (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]
|
| | | if (this.currentNotice.title && this.currentNotice.title.length >= 30) {
|
| | | this.scrollable = true
|
| | | } else {
|
| | | this.scrollable = false
|
| | | }
|
| | | let that = this
|
| | | if (this.noticeList.length >= 1) {
|
| | | setInterval(() => {
|
| | | console.log('interval,1')
|
| | | that.currentNoticeIndex += 1
|
| | | that.currentNoticeIndex %= that.noticeList.length
|
| | | that.currentNotice = that.noticeList[that.currentNoticeIndex]
|
| | | that.scrollable = false
|
| | | that.$nextTick(() => {
|
| | | if (that.currentNotice.title && that.currentNotice.title
|
| | | .length >= 30) {
|
| | | that.scrollable = true
|
| | | } else {
|
| | | that.scrollable = false
|
| | | }
|
| | | })
|
| | |
|
| | | }, 8000)
|
| | | }
|
| | |
|
| | | }
|
| | | }
|
| | | })
|
| | |
|
| | |
|
| | | let tmp = this
|
| | | //延迟2秒
|
| | | setTimeout(() => {
|
| | | if (tmp.currentInfo.id) {
|
| | | var value = tmp.$storage.getItem('cache_home_show_coupon')
|
| | | if (!value) {
|
| | | //首页优惠券
|
| | | tmp.$storage.setItem('cache_home_show_coupon', '1')
|
| | | var u = '/api/v2/coupon/app/home/alert'
|
| | | // u = '/api/v2/coupon/app/home/list'
|
| | | tmp.$http.request('get', u).then(res => {
|
| | | if (res.code == 0) {
|
| | | // var list = res.data || {}
|
| | | // var dto = list.length >= 1 ? list[0] : undefined
|
| | | var dto = res.data || undefined
|
| | | if (dto) {
|
| | | // 显示弹窗图片
|
| | | tmp.dto_home_coupon = dto
|
| | | tmp.$refs.coupon_home.open()
|
| | | }
|
| | | }
|
| | | })
|
| | | }
|
| | | }
|
| | | }, 1200)
|
| | |
|
| | | },
|
| | |
|
| | | clickBanner(item) {
|
| | | if (item.id) {
|
| | | uni.navigateTo({
|
| | |
| | |
|
| | | <style lang="scss" scoped>
|
| | | @import "./home.scss";
|
| | |
|
| | | /* #ifdef PUB_CUSTOMER */
|
| | | @import "@/sub_pages/customer/coupon/coupon.scss";
|
| | | /* #endif */
|
| | | </style> |