|
@@ -7,13 +7,14 @@
|
|
|
</head-bar>
|
|
|
<div class="step_box">
|
|
|
<topicVue
|
|
|
- :cJson="cJson"
|
|
|
+ :cJson.sync="cJson"
|
|
|
@getTestWorkByCid="getTestWorkByCid"
|
|
|
@publish2="publish2"
|
|
|
:title="name"
|
|
|
:tid="tid"
|
|
|
:brief="brief"
|
|
|
ref="topicVue"
|
|
|
+ :gcourseid="gcourseid"
|
|
|
></topicVue>
|
|
|
</div>
|
|
|
<div class="edit_top">
|
|
@@ -45,8 +46,10 @@ export default {
|
|
|
title: '',
|
|
|
brief: '',
|
|
|
cJson: [],
|
|
|
+ cJson2: [],
|
|
|
cid: this.$route.query.courseid,
|
|
|
- userid: this.$route.query.userid
|
|
|
+ userid: this.$route.query.userid,
|
|
|
+ gcourseid: this.$route.query.courseid
|
|
|
}
|
|
|
},
|
|
|
computed: {
|
|
@@ -63,9 +66,9 @@ export default {
|
|
|
}
|
|
|
selectTestCourseWorks(params)
|
|
|
.then(res => {
|
|
|
- console.log('修改', res)
|
|
|
if (res[1].length) {
|
|
|
this.cJson = JSON.parse(res[1][0].courseJson)
|
|
|
+ this.cJson2 = JSON.parse(res[1][0].courseJson)
|
|
|
}
|
|
|
this.title = res[0][0].title
|
|
|
this.brief = res[0][0].brief
|
|
@@ -104,7 +107,108 @@ export default {
|
|
|
// console.log(array)
|
|
|
return array
|
|
|
},
|
|
|
+ setJson2(json) {
|
|
|
+ let _json = json
|
|
|
+ // this.type = _json[0].ttype;
|
|
|
+ let checkArray = _json.filter(item => {
|
|
|
+ if (item.array) {
|
|
|
+ item.array = item.array.filter(item2 => {
|
|
|
+ if (item2.ttype == 1 && item2.json && !item2.json.answer2) {
|
|
|
+ item2.json.answer2 = []
|
|
|
+ }
|
|
|
+ if (item2.array) {
|
|
|
+ item2.array = item2.array.filter(item3 => {
|
|
|
+ if (item3.ttype == 1 && item3.json && !item3.json.answer2) {
|
|
|
+ item3.json.answer2 = []
|
|
|
+ }
|
|
|
+ return item3
|
|
|
+ })
|
|
|
+ }
|
|
|
+ return (item2.ttype != 1 && item2.array.length > 0) || item2.ttype == 1
|
|
|
+ })
|
|
|
+ }
|
|
|
+ if (item.ttype == 1 && item.json && !item.json.answer2) {
|
|
|
+ item.json.answer2 = []
|
|
|
+ }
|
|
|
+ console.log(item.array)
|
|
|
+ return (item.ttype != 1 && item.array.length > 0) || item.ttype == 1
|
|
|
+ })
|
|
|
+ console.log(checkArray)
|
|
|
+ return checkArray
|
|
|
+ },
|
|
|
+ setJSON(json) {
|
|
|
+ return json.filter(item => {
|
|
|
+ if (item.array) {
|
|
|
+ item.array = item.array.filter(item2 => {
|
|
|
+ if (item2.ttype == 1 && item2.json) {
|
|
|
+ delete item2.json.answer2
|
|
|
+ delete item2.json.score2
|
|
|
+ delete item2.json.file
|
|
|
+ }
|
|
|
+ if (item2.array) {
|
|
|
+ item2.array = item2.array.filter(item3 => {
|
|
|
+ if (item3.ttype == 1 && item3.json) {
|
|
|
+ delete item3.json.answer2
|
|
|
+ delete item3.json.score2
|
|
|
+ delete item3.json.file
|
|
|
+ }
|
|
|
+ return item3
|
|
|
+ })
|
|
|
+ }
|
|
|
+ return item2
|
|
|
+ })
|
|
|
+ } else if (item.ttype == 1 && item.json) {
|
|
|
+ delete item.json.answer2
|
|
|
+ delete item.json.score2
|
|
|
+ delete item.json.file
|
|
|
+ }
|
|
|
+ return item
|
|
|
+ console.log(item.array)
|
|
|
+ })
|
|
|
+ },
|
|
|
+ setCourseid(json) {
|
|
|
+ let _json = json
|
|
|
+ // this.type = _json[0].ttype;
|
|
|
+ let checkArray = _json.filter(item => {
|
|
|
+ if (item.array) {
|
|
|
+ item.array = item.array.filter(item2 => {
|
|
|
+ if (item2.ttype == 1 && item2.json && !item2.json.answer2 && item2.type != 6 && item2.type != 7) {
|
|
|
+ item2.json.answer2 = []
|
|
|
+ } else if (item2.type == 6) {
|
|
|
+ item2.json.answer2 = this.courseid ? this.courseid : ''
|
|
|
+ } else if (item2.type == 7) {
|
|
|
+ item2.json.answer2 = ''
|
|
|
+ }
|
|
|
+ if (item2.array) {
|
|
|
+ item2.array = item2.array.filter(item3 => {
|
|
|
+ if (item3.ttype == 1 && item3.json && !item3.json.answer2 && item3.type != 6 && item3.type != 7) {
|
|
|
+ item3.json.answer2 = []
|
|
|
+ } else if (item3.type == 6) {
|
|
|
+ item3.json.answer2 = this.courseid ? this.courseid : ''
|
|
|
+ } else if (item3.type == 7) {
|
|
|
+ item3.json.answer2 = ''
|
|
|
+ }
|
|
|
+ return item3
|
|
|
+ })
|
|
|
+ }
|
|
|
+ return (item2.ttype != 1 && item2.array.length > 0) || item2.ttype == 1
|
|
|
+ })
|
|
|
+ }
|
|
|
+ if (item.ttype == 1 && item.json && !item.json.answer2 && item.type != 6 && item.type != 6 && item.type != 7) {
|
|
|
+ item.json.answer2 = []
|
|
|
+ } else if (item.type == 6) {
|
|
|
+ item.json.answer2 = this.courseid ? this.courseid : ''
|
|
|
+ } else if (item.type == 7) {
|
|
|
+ item.json.answer2 = ''
|
|
|
+ }
|
|
|
+ console.log(item.array)
|
|
|
+ return (item.ttype != 1 && item.array.length > 0) || item.ttype == 1
|
|
|
+ })
|
|
|
+ console.log(checkArray)
|
|
|
+ return checkArray
|
|
|
+ },
|
|
|
getTestWorkByCid(courseid) {
|
|
|
+ console.log('修改问卷')
|
|
|
this.courseid = courseid
|
|
|
let params = {
|
|
|
cid: this.cid,
|
|
@@ -114,9 +218,10 @@ export default {
|
|
|
let _courseid = courseid
|
|
|
selectTestWorksCid(params)
|
|
|
.then(res => {
|
|
|
- console.log('selectTestWorksCid', res)
|
|
|
if (res[0].length) {
|
|
|
let rData = res[0]
|
|
|
+ console.log('rData', rData)
|
|
|
+
|
|
|
this.tid = ''
|
|
|
// eslint-disable-next-line no-labels
|
|
|
aa: for (var i = 0; i < rData.length; i++) {
|
|
@@ -138,11 +243,13 @@ export default {
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+ console.log('tid', this.tid)
|
|
|
if (!this.tid) {
|
|
|
this.cJson = this.setJSON(this.setCourseid(JSON.parse(JSON.stringify(this.cJson2))))
|
|
|
}
|
|
|
} else {
|
|
|
this.tid = ''
|
|
|
+ console.log(111)
|
|
|
this.cJson = this.setJSON(this.setCourseid(JSON.parse(JSON.stringify(this.cJson2))))
|
|
|
}
|
|
|
this.$forceUpdate()
|
|
@@ -156,7 +263,6 @@ export default {
|
|
|
for (var i = 0; i < array.length; i++) {
|
|
|
if (array[i].type != 6) {
|
|
|
let param = array[i].json
|
|
|
- console.log('????', param)
|
|
|
if (array[i].type == 5 && param.file && param.file.length > 0) {
|
|
|
pan++
|
|
|
} else if (param.answer2.length || typeof param.answer2 == 'number') {
|