陶杰
2024-09-11 d14c8fe408eb087dadc1106d2b180f61794b6cb8
pages/home/home.vue
@@ -197,160 +197,171 @@
            this.$refs.home_top_flow.fun_GetMore()
         }
      },
      onPullDownRefresh() {
         // 下拉刷新方法
         this.init()
      },
      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: {
         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
            // //首页优惠券
            // 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()
            //       }
            //    }
            // })
         },
         clickBanner(item) {
            if (item.id) {
               uni.navigateTo({