|
|
|
|
@ -26,11 +26,15 @@ |
|
|
|
|
</div> |
|
|
|
|
<div class="pro_name">{{ item1.project }} </div> |
|
|
|
|
<div class="pro_pos" :class="[item1.apmStatus === 2 ? 'tips' : item1.apmStatus == 1 ? 'cancel_tip' : '',]"> |
|
|
|
|
{{ item1.apmStatus == 1 ? '您的体检项目已取消' : item1.apmStatus == 3 ? '体检项目已完成' : (item1.apmStatus == 2 && item1.lastExamTime == 0) ? '您的体检已过期' : item1.limitTime }}</div> |
|
|
|
|
{{ |
|
|
|
|
item1.apmStatus == 1 ? '您的体检项目已取消' : item1.apmStatus == 3 ? '体检项目已完成' : (item1.apmStatus == 2 && |
|
|
|
|
item1.lastExamTime == 0) ? '您的体检已过期' : item1.limitTime |
|
|
|
|
}}</div> |
|
|
|
|
</div> |
|
|
|
|
<div class="pro_right"> |
|
|
|
|
<div class="cancel" @click="cancelRegisiter(item1)" |
|
|
|
|
:class="[item1.apmStatus == 3 ? 'finish' : item1.apmStatus == 1 || item1.limitCancelTime < 30 * 60 * 1000 ? 'cancel_item' : '',]">{{ |
|
|
|
|
:class="[item1.apmStatus == 3 ? 'finish' : item1.apmStatus == 1 || item1.limitCancelTime < 30 * 60 * 1000 ? 'cancel_item' : '',]"> |
|
|
|
|
{{ |
|
|
|
|
item1.apmStatus == 1 ? '已取消' : item1.apmStatus == 2 ? '取消预约' : item1.apmStatus == 3 ? '已完成' : '取消预约' |
|
|
|
|
}}</div> |
|
|
|
|
</div> |
|
|
|
|
@ -52,12 +56,12 @@ export default { |
|
|
|
|
userInfo: null, |
|
|
|
|
systemTime: dateFormat(new Date(), 'yyyy-MM-dd hh:mm:ss'), |
|
|
|
|
setInterval: 0, |
|
|
|
|
interVal:null, |
|
|
|
|
starTime:'', |
|
|
|
|
lastTime:'', |
|
|
|
|
timeArr:[], |
|
|
|
|
lastCanTime:'', |
|
|
|
|
limitTime:1000 * 60 *30 |
|
|
|
|
interVal: null, |
|
|
|
|
starTime: '', |
|
|
|
|
lastTime: '', |
|
|
|
|
timeArr: [], |
|
|
|
|
lastCanTime: '', |
|
|
|
|
limitTime: 1000 * 60 * 30 |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
mounted() { |
|
|
|
|
@ -68,9 +72,9 @@ export default { |
|
|
|
|
this.queryMyRecord(); |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
computed:{ |
|
|
|
|
computed: { |
|
|
|
|
}, |
|
|
|
|
watch:{ |
|
|
|
|
watch: { |
|
|
|
|
}, |
|
|
|
|
beforeDestroy() { |
|
|
|
|
if (this.setInterval) { |
|
|
|
|
@ -80,9 +84,20 @@ export default { |
|
|
|
|
methods: { |
|
|
|
|
//系统时间 |
|
|
|
|
querySystemTime() { |
|
|
|
|
if (this.GlobalConfig.appMode) { |
|
|
|
|
vaildInterfacefn("cgstjyyjzpzp", "qdsgajjtjczhqxtsj", JSON.stringify({}), "2", "https://" + this.GlobalConfig.urlCreatesign, "https://" + this.GlobalConfig.urlGateway).then((value) => { |
|
|
|
|
let retData = value; |
|
|
|
|
if (retData.code == 200) { |
|
|
|
|
this.systemTime = retData.data; |
|
|
|
|
} |
|
|
|
|
}, err => { |
|
|
|
|
}) |
|
|
|
|
} |
|
|
|
|
else { |
|
|
|
|
getSystemTime().then(res => { |
|
|
|
|
this.systemTime = res.data; |
|
|
|
|
}) |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
//我的预约列表 |
|
|
|
|
queryMyRecord() { |
|
|
|
|
@ -91,20 +106,53 @@ export default { |
|
|
|
|
duration: 0, |
|
|
|
|
}) |
|
|
|
|
try { |
|
|
|
|
if (this.GlobalConfig.appMode) { |
|
|
|
|
vaildInterfacefn("cgstjyyjzpzp", "qdsgajjtjczdckwdyy", JSON.stringify({ createDept: "", cupCardNo: this.userInfo.papersnumber, current: this.current, size: this.size }), "2", "https://" + this.GlobalConfig.urlCreatesign, "https://" + this.GlobalConfig.urlGateway).then((value) => { |
|
|
|
|
this.$toast.clear(); |
|
|
|
|
let retData = JSON.parse(value); |
|
|
|
|
// console.log(retData,'record') |
|
|
|
|
if (retData.code == 200) { |
|
|
|
|
this.examArr = retData.data.records; |
|
|
|
|
console.log(this.examArr) |
|
|
|
|
this.examArr.map(item1 => { |
|
|
|
|
item1.details.map(item => { |
|
|
|
|
console.log(item) |
|
|
|
|
let systemTime = Date.parse(new Date(this.systemTime)); |
|
|
|
|
item.starTime = systemTime |
|
|
|
|
let latime = item1.apmDay.substr(0, 10) + ' ' + item.timeFrame.split('-')[1] + ':00'; |
|
|
|
|
let lasCanTime = item1.apmDay.substr(0, 10) + ' ' + item.timeFrame.split('-')[0] + ':00'; |
|
|
|
|
item.lastCanTime = Date.parse(new Date(lasCanTime.replaceAll('-', '/'))) |
|
|
|
|
item.lastTime = Date.parse(new Date(latime.replaceAll('-', '/'))) |
|
|
|
|
item.limitTime = this.intervalTime(item.starTime, item.lastTime) |
|
|
|
|
item.lastExamTime = systemTime < item.lastTime ? item.lastTime - systemTime : 0 |
|
|
|
|
item.limitCancelTime = systemTime < item.lastCanTime ? item.lastCanTime - systemTime : 0;//距离取消预约剩余毫秒数 |
|
|
|
|
// console.log(latime,item.lastTime,lasCanTime,item.lastCanTime,item.limitCancelTime) //670422000 |
|
|
|
|
// this.$set( |
|
|
|
|
// item,"limitTime",item.limitTime |
|
|
|
|
// ); |
|
|
|
|
}) |
|
|
|
|
}) |
|
|
|
|
this.timeList() |
|
|
|
|
} |
|
|
|
|
}, err => { |
|
|
|
|
this.$toast.clear(); |
|
|
|
|
}) |
|
|
|
|
} |
|
|
|
|
else { |
|
|
|
|
myRecord("", this.userInfo.papersnumber, this.current, this.size).then(res => { |
|
|
|
|
this.$toast.clear(); |
|
|
|
|
this.examArr = res.data.records; |
|
|
|
|
console.log(this.examArr) |
|
|
|
|
this.examArr.map(item1 =>{ |
|
|
|
|
item1.details.map(item =>{ |
|
|
|
|
this.examArr.map(item1 => { |
|
|
|
|
item1.details.map(item => { |
|
|
|
|
console.log(item) |
|
|
|
|
let systemTime = Date.parse(new Date(this.systemTime)); |
|
|
|
|
item.starTime = systemTime |
|
|
|
|
let latime = item1.apmDay.substr(0,10) + ' ' + item.timeFrame.split('-')[1] + ':00'; |
|
|
|
|
let lasCanTime = item1.apmDay.substr(0,10) + ' ' + item.timeFrame.split('-')[0] + ':00'; |
|
|
|
|
item.lastCanTime = Date.parse(new Date(lasCanTime.replaceAll('-','/'))) |
|
|
|
|
item.lastTime = Date.parse(new Date(latime.replaceAll('-','/'))) |
|
|
|
|
item.limitTime = this.intervalTime(item.starTime,item.lastTime) |
|
|
|
|
let latime = item1.apmDay.substr(0, 10) + ' ' + item.timeFrame.split('-')[1] + ':00'; |
|
|
|
|
let lasCanTime = item1.apmDay.substr(0, 10) + ' ' + item.timeFrame.split('-')[0] + ':00'; |
|
|
|
|
item.lastCanTime = Date.parse(new Date(lasCanTime.replaceAll('-', '/'))) |
|
|
|
|
item.lastTime = Date.parse(new Date(latime.replaceAll('-', '/'))) |
|
|
|
|
item.limitTime = this.intervalTime(item.starTime, item.lastTime) |
|
|
|
|
item.lastExamTime = systemTime < item.lastTime ? item.lastTime - systemTime : 0 |
|
|
|
|
item.limitCancelTime = systemTime < item.lastCanTime ? item.lastCanTime - systemTime : 0;//距离取消预约剩余毫秒数 |
|
|
|
|
// console.log(latime,item.lastTime,lasCanTime,item.lastCanTime,item.limitCancelTime) //670422000 |
|
|
|
|
@ -153,24 +201,25 @@ export default { |
|
|
|
|
}, err => { |
|
|
|
|
this.$toast.clear(); |
|
|
|
|
}) |
|
|
|
|
} |
|
|
|
|
} catch (error) { |
|
|
|
|
this.$toast.clear(); |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
timeList(){ |
|
|
|
|
if(this.setInterval){ |
|
|
|
|
timeList() { |
|
|
|
|
if (this.setInterval) { |
|
|
|
|
clearInterval(this.setInterval) |
|
|
|
|
} |
|
|
|
|
this.setInterval = setInterval(() => { |
|
|
|
|
let arr = [] |
|
|
|
|
this.examArr.forEach(item => { |
|
|
|
|
item.details.map(item1 =>{ |
|
|
|
|
item.details.map(item1 => { |
|
|
|
|
item1.starTime = item1.starTime > 1000 ? item1.starTime + 1000 : 0; |
|
|
|
|
item1.limitTime = this.intervalTime(item1.starTime,item1.lastTime); |
|
|
|
|
item1.limitTime = this.intervalTime(item1.starTime, item1.lastTime); |
|
|
|
|
item1.lastExamTime = item1.lastExamTime > 1000 ? item1.lastExamTime - 1000 : 0; |
|
|
|
|
item1.limitCancelTime = item1.limitCancelTime > 1000 ? item1.limitCancelTime - 1000 : 0 |
|
|
|
|
this.$set(item.details,item1.limitTime,item1.limitTime) |
|
|
|
|
this.$set(item.details, item1.limitTime, item1.limitTime) |
|
|
|
|
// this.$set(item.details,item1.limitCancelTime,item1.limitCancelTime) |
|
|
|
|
}) |
|
|
|
|
// console.log(this.examArr) |
|
|
|
|
@ -180,22 +229,22 @@ export default { |
|
|
|
|
|
|
|
|
|
// 计算时间差 |
|
|
|
|
//计算两个时间之间的时间差 多少天时分秒 |
|
|
|
|
intervalTime(startTime,endTime) { |
|
|
|
|
intervalTime(startTime, endTime) { |
|
|
|
|
// var timestamp=new Date().getTime(); //计算当前时间戳 |
|
|
|
|
var timestamp = (Date.parse(new Date()))/1000;//计算当前时间戳 (毫秒级) |
|
|
|
|
var timestamp = (Date.parse(new Date())) / 1000;//计算当前时间戳 (毫秒级) |
|
|
|
|
var date1 = ""; //开始时间 |
|
|
|
|
if(timestamp<startTime){ |
|
|
|
|
date1=startTime; |
|
|
|
|
}else{ |
|
|
|
|
if (timestamp < startTime) { |
|
|
|
|
date1 = startTime; |
|
|
|
|
} else { |
|
|
|
|
date1 = timestamp; //开始时间 |
|
|
|
|
} |
|
|
|
|
var date2 = endTime; //结束时间 |
|
|
|
|
// var date3 = date2.getTime() - date1.getTime(); //时间差的毫秒数 |
|
|
|
|
var date3 = (date2- date1); //时间差的毫秒数 |
|
|
|
|
var date3 = (date2 - date1); //时间差的毫秒数 |
|
|
|
|
date3 = date3 < 0 ? 0 : date3 |
|
|
|
|
//计算出相差天数 |
|
|
|
|
var days = Math.floor(date3 / (24 * 3600 * 1000)); |
|
|
|
|
days = days < 0 ? '' :days + '天' |
|
|
|
|
days = days < 0 ? '' : days + '天' |
|
|
|
|
//计算出小时数 |
|
|
|
|
|
|
|
|
|
var leave1 = date3 % (24 * 3600 * 1000); //计算天数后剩余的毫秒数 |
|
|
|
|
@ -236,9 +285,9 @@ export default { |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
calcDateTimeStr(time) { |
|
|
|
|
console.log('剩余 ===>',time) |
|
|
|
|
console.log('剩余 ===>', time) |
|
|
|
|
let ret = calcTime(time); |
|
|
|
|
console.log('ret ===>',ret) |
|
|
|
|
console.log('ret ===>', ret) |
|
|
|
|
return time > 0 ? `距离体检还有${ret.days}天${ret.hours}:${ret.minutes}:${(ret.seconds + '').substr(0, 2)}` : '' |
|
|
|
|
}, |
|
|
|
|
//取消预约 |
|
|
|
|
@ -265,7 +314,18 @@ export default { |
|
|
|
|
success: (data) => { |
|
|
|
|
console.log(data) |
|
|
|
|
if (JSON.parse(data).buttonIndex == 1) { |
|
|
|
|
console.log('ces') |
|
|
|
|
// console.log('ces') |
|
|
|
|
if (this.GlobalConfig.appMode) { |
|
|
|
|
vaildInterfacefn("cgstjyyjzpzp", "qdsgajjtjczdqxtjyy", JSON.stringify({ id: row.id }), "2", "https://" + this.GlobalConfig.urlCreatesign, "https://" + this.GlobalConfig.urlGateway).then((value) => { |
|
|
|
|
let retData = JSON.parse(value); |
|
|
|
|
if (retData.code == 200) { |
|
|
|
|
this.$toast('操作成功'); |
|
|
|
|
this.queryMyRecord(); |
|
|
|
|
} |
|
|
|
|
}, err => { |
|
|
|
|
}) |
|
|
|
|
} |
|
|
|
|
else { |
|
|
|
|
recordCancel(row.id).then(res => { |
|
|
|
|
console.log(res) |
|
|
|
|
if (res.code == 200) { |
|
|
|
|
@ -274,6 +334,7 @@ export default { |
|
|
|
|
} |
|
|
|
|
}) |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
fail: function (data) { //错误返回 |
|
|
|
|
} |
|
|
|
|
@ -446,7 +507,7 @@ export default { |
|
|
|
|
pointer-events: none; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.limit{ |
|
|
|
|
.limit { |
|
|
|
|
pointer-events: none; |
|
|
|
|
background: #E5E5E5; |
|
|
|
|
color: #999; |
|
|
|
|
|