mirror of
https://gitee.com/niucloud-team/javashop.git
synced 2026-05-12 03:23:39 +00:00
优化 * 平台端 站点端界面改版优化 * 插件支持多选批量升级 * 万能表单 日期组件、时间组件优化 * 万能表单完善语言包 * 微信开放平台管理端优化,增加小程序撤回审核、授权记录 * 插件支持多选批量升级 * 升级框架/插件时,增加是否备份、是否云编译等控制选项 * 操作日志增加清空功能 * 站点端`本地存储`调整为`默认存储`,若无配置,则使用管理端设置的默认存储方式及配置 * 后台提现列表样式优化 * 隐私协议弹框样式优化 * 待付款订单界面优化 * 商品列表 推广支持微信小程序二维码 * 商品分类列表 推广支持微信小程序二维码 * 优惠券列表 推广支持微信小程序二维码 * 重构限时折扣活动,支持添加N个商品,提供扩展性 * 限时折扣增加批量设置减钱、促销价 * 商品搜索页面增加 搜索关键字、排行榜 * 订单退款详情、优惠券领取记录、退款维权详情改为抽屉弹框样式 新增 * 增加升级记录 * 增加备份记录,支持手动备份、恢复等功能 * 增加主题风格,自定义配色功能 * 自定义链接支持扩展,增加万能表单选择 * 自定义页面增加弹窗广告设置 * 平台端增加清理缓存功能 * 增加定时清理计划任务日志数据 * 牛云短信功能 * 会员增加身份证、备注等信息 * 个人资料增加万能表单 * 后台会员列表增加全选所有页/全选当前页,方便批量操作 * 自定义页面增加弹窗广告设置 * 增加定时清理计划任务 * 站点增加初始化操作,用于清空整个站点数据 * 支持第三方云编译服务搭建 * 商品列表,商品分类展示限时折扣标识 * 价格展示逻辑调整,同时参与会员价、限时折扣,优先展示最低价 * 商品榜单列表增加会员价、限时折扣标识 * 商品收藏列表、足迹列表,显示会员价/限时折扣展示 * 同城配送功能新增预约时间设置,支持用户选择具体配送时段,提升配送体验。 * 自定义商品详情 * 增加商品排序设置 * 增加门店自提核销功能 * 优惠券列表增加发劵功能 * 商品列表、商品详情增加副标题展示 * 商品增加视频 * 后台增加`关闭售后`按钮 * 添加/编辑商品,支持选择多个参数模板 * 商品详情左上角返回增加悬浮菜单导航 * 商品品牌支持自定义样式设置 * 商品标签增加复制功能 * 增加商品搜索设置 * 增加商品编码唯一性设置 * 自定义链接增加选择商品、选择商品分类、选择优惠券、选择积分商品 * 满减送列表增加批量关闭、删除功能 * 后台商品列表增加批量操作(商品标签、商品服务、虚拟销量、商品分类、商品品牌、商品海报、是否赠品、配送设置、批量修改库存)
112 lines
3.1 KiB
JavaScript
112 lines
3.1 KiB
JavaScript
import TransformCoordinate from './transformCoordinate.js'
|
|
import useConfigStore from "@/stores/config";
|
|
import useSystemStore from "../../../../stores/system";
|
|
|
|
function openMapByDefault(latitude, longitude, name) {
|
|
uni.openLocation({
|
|
latitude: latitude,
|
|
longitude: longitude,
|
|
name: name,
|
|
fail: (e) => {
|
|
uni.showModal({
|
|
content: '打开地图失败,请稍后重试',
|
|
confirmColor: useConfigStore().themeColor['--primary-color'],
|
|
})
|
|
},
|
|
})
|
|
}
|
|
|
|
function openMapByAndroid(latitude, longitude, name) {
|
|
let url = ''; // 回调地址
|
|
let identity = ''; // 程序名称
|
|
if (plus.runtime.isApplicationExist({
|
|
pname: 'com.baidu.BaiduMap'
|
|
})) { // baidumap
|
|
url = `baidumap://map/marker?location=${latitude},${longitude}&title=${name}&coord_type=gcj02&src=andr.baidu.openAPIdemo`
|
|
identity = 'com.baidu.BaiduMap'
|
|
openURL(url, identity)
|
|
} else if (plus.runtime.isApplicationExist({
|
|
pname: 'com.autonavi.minimap'
|
|
})) { // 高德
|
|
url = `androidamap://viewMap?sourceApplication=appname&poiname=${name}&lat=${latitude}&lon=${longitude}&dev=0`
|
|
identity = 'com.autonavi.minimap'
|
|
openURL(url, identity)
|
|
} else {
|
|
openMapByDefault(latitude, longitude, name)
|
|
}
|
|
}
|
|
|
|
function openMapByIos(latitude, longitude, name) {
|
|
let url = ''; // 回调地址
|
|
let errorCB = ''; // url失败的回调地址
|
|
let identity = ''; // 程序名称
|
|
|
|
if (plus.runtime.isApplicationExist({
|
|
action: 'baidumap://'
|
|
})) { // baidumap
|
|
url =
|
|
`baidumap://map/marker?location=${latitude},${longitude}&title=${name}&content=${name}&src=ios.baidu.openAPIdemo&coord_type=gcj02`;
|
|
openURL(url, identity)
|
|
} else if (plus.runtime.isApplicationExist({
|
|
action: 'iosamap://'
|
|
})) { // 高德
|
|
url = `iosamap://viewMap?sourceApplication=applicationName&poiname=${name}&lat=${latitude}&lon=${longitude}&dev=0`
|
|
openURL(url, identity)
|
|
} else {
|
|
openMapByDefault(latitude, longitude, name)
|
|
}
|
|
}
|
|
|
|
function openURL(url, identity) {
|
|
let newurl = encodeURI(url);
|
|
plus.runtime.openURL(newurl, function(res) {
|
|
uni.showModal({
|
|
content: res.message,
|
|
confirmColor: useConfigStore().themeColor['--primary-color'],
|
|
})
|
|
}, identity);
|
|
}
|
|
|
|
function getCoordByType(longitude, latitude, coord_type) {
|
|
switch (coord_type) {
|
|
case 'gcj02':
|
|
return [longitude, latitude]
|
|
break;
|
|
case 'bd09':
|
|
return TransformCoordinate.bd09togcj02(longitude, latitude)
|
|
break;
|
|
case 'wgs84':
|
|
return TransformCoordinate.wgs84togcj02(longitude, latitude)
|
|
break;
|
|
default:
|
|
return [longitude, latitude]
|
|
break;
|
|
}
|
|
}
|
|
export default {
|
|
/* 打开地图 */
|
|
openMap(latitude, longitude, name, coord_type = 'gcj02') {
|
|
let arr = getCoordByType(longitude, latitude, coord_type)
|
|
// #ifdef APP-PLUS
|
|
const systemStore = useSystemStore()
|
|
switch (systemStore.systemInfo.platform) {
|
|
case 'android':
|
|
// console.log('运行Android上')
|
|
openMapByAndroid(arr[1], arr[0], name)
|
|
break;
|
|
case 'ios':
|
|
// console.log('运行iOS上')
|
|
openMapByIos(arr[1], arr[0], name)
|
|
break;
|
|
default:
|
|
openMapByDefault(arr[1], arr[0], name)
|
|
// console.log('运行在开发者工具上')
|
|
break;
|
|
}
|
|
// #endif
|
|
// #ifndef APP-PLUS
|
|
openMapByDefault(arr[1], arr[0], name)
|
|
// #endif
|
|
}
|
|
}
|