Files
eparty-h5/view/eparty/modules/guildAr/js/weeklyRewards.js
2025-06-11 13:47:54 +08:00

182 lines
5.9 KiB
JavaScript

let urlPrefix = getUrlPrefix()
let browser = checkVersion()
let env = EnvCheck();
if (env == 'test') {
new VConsole();
}
// 封裝layer消息提醒框
let layerIndex
var langReplace;
var localLang;
const showLoading = (content = langReplace(localLang.demoModule.layerIndex1)) => {
layer.open({
type: 2,
shadeClose: false,
content,
success(e) {
layerIndex = $(e).attr('index')
}
})
}
const hideLoading = (index) => {
layer.close(index)
}
const toastMsg = (content = langReplace(localLang.demoModule.layerIndex2), time = 2) => {
layer.open({
content,
time,
skin: 'msg'
})
}
var countupTime;//倒计时容器
var page = 0;
var maxPage = 0;
var arr = [];
var music = true;
var data;
var totalReward;
// 初始化函數
$(function () {
getInfoFromClient();
fuzzyMatchUpdateQueryStringParameterFun(); // 判断语言
setTimeout(function () {
// 頁面全屏
if (browser.app) {
if (browser.android) {
window.androidJsObj.initShowNav(false)
} else {
window.webkit.messageHandlers.initShowNav.postMessage(0)
}
};
// 頂部返回事件
$('.back .backIcon').click(() => {
window.history.back()
})
fuzzyMatchUpdateQueryStringParameterFun(); // 判断语言
langReplace = window.lang.replace;
localLang = window.lang;
translateFun();
getConfig();
}, 100)
})
function translateFun() {
var langReplace = window.lang.replace;
var localLang = window.lang;
$('.text1').text(langReplace(localLang.weeklyRewards.text1));
// $('.text2').html(langReplace(localLang.weeklyRewards.text2));
$('.text3').text(langReplace(localLang.weeklyRewards.text3));
$('.text4').text(langReplace(localLang.weeklyRewards.text4));
$('.text5').text(langReplace(localLang.weeklyRewards.text5));
}
// 配置接口
function getConfig() {
$('.box ul li').remove();
$('.tab div').remove();
showLoading()
networkRequest({
type: 'get',
url: urlPrefix + '/familyMemberWeekLevelReward/get',
success(res) {
if (res.code === 200) {
data = res.data;
totalReward = res.data[0].totalReward;
var tabStr = '';
data.forEach(((res, i) => {
tabStr += `
<div class="${i == 0 ? 'act' : ''}">${res.dateRange}</div>
`
}))
$('.tab').append(tabStr);
ulFun(0);
// tab切换
$('.tab div').click(function () {
var i = $(this).index();
$(this).addClass('act').siblings().removeClass('act');
ulFun(i)
})
} else {
toastMsg(res.message)
}
hideLoading(layerIndex)
},
error(err) {
hideLoading(layerIndex)
toastMsg(langReplace(localLang.demoModule.layerIndex3))
}
})
}
function ulFun(index) {
$('.box ul li').remove();
var str = '';
data[index].itemList.forEach((res, i) => {
str += `
<li>
<div class="left">
<img src="./images/coin.png" alt="" class="gold">
<span>${unitProcessingZhuan(res.rewardNum, 2)}</span>
<div class="get ${res.status == 1 ? 'getAct' : res.status == 2 ? 'getOut' : ''}" id=${res.id} status=${res.status}>${res.status == 2 ? langReplace(localLang.weeklyRewards.text5) : langReplace(localLang.weeklyRewards.text3)}</div>
</div>
<div class="right">
<div class="textTop">
<div class="l">${langReplace(localLang.weeklyRewards.text4)}<b>${res.level}</b></div>
<div class="r">
<b class="b1">${res.processNum + res.preMaxNum}</b>/<b class="b2">${res.maxNum}</b><img src="./images/coin.png" alt="">
</div>
</div>
<div class="line">
<div class="line_in" style="width:${((res.processNum + res.preMaxNum) - (res.preMaxNum)) / (res.maxNum - res.preMaxNum) * 100}%"></div>
</div>
<div class="speedOfProgress">
<span>${res.preMaxNum}</span>
<b>${res.maxNum}</b>
</div>
</div>
</li>
`
})
$('.box ul').append(str);
}
function getReward(id) {
showLoading()
networkRequest({
type: 'post',
url: urlPrefix + '/familyMemberWeekLevelReward/getReward',
data: {
id,
},
success(res) {
if (res.code === 200) {
getConfig();
} else {
toastMsg(res.message)
}
hideLoading(layerIndex)
},
error(err) {
hideLoading(layerIndex)
toastMsg(langReplace(localLang.demoModule.layerIndex3))
}
})
}
// 领取按钮
$('.box ul').on('click', ' li .left .get', function () {
var status = $(this).attr('status');
var id = $(this).attr('id');
if (status == 1) {
getReward(id);
}
})
// 计算- 取消中文向下取整
function unitProcessingZhuan(val, toFixeds) { //值 保留几位小数
if (getQueryString().lang && getQueryString().lang == 'zh') {
return val >= 10000 ? ((val / 1000) / 10).toFixed(toFixeds) + 'w' : val;
} else {
if (val < 1000) {
return val;
} else if (val >= 1000 && val < 1000000) {
return (val / 1000).toFixed(toFixeds) + 'K'
} else if (val >= 1000000) {
return (val / 1000000).toFixed(toFixeds) + 'M'
}
}
}