diff --git a/src/views/myExam.vue b/src/views/myExam.vue
index e9ffa0a..7837dfb 100644
--- a/src/views/myExam.vue
+++ b/src/views/myExam.vue
@@ -26,7 +26,7 @@
- {{ item.apmStatus == 1 ? '您的体检项目已取消' : item.apmStatus == 3 ? '体检项目已完成' : item.limitTime }}
+ {{ item.apmStatus == 1 ? '您的体检项目已取消' : item.apmStatus == 3 ? '体检项目已完成' : getTime(item.limitTime) }}
{
+ return time =>{
+ console.log(time)
+ let interVal = null
+ if(interVal){
+ clearInterval(this.interVal);
+ }else{
+ // this.intervalTime(this.starTime,this.lastTime)
+ interVal = setInterval(() => {
+ // time = this.intervalTime(time,this.lastTime)
+ time = time > 1000 ? time + 1000 : 0;
+ return time
+ }, 1000);
+ }
+ }
+ }
+ },
beforeDestroy() {
if (this.setInterval) {
clearInterval(this.setInterval);
@@ -87,11 +108,17 @@ export default {
this.examArr = res.data.records;
this.examArr.map(item => {
let systemTime = Date.parse(new Date(this.systemTime));
+ this.starTime = systemTime
+ let latime = item.apmDay.substr(0,10) + ' ' + item.timeFrame.split('-')[1] + ':00';
+ this.lastTime = Date.parse(new Date(latime))
let time = item.timeFrame.split('-')[1].split(':');
let endTime = Date.parse(new Date(this.doDateFormatter(item.apmDay) + ' ' + (time[0] < 10 ? '0' + time[0] : time[0]) + ':' + (time[1] < 10 ? '0' + time[1] : time[1]) + ':00'));
let time2 = item.timeFrame.split('-')[0].split(':');
let startTime = Date.parse(new Date(this.doDateFormatter(item.apmDay) + ' ' + (time2[0] < 10 ? '0' + time2[0] : time2[0]) + ':' + (time2[1] < 10 ? '0' + time2[1] : time2[1]) + ':00'));
- item.limitTime = this.calcDateTimeStr(systemTime < endTime ? endTime - systemTime : 0);//距离体检时间剩余毫秒数
+ item.time = systemTime < endTime ? endTime - systemTime : 0;
+ // item.limitTime = this.calcDateTimeStr(systemTime < endTime ? endTime - systemTime : 0);//距离体检时间剩余毫秒数
+ item.limitTime = systemTime
+ // console.log('time ===>',item.limitTime)
item.limitCancelTime = systemTime < startTime ? startTime - systemTime : 0;//距离取消预约剩余毫秒数
})
//开启倒计时
@@ -100,8 +127,11 @@ export default {
}
this.setInterval = setInterval(() => {
this.examArr.map(item => {
- item.limitTime = this.calcDateTimeStr(item.limitTime);
+ // item.limitTime = this.calcDateTimeStr(item.limitTime);
+ this.starTime = this.starTime > 1000 ? this.starTime + 1000 : 0;
+ item.limitTime = this.intervalTime(this.starTime,this.lastTime)
item.limitCancelTime = item.limitCancelTime > 1000 ? item.limitCancelTime - 1000 : 0;
+
})
}, 1000);
}, err => {
@@ -111,6 +141,41 @@ export default {
this.$toast.clear();
}
},
+
+ // 计算时间差
+ //计算两个时间之间的时间差 多少天时分秒
+ intervalTime(startTime,endTime) {
+ // var timestamp=new Date().getTime(); //计算当前时间戳
+ var timestamp = (Date.parse(new Date()))/1000;//计算当前时间戳 (毫秒级)
+ var date1 = ""; //开始时间
+ if(timestamp',time)
let ret = calcTime(time);
+ console.log('ret ===>',ret)
return time > 0 ? `距离体检还有${ret.days}天${ret.hours}:${ret.minutes}:${(ret.seconds + '').substr(0, 2)}` : ''
},
//取消预约