var getNode = function(id){ return document.getElementById(id) } var yuyue = getNode("yuyue") // 预约按钮 var share = getNode("share") // 分享按钮 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 address = getNode("address") // 地址 var tel = getNode("tel") // 电话 var upScroll = getNode("upScroll") // 参与人信息 外层盒子 var upScrollO = getNode("upScroll-o") // 参与人信息 盒子1 var upScrollT = getNode("upScroll-t") // 参与人信息 盒子2 var storeId = getQueryString('orgId') || 0 // 门店id var companyId = '' // 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.104:9110/saas/clz/' }else if(baseType == 'dev'){ var reqUrl = 'http://192.168.16.104: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/' } // 隐藏预约弹框 var closeYy = function (){ userPhone.value = '' modal.style.display = 'none' modalZz.style.display = 'none' } window.onload = function(){ if(staticHtmlPath){ // 发布 onLoading() // 加载中 checkActiveValid() }else{ // 预览 getActivityData() // 获取活动信息 } // 校验活动是否还在进行 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{ 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){ const data = res.data if(staticHtmlPath){ // 发布 const 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){ const data = result.data store.innerHTML = data.name || '' let addrCityName = data.addrCityName || '' let addrDistrictName = data.addrDistrictName || '' let addrDetail = data.addrDetail || '' address.innerHTML = addrCityName + addrDistrictName + addrDetail tel.innerHTML = data.managerMobile document.getElementById("tel-link").href = 'tel:' + data.managerMobile companyId = data.companyId joinerList(companyId) // 参与人列表数据 } }, }) }else{ // 运营端发布活动无门店id参数 joinerList() // 参与人列表数据 } 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); } // 打开预约弹框 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; } const 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) } }) } // 分享 share.onclick = function(){ if(storeId){ window.location.href = 'http://static.chelingzhu.com/active/poster.html?id=' + activeId + '&reqUrl=' + reqUrl + '&orgId=' + storeId }else{ window.location.href = 'http://static.chelingzhu.com/active/poster.html?id=' + activeId + '&reqUrl=' + reqUrl } } // 门店活动统计(参与者轮播) function joinerList(companyId){ let 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){ const data = res.data.list let html = '' for(let i = 0; i < data.length; i++){ html += `
  • ${data[i].joinerMobile}

    抢购成功

  • ` } document.getElementById("scroll-con").innerHTML = html // 参与人信息 向上滚动 data.length > 0 ? upDownScroll() : '' } }, }) } // 上下滚动 function upDownScroll(){ var scrollTimer $("#scroll").hover(function(){ clearInterval(scrollTimer) }, function() { scrollTimer = setInterval(function() { scrollContent($("#scroll")) }, 2000) }).trigger("mouseout") } function scrollContent(obj) { var $self = obj.find("ul:first") var lineHeight = $self.find("li:first").height() //获取行高 $self.animate({ "margin-top": -lineHeight + "px" }, 1000, function() { $self.css({ "margin-top": "0px" }).find("li:first").appendTo($self) //appendTo能直接移动元素而不是复制,被appendto的元素位置发生变化 }) } } // 正则获取地址栏参数 function getQueryString(name) { let reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i") let r = window.location.search.substr(1).match(reg) if (r != null) { return unescape(r[2]) } return null }