You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
239 lines
6.7 KiB
239 lines
6.7 KiB
"use strict"; |
|
const common_vendor = require("../common/vendor.js"); |
|
require("./qqmap-wx-jssdk.min.js"); |
|
const config_host = require("../config/host.js"); |
|
const QQMapWX = require("./qqmap-wx-jssdk.min.js"); |
|
var qqmapsdk; |
|
const api = { |
|
loginModalState: true, |
|
mapLocation: () => { |
|
return new Promise((relove, reject) => { |
|
common_vendor.wx$1.authorize({ |
|
scope: "scope.userFuzzyLocation", |
|
success(res) { |
|
if (res.errMsg == "authorize:ok") { |
|
common_vendor.wx$1.getFuzzyLocation({ |
|
type: "wgs84", |
|
success(re) { |
|
console.log(re); |
|
common_vendor.index.chooseLocation({ |
|
latitude: re.latitude, |
|
longitude: re.longitude, |
|
success: function(data) { |
|
console.log(data); |
|
let obj = { |
|
latitude: data.latitude, |
|
longitude: data.longitude, |
|
address: data.address |
|
}; |
|
if (data.errMsg == "chooseLocation:ok") { |
|
qqmapsdk = new QQMapWX({ |
|
key: "K65BZ-LULE4-744UV-X4EIA-27RA5-A4FWT" |
|
}); |
|
qqmapsdk.reverseGeocoder({ |
|
location: { |
|
latitude: data.latitude, |
|
longitude: data.longitude |
|
}, |
|
success: function(mapres) { |
|
console.log(mapres); |
|
if (mapres.message == "query ok") { |
|
obj.name = mapres.result.formatted_addresses.recommend; |
|
obj.city = mapres.result.address_component.city; |
|
relove(obj); |
|
} |
|
} |
|
}); |
|
} |
|
} |
|
}); |
|
} |
|
}); |
|
} |
|
}, |
|
fail(err) { |
|
console.log(err); |
|
} |
|
}); |
|
}); |
|
}, |
|
getloction(details) { |
|
return new Promise((relove, reject) => { |
|
qqmapsdk = new QQMapWX({ |
|
key: "K65BZ-LULE4-744UV-X4EIA-27RA5-A4FWT" |
|
}); |
|
qqmapsdk.geocoder({ |
|
//获取表单传入地址 |
|
address: details.activedeta.city + details.activedeta.address, |
|
//地址参数,例:固定地址,address: '北京市海淀区彩和坊路海淀西大街74号' |
|
success: function(res) { |
|
console.log(res); |
|
relove(res.result.location); |
|
}, |
|
fail: function(error) { |
|
console.error(error); |
|
}, |
|
complete: function(res) { |
|
console.log(res); |
|
} |
|
}); |
|
}); |
|
}, |
|
urlToObj: (url) => { |
|
let obj = {}; |
|
let str = url.slice(url.indexOf("?") + 1); |
|
let arr = str.split("&"); |
|
for (let j = arr.length, i = 0; i < j; i++) { |
|
let arr_temp = arr[i].split("="); |
|
obj[arr_temp[0]] = arr_temp[1]; |
|
} |
|
return obj; |
|
}, |
|
upfile: (file) => { |
|
return new Promise((relove, reject) => { |
|
common_vendor.index.showLoading({ |
|
title: "上传中" |
|
}); |
|
common_vendor.index.uploadFile({ |
|
url: `${config_host.host}/other/upload`, |
|
//仅为示例,非真实的接口地址 |
|
filePath: file, |
|
name: "file", |
|
success: (uploadFileRes) => { |
|
common_vendor.index.hideLoading(); |
|
relove(JSON.parse(uploadFileRes.data).data); |
|
} |
|
}); |
|
}); |
|
}, |
|
imgurl: (url) => { |
|
if (url) { |
|
if (url.indexOf("http") == -1) { |
|
return config_host.imghost + url; |
|
} else { |
|
return url; |
|
} |
|
} else { |
|
return ""; |
|
} |
|
}, |
|
imgurl2: (url) => { |
|
if (url) { |
|
if (url.indexOf("https") == -1) { |
|
console.log(url.replace("http", "https")); |
|
return url.replace("http", "https"); |
|
} else { |
|
return url; |
|
} |
|
} else { |
|
return ""; |
|
} |
|
}, |
|
/** |
|
* 失败 |
|
*/ |
|
error: (msg) => { |
|
return new Promise((relove, reject) => { |
|
common_vendor.index.showToast({ |
|
title: msg, |
|
icon: "none" |
|
}); |
|
setTimeout(() => { |
|
relove(); |
|
}, 1500); |
|
}); |
|
}, |
|
/** |
|
* 成功提示 |
|
*/ |
|
success: (msg) => { |
|
return new Promise((relove, reject) => { |
|
common_vendor.index.showToast({ |
|
title: msg, |
|
icon: "success" |
|
}); |
|
setTimeout(() => { |
|
relove(); |
|
}, 1500); |
|
}); |
|
}, |
|
/** |
|
* 确认对话框 |
|
* @param {Object} contents |
|
* @param {Object} callback |
|
*/ |
|
confirm: (contents) => { |
|
return new Promise((relove, reject) => { |
|
common_vendor.index.showModal({ |
|
title: "提示", |
|
content: contents, |
|
success: function(res) { |
|
if (res.confirm) { |
|
relove(); |
|
} |
|
} |
|
}); |
|
}); |
|
}, |
|
payment: (param) => { |
|
return new Promise((relove, reject) => { |
|
common_vendor.index.requestPayment({ |
|
provider: "wxpay", |
|
timeStamp: param.timeStamp, |
|
nonceStr: param.nonceStr, |
|
package: param.package, |
|
signType: param.signType, |
|
paySign: param.paySign, |
|
success: function(res) { |
|
relove(res); |
|
}, |
|
fail: function(err) { |
|
console.log(err); |
|
api.error("支付失败"); |
|
} |
|
}); |
|
}); |
|
}, |
|
navHeight: () => { |
|
try { |
|
common_vendor.wx$1.getSystemInfo({ |
|
success: (res) => { |
|
globalThis.system = res; |
|
} |
|
}); |
|
console.log("res", globalThis.system); |
|
globalThis.menu = common_vendor.wx$1.getMenuButtonBoundingClientRect(); |
|
globalThis.systemBar = globalThis.system.statusBarHeight; |
|
globalThis.navigationBar = (globalThis.menu.top - globalThis.system.statusBarHeight) * 2 + globalThis.menu.height; |
|
globalThis.navPaddingTop = globalThis.systemBar; |
|
globalThis.navHeight = globalThis.menu.height; |
|
globalThis.headerPadding = globalThis.menu.top - globalThis.systemBar; |
|
globalThis.systemBarHeight = globalThis.navPaddingTop + globalThis.navHeight + globalThis.headerPadding * 2; |
|
} catch (e) { |
|
globalThis.navPaddingTop = 43; |
|
globalThis.navHeight = 32; |
|
globalThis.headerPadding = 4; |
|
} |
|
return { |
|
navPaddingTop: globalThis.navPaddingTop, |
|
navHeight: globalThis.navHeight, |
|
headerPadding: globalThis.headerPadding, |
|
systemBarHeight: globalThis.systemBarHeight, |
|
windowHeihgt: globalThis.system.windowHeight - globalThis.systemBarHeight |
|
}; |
|
}, |
|
wxSystemInfo: () => { |
|
try { |
|
common_vendor.wx$1.getSystemInfo({ |
|
success: (res) => { |
|
globalThis.system = res; |
|
} |
|
}); |
|
} catch (e) { |
|
} |
|
return { |
|
system: globalThis.system |
|
}; |
|
} |
|
}; |
|
exports.api = api;
|
|
|