anniversaryCelebrate.html 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387
  1. <!DOCTYPE html>
  2. <html lang="zh-CN">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
  6. <title>周年庆活动</title>
  7. <link rel="icon" href="../static/img/favicon2.ico" type="img/x-ico">
  8. <link rel="stylesheet" href="../static/js/vender/toastr/toastr.min.css">
  9. <link rel="stylesheet" href="../static/css/anniversaryCelebrate.css">
  10. <script src="../static/js/vender/jquery-3.4.1.min.js"></script>
  11. <script src="../static/js/vender/toastr/toastr.min.js"></script>
  12. <script src="../static/js/vender/config.js"></script>
  13. </head>
  14. <body>
  15. <div class="container">
  16. <div class="rule-wrap">
  17. <img class="rule" src="../static/img/anniversaryCelebrate/rule.png" />
  18. </div>
  19. <div class="activity-text-wrap">
  20. <img class="activity-text" src="../static/img/anniversaryCelebrate/activity-text.png" />
  21. </div>
  22. <div class="activity-tips-wrap">
  23. <img class="activity-tips" src="../static/img/anniversaryCelebrate/activity-tips.png" />
  24. </div>
  25. <div class="star-wrap">
  26. <img class="star" src="../static/img/anniversaryCelebrate/star.png" />
  27. <img class="out-point out-point1" src="../static/img/anniversaryCelebrate/out-point.png" />
  28. <img class="out-point out-point2" src="../static/img/anniversaryCelebrate/out-point.png" />
  29. <img class="out-point out-point3" src="../static/img/anniversaryCelebrate/out-point.png" />
  30. <img class="out-point out-point4" src="../static/img/anniversaryCelebrate/out-point.png" />
  31. <img class="out-point out-point5" src="../static/img/anniversaryCelebrate/out-point.png" />
  32. <img class="in-point in-point1" src="../static/img/anniversaryCelebrate/in-point.png" />
  33. <img class="in-point in-point2" src="../static/img/anniversaryCelebrate/in-point.png" />
  34. <img class="in-point in-point3" src="../static/img/anniversaryCelebrate/in-point.png" />
  35. <img class="in-point in-point4" src="../static/img/anniversaryCelebrate/in-point.png" />
  36. <img class="in-point in-point5" src="../static/img/anniversaryCelebrate/in-point.png" />
  37. </div>
  38. <div class="station-wrap">
  39. <img class="station" src="../static/img/anniversaryCelebrate/station.png" />
  40. <div class="station-text-wrap">
  41. <div class="once-text">购买/续费星曜月卡,获得 1次 点亮资格</div>
  42. <div class="ten-text">购买/续费星曜年卡,获得 10次 点亮资格</div>
  43. </div>
  44. <div class="btn-list">
  45. <img class="once-btn btn" src="../static/img/anniversaryCelebrate/once.png" />
  46. <img class="five-btn btn" src="../static/img/anniversaryCelebrate/fifce.png" />
  47. </div>
  48. </div>
  49. <div class="award-get-wrap">
  50. <div class="number-wrap">
  51. <div class="rest-times">剩余次数<span class="rest-number">1000</span>次</div>
  52. <div class="process-wrap">
  53. <div class="small-star-wrap">
  54. <img class="small-star" src="../static/img/anniversaryCelebrate/small-star.png" />
  55. </div>
  56. <div class="line-wrap">
  57. <img class="icon icon1" src="../static/img/anniversaryCelebrate/icon1.png" />
  58. <img class="icon icon2" src="../static/img/anniversaryCelebrate/icon3.png" />
  59. </div>
  60. </div>
  61. </div>
  62. <img class="get-times" src="../static/img/anniversaryCelebrate/get-times.png" />
  63. </div>
  64. <div class="no-join-activity">激活码、优惠券、星币购买的订单不参与本次活动</div>
  65. <div class="light-record-wrap">
  66. <div class="record-title-wrap">标题</div>
  67. <div class="record-main-wrap">
  68. <div class="change-wrap">
  69. <div class="get-award-wrap">
  70. <img class="award-img" src="../static/img/anniversaryCelebrate/left-bg.png" />
  71. <img class="get-award-img" src="../static/img/anniversaryCelebrate/get-award-success-show.png" />
  72. <div class="get-award-text">领取</div>
  73. </div>
  74. <div class="get-award-wrap">
  75. <img class="award-img right-bg" src="../static/img/anniversaryCelebrate/right-bg.png" />
  76. <img class="get-award-img" src="../static/img/anniversaryCelebrate/get-award-success-hidden.png" />
  77. <div class="get-award-text used-text">已使用</div>
  78. </div>
  79. </div>
  80. <div class="light-title-wrap">
  81. <div class="light-title-text award-text">奖品</div>
  82. <div class="light-title-text">时间</div>
  83. <div class="light-title-text active-text">操作</div>
  84. </div>
  85. <div class="light-content-container">
  86. <div class="light-content-list">
  87. </div>
  88. <div class="all-light">已全部点亮1次</div>
  89. </div>
  90. </div>
  91. <div class="activity-intrduction-wrap">
  92. <div>活动时间:2022年6月10日-2022年6月19日</div>
  93. <div>活动参与套餐:星曜套餐月卡年卡(自动续费除外)</div>
  94. </div>
  95. <div class="law-statement">请阅读相关《法律声明》文件</div>
  96. </div>
  97. </div>
  98. <script>
  99. toastr.options.positionClass = 'toast-center-center';
  100. toastr.options.timeOut = '1500';
  101. </script>
  102. <script type="text/javascript" src="https://res.wx.qq.com/open/js/jweixin-1.3.2.js"></script>
  103. <script type="text/javascript">
  104. var baseUrl = 'http://192.168.31.198'
  105. let timer,flag = true;
  106. var url = window.location.href;
  107. url = url.split('/')
  108. var loc = window.location.search,
  109. n1 = loc.length,//地址的总长度
  110. n2 = loc.indexOf("="),//取得=号的位置
  111. id = loc.substr(n2 + 1, n1 - n2),//从=号后面的内容
  112. u = navigator.userAgent,
  113. ua = navigator.userAgent.toLowerCase(),
  114. isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/),
  115. isMiniprogram = false,
  116. pages = 1,
  117. isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; //android终端
  118. // 初始化数据
  119. init();
  120. function init(type) {
  121. $.ajax({
  122. url: baseUrl + '/api/user/v1/anniversary/getAnniversary',
  123. type: 'get',
  124. headers: {
  125. 'Authorization': id //id
  126. },
  127. contentType: "application/json",
  128. dataType: 'json',
  129. cache: false,
  130. success: function (res) {
  131. console.log(res)
  132. if(res.status === 0){
  133. }else{
  134. stopManyClick(() =>{
  135. toastr.error(res.msg)
  136. })
  137. }
  138. },
  139. })
  140. }
  141. getAward();/v1/anniversary/luckDraw
  142. //点击抽奖
  143. $('.once')[0].addEventListener('click',() => {
  144. if(!animationFlag) return;
  145. operate('sf_2022_h5_抽奖1次');
  146. if(activityState === 0){
  147. stopManyClick(() =>{
  148. toastr.error('该活动暂未开启,请稍安勿躁');
  149. })
  150. }else if(activityState === 2 && luckDraw === 0){
  151. stopManyClick(() =>{
  152. toastr.error('活动已结束,期待下次的见面');
  153. })
  154. }else{
  155. handleAward(1)
  156. }
  157. },false);
  158. $('.five-times')[0].addEventListener('click',() => {
  159. if(!animationFlag) return;
  160. operate('sf_2022_h5_抽奖5次');
  161. if(activityState === 0){
  162. stopManyClick(() =>{
  163. toastr.error('该活动暂未开启,请稍安勿躁');
  164. })
  165. }else if(activityState === 2 && luckDraw === 0){
  166. stopManyClick(() =>{
  167. toastr.error('活动已结束,期待下次的见面');
  168. })
  169. }else{
  170. handleAward(5)
  171. }
  172. },false);
  173. //点击再抽
  174. $('.left-btn')[0].addEventListener('click',() => {
  175. if(!animationFlag) return;
  176. let val = $('.report-times').eq(0).text();
  177. let pams = `sf_2022_h5_抽奖${val}次`;
  178. operate(pams);
  179. handleAward(val,'report')
  180. },false);
  181. function handleAward(times,type) {
  182. animationFlag = false;
  183. if(surplus === 0 || (times == 5 && surplus < 5)){
  184. $('.have-times-wrap').eq(0).css('display', 'none');
  185. $('.no-times-wrap').eq(0).css('display', 'block');
  186. $('.award-result-dialog').animate({top: '1.86rem'},"fast");
  187. $('.award-result-mask').show();
  188. document.documentElement.style.overflow='hidden';
  189. return
  190. }
  191. $.ajax({
  192. url: baseUrl + '/api/user/v1/activity/obtainRewards',
  193. type: 'post',
  194. headers: {
  195. 'Authorization': id //id
  196. },
  197. data:JSON.stringify({
  198. frequency: times
  199. }),
  200. contentType: "application/json",
  201. dataType: 'json',
  202. cache: false,
  203. success: function (res) {
  204. if(res.status === 0){
  205. $('.have-times-wrap').eq(0).css('display', 'block');
  206. $('.no-times-wrap').eq(0).css('display', 'none');
  207. if(type !== 'report'){
  208. $('.award-result-dialog').animate({top: '1.86rem'},"fast");
  209. $('.award-result-mask').show();
  210. document.documentElement.style.overflow='hidden';
  211. }
  212. $('.award-result-wrap').eq(0).text('');
  213. let str = '',
  214. cardObj = {
  215. '天': 'day',
  216. '周': 'week',
  217. '月': 'mouth',
  218. '季': 'season',
  219. '年': 'year'
  220. },
  221. imgNumber = 0,
  222. list = res.data.list;
  223. if(list.length === 1){
  224. $('.award-result-wrap')[0].className = 'card-wrap award-result-wrap one-result';
  225. str = `<div class="card-item">
  226. <img class="one-card" src="../static/img/springFestivalActivity/${cardObj[list[0].duration]}.png" />
  227. <div class="card-text">星曜${list[0].duration}卡</div>
  228. </div> `
  229. setTimeout(() => {
  230. animationFlag = true;
  231. },1000);
  232. }else{
  233. $('.award-result-wrap')[0].className = 'card-wrap award-result-wrap many-card-wrap'
  234. for (let i = 0; i < list.length; i++) {
  235. str += `<div class="card-item many-card-item">
  236. <img class="card many-card" src="../static/img/springFestivalActivity/${cardObj[list[i].duration]}.png" />
  237. <div class="card-text">星曜${list[i].duration}卡</div>
  238. </div>`
  239. }
  240. var imgTimer2 = setInterval(() => {
  241. $('.many-card-item').eq(imgNumber).css('display', 'block');
  242. if(imgNumber >= 4){
  243. clearInterval(imgTimer2);
  244. animationFlag = true;
  245. }
  246. // <img class="light" src="../static/img/springFestivalActivity/light.gif?time=${new Date().getTime()}" />
  247. // <img class="many-light" src="../static/img/springFestivalActivity/light.gif?time=${new Date().getTime()}" />
  248. // $('.many-light')[imgNumber].src = `../static/img/springFestivalActivity/light.gif?time=${new Date().getTime()}`;
  249. imgNumber++;
  250. },400)
  251. }
  252. $('.report-times').eq(0).text(times);
  253. if(parseInt(notReceive) > 0){
  254. $('.join-result-tip').eq(0).css('opacity', '0');
  255. $('.many-card-wrap').eq(0).css('marginTop', '0');
  256. }
  257. let text = parseInt(notReceive) > 0?'确定':'查看';
  258. $('.look-btn').eq(0).text(text);
  259. $('.award-result-wrap').eq(0).append(str);
  260. init();
  261. getPhoneNumber();
  262. }else{
  263. stopManyClick(() =>{
  264. toastr.error(res.msg)
  265. })
  266. }
  267. },
  268. })
  269. }
  270. //点击抽奖关闭按钮
  271. $('.award-result-close')[0].addEventListener('click',() => {
  272. animationFlag = true;
  273. $('.award-result-dialog').animate({top: '-10.96rem'},"fast");
  274. $('.award-result-mask').hide();
  275. document.documentElement.style.overflow='auto';
  276. },false);
  277. // 点击领取tab切换
  278. $('.get-award-wrap')[0].addEventListener('click',(e) => {
  279. // $('.data-list').eq(0).text('');
  280. // pageNum = 1;
  281. // pages = 0;
  282. // recordFlag = true;
  283. // getAward();
  284. $('.award-img').eq(1).css('display', 'none');
  285. $('.award-img').eq(0).css('display', 'block');
  286. $('.record-main-wrap')[0].className = 'record-main-wrap';
  287. $('.get-award-text')[1].className = 'get-award-text used-text';
  288. $('.get-award-text')[0].className = 'get-award-text';
  289. },false);
  290. $('.get-award-wrap')[1].addEventListener('click',(e) => {
  291. // $('.data-list').eq(0).text('');
  292. // pageNum = 1;
  293. // pages = 0;
  294. // recordFlag = true;
  295. // getAward();
  296. $('.award-img').eq(0).css('display', 'none');
  297. $('.award-img').eq(1).css('display', 'block');
  298. $('.record-main-wrap')[0].className = 'record-main-wrap record-main-active-wrap';
  299. $('.get-award-text')[0].className = 'get-award-text used-text';
  300. $('.get-award-text')[1].className = 'get-award-text';
  301. },false);
  302. //获取抽奖记录
  303. function getAward(){
  304. // $.ajax({
  305. // url: baseUrl + '/api/user/v1/activity/platformGetRewardsH5',
  306. // type: 'post',
  307. // headers: {
  308. // 'Authorization': id //id
  309. // },
  310. // data:JSON.stringify({
  311. // pageNum: pageNum,
  312. // pageSize: 10,
  313. // receive: receive
  314. // }),
  315. // contentType: "application/json",
  316. // dataType: 'json',
  317. // cache: false,
  318. // success: function (res) {
  319. // if(res.status === 0){
  320. recordFlag = true;
  321. let str = '',
  322. // records = res.data.records;
  323. // pages = res.data.pages;
  324. records = [1,2,3,4];
  325. // if(records.length === 0){
  326. // $('.title-row').eq(0).css('display', 'none');
  327. // if(receive == 1 && parseInt(notReceive) > 0){
  328. // str = '<div class="no-award">暂无已分配云手机</div>'
  329. // }else{
  330. // str = '<div class="no-award">没有抽奖记录,我都替你着急</div>'
  331. // }
  332. // }else{
  333. // $('.title-row').eq(0).css('display', 'flex');
  334. // }
  335. for (var i = 0; i < records.length; i++) {
  336. str += `<div class="light-content-wrap">
  337. <div class="light-content-text">获得星曜7天时长</div>
  338. <div class="light-content-time">6月10日 14:25:30</div>
  339. <div class="get-btn btn-active">领取</div>
  340. </div>`
  341. }
  342. $('.light-content-list').eq(0).append(str)
  343. // }else{
  344. // stopManyClick(() =>{
  345. // toastr.error(res.msg)
  346. // })
  347. // }
  348. // },
  349. // })
  350. }
  351. //点击领取按钮
  352. $('.light-content-list')[0].addEventListener('click',(e) => {
  353. if(e.target.className === 'light-content-list'){
  354. return
  355. }
  356. receive = e.target.dataset.index;
  357. if(receive == 1){
  358. $('.award-change-btn')[0].className = 'award-change-btn'
  359. }else{
  360. $('.award-change-btn')[1].className = 'award-change-btn'
  361. }
  362. $('.data-list').eq(0).text('');
  363. pageNum = 1;
  364. pages = 0;
  365. recordFlag = true;
  366. getAward();
  367. $('.award-change-btn')[receive].className = 'award-change-btn active'
  368. },false);
  369. //防止提示一秒内重复显示
  370. function stopManyClick(fn) {
  371. if (flag) {
  372. fn();
  373. }
  374. flag = false;
  375. if(timer){clearTimeout(timer);}
  376. timer = setTimeout(() => {flag = true}, 1500);
  377. }
  378. </script>
  379. </body>
  380. </html>