Files
peko-h5/view/peko/activity/explore_abandon/js/index.js
2022-10-22 15:17:05 +08:00

363 lines
12 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// let data = [{ "id": 1, "name": "限定装扮1", "imgUrl": "http://image.doudouyuyin.com/FkpLoQbAO2aGdYPRvyFq-UbaELue?imageslim", "type": 1, "sellingPrice": 100, "originalPrice": 100, "stock": -1, "sold": 18, "remainStock": -1, "allowBuyNum": -1, "userBoughtNum": 3, "remainAllowBuyNum": -1, "beginTime": 1588262400000, "endTime": 1609516799000, "ticketNum": 10 }, { "id": 2, "name": "限定装扮2", "imgUrl": "http://image.doudouyuyin.com/FozMW-UNZNW-wAKkpdn7wprp4rW9?imageslim", "type": 1, "sellingPrice": 100, "originalPrice": 100, "stock": -1, "sold": 27, "remainStock": -1, "allowBuyNum": -1, "userBoughtNum": 0, "remainAllowBuyNum": -1, "beginTime": 1588262400000, "endTime": 1609516799000, "ticketNum": 10 }, { "id": 3, "name": "限定装扮3", "imgUrl": "http://image.doudouyuyin.com/FrMXOdvd4yc8dRi6TK9pH_C0nZ2f?imageslim", "type": 1, "sellingPrice": 1000, "originalPrice": 1000, "stock": -1, "sold": 0, "remainStock": -1, "allowBuyNum": -1, "userBoughtNum": 0, "remainAllowBuyNum": -1, "beginTime": 1588262400000, "endTime": 1609516799000, "ticketNum": 100 }, { "id": 4, "name": "限定装扮4", "imgUrl": "http://image.doudouyuyin.com/FqajyhD29i0XO35dILmpo6EgL2nH?imageslim", "type": 1, "sellingPrice": 2000, "originalPrice": 2000, "stock": -1, "sold": 0, "remainStock": -1, "allowBuyNum": -1, "userBoughtNum": 0, "remainAllowBuyNum": -1, "beginTime": 1588262400000, "endTime": 1609516799000, "ticketNum": 200 }, { "id": 35, "name": "限定礼物5", "imgUrl": "http://image.doudouyuyin.com/FgkW5RZdl4Z2ETPVX3EHTLY51Ie6?imageslim", "type": 1, "sellingPrice": 10000, "originalPrice": 10000, "stock": -1, "sold": 0, "remainStock": -1, "allowBuyNum": -1, "userBoughtNum": 0, "remainAllowBuyNum": -1, "beginTime": 1588262400000, "endTime": 1620489599000, "ticketNum": 1000 }]
var arrTit = ['赠送66流星1个',
'随机赠送66流星7~10个',
'随机赠送66流星70~100个',
'随机赠送66流星700~1000个']
var info = {};
var browser = checkVersion();
var api = locateJudge();
var env = EnvCheck();
var giftName = ['夕花若曦', '花繁蝶欢', '流花萦梦', '林中麋鹿']
// new VConsole()
var shareUrl = location.origin + '/activity';
var share = {
title: '',
link: shareUrl,
imgUrl: 'https://img.erbanyy.com/new-logo.png',
desc: ''
};
// eslint-disable-next-line
function getMessage(key, value) {
info[key] = value;
}
wx.ready(function () {
wx.onMenuShareTimeline({
title: share.title,
link: share.link,
imgUrl: share.imgUrl,
desc: share.desc
});
wx.onMenuShareAppMessage({
title: share.title,
desc: share.desc,
link: share.link,
imgUrl: share.imgUrl,
type: 'link',
dataUrl: ''
});
wx.onMenuShareQQ({
title: share.title,
desc: share.desc,
link: share.link,
imgUrl: share.imgUrl
});
});
erbanMask('activity-name', 'activity-name');
initNav({
type: 3,
data: {
title: '充值',
routerType: 5
}
});
browser.weixin && wxConfig();
// 购买礼包信息
var giftObj = {
// name: '你',
// num: 1,
// gold: 14564,
// giftId: 111,
// day: 1
}
// renderBuyMask(giftObj)
$(function () {
if (env == 'test') {
new VConsole();
}
var main = {
init: function () {
this.getMsgFromDevice();
setTimeout(function() {
this.getData();
}.bind(this), 100);
this.eventRegister();
renderBuyStatus()
// this.getDataFromBack();
},
getMsgFromDevice: function () {
if (browser.app) {
if (browser.ios) {
window.webkit.messageHandlers.getDeviceId.postMessage(null);
} else if (browser.android) {
if (androidJsObj && typeof androidJsObj === 'object') {
info.deviceId = window.androidJsObj.getDeviceId();
}
}
info.uid = tools.nativeUtils.getUid();
info.ticket = tools.nativeUtils.getTicket();
} else {
info.uid = 936365;
info.deviceId = 'safhksafhksajhfs1kjahsfkjsf0000aaaaaaaacaa';
info.ticket = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0aWNrZXRfdHlwZSI6bnVsbCwidWlkIjo5MzYzNjUsInRpY2tldF9pZCI6IjI4YTIwNjdhLWM0ZTUtNDUxMC1iMzcwLWY1YzkxYjM3OGIxYiIsImV4cCI6MzYwMCwiY2xpZW50X2lkIjoiZXJiYW4tY2xpZW50In0.z0iPR-UOz0TKsKSlGlyfvcdWXyWebRFHYTwZnvkLaXU";
}
},
eventRegister: function () {
// 规则
$('.rule-btn').on('click', function () {
$('.shade').fadeIn(300)
$('.rule-mask').fadeIn(300)
})
// 购买弹窗
$('.buy-btn').on('click', function () {
// console.log($(this).data())
if (!$(this).data('status')) {
$('.toast').html('未在活动时间范围内!').stop().fadeIn(30).fadeOut(3000)
return
}
if (!$(this).data('name') || !$(this).data('day') || !$(this).data('gold') || !$(this).data('giftId')) {
$('.toast').html('礼包信息不完整').stop().fadeIn(30).fadeOut(3000)
return
}
giftObj = {}
giftObj['name'] = $(this).data('name')
giftObj['day'] = $(this).data('day')
giftObj['gold'] = $(this).data('gold')
giftObj['giftId'] = $(this).data('giftId')
giftObj['num'] = 1
giftObj['ticketNum'] = $(this).data('ticketNum')
// console.log(giftObj);
renderBuyMask()
})
// 关闭
$('.rule-mask').on('click', '.cancel', function () {
$('.rule-mask').fadeOut(300)
$('.shade').fadeOut(300)
})
$('.buy-mask').on('click', '.cancel', function () {
$('.buy-mask').fadeOut(300)
$('.shade').fadeOut(300)
})
$('.shade').on('click', function () {
$('.rule-mask').hide()
$('.buy-mask').hide()
$('.statusMask').hide()
$('.shade').hide()
})
// 增加
$('.increase').on('click', function () {
if (giftObj.num < 999) {
giftObj.num++
giftObj.day++
var allPrice = giftObj.num * giftObj.gold
$('.inputNum').val(giftObj.num)
$('.buyNumber').html(giftObj.day)
$('.goldNum').html(allPrice)
}
})
// 减少
$('.descrease').on('click', function () {
if (giftObj.num > 0) {
giftObj.num--
giftObj.day--
var allPrice = giftObj.num * giftObj.gold
$('.inputNum').val(giftObj.num)
$('.buyNumber').html(giftObj.day)
$('.goldNum').html(allPrice)
}
})
// 输入
$('.inputNum').on('input', function () {
var exp = /^[0-9]+$/
if (!exp.test($(this).val())) {
$('.toast').html('必须是数字').fadeIn(30).fadeOut(2000)
return
}
if ($('.inputNum').val() >= 999) {
giftObj.num = 999
} else {
giftObj.num = Number($(this).val())
}
giftObj.day = giftObj.num
var allPrice = giftObj.num * giftObj.gold
$('.inputNum').val(giftObj.num)
$('.buyNumber').html(giftObj.day)
$('.goldNum').html(allPrice)
})
// 购买确认
$('.confirm').on('click', function () {
if (giftObj.num === 0) {
$('.toast').html('购买量为0').fadeIn(30).fadeOut(3000)
return
}
$.ajax({
headers: {
pub_ticket: info.ticket
},
type: 'POST',
url: api + '/activity/pack/buy',
// url: 'https://beta.api.pekolive.com/activity/pack/buy',
data: {
uid: info.uid,
packId: giftObj.giftId,
packNum: giftObj.num,
ticket: info.ticket
},
success: function (res) {
if (res.code === 200) {
$('.buy-mask').hide()
renderStatusMask(res.code)
renderTicket(res.data)
} else if (res.code === 2103) {
$('.buy-mask').hide()
renderStatusMask(res.code)
} else {
$('.toast').html(res.message).fadeIn(30).fadeOut(2000)
}
}
})
})
// 充值
$('.recharge').on('click', function () {
if (browser.ios) {
$('.statusMask').fadeOut(300)
$('.shade').fadeOut(300)
} else {
tools.nativeUtils.jumpAppointPage('RECHARGE_PAGE')
}
})
$('.in-btn').on('click', function () {
$('.statusMask').fadeOut(300)
$('.shade').fadeOut(300)
})
},
getData: function () {
// 请求礼包接口
$.ajax({
headers: {
pub_ticket: info.ticket
},
type: 'POST',
url: api + '/activities/draw/getPackList',
// url: 'https://beta.api.pekolive.com/activities/draw/getPackList',
data: {
uid: info.uid,
ticket: info.ticket
},
success: function (res) {
if (res.code === 200) {
renderGift(res.data)
}
}
})
renderTicket()
}
};
main.init();
});
// 渲染底部ticket
function renderTicket(param) {
$.ajax({
type: 'GET',
url: api + '/activities/draw/queryTicketNum',
// url: 'https://beta.api.pekolive.com/activities/draw/queryTicketNum',
data: {
uid: info.uid
// uid: 936365
},
success: function (res) {
if (res.code === 200) {
// console.log(res.data.num);
$('.mine').find('.avatar img').attr('src', res.data.avatar)
if (res.data.nick.length > 10) {
res.data.nick = res.data.nick.substring(0, 10) + '...'
}
$('.mine').find('.nick').html(res.data.nick)
$('.mine').find('.diamond').html(res.data.userPurse.diamonds)
if(param){
// $('.mine').find('.score').html(res.data.num + param)
$('.mine').find('.score')[0].innerHTML = parseInt($('.mine').find('.score')[0].innerHTML) + param
} else{
$('.mine').find('.score').html(res.data.num)
}
}
}
})
}
// 渲染购买状态
function renderBuyStatus() {
var date = new Date().getTime()
var start = (browser.ios) ? new Date('2019/03/03 00:00:00').getTime() : new Date('2019-03-03 00:00:00').getTime()
var end = (browser.ios) ? new Date('2021/04/09 00:00:00').getTime() : new Date('2021-04-09 00:00:00').getTime()
console.log(start, end, date)
if (start < date && date < end) {
$('.buy-btn').removeClass('gray').data('status', true)
} else {
$('.buy-btn').removeClass().addClass('buy-btn gray')
}
}
// renderGift(data)
// 渲染礼包
function renderGift(val) {
for (var i in val) {
// str += ` <li> <p class="title-gift">${val[i].name}</p>
// <div class="gift-center"> <img src="${val[i].imgUrl}" alt="">
// <div> <p class="gift-name">${val[i].name}</p>
// <p class="gift-price">${val[i].sellingPrice}鉆石/天</p>
// <p class="award">${arrTit[i]}</p>
// </div></div><p class="buy-btn gray">立即购买</p></li>`
var $list = $('.cloth-box li').eq(i)
$list.find('img').attr('src', val[i].imgUrl)
// $list.find('.gift-name').html(giftName[i])
$list.find('.gift-price').html(`${val[i].sellingPrice}鉆石/天`)
$list.find('.award').html(arrTit[i])
$('.buy-btn').eq(i).data('name', val[i].name)
$('.buy-btn').eq(i).data('day', 1)
$('.buy-btn').eq(i).data('gold', val[i].sellingPrice)
$('.buy-btn').eq(i).data('giftId', val[i].id)
$('.buy-btn').eq(i).data('ticketNum', val[i].ticketNum)
}
// $('.cloth-box').html(str)
}
// 渲染购买弹窗
function renderBuyMask() {
if (JSON.stringify(giftObj) === '{}') {
$('.toast').html('礼包信息不完整').fadeIn(30).fadeOut(2000)
return
}
var mask = $('.buy-mask')
mask.find('.buyGiftName').html(giftObj.name)
mask.find('.buyNumber').html(giftObj.day)
mask.find('.goldNum').html(giftObj.gold)
mask.find('.inputNum').val(giftObj.num)
$('.shade').fadeIn(300)
$('.buy-mask').fadeIn(300)
}
function renderStatusMask(val) {
if (val === 200) {
$('.success').show()
$('.fail').hide()
$('.statusMask .tip').html('获赠66流星×' + giftObj.ticketNum * giftObj.num)
// setTimeout(function(){
// renderTicket()
// },1000)
// renderTicket()
} else if (val === 2103) {
$('.success').hide()
$('.fail').show()
$('.statusMask .tip').html('亲,余额不足~')
if (browser.ios) {
$('.android').hide()
} else if (browser.android) {
$('.ios').hide()
}
}
$('.statusMask').fadeIn(300)
}