|
@@ -7,11 +7,20 @@
|
|
|
is: (c.type == 1 && c.testCount > 1) || (c.type != 1 && c.testCount > 0),
|
|
|
no: c.testCount == 0,
|
|
|
isR: c.type == 3,
|
|
|
- isS: c.type == 1 && c.testCount == 1
|
|
|
+ isS: c.type == 1 && c.testCount == 1,
|
|
|
+ isDead: isDeadlinePassed(c.overtime) && c.testCount == 0
|
|
|
}"
|
|
|
>
|
|
|
<span>{{
|
|
|
- c.testCount > 0 ? (c.type == 3 ? '已批改' : c.type == 1 && c.testCount == 1 ? '已保存' : '已完成') : '未完成'
|
|
|
+ c.testCount > 0
|
|
|
+ ? c.type == 3
|
|
|
+ ? '已批改'
|
|
|
+ : c.type == 1 && c.testCount == 1
|
|
|
+ ? '已保存'
|
|
|
+ : '已完成'
|
|
|
+ : isDeadlinePassed(c.overtime)
|
|
|
+ ? '逾期'
|
|
|
+ : '未完成'
|
|
|
}}</span>
|
|
|
</div>
|
|
|
<div class="ctitle">{{ c.title }}</div>
|
|
@@ -83,7 +92,7 @@ export default {
|
|
|
...mapGetters(['userinfo']),
|
|
|
getNum() {
|
|
|
return function(array) {
|
|
|
- let _array = JSON.parse(array)
|
|
|
+ const _array = JSON.parse(array)
|
|
|
let num = 0
|
|
|
_array.forEach(el => {
|
|
|
if ((el.ttype == 3 || el.ttype == 2) && el.array.length > 0) {
|
|
@@ -109,18 +118,18 @@ export default {
|
|
|
return function(array) {
|
|
|
// let _array = JSON.parse(array)
|
|
|
let _score = 0
|
|
|
- let scoreArray = []
|
|
|
+ const scoreArray = []
|
|
|
for (var i = 0; i < array.length; i++) {
|
|
|
- let _array = JSON.parse(array[i].courseJson)
|
|
|
+ const _array = JSON.parse(array[i].courseJson)
|
|
|
let score = 0
|
|
|
for (var j = 0; j < _array.length; j++) {
|
|
|
- let el = _array[j]
|
|
|
+ const el = _array[j]
|
|
|
if ((el.ttype == 3 || el.ttype == 2) && el.array.length > 0) {
|
|
|
for (var k = 0; k < el.array.length; k++) {
|
|
|
- let item = el.array[k]
|
|
|
+ const item = el.array[k]
|
|
|
if (item.ttype == 2 && item.array.length > 0) {
|
|
|
for (var z = 0; z < item.array.length; z++) {
|
|
|
- let item2 = item.array[z]
|
|
|
+ const item2 = item.array[z]
|
|
|
if (item2.ttype == 1 && item2.json && item2.json.score2) {
|
|
|
score += parseInt(item2.json.score2)
|
|
|
}
|
|
@@ -144,12 +153,21 @@ export default {
|
|
|
}
|
|
|
},
|
|
|
methods: {
|
|
|
+ isDeadlinePassed(deadline) {
|
|
|
+ if (deadline) {
|
|
|
+ const _line = new Date(deadline)
|
|
|
+ const currentDate = new Date()
|
|
|
+ return currentDate > _line
|
|
|
+ } else {
|
|
|
+ return false
|
|
|
+ }
|
|
|
+ },
|
|
|
goTo(cid) {
|
|
|
// return console.log(cid)
|
|
|
debugger
|
|
|
|
|
|
// eslint-disable-next-line prettier/prettier
|
|
|
- this.$router.push({ path: '/testDetail', query: { courseid: cid.courseId, userid: cid.userid } })
|
|
|
+ this.$router.push({ path: '/testDetail', query: { courseid: cid.courseId, userid: cid.userid }})
|
|
|
},
|
|
|
doTest(cid, tid, name, userid) {
|
|
|
this.$router.push({ path: '/preview', query: { courseid: cid, tid: tid, name: name, userid: userid } })
|
|
@@ -165,8 +183,8 @@ export default {
|
|
|
.confirm({
|
|
|
title: '删除提示',
|
|
|
message: '确定删除此提交的评测么?',
|
|
|
- confirmButtonText: '确认', //改变确认按钮上显示的文字
|
|
|
- cancelButtonText: '取消' //改变取消按钮上显示的文字
|
|
|
+ confirmButtonText: '确认', // 改变确认按钮上显示的文字
|
|
|
+ cancelButtonText: '取消' // 改变取消按钮上显示的文字
|
|
|
})
|
|
|
.then(() => {
|
|
|
const params = [
|
|
@@ -224,6 +242,10 @@ export default {
|
|
|
color: rgb(255, 173, 31);
|
|
|
background-color: rgba(255, 173, 31, 0.1);
|
|
|
}
|
|
|
+ .isDead {
|
|
|
+ color: rgb(240, 66, 66);
|
|
|
+ background-color: rgba(240, 66, 66, 0.1);
|
|
|
+ }
|
|
|
.ctitle {
|
|
|
font-size: 16px;
|
|
|
font-weight: bold;
|