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.
270 lines
6.0 KiB
270 lines
6.0 KiB
1 year ago
|
// import qq from '@/utils/qqmap-wx-jssdk.min.js'
|
||
|
// import QQMapWX from './qqmap-wx-jssdk.min.js';
|
||
|
// import QQMapWX from './qqmap-wx-jssdk.min.js';
|
||
|
const QQMapWX=require('./qqmap-wx-jssdk.min.js')
|
||
|
import * as QQMapwx from '@/utils/qqmap-wx-jssdk.min.js'
|
||
|
var qqmapsdk;
|
||
|
import { imghost,host } from '@/config/host.js'
|
||
|
const api = {
|
||
|
|
||
|
loginModalState: true,
|
||
|
mapLocation:()=>{
|
||
|
|
||
|
return new Promise((relove, reject) => {
|
||
|
|
||
|
wx.authorize({
|
||
|
scope: 'scope.userFuzzyLocation',
|
||
|
success(res) {
|
||
|
if(res.errMsg == 'authorize:ok'){
|
||
|
wx.getFuzzyLocation({
|
||
|
type: 'wgs84',
|
||
|
success(re) {
|
||
|
console.log(re);
|
||
|
uni.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)
|
||
|
}
|
||
|
}
|
||
|
})
|
||
|
}
|
||
|
// console.log('位置名称:' + data.name);
|
||
|
// console.log('详细地址:' + data.address);
|
||
|
// console.log('纬度:' + data.latitude);
|
||
|
// console.log('经度:' + data.longitude);
|
||
|
}
|
||
|
});
|
||
|
}
|
||
|
})
|
||
|
}
|
||
|
},
|
||
|
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)=>{
|
||
|
// console.log(file);
|
||
|
return new Promise((relove, reject) => {
|
||
|
// console.log(file);
|
||
|
uni.showLoading({
|
||
|
title:'上传中'
|
||
|
})
|
||
|
uni.uploadFile({
|
||
|
url: `${host}/other/upload`, //仅为示例,非真实的接口地址
|
||
|
filePath:file,
|
||
|
name: 'file',
|
||
|
success: (uploadFileRes) => {
|
||
|
uni.hideLoading()
|
||
|
relove(JSON.parse(uploadFileRes.data).data)
|
||
|
// console.log(JSON.parse(uploadFileRes.data).data);
|
||
|
}
|
||
|
});
|
||
|
})
|
||
|
},
|
||
|
imgurl:(url)=>{
|
||
|
if(url){
|
||
|
if(url.indexOf('http')==-1){
|
||
|
return 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) => {
|
||
|
uni.showToast({
|
||
|
title: msg,
|
||
|
icon: "none"
|
||
|
})
|
||
|
setTimeout(() => {
|
||
|
relove();
|
||
|
}, 1500)
|
||
|
})
|
||
|
|
||
|
},
|
||
|
/**
|
||
|
* 成功提示
|
||
|
*/
|
||
|
success: (msg) => {
|
||
|
|
||
|
return new Promise((relove, reject) => {
|
||
|
uni.showToast({
|
||
|
title: msg,
|
||
|
icon: "success"
|
||
|
})
|
||
|
setTimeout(() => {
|
||
|
relove();
|
||
|
}, 1500)
|
||
|
})
|
||
|
|
||
|
},
|
||
|
/**
|
||
|
* 确认对话框
|
||
|
* @param {Object} contents
|
||
|
* @param {Object} callback
|
||
|
*/
|
||
|
confirm: (contents) => {
|
||
|
|
||
|
return new Promise((relove, reject) => {
|
||
|
|
||
|
uni.showModal({
|
||
|
title: '提示',
|
||
|
content: contents,
|
||
|
success: function(res) {
|
||
|
if (res.confirm) {
|
||
|
relove();
|
||
|
}
|
||
|
}
|
||
|
});
|
||
|
|
||
|
})
|
||
|
|
||
|
},
|
||
|
payment: (param) => {
|
||
|
|
||
|
return new Promise((relove, reject) => {
|
||
|
uni.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);
|
||
|
// relove(err);
|
||
|
api.error("支付失败");
|
||
|
}
|
||
|
});
|
||
|
|
||
|
})
|
||
|
},
|
||
|
navHeight: () => {
|
||
|
let system,menu,systemBar,navigationBar,navPaddingTop,navHeight,headerPadding;
|
||
|
//获取系统信息
|
||
|
try{
|
||
|
wx.getSystemInfo({
|
||
|
success: res => {
|
||
|
this.system = res
|
||
|
}
|
||
|
})
|
||
|
console.log('res',this.system);
|
||
|
//获取胶囊信息
|
||
|
this.menu = wx.getMenuButtonBoundingClientRect()
|
||
|
this.systemBar = this.system.statusBarHeight //状态栏高度
|
||
|
this.navigationBar = (this.menu.top - this.system.statusBarHeight) * 2 + this.menu.height //胶囊高度
|
||
|
this.navPaddingTop = this.systemBar;
|
||
|
this.navHeight = this.menu.height;
|
||
|
this.headerPadding = (this.menu.top - this.systemBar);
|
||
|
|
||
|
this.systemBarHeight = (this.navPaddingTop+this.navHeight + (this.headerPadding *2))
|
||
|
}catch(e){
|
||
|
//默认高度,刘海屏
|
||
|
this.navPaddingTop = 43;
|
||
|
this.navHeight = 32;
|
||
|
this.headerPadding = 4;
|
||
|
}
|
||
|
return {
|
||
|
navPaddingTop:this.navPaddingTop,
|
||
|
navHeight:this.navHeight,
|
||
|
headerPadding:this.headerPadding,
|
||
|
systemBarHeight:this.systemBarHeight,
|
||
|
windowHeihgt:(this.system.windowHeight - this.systemBarHeight)
|
||
|
};
|
||
|
},
|
||
|
wxSystemInfo: () => {
|
||
|
let system;
|
||
|
//获取系统信息
|
||
|
try{
|
||
|
wx.getSystemInfo({
|
||
|
success: res => {
|
||
|
this.system = res
|
||
|
}
|
||
|
})
|
||
|
}catch(e){
|
||
|
|
||
|
}
|
||
|
return {
|
||
|
system:this.system
|
||
|
};
|
||
|
},
|
||
|
}
|
||
|
export default api;
|