|
|
// pages/shouye/shouye.js
|
|
|
// var searchData =require('../../mapWeather/search/search.js')
|
|
|
// 此处的变量时search功能所需的
|
|
|
var bmap = require('../../utils/bmap-wx.min.js');
|
|
|
var app = getApp();
|
|
|
var wxMarkerData = [];
|
|
|
var searchData = {};
|
|
|
//系统此时的时间-小时
|
|
|
var timestamp = Date.parse(new Date());
|
|
|
var hover = new Date(timestamp).getHours();
|
|
|
Page({
|
|
|
|
|
|
/**
|
|
|
* 页面的初始数据
|
|
|
*/
|
|
|
data: {
|
|
|
// 首页的轮播图
|
|
|
imgUrls: [
|
|
|
"/images/shouye/lunbotu7.jpg",
|
|
|
"/images/shouye/lunbotu6.jpg",
|
|
|
"/images/shouye/lunbotu3.png",
|
|
|
"/images/shouye/lunbotu2.png",
|
|
|
],
|
|
|
indicatorDots: true, //是否显示面板指示点
|
|
|
autoplay: true, //是否自动切换
|
|
|
interval: 3000, //自动切换时间间隔
|
|
|
duration: 1000, //滑动动画时长
|
|
|
inputShowed: false,
|
|
|
inputVal: "",
|
|
|
|
|
|
// 定位的数据
|
|
|
search: {
|
|
|
markers: [],
|
|
|
latitude: '',
|
|
|
longitude: '',
|
|
|
placeData: {
|
|
|
title: ''
|
|
|
}
|
|
|
},
|
|
|
|
|
|
//背景颜色
|
|
|
pageBackgroundColor: 'transparent',
|
|
|
|
|
|
//时间天气数据
|
|
|
weatherData: '',
|
|
|
weather_data: [],
|
|
|
weatherUrl: '',
|
|
|
//电影数据
|
|
|
inThearters: [], //热映
|
|
|
comingSoon: [], //天气
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
/**
|
|
|
* 生命周期函数--监听页面加载
|
|
|
*/
|
|
|
onLoad: function (options) {
|
|
|
|
|
|
// canvas
|
|
|
const ctx = wx.createCanvasContext('myCanvas')
|
|
|
ctx.scale(0.7, 0.7)
|
|
|
ctx.setLineWidth(2)
|
|
|
ctx.moveTo(10, 10)
|
|
|
ctx.lineTo(20, 20)
|
|
|
ctx.lineTo(30, 10)
|
|
|
ctx.setStrokeStyle('#3E97CC')
|
|
|
ctx.stroke()
|
|
|
ctx.draw()
|
|
|
|
|
|
// 以下是页面加载时,加载定位的函数
|
|
|
var that = this;
|
|
|
var BMap = new bmap.BMapWX({
|
|
|
ak: 'zuwiVmIUj822mmW6psamM888QLz8Q5wF'
|
|
|
});
|
|
|
var fail = function (data) {
|
|
|
var place = 'search.placeData.title'
|
|
|
that.setData({
|
|
|
[place]: '所在大学'
|
|
|
})
|
|
|
};
|
|
|
var success = function (data) {
|
|
|
|
|
|
var markers = 'search.markers'
|
|
|
var latitude = 'search.latitude'
|
|
|
var longitude = 'search.longitude'
|
|
|
var place = 'search.placeData.title'
|
|
|
wxMarkerData = data.wxMarkerData;
|
|
|
that.setData({
|
|
|
[place]: '所在大学'
|
|
|
})
|
|
|
that.setData({
|
|
|
[markers]: wxMarkerData
|
|
|
});
|
|
|
|
|
|
that.setData({
|
|
|
[latitude]: wxMarkerData[0].latitude
|
|
|
});
|
|
|
that.setData({
|
|
|
[longitude]: wxMarkerData[0].longitude
|
|
|
});
|
|
|
that.setData({
|
|
|
[place]: wxMarkerData[0].title || '定位'
|
|
|
})
|
|
|
|
|
|
}
|
|
|
BMap.search({
|
|
|
"query": '大学学院',
|
|
|
fail: fail,
|
|
|
success: success,
|
|
|
iconPath: '../../images/map/marker_red.png',
|
|
|
iconTapPath: '../../images/map/marker_red.png'
|
|
|
});
|
|
|
// 页面加载时,设置data数据
|
|
|
this.setData({
|
|
|
msgList: [
|
|
|
{
|
|
|
url: "url", title: "校园头条:湖科星火支教团队再出发,23名志愿者奔赴甘肃乡村!"
|
|
|
},
|
|
|
{
|
|
|
url: "url", title: "校园头条:2018年湖北省普通高校专升本湖北科技学院查分通知"
|
|
|
},
|
|
|
{ url: "url", title: "校园头条:我校成立首支无偿献血宣传志愿者服务队" }]
|
|
|
});
|
|
|
//获取实时时间天气数据
|
|
|
BMap.weather({
|
|
|
fail: function(e){
|
|
|
|
|
|
},
|
|
|
success: function(data) {
|
|
|
var weatherData = data.currentWeather[0];
|
|
|
var weather_data = data.originalData.results[0].weather_data;
|
|
|
weatherData = '城市:' + weatherData.currentCity + '\n' + 'PM2.5:' + weatherData.pm25 + '\n' + '日期:' + weatherData.date + '\n' + '温度:' + weatherData.temperature + '\n' + '天气:' + weatherData.weatherDesc + '\n' + '风力:' + weatherData.wind + '\n';
|
|
|
that.setData({
|
|
|
weatherData: weatherData,
|
|
|
weather_data: weather_data
|
|
|
});
|
|
|
if (hover > 6 && hover < 18) {
|
|
|
that.setData({
|
|
|
weatherUrl: that.data.weather_data[0].dayPictureUrl
|
|
|
})
|
|
|
} else {
|
|
|
that.setData({
|
|
|
weatherUrl: that.data.weather_data[0].nightPictureUrl
|
|
|
})
|
|
|
}
|
|
|
wx.setStorage({
|
|
|
key: 'weatherUrl',
|
|
|
data: that.weatherUrl,
|
|
|
})
|
|
|
wx.setStorage({
|
|
|
key: 'weather_data',
|
|
|
data: weather_data,
|
|
|
})
|
|
|
}
|
|
|
});
|
|
|
//以下是电影数据
|
|
|
// var inTheartersURl = app.globalData.doubanBase + app.globalData.inThearters + '?start=0&count=10';
|
|
|
// var comingSoonURL = app.globalData.doubanBase + app.globalData.comingSoon + '?start=0&count=10';
|
|
|
var inTheartersURl = app.globalData.huanbaoBase + 'indexbook.php';
|
|
|
var comingSoonURL = app.globalData.huanbaoBase + 'indexthing.php'
|
|
|
//调用自定义函数,获取指定对象属性的数据;
|
|
|
this.getMovieListData(inTheartersURl, 'inThearters');
|
|
|
this.getMovieListData(comingSoonURL, 'comingSoon');
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
/**
|
|
|
* 生命周期函数--监听页面初次渲染完成
|
|
|
*/
|
|
|
onReady: function (data) {
|
|
|
|
|
|
},
|
|
|
|
|
|
/**
|
|
|
* 生命周期函数--监听页面显示
|
|
|
*/
|
|
|
onShow: function () {
|
|
|
|
|
|
var that = this;
|
|
|
var schoolPlace = 'search.schoolPlace';
|
|
|
var weatherUrl = that.data.weatherUrl;
|
|
|
var weather_data = that.data.weather_data;
|
|
|
wx.getStorage({
|
|
|
key: 'schoolPlace',
|
|
|
success: function(res) {
|
|
|
that.setData({
|
|
|
[schoolPlace]: res.data
|
|
|
})
|
|
|
},
|
|
|
})
|
|
|
wx.getStorage({
|
|
|
key: 'weatherUrl',
|
|
|
success: function(res) {
|
|
|
that.setData({
|
|
|
weatherUrl: res.data
|
|
|
})
|
|
|
},
|
|
|
})
|
|
|
wx.getStorage({
|
|
|
key: 'weather_data',
|
|
|
success: function(res) {
|
|
|
that.setData({
|
|
|
weather_data: res.data
|
|
|
})
|
|
|
},
|
|
|
})
|
|
|
var inTheartersURl = app.globalData.huanbaoBase + 'indexbook.php';
|
|
|
var comingSoonURL = app.globalData.huanbaoBase + 'indexthing.php'
|
|
|
//调用自定义函数,获取指定对象属性的数据;
|
|
|
this.getMovieListData(inTheartersURl, 'inThearters');
|
|
|
this.getMovieListData(comingSoonURL, 'comingSoon');
|
|
|
},
|
|
|
|
|
|
/**
|
|
|
* 生命周期函数--监听页面隐藏
|
|
|
*/
|
|
|
onHide: function () {
|
|
|
|
|
|
},
|
|
|
|
|
|
/**
|
|
|
* 生命周期函数--监听页面卸载
|
|
|
*/
|
|
|
onUnload: function () {
|
|
|
|
|
|
},
|
|
|
|
|
|
/**
|
|
|
* 页面相关事件处理函数--监听用户下拉动作
|
|
|
*/
|
|
|
onPullDownRefresh: function () {
|
|
|
wx.setNavigationBarTitle({
|
|
|
title: '校园二手交易'
|
|
|
});
|
|
|
wx.showNavigationBarLoading(); //在标题栏中显示加载图标
|
|
|
setTimeout(function () {
|
|
|
wx.stopPullDownRefresh(); //停止加载
|
|
|
wx.hideNavigationBarLoading(); //隐藏加载icon
|
|
|
}, 2000)
|
|
|
},
|
|
|
|
|
|
/**
|
|
|
* 页面上拉触底事件的处理函数
|
|
|
*/
|
|
|
onReachBottom: function () {
|
|
|
|
|
|
},
|
|
|
|
|
|
/**
|
|
|
* 用户点击右上角分享
|
|
|
*/
|
|
|
onShareAppMessage: function () {
|
|
|
|
|
|
},
|
|
|
//位置标记的三个函数
|
|
|
makertap: function (e) {
|
|
|
var that = this;
|
|
|
var id = e.markerId;
|
|
|
that.showSearchInfo(wxMarkerData, id);
|
|
|
that.changeMarkerColor(wxMarkerData, id);
|
|
|
},
|
|
|
showSearchInfo: function (data, i) {
|
|
|
|
|
|
|
|
|
var that = this;
|
|
|
var placeData = 'search.placeData';
|
|
|
|
|
|
that.setData({
|
|
|
[placeData]: {
|
|
|
title: data[i].title + '\n',
|
|
|
address: '地址:' + data[i].address + '\n',
|
|
|
telephone: '电话:' + data[i].telephone
|
|
|
}
|
|
|
});
|
|
|
|
|
|
},
|
|
|
changeMarkerColor: function (data, id) {
|
|
|
var that = this;
|
|
|
var markersTemp = [];
|
|
|
var markers = 'search.markers'
|
|
|
for (var i = 0; i < data.length; i++) {
|
|
|
if (i === id) {
|
|
|
data[i].iconPath = "../../images/map/marker_yellow.png";
|
|
|
} else {
|
|
|
data[i].iconPath = "../../images/map/marker_red.png";
|
|
|
}
|
|
|
markersTemp[i] = data[i];
|
|
|
}
|
|
|
that.setData({
|
|
|
[markers]: markersTemp
|
|
|
});
|
|
|
},
|
|
|
|
|
|
//封装函数getMovieListData
|
|
|
getMovieListData(url, _type) {
|
|
|
var that = this;
|
|
|
//加载资源的内部函数
|
|
|
wx.showToast({
|
|
|
title: '加载中',
|
|
|
icon: 'loading',
|
|
|
duration: 5000
|
|
|
});
|
|
|
wx.request({
|
|
|
url,//url:url,可以简写
|
|
|
type: 'GET',
|
|
|
header: { 'content-type': 'json' },
|
|
|
success:function(res){
|
|
|
console.log(res);
|
|
|
that.setData({ [_type]: res.data.data })
|
|
|
// that.setData({ [_type]: res.data.subjects })
|
|
|
},
|
|
|
fail: err => console.log(err),
|
|
|
//请求完成后,触发函数
|
|
|
complete() {
|
|
|
//请求完成后,隐藏“加载中”
|
|
|
wx.hideToast();
|
|
|
}
|
|
|
})
|
|
|
},
|
|
|
//搜索功能
|
|
|
bindSearchBook() {
|
|
|
wx.navigateTo({
|
|
|
url: '../search-book/search-book',
|
|
|
})
|
|
|
},
|
|
|
|
|
|
//点击“更多”
|
|
|
bindToMore(event) {
|
|
|
var typeId = event.currentTarget.dataset.typeId;
|
|
|
wx.navigateTo({
|
|
|
url: '../sonShouye/movie-more/movie-more?typeId=' + typeId,
|
|
|
})
|
|
|
},
|
|
|
//电影详情
|
|
|
toDetail(e) {
|
|
|
var that = this;
|
|
|
var id = e.currentTarget.dataset.id;
|
|
|
console.log(id);
|
|
|
wx.navigateTo({
|
|
|
url: '../movie-detail/movie-detail?id=' + id,
|
|
|
})
|
|
|
},
|
|
|
toThingsDetail(e) {
|
|
|
var that = this;
|
|
|
var id = e.currentTarget.dataset.id;
|
|
|
console.log(id);
|
|
|
wx.navigateTo({
|
|
|
url: '../thing-detail/thing-detail?id=' + id,
|
|
|
})
|
|
|
}
|
|
|
})
|
|
|
|