221 lines
5.9 KiB
JavaScript
221 lines
5.9 KiB
JavaScript
var location = require("../../../../mybehaviors/location/location");
|
||
var app = getApp();
|
||
Component({
|
||
behaviors: [location],
|
||
|
||
properties: {
|
||
params: {
|
||
type: null,
|
||
},
|
||
},
|
||
data: {
|
||
stores: [],
|
||
address: "",
|
||
point: {
|
||
lat: "",
|
||
lng: "",
|
||
},
|
||
city: "",
|
||
showMore: false,
|
||
page: 1,
|
||
total_page: 0,
|
||
loading: true,
|
||
language: "",
|
||
}, // 私有数据,可用于模板渲染
|
||
|
||
lifetimes: {
|
||
// 生命周期函数,可以为函数,或一个在methods段中定义的方法名
|
||
attached() {
|
||
let language = wx.getStorageSync("langIndex");
|
||
this.setData({ language: language.en });
|
||
},
|
||
moved() {},
|
||
detached() {},
|
||
},
|
||
|
||
// 生命周期函数,可以为函数,或一个在methods段中定义的方法名
|
||
attached() {}, // 此处attached的声明会被lifetimes字段中的声明覆盖
|
||
ready() {
|
||
this._getLocation(()=> {
|
||
this.getStores();
|
||
});
|
||
},
|
||
|
||
pageLifetimes: {
|
||
// 组件所在页面的生命周期函数
|
||
show() {},
|
||
hide() {},
|
||
resize() {},
|
||
},
|
||
|
||
methods: {
|
||
toGood(e) {
|
||
let id = e.currentTarget.dataset.goods_id;
|
||
wx.navigateTo({
|
||
url: "/packageA/detail_v2/detail_v2?id=" + id,
|
||
});
|
||
},
|
||
getStores() {
|
||
let that = this;
|
||
let urlStr = app.getNetAddresss(
|
||
"plugin.store-cashier.frontend.store.store.get-store-list-to-page"
|
||
);
|
||
let point = app.qqMapTransBMap(
|
||
parseFloat(this.data.point.lng),
|
||
parseFloat(this.data.point.lat)
|
||
);
|
||
urlStr += "&page=" + that.data.page;
|
||
urlStr += "&lng=" + (point.lng ? point.lng : "");
|
||
urlStr += "&lat=" + (point.lat ? point.lat : "");
|
||
urlStr += "&kwd=";
|
||
urlStr += "&city_name=" + this.data.city;
|
||
urlStr += "&pagesize=" + this.data.params.num;
|
||
urlStr += "&showshop=" + this.data.params.showshop;
|
||
app._getNetWork({
|
||
url: urlStr,
|
||
success: function (resdata) {
|
||
var res = resdata.data;
|
||
if (res.result == 1) {
|
||
that.setData({
|
||
showMore: true,
|
||
stores: res.data.data,
|
||
});
|
||
if (res.data.last_page) {
|
||
that.setData({
|
||
total_page: res.data.last_page,
|
||
});
|
||
} else if (res.data.lastPage) {
|
||
that.setData({
|
||
total_page: res.data.lastPage,
|
||
});
|
||
}
|
||
if (that.data.page >= that.data.total_page) {
|
||
that.setData({
|
||
loading: false,
|
||
});
|
||
} else {
|
||
that.setData({
|
||
loading: true,
|
||
});
|
||
}
|
||
}
|
||
},
|
||
fail: function (res) {
|
||
console.log(res.msg);
|
||
},
|
||
});
|
||
},
|
||
toRouter(e) {
|
||
let specify_show = e.currentTarget.dataset.items.specify_show;
|
||
let item = e.currentTarget.dataset.items;
|
||
if (specify_show == 1) {
|
||
wx.navigateTo({
|
||
url: "/packageC/o2o/o2oStore/o2oStore?store_id=" + item.id,
|
||
});
|
||
} else {
|
||
if(item.store_decorate == 1) {
|
||
wx.navigateTo({
|
||
url: "/packageG/o2o/HomeSeller/HomeSeller?store_id=" + item.id,
|
||
});
|
||
}else {
|
||
wx.navigateTo({
|
||
url: "/packageC/o2o/HomeSeller/HomeSeller?store_id=" + item.id,
|
||
});
|
||
}
|
||
}
|
||
},
|
||
//跳转至分类
|
||
toClassify(e) {
|
||
let id = e.currentTarget.dataset.id;
|
||
wx.navigateTo({
|
||
url:
|
||
"/packageC/o2o/o2oCategory/o2oCategory?id=" +
|
||
id +
|
||
"&city=" +
|
||
this.data.city +
|
||
"&point=" +
|
||
JSON.stringify(this.data.point),
|
||
});
|
||
},
|
||
gophone(e) {
|
||
let mobile = e.currentTarget.dataset.mobile;
|
||
wx.makePhoneCall({
|
||
phoneNumber: mobile,
|
||
});
|
||
},
|
||
goToAdress(e) {
|
||
let latitude = e.currentTarget.dataset.items.latitude;
|
||
let longitude = e.currentTarget.dataset.items.longitude;
|
||
let store_name = e.currentTarget.dataset.items.store_name;
|
||
let point = app.BMapTransqqMap(
|
||
parseFloat(longitude),
|
||
parseFloat(latitude)
|
||
);
|
||
wx.openLocation({
|
||
latitude: point.lat,
|
||
longitude: point.lng,
|
||
scale: 18,
|
||
name: store_name,
|
||
});
|
||
},
|
||
getMoreStores() {
|
||
let that = this;
|
||
if (this.data.page == this.data.total_page) {
|
||
that.setData({
|
||
loading: false,
|
||
});
|
||
return;
|
||
}
|
||
if (this.data.page > this.data.total_page) {
|
||
that.setData({
|
||
loading: false,
|
||
});
|
||
return;
|
||
} else {
|
||
that.setData({
|
||
page: this.data.page + 1,
|
||
});
|
||
let urlStr = app.getNetAddresss(
|
||
"plugin.store-cashier.frontend.store.store.get-store-list-to-page"
|
||
);
|
||
let point = app.qqMapTransBMap(
|
||
parseFloat(this.data.point.lng),
|
||
parseFloat(this.data.point.lat)
|
||
);
|
||
urlStr += "&page=" + this.data.page;
|
||
urlStr += "&lng=" + (point.lng ? point.lng : "");
|
||
urlStr += "&lat=" + (point.lat ? point.lat : "");
|
||
urlStr += "&kwd=";
|
||
urlStr += "&city_name=" + this.data.city;
|
||
urlStr += "&pagesize=" + this.data.params.num;
|
||
urlStr += "&showshop=" + this.data.params.showshop;
|
||
app._getNetWork({
|
||
url: urlStr,
|
||
success: function (resdata) {
|
||
var res = resdata.data;
|
||
if (res.result == 1) {
|
||
let stores = that.data.stores;
|
||
that.setData({
|
||
stores: stores.concat(res.data.data),
|
||
});
|
||
if (that.data.page == that.data.total_page) {
|
||
that.setData({
|
||
loading: false,
|
||
});
|
||
}
|
||
} else {
|
||
that.setData({
|
||
page: that.data.page - 1,
|
||
loading: false,
|
||
});
|
||
}
|
||
},
|
||
fail: function (res) {
|
||
console.log(res);
|
||
},
|
||
});
|
||
}
|
||
},
|
||
},
|
||
});
|