var getNode = function(id) { return document.getElementById(id) } var yuyue = getNode("yuyue") // 预约按钮 var modal = getNode("zy-h5-modal") // 预约弹框 var modalZz = getNode("zy-h5-fix-z") // 弹框遮罩层 var submitModal = getNode("submitModal") // 提交预约 var canselModal = getNode("canselModal") // 取消预约 var userPhone = getNode("userPhone") // 预约手机号 var joinerNum = getNode("joinerNum") // 参与人数 var store = getNode("store") // 门店 var storeId = getQueryString('orgId') || 0 // 门店id var companyId = '' var storeList = [] // test, 测试 local、dev:本地开发环境 pre :预发布 pro:生产 if (baseType == 'test') { var reqUrl = 'http://192.168.16.100:9110/saas/clz/' } else if (baseType == 'local') { var reqUrl = 'http://192.168.16.102:9110/saas/clz/' } else if (baseType == 'dev') { var reqUrl = 'http://192.168.16.102:9110/saas/clz/' } else if (baseType == 'pre') { var reqUrl = 'http://md.test.zyucgj.com/saas/clz/' } else if (baseType == 'pro') { var reqUrl = 'http://md.chelingzhu.com/saas/clz/' } else if (baseType == 'qbx') { var reqUrl = 'https://md.qiubcar.com/saas/clz/' } // 正则获取地址栏参数 function getQueryString(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i") var r = window.location.search.substr(1).match(reg) if (r != null) { return unescape(r[2]) } return null } // 门店活动统计(参与者轮播) function joinerList(companyId) { var obj = JSON.stringify({ activeId: activeId, // 活动id tenantId: storeId, // 门店id companyId: companyId, // 公司id status: 9 // 9是假数据的标识 }) // 获取门店信息 $.ajax({ url: reqUrl + 'cross/active/joinerByActive/1/1000', type: 'post', contentType: 'application/json;charset=UTF-8', // 设置的是请求参数 data: obj, dataType: 'json', success: function(res) { if (res.status == 200) { var data = res.data.list var html = `
手机号
报名状态
` for (var i = 0; i < data.length; i++) { html += `
${data[i].joinerMobile}
已报名
` } document.getElementById("kh-list").innerHTML = html joinerNum.innerHTML = data.length } }, }) } // 隐藏预约弹框 var closeYy = function() { userPhone.value = '' modal.style.display = 'none' modalZz.style.display = 'none' } // 校验活动是否还在进行 function checkActiveValid() { $.ajax({ url: reqUrl + 'zycar-mgr/active/checkActiveValid/' + activeId, type: 'get', header: { contentType: 'application/json;charset=UTF-8' }, // 设置的是请求参数 data: {}, dataType: 'json', success: function(res) { if (res.status == 200) { if (res.data) { getActivityData() // 获取活动信息 } else { closeLoading() // 关闭加载状态 $("#zy-h5-bf-bar").hide() alert('该活动已经结束!') } } } }) } // 获取活动信息 function getActivityData() { // 获取活动信息 (海报和门店二维码) $.ajax({ url: reqUrl + 'active/findActiveAttach/' + activeId, type: 'get', header: { contentType: 'application/json;charset=UTF-8' }, // 设置的是请求参数 data: {}, dataType: 'json', success: function(res) { if (res.status == 200) { var data = res.data if (staticHtmlPath) { // 发布 // var joinerNumVal = parseInt(data.initBuyNum) + parseInt(data.joinerNum) // joinerNum.innerHTML = joinerNumVal $('.zy-h5-store-info').show() } // 根据门店id处理对应页面展示 if (storeId) { // 门店端发布活动会传有门店id参数 // 获取门店信息 $.ajax({ url: reqUrl + 'cross/store/' + storeId, type: 'get', header: { contentType: 'application/json;charset=UTF-8' }, // 设置的是请求参数 data: {}, dataType: 'json', success: function(result) { if (result.status == 200) { var data = result.data companyId = data.companyId joinerList(companyId) // 参与人列表数据 } }, }) } else { // 运营端发布活动无门店id参数 joinerList() // 参与人列表数据 } closeLoading() // 关闭加载状态 } }, }) } // 获取门店列表接口 function getStoreData(lat, lng) { // console.log(lat, lng) var obj = JSON.stringify({ "lat": lat, // "lng": lng // }) $.ajax({ url: reqUrl + 'active/activeStores/' + activeId, type: 'post', contentType: 'application/json;charset=UTF-8', // 设置的是请求参数 data: lat && lng?obj:JSON.stringify({}), dataType: 'json', success: function(res) { console.log(JSON.stringify(res), 'rrrrrrr') if (res.status == 200) { renderStoreList(res.data) } }, error: function(err, status, msg) { console.log(err, 'jsapi error') } }) } // 拼接门店列表 function renderStoreList(storeList) { // 适用门店 var storeHtml = '' for (var i = 0; i < storeList.length; i++) { var item = storeList[i] var distanct = '' if (item.distanct) { if (item.distanct.distance < 1000 && item.distanct.distance > 0) { distanct = item.distanct.distance + 'm' } else if (item.distanct.distance >= 1000) { distanct = Number(item.distanct.distance / 1000).toFixed(2) + 'km' } } storeHtml = storeHtml + '
' + '
' + '' + item.storeName + '' + '
' + '
' + '
' + '门店电话:' + '' + '' + item.managerMobile + '' + '' + '' + '' + '
' + distanct + '' + '
' + '
' + '
' + '门店地址:' + '
' + '' + item.addrDetail + '' + '
' + '
' + '
' + '
' } $(".store-info-card").html(storeHtml) $(".store-info-card").find(".address,.distanct").on("click", function() { var id = $(this).attr("data-id") var row = storeList.find(function(item) { return item.id == id }) if (row) { wx.openLocation({ latitude: parseFloat(row.lat), // 纬度,浮点数,范围为90 ~ -90 longitude: parseFloat(row.lng), // 经度,浮点数,范围为180 ~ -180。 name: row.storeName, // 位置名 address: row.addrDetail, // 地址详情说明 scale: 18, // 地图缩放级别,整形值,范围从1~28。默认为最大 infoUrl: '', // 在查看位置界面底部显示的超链接,可点击跳转 success(res) { console.log(1111); console.log(res); }, fail(err) { console.log(222); console.log(err); }, }); } }) } function storeRender(storeList) { // 适用门店 var storeHtml = '' for (var i = 0; i < storeList.length; i++) { var item = storeList[i] storeHtml = storeHtml + '
' + '
' + '' + item.storeName + '' + '
' + '
' + '
' + '门店电话:' + '' + '' + '' + item.managerMobile + '' + '' + '' + '' + '
' + '
' + '门店地址:' + '
' + '' + item.addrDetail + '' + '' + '
' + '
' + '
' + '
' } $(".store-info-card").html(storeHtml) } // 关闭加载状态 function closeLoading() { if (staticHtmlPath) { // 发布 // 关闭加载状态 document.getElementById('foo').style.display = 'none' modalZz.style.display = 'none' // 不是微信端打开的页面 if (!browser.versions.weixin) { document.querySelector('.zy-h5-bf-bar').style.display = 'none' document.querySelector('.zy-h5-fx-bar').style.display = 'none' } else { document.querySelector('.zy-h5-bf-bar').style.display = 'flex' document.querySelector('.zy-h5-fx-bar').style.display = 'block' } } } // 加载中 function onLoading() { // 隐藏参与和分享按钮 document.querySelector('.zy-h5-bf-bar').style.display = 'none' document.querySelector('.zy-h5-fx-bar').style.display = 'none' modalZz.style.display = 'block' // 遮罩层 var opts = { lines: 9, // The number of lines to draw length: 0, // The length of each line width: 10, // The line thickness radius: 15, // The radius of the inner circle corners: 1, // Corner roundness (0..1) rotate: 0, // The rotation offset color: '#2979ff', // #rgb or #rrggbb speed: 1, // Rounds per second trail: 60, // Afterglow percentage shadow: false, // Whether to render a shadow hwaccel: false, // Whether to use hardware acceleration className: 'spinner', // The CSS class to assign to the spinner zIndex: 2e9, // The z-index (defaults to 2000000000) top: 'auto', // Top position relative to parent in px left: 'auto' // Left position relative to parent in px }; var target = document.getElementById('foo'); var spinner = new Spinner(opts).spin(target); } window.onload = function() { // 单击查看门店 $("#showStore").click(function(e) { var _this = this e.stopPropagation() // 获取门店列表 console.log(!browser.versions.weixin,'!browser.versions.weixin') if (!browser.versions.weixin){ // 不是微信端打开的页面 getStoreData() } $(".mask").show() $(".store-info-list").animate({ bottom: '0em' }, "slow", function() { $("body").css({ 'height': '100%', 'overflow': 'hidden' }) $(_this).hide() }) $(".store-info-list").scroll(function(e){ window.event? window.event.cancelBubble = true : e.stopPropagation() }) }) // 关闭查看门店 $("#close-store,.mask").click(function(e) { e.stopPropagation() $(".store-info-list").animate({ bottom: '-1000em' }, "slow") $("body").css({ 'height': 'auto', 'overflow': 'auto' }) $("#showStore").show() $(".mask").hide() }) // 查看地址 $(".address").click(function(item) { console.log(item, 'eeeeeeee') e.stopPropagation() wx.openLocation({ latitude: item.lat, // 纬度,浮点数,范围为90 ~ -90 longitude: item.lng, // 经度,浮点数,范围为180 ~ -180。 name: item.name, // 位置名 address: item.addrDetail, // 地址详情说明 scale: 26, // 地图缩放级别,整形值,范围从1~28。默认为最大 infoUrl: '' // 在查看位置界面底部显示的超链接,可点击跳转 }); }) // 分享初始化 setTimeout(function() { shareCls.getWxCofing(reqUrl) }, 500) if (staticHtmlPath) { // 发布 onLoading() // 加载中 checkActiveValid() } else { // 预览 getActivityData() // 获取活动信息 } // 打开预约弹框 yuyue.onclick = function() { modal.style.display = 'block' modalZz.style.display = 'block' } // 关闭预约弹框 canselModal.onclick = function() { closeYy() } // 提交预约 submitModal.onclick = function() { // 提交代码到后台 var mobile = userPhone.value if (mobile == '') { alert("请输入手机号码"); return false; } if (!(/^1(3|4|5|6|7|8|9)\d{9}$/.test(mobile))) { alert("手机号码错误,请重填"); return false; } var obj = JSON.stringify({ "joinerMobile": mobile, // 参与手机号 "activeId": activeId, // 活动id "tenantId": storeId, // 门店id "companyId": companyId // 公司id }) // 立即参与 $.ajax({ url: reqUrl + 'active/signUp', type: 'post', contentType: 'application/json;charset=UTF-8', // 设置的是请求参数 data: obj, dataType: 'json', success: function(res) { if (res.status == 200) { closeYy() } alert(res.message) } }) } }