901 lines
25 KiB
JavaScript
901 lines
25 KiB
JavaScript
// packageH/turmaroundTime/turmaroundIndex/turmaroundIndex.js
|
||
const app = getApp();
|
||
// import util from "../../../utils/util";
|
||
import utils from "../../../utils/util";
|
||
const isuid = wx.getStorageSync("yz_uid");
|
||
var date = new Date();
|
||
Page({
|
||
/**
|
||
* 页面的初始数据
|
||
*/
|
||
data: {
|
||
navlis: ["日榜", "周榜", "月榜", "年榜", "总榜"],
|
||
carlis: [],
|
||
geade: ["排名", "会员", "车号", "圈数", "总用时", "最快圈"],
|
||
group: [],
|
||
navTaps: 0, //顶部导航
|
||
topNav: 1, //榜单导航
|
||
carTaps: 0, //车类导航
|
||
GroupTaps: 0, //实时组类导航
|
||
show: false,
|
||
nowTime: "",
|
||
showIn: false, // 历史成绩是否显示
|
||
postTime: Date.parse(new Date()), // 接口时间戳
|
||
info: [], //排名信息
|
||
GroupList: [],
|
||
interval: null,
|
||
local_time: "00:00:00",
|
||
myUid: isuid,
|
||
my_info: [],
|
||
memberInfo: [],
|
||
minDate: new Date(date.getFullYear() - 1, 0, 1).getTime(),
|
||
maxDate: Date.parse(new Date()),
|
||
realTimeIn_set: null,
|
||
realTimeAll: null,
|
||
istemp: true,
|
||
},
|
||
|
||
/**
|
||
* 生命周期函数--监听页面加载
|
||
*/
|
||
onLoad: function (options) {
|
||
if (options.id) {
|
||
this.setData({
|
||
id: options.id,
|
||
});
|
||
}
|
||
|
||
this.init();
|
||
this.setData({
|
||
nowTime: utils.formatTimes(new Date()),
|
||
});
|
||
},
|
||
onChange(e) {
|
||
this.setData({
|
||
timeData: e.detail,
|
||
});
|
||
},
|
||
test() {
|
||
var now = new Date();
|
||
var nowTime = now.getTime();
|
||
var day = now.getDay() || 7; //为周日的时候 day 修改为7 否则当天周天会有问题
|
||
var oneDayTime = 24 * 60 * 60 * 1000;
|
||
var MondayTime = nowTime - (day - 1) * oneDayTime; //显示周一
|
||
var SundayTime = nowTime + (7 - day) * oneDayTime; //显示周日
|
||
return {
|
||
monday: Date.parse(new Date(MondayTime)),
|
||
sunday: Date.parse(new Date(SundayTime))
|
||
};
|
||
},
|
||
init() {
|
||
this.setData({
|
||
topNav: 0,
|
||
navTaps: 0,
|
||
});
|
||
},
|
||
showHistory(e) {
|
||
console.log(e);
|
||
this.setData({
|
||
showIn: !this.data.showIn,
|
||
});
|
||
let that = this;
|
||
let urlStr = app.getNetAddresss(
|
||
"plugin.kart.Frontend.Store.Modules.Ranking.Controllers.MyGradeHistory.index"
|
||
);
|
||
app._postNetWork({
|
||
url: urlStr,
|
||
data: {
|
||
store_id: this.data.id,
|
||
},
|
||
success: (resdata) => {
|
||
var res = resdata.data;
|
||
if (res.result == 1) {
|
||
that.setData({
|
||
history: res.data,
|
||
});
|
||
} else {
|
||
wx.showToast({
|
||
title: res.msg,
|
||
duration: 1000,
|
||
icon: "none",
|
||
});
|
||
}
|
||
},
|
||
});
|
||
},
|
||
tapGroupNav(e) {
|
||
let ind = e.currentTarget.dataset.ind;
|
||
console.log(ind);
|
||
this.setData({
|
||
GroupTaps: ind,
|
||
});
|
||
if (this.data.realTimeIn_set) {
|
||
clearInterval(this.data.realTimeIn_set);
|
||
}
|
||
this.getData();
|
||
},
|
||
tapCarNav(e) {
|
||
let ind = e.currentTarget.dataset.ind;
|
||
console.log(ind);
|
||
this.setData({
|
||
carTaps: ind,
|
||
});
|
||
this.getData();
|
||
},
|
||
tapTopNav(e) {
|
||
let ind = e.currentTarget.dataset.ind;
|
||
this.setData({
|
||
topNav: ind,
|
||
});
|
||
if (this.data.interval) {
|
||
clearInterval(this.data.interval);
|
||
this.setData({
|
||
interval: null
|
||
});
|
||
}
|
||
if (this.data.realTimeIn_set) {
|
||
clearInterval(this.data.realTimeIn_set);
|
||
this.setData({
|
||
realTimeIn_set: null
|
||
});
|
||
}
|
||
if (this.data.realTimeAll) {
|
||
clearInterval(this.data.realTimeAll);
|
||
this.setData({
|
||
realTimeAll: null
|
||
});
|
||
}
|
||
console.log(this.data.interval);
|
||
if (ind == 2) {
|
||
this.data.realTimeAll = setInterval(() => {
|
||
this.timeIsReal();
|
||
}, 1000);
|
||
this.data.interval = setInterval(() => {
|
||
this.setData({
|
||
local_time: utils.formatTime(new Date()).slice(11),
|
||
});
|
||
}, 1000);
|
||
}
|
||
this.getData();
|
||
},
|
||
|
||
monthYearShow() {
|
||
console.log(this.data.textTime_class);
|
||
this.setData({
|
||
monthYearShow: false,
|
||
});
|
||
},
|
||
tapCalendar(e) {
|
||
console.log(e);
|
||
let now = e.detail[0];
|
||
now = Date.parse(now);
|
||
now = now / 1000;
|
||
now = utils.formatTimeTwo(now, "Y-M-D");
|
||
console.log(now);
|
||
let dayNow = this.getSteven(now);
|
||
this.setData({
|
||
calendarArr: [dayNow.monday, dayNow.sunday],
|
||
});
|
||
},
|
||
getSteven(stime) {
|
||
var now = new Date(stime);
|
||
var nowTime = now.getTime();
|
||
var day = now.getDay() || 7;
|
||
var oneDayLong = 24 * 60 * 60 * 1000;
|
||
|
||
var MondayTime = nowTime - (day - 1) * oneDayLong;
|
||
var SundayTime = nowTime + (7 - day) * oneDayLong;
|
||
|
||
var monday = new Date(MondayTime);
|
||
|
||
for (let i = 0; i < 7; i++) {
|
||
var tmpDate = new Date(MondayTime);
|
||
tmpDate = tmpDate.setDate(tmpDate.getDate() + i);
|
||
tmpDate = new Date(tmpDate);
|
||
console.log(tmpDate);
|
||
|
||
var mondayDateStr = tmpDate.getMonth() + 1 + "月";
|
||
mondayDateStr += tmpDate.getDate() + "日";
|
||
|
||
let days = tmpDate.getDay();
|
||
console.log(days);
|
||
switch (days) {
|
||
case 1:
|
||
days = "星期一";
|
||
break;
|
||
case 2:
|
||
days = "星期二";
|
||
break;
|
||
case 3:
|
||
days = "星期三";
|
||
break;
|
||
case 4:
|
||
days = "星期四";
|
||
break;
|
||
case 5:
|
||
days = "星期五";
|
||
break;
|
||
case 6:
|
||
days = "星期六";
|
||
break;
|
||
case 0:
|
||
days = "星期日";
|
||
break;
|
||
}
|
||
mondayDateStr += days;
|
||
console.log(mondayDateStr);
|
||
}
|
||
|
||
var sunday = new Date(SundayTime);
|
||
return {
|
||
monday: Date.parse(monday),
|
||
sunday: Date.parse(sunday),
|
||
};
|
||
},
|
||
getTimeC(e) {
|
||
console.log(e.detail.postTime);
|
||
let time = e.detail;
|
||
if (this.data.navTaps == 3) {
|
||
this.setData({
|
||
postTime: time.postTime,
|
||
textTime_class: time.textTime_class,
|
||
monthYearShow: false,
|
||
});
|
||
} else {
|
||
this.setData({
|
||
postTime: time.postTime,
|
||
textTime_class: time.textTime_class,
|
||
monthYearShow: false,
|
||
});
|
||
}
|
||
|
||
this.getData();
|
||
},
|
||
// 日 周 月 年 榜单选项
|
||
tapNav(e) {
|
||
let ind = e.currentTarget.dataset.ind;
|
||
if (ind == 1) {
|
||
//周榜需要自动选择
|
||
// 一周前的日期 和 当天的日期 格式 2021-05
|
||
console.log(this.data.nowTime.slice(0, 7));
|
||
let dayNow = this.data.nowTime.slice(0, 7);
|
||
dayNow = this.test(dayNow);
|
||
console.log(dayNow);
|
||
this.setData({
|
||
textTime_class: this.data.nowTime.slice(0, 7),
|
||
calendarArr: [dayNow.monday, dayNow.sunday],
|
||
});
|
||
} else if (ind == 2) {
|
||
let date = new Date();
|
||
let month = date.getMonth();
|
||
console.log(month);
|
||
this.setData({
|
||
textTime_class: this.data.nowTime.slice(0, 7),
|
||
monthIndex: month,
|
||
});
|
||
} else if (ind == 3) {
|
||
let date = new Date();
|
||
let year = date.getFullYear();
|
||
console.log(year);
|
||
this.setData({
|
||
textTime_class: this.data.nowTime.slice(0, 4),
|
||
monthIndex: year,
|
||
});
|
||
}
|
||
|
||
this.setData({
|
||
navTaps: ind,
|
||
postTime: Date.parse(new Date()),
|
||
});
|
||
console.log(this.data.navTaps);
|
||
this.getData();
|
||
},
|
||
tapCaledar() {
|
||
let navTaps = this.data.navTaps;
|
||
// 日,周榜使用组件
|
||
if (navTaps == 1 || navTaps == 0) {
|
||
this.setData({
|
||
show: true,
|
||
});
|
||
} else {
|
||
this.setData({
|
||
show: false,
|
||
});
|
||
if (this.data.navTaps == 2) {
|
||
this.setData({
|
||
monthYearShow: true,
|
||
selectMonth: this.data.textTime_class,
|
||
});
|
||
}
|
||
if (this.data.navTaps == 3) {
|
||
console.log(this.data.textTime_class);
|
||
let arr = [];
|
||
for (let i = 0; i < 10; i++) {
|
||
arr = arr.concat(this.data.textTime_class - i);
|
||
}
|
||
console.log(arr);
|
||
this.setData({
|
||
yearArr: arr,
|
||
monthYearShow: true,
|
||
selectMonth: this.data.textTime_class,
|
||
});
|
||
}
|
||
}
|
||
},
|
||
onConfirm(e) {
|
||
let time = e.detail;
|
||
if (this.data.navTaps == 1) {
|
||
console.log(utils.formatTimes(time[0]));
|
||
this.setData({
|
||
show: false,
|
||
textTime_class: utils.formatTimes(time[0]).slice(0, 7),
|
||
});
|
||
} else {
|
||
this.setData({
|
||
show: false,
|
||
nowTime: utils.formatTimes(time),
|
||
postTime: Date.parse(time),
|
||
});
|
||
}
|
||
|
||
this.getData();
|
||
},
|
||
yesterday(e) {
|
||
// let day = new Date();
|
||
if (this.data.navTaps == 0) {
|
||
let Arr = this.data.nowTime.split("-");
|
||
let now = new Date(
|
||
Number(Arr["0"]),
|
||
Number(Arr["1"]) - 1,
|
||
Number(Arr["2"])
|
||
);
|
||
now.setDate(now.getDate() - 1);
|
||
now = this.formatTime(now);
|
||
this.setData({
|
||
nowTime: now,
|
||
postTime: Date.parse(new Date(now)),
|
||
});
|
||
} else if (this.data.navTaps == 1) {
|
||
let lastMonday = utils.formatTimeTwo(
|
||
this.data.calendarArr[0] / 1000 - 86400,
|
||
"Y-M-D"
|
||
);
|
||
lastMonday = this.getSteven(lastMonday);
|
||
let now = utils.formatTimeTwo(lastMonday.monday / 1000, "Y-M-D");
|
||
now = now.slice(0, 7);
|
||
let arr = [lastMonday.monday, lastMonday.sunday];
|
||
console.log(now);
|
||
this.setData({
|
||
textTime_class: now,
|
||
calendarArr: arr,
|
||
});
|
||
} else if (this.data.navTaps == 2) {
|
||
let last = this.data.postTime;
|
||
let date = utils.formatTimeTwo(last / 1000, "Y-M-D");
|
||
let islast = this.etXmonthToday(-1, date);
|
||
date = Date.parse(new Date(islast));
|
||
this.setData({
|
||
postTime: date,
|
||
textTime_class: islast.slice(0, 7),
|
||
});
|
||
} else if (this.data.navTaps == 3) {
|
||
let year = Number(this.data.textTime_class) - 1;
|
||
let now = `${year}-01-01`;
|
||
this.setData({
|
||
textTime_class: year,
|
||
postTime: Date.parse(now),
|
||
});
|
||
}
|
||
|
||
this.getData();
|
||
},
|
||
tomorrow() {
|
||
if (this.data.navTaps == 0) {
|
||
let Arr = this.data.nowTime.split("-");
|
||
let now = new Date(
|
||
Number(Arr["0"]),
|
||
Number(Arr["1"]) - 1,
|
||
Number(Arr["2"])
|
||
);
|
||
now.setDate(now.getDate() + 1);
|
||
now = this.formatTime(now);
|
||
this.setData({
|
||
nowTime: now,
|
||
postTime: Date.parse(new Date(now)),
|
||
});
|
||
} else if (this.data.navTaps == 1) {
|
||
let lastMonday = utils.formatTimeTwo(
|
||
this.data.calendarArr[0] / 1000 + 86400 * 7,
|
||
"Y-M-D"
|
||
);
|
||
console.log(lastMonday);
|
||
lastMonday = this.getSteven(lastMonday);
|
||
let now = utils.formatTimeTwo(lastMonday.monday / 1000, "Y-M-D");
|
||
now = now.slice(0, 7);
|
||
let arr = [lastMonday.monday, lastMonday.sunday];
|
||
console.log(now);
|
||
this.setData({
|
||
textTime_class: now,
|
||
calendarArr: arr,
|
||
});
|
||
} else if (this.data.navTaps == 2) {
|
||
let last = this.data.postTime;
|
||
let date = utils.formatTimeTwo(last / 1000, "Y-M-D");
|
||
let islast = this.etXmonthToday(1, date);
|
||
date = Date.parse(new Date(islast));
|
||
this.setData({
|
||
postTime: date,
|
||
textTime_class: islast.slice(0, 7),
|
||
});
|
||
} else if (this.data.navTaps == 3) {
|
||
let year = Number(this.data.textTime_class) + 1;
|
||
let now = `${year}-01-01`;
|
||
this.setData({
|
||
textTime_class: year,
|
||
postTime: Date.parse(now),
|
||
});
|
||
}
|
||
|
||
this.getData();
|
||
},
|
||
onClose(e) {
|
||
this.setData({
|
||
show: false,
|
||
});
|
||
},
|
||
formatTime(date) {
|
||
var year = date.getFullYear();
|
||
|
||
let month = date.getMonth() + 1;
|
||
month = month < 10 ? "0" + month : month;
|
||
|
||
let day = date.getDate();
|
||
day = day < 10 ? "0" + day : day;
|
||
|
||
return year + "-" + month + "-" + day;
|
||
},
|
||
goMy(e) {
|
||
console.log(this.data.realTimeAll);
|
||
if (this.data.realTimeAll) {
|
||
clearInterval(this.data.realTimeAll);
|
||
this.setData({
|
||
realTimeAll: null
|
||
});
|
||
}
|
||
// if (e.currentTarget.dataset.item.ranking != 0) {
|
||
let uid = e.currentTarget.dataset.item.uid;
|
||
let rank = e.currentTarget.dataset.item.ranking;
|
||
let myuid = wx.getStorageSync("yz_uid");
|
||
if (uid == myuid) {
|
||
wx.navigateTo({
|
||
url: "/packageH/turmaroundTime/turmaroundMy/turmaroundMy?id=" +
|
||
this.data.id +
|
||
"&ranking=" +
|
||
rank,
|
||
});
|
||
} else {
|
||
wx.navigateTo({
|
||
url: "/packageH/turmaroundTime/turmaroundMy/turmaroundMy?id=" +
|
||
this.data.id +
|
||
"&ranking=" +
|
||
rank +
|
||
"&uid=" +
|
||
uid,
|
||
});
|
||
}
|
||
// }
|
||
},
|
||
etXmonthToday(type, time) {
|
||
// type 0 是当天 -1 是上个月 1是下个月
|
||
var now = new Date(time); // 可以传值调式 now = new Date(2019,2,30); 今天是3月30号
|
||
var year = now.getFullYear(); //getYear()+1900=getFullYear()
|
||
var month = now.getMonth() + 1; //0-11表示1-12月
|
||
var day = now.getDate(); // 当天日期
|
||
if (parseInt(month) < 10) {
|
||
month = "0" + month;
|
||
}
|
||
if (parseInt(day) < 10) {
|
||
day = "0" + day;
|
||
}
|
||
now = year + "-" + month + "-" + day; // 如果取当月日期可直接 return 返回
|
||
|
||
var preMonth = parseInt(month) - 1;
|
||
preMonth = preMonth < 10 ? "0" + preMonth : preMonth; // 获取上个月的值
|
||
var nextMonth = parseInt(month) + 1;
|
||
nextMonth = nextMonth < 10 ? "0" + nextMonth : nextMonth; // 获取下个月个月的值
|
||
|
||
if (parseInt(month) == 1 && type == -1) {
|
||
//如果是1月份,要上个月 ,则取上一年的12月份
|
||
return parseInt(year) - 1 + "-12-" + day;
|
||
} else if (parseInt(month) == 12 && type == 1) {
|
||
// 如果是12月,要下个月,取下一年的1月
|
||
return parseInt(year) + 1 + "-01-" + day;
|
||
}
|
||
|
||
var preSize = new Date(year, parseInt(month) - 1, 0).getDate(); //上月总天数
|
||
var nextSize = new Date(year, parseInt(month) + 1, 0).getDate(); //下月总天数
|
||
console.log(preSize, nextSize);
|
||
if (preSize < parseInt(day) && type == -1) {
|
||
// 取上个月,如果上个月总天数小于本月今天,取上个月最后一天
|
||
return year + "-" + preMonth + "-" + preSize;
|
||
} else if (nextSize < parseInt(day) && type == 1) {
|
||
// 如果下个月总天数小于本月今天,取下个月最后一天
|
||
return year + "-" + nextMonth + "-" + nextSize;
|
||
}
|
||
|
||
if (type == -1) {
|
||
return year + "-" + preMonth + "-" + day;
|
||
} else if (type == 1) {
|
||
return year + "-" + nextMonth + "-" + day;
|
||
} else if (type == 0) {
|
||
return now;
|
||
}
|
||
},
|
||
/**
|
||
* 生命周期函数--监听页面初次渲染完成
|
||
*/
|
||
onReady: function () {},
|
||
|
||
/**
|
||
* 生命周期函数--监听页面显示
|
||
*/
|
||
onShow: function () {
|
||
this.setData({
|
||
topNav: 0,
|
||
navTaps: 0
|
||
});
|
||
this.getCartClass();
|
||
},
|
||
|
||
/**
|
||
* 生命周期函数--监听页面隐藏
|
||
*/
|
||
onHide: function () {},
|
||
|
||
/**
|
||
* 生命周期函数--监听页面卸载
|
||
*/
|
||
onUnload: function () {
|
||
if (this.data.interval) {
|
||
clearInterval(this.data.interval);
|
||
this.setData({
|
||
interval: null
|
||
});
|
||
}
|
||
if (this.data.realTimeIn_set) {
|
||
clearInterval(this.data.realTimeIn_set);
|
||
this.setData({
|
||
realTimeIn_set: null
|
||
});
|
||
}
|
||
if (this.data.realTimeAll) {
|
||
clearInterval(this.data.realTimeAll);
|
||
this.setData({
|
||
realTimeAll: null
|
||
});
|
||
}
|
||
},
|
||
|
||
/**
|
||
* 页面相关事件处理函数--监听用户下拉动作
|
||
*/
|
||
onPullDownRefresh: function () {},
|
||
|
||
/**
|
||
* 页面上拉触底事件的处理函数
|
||
*/
|
||
onReachBottom: function () {},
|
||
|
||
/**
|
||
* 用户点击右上角分享
|
||
*/
|
||
onShareAppMessage: function () {
|
||
return {
|
||
path: "/packageH/turmaroundTime/turmaroundIndex/turmaroundIndex?id=" +
|
||
this.data.id,
|
||
};
|
||
},
|
||
getCartClass() {
|
||
let that = this;
|
||
let urlStr = app.getNetAddresss(
|
||
"plugin.kart.Frontend.Account.Modules.KartType.Controllers.records.index"
|
||
);
|
||
app._postNetWork({
|
||
url: urlStr,
|
||
success: (resdata) => {
|
||
var res = resdata.data;
|
||
console.log(res);
|
||
that.setData({
|
||
carlis: res.data,
|
||
carTaps: String(res.data[this.data.carTaps].id),
|
||
});
|
||
that.getData();
|
||
},
|
||
});
|
||
},
|
||
getData() {
|
||
let json = {};
|
||
let urlStr;
|
||
let that = this;
|
||
if (this.data.topNav == "0") {
|
||
// 成绩排行
|
||
urlStr = app.getNetAddresss(
|
||
"plugin.kart.Frontend.Store.Modules.Ranking.Controllers.records.index"
|
||
);
|
||
if (this.data.navTaps == 1) {
|
||
json = {
|
||
store_id: Number(this.data.id),
|
||
ranking_type: this.data.navTaps + 1,
|
||
kart_type_id: Number(this.data.carTaps),
|
||
start_time: this.data.calendarArr[0] / 1000,
|
||
end_time: this.data.calendarArr[1] / 1000,
|
||
};
|
||
} else {
|
||
json = {
|
||
store_id: Number(this.data.id),
|
||
ranking_type: this.data.navTaps + 1,
|
||
kart_type_id: Number(this.data.carTaps),
|
||
start_time: this.data.postTime / 1000,
|
||
end_time: this.data.postTime / 1000,
|
||
};
|
||
}
|
||
} else if (this.data.topNav == "1") {
|
||
// 我的成绩
|
||
urlStr = app.getNetAddresss(
|
||
"plugin.kart.Frontend.Account.Modules.Store.Controllers.Store.index"
|
||
);
|
||
json = {
|
||
store_id: Number(this.data.id),
|
||
};
|
||
} else {
|
||
// 实时成绩
|
||
urlStr = app.getNetAddresss(
|
||
"plugin.kart.Frontend.Store.Modules.Screen.Controllers.records.index"
|
||
);
|
||
json = {
|
||
store_id: Number(this.data.id),
|
||
screen_id: "real_time",
|
||
kart_match_id: this.data.GroupTaps,
|
||
};
|
||
}
|
||
|
||
app._postNetWork({
|
||
url: urlStr,
|
||
data: json,
|
||
success: (resdata) => {
|
||
var res = resdata.data;
|
||
if (res.result == 1) {
|
||
if (that.data.topNav == "0") {
|
||
console.log("成绩排行================>>>>>>>>");
|
||
that.setData({
|
||
first_info: res.data.ranking.slice(0, 3),
|
||
info: res.data.ranking.slice(3),
|
||
is_ranking: res.data.member_ranking.is_ranking,
|
||
title: res.data.title ? res.data.title : "",
|
||
my_info: res.data.member_ranking,
|
||
});
|
||
if (res.data.ranking.length == 0) {
|
||
that.setData({
|
||
istemp: false,
|
||
});
|
||
} else {
|
||
that.setData({
|
||
istemp: true,
|
||
});
|
||
}
|
||
console.log(that.data.istemp);
|
||
wx.setNavigationBarTitle({
|
||
title: res.data.title,
|
||
});
|
||
for (let i = 0; i < res.data.ranking.length; i++) {
|
||
if (res.data.ranking[i].uid == that.data.myUid) {
|
||
console.log(res.data.ranking[i]);
|
||
that.setData({
|
||
my_info_ind: i,
|
||
});
|
||
}
|
||
}
|
||
}
|
||
if (that.data.topNav == 2) {
|
||
console.log("实时成绩================>>>>>>>>");
|
||
that.setData({
|
||
group: res.data.kart_match,
|
||
first_info: res.data.member_ranking.slice(0, 3),
|
||
info: res.data.member_ranking.slice(3),
|
||
});
|
||
if (
|
||
res.data.member_ranking == 0 &&
|
||
res.data.kart_match.length == 0
|
||
) {
|
||
that.setData({
|
||
istemp: false,
|
||
});
|
||
} else {
|
||
that.setData({
|
||
istemp: true,
|
||
});
|
||
}
|
||
for (let i = 0; i < res.data.kart_match.length; i++) {
|
||
console.log(res.data.kart_match[i]);
|
||
|
||
if (that.data.GroupTaps) {
|
||
if (res.data.kart_match[i].id == that.data.GroupTaps) {
|
||
if (res.data.kart_match[i].state != 6) {
|
||
// if (res.data.kart_match[i].running_at == 0) {
|
||
that.realTimeIn(i, res);
|
||
// }else{
|
||
// let nowTime = Date.parse(new Date()) / 1000;
|
||
// }
|
||
}
|
||
res.data.kart_match[i].started_at = utils.formatTimeTwo(
|
||
res.data.kart_match[i].started_at,
|
||
"Y-M-D"
|
||
);
|
||
that.setData({
|
||
GroupList: res.data.kart_match[i],
|
||
GroupTaps: res.data.kart_match[i].id,
|
||
});
|
||
}
|
||
} else {
|
||
that.setData({
|
||
GroupList: res.data.kart_match[0],
|
||
GroupTaps: Number(res.data.kart_match[0].id),
|
||
});
|
||
if (res.data.kart_match[0].state != 6) {
|
||
if (res.data.kart_match[0].running_at == 0) {
|
||
that.realTimeIn(0, res);
|
||
} else {
|
||
console.log("000000000000000000000");
|
||
that.realTimeIn(0, res);
|
||
}
|
||
}
|
||
}
|
||
}
|
||
// if (res.data.kart_match.length > 0) {
|
||
// that.data.interval = setInterval(() => {
|
||
// that.setData({
|
||
// local_time: utils.formatTime(new Date()).slice(11),
|
||
// });
|
||
// console.log(that.data.interval)
|
||
// }, 1000);
|
||
// }
|
||
}
|
||
if (that.data.topNav == 1) {
|
||
that.setData({
|
||
memberInfo: res.data,
|
||
});
|
||
}
|
||
} else {
|
||
console.log(res.msg);
|
||
}
|
||
},
|
||
});
|
||
},
|
||
realTimeIn(i, res) {
|
||
res.data.kart_match[i].running_at = res.data.kart_match[i].started_at;
|
||
let nowTime = Date.parse(new Date()) / 1000;
|
||
console.log(nowTime);
|
||
// let that = this;
|
||
this.data.realTimeIn_set = setInterval(() => {
|
||
let isnow = nowTime++;
|
||
this.settime_a(res.data.kart_match[i].running_at, isnow);
|
||
}, 1000);
|
||
},
|
||
settime_a(time, nowTime) {
|
||
let timeing = time;
|
||
this.time_endS(timeing, nowTime);
|
||
console.log((nowTime - timeing) * 1000);
|
||
let date3 = (nowTime - timeing) * 1000;
|
||
// var day = Math.floor(date3 / (24 * 3600 * 1000));
|
||
var leave1 = date3 % (24 * 3600 * 1000);
|
||
var hours = Math.floor(leave1 / (3600 * 1000));
|
||
var leave2 = leave1 % (3600 * 1000); //计算小时数后剩余的毫秒数
|
||
var minutes = Math.floor(leave2 / (60 * 1000));
|
||
var leave3 = leave2 % (60 * 1000); //计算分钟数后剩余的毫秒数
|
||
var seconds = Math.round(leave3 / 1000);
|
||
if (hours < 10) {
|
||
hours = `0${hours}`;
|
||
}
|
||
if (minutes < 10) {
|
||
minutes = `0${minutes}`;
|
||
}
|
||
if (seconds < 10) {
|
||
seconds = `0${seconds}`;
|
||
}
|
||
let txt = `${hours}:${minutes}:${seconds}`;
|
||
this.setData({
|
||
is_running_at: txt,
|
||
});
|
||
return txt;
|
||
},
|
||
time_endS(time, nowTime) {
|
||
let start_at_time = (time + this.data.GroupList.countdown) - nowTime;
|
||
start_at_time = start_at_time * 1000;
|
||
let date3 = start_at_time;
|
||
// var day = Math.floor(date3 / (24 * 3600 * 1000));
|
||
var leave1 = date3 % (24 * 3600 * 1000);
|
||
var hours = Math.floor(leave1 / (3600 * 1000));
|
||
var leave2 = leave1 % (3600 * 1000); //计算小时数后剩余的毫秒数
|
||
var minutes = Math.floor(leave2 / (60 * 1000));
|
||
var leave3 = leave2 % (60 * 1000); //计算分钟数后剩余的毫秒数
|
||
var seconds = Math.round(leave3 / 1000);
|
||
if (hours < 10) {
|
||
hours = `0${hours}`;
|
||
}
|
||
if (minutes < 10) {
|
||
minutes = `0${minutes}`;
|
||
}
|
||
if (seconds < 10) {
|
||
seconds = `0${seconds}`;
|
||
}
|
||
let txt = `${hours}:${minutes}:${seconds}`;
|
||
this.setData({
|
||
start_at_time: txt
|
||
});
|
||
},
|
||
timeIsReal() {
|
||
let json = {};
|
||
let urlStr;
|
||
let that = this;
|
||
|
||
// 实时成绩
|
||
urlStr = app.getNetAddresss(
|
||
"plugin.kart.Frontend.Store.Modules.Screen.Controllers.records.index"
|
||
);
|
||
json = {
|
||
store_id: Number(this.data.id),
|
||
screen_id: "real_time",
|
||
kart_match_id: this.data.GroupTaps,
|
||
};
|
||
|
||
app._postNetWork({
|
||
url: urlStr,
|
||
data: json,
|
||
success: (resdata) => {
|
||
var res = resdata.data;
|
||
if (res.result == 1) {
|
||
if (that.data.topNav == 2) {
|
||
console.log("实时成绩================>>>>>>>>");
|
||
that.setData({
|
||
group: res.data.kart_match,
|
||
first_info: res.data.member_ranking.slice(0, 3),
|
||
info: res.data.member_ranking.slice(3),
|
||
});
|
||
if (
|
||
res.data.member_ranking == 0 &&
|
||
res.data.kart_match.length == 0
|
||
) {
|
||
that.setData({
|
||
istemp: false,
|
||
});
|
||
} else {
|
||
that.setData({
|
||
istemp: true,
|
||
});
|
||
}
|
||
for (let i = 0; i < res.data.kart_match.length; i++) {
|
||
console.log(res.data.kart_match[i]);
|
||
|
||
if (that.data.GroupTaps) {
|
||
if (res.data.kart_match[i].id == that.data.GroupTaps) {
|
||
res.data.kart_match[i].started_at = utils.formatTimeTwo(res.data.kart_match[i].started_at, "Y-M-D");
|
||
that.setData({
|
||
GroupList: res.data.kart_match[i],
|
||
GroupTaps: res.data.kart_match[i].id,
|
||
});
|
||
}
|
||
} else {
|
||
that.setData({
|
||
GroupList: res.data.kart_match[0],
|
||
GroupTaps: Number(res.data.kart_match[0].id),
|
||
});
|
||
}
|
||
}
|
||
}
|
||
} else {
|
||
console.log(res.msg);
|
||
}
|
||
},
|
||
});
|
||
},
|
||
}); |