|
|
@@ -222,7 +222,7 @@
|
|
|
</section>
|
|
|
<section v-if="item.type=='radio'">
|
|
|
<el-input :readonly="item.edit" v-model="item.label" :class="item.edit?'edit_label':''"></el-input>
|
|
|
- <el-radio-group v-model="radio">
|
|
|
+ <el-radio-group>
|
|
|
<el-radio :label="iitem.label" v-for="(iitem,index) in item.items" :key="index">
|
|
|
<el-input :readonly="item.edit" v-model="iitem.label" :class="item.edit?'edit_label':''"></el-input>
|
|
|
<template v-if="!item.edit">
|
|
|
@@ -238,7 +238,7 @@
|
|
|
</section>
|
|
|
<section v-if="item.type=='checkbox'">
|
|
|
<el-input :readonly="item.edit" v-model="item.label" :class="item.edit?'edit_label':''"></el-input>
|
|
|
- <el-radio-group v-model="radio">
|
|
|
+ <el-radio-group>
|
|
|
<el-checkbox :label="iitem.label" v-for="(iitem,index) in item.items" :key="index">
|
|
|
<el-input :readonly="item.edit" v-model="iitem.label" :class="item.edit?'edit_label':''"></el-input>
|
|
|
<template v-if="!item.edit">
|
|
|
@@ -333,7 +333,7 @@
|
|
|
</el-upload>
|
|
|
</el-form-item>
|
|
|
<el-form-item v-if="this.widgetList.length">
|
|
|
- <el-button size="medium" type="primary" @click="dialogVisible = false">提交</el-button>
|
|
|
+ <el-button size="medium" type="primary" @click="dialogVisible = false" style="width:100%;margin-top:20px;">提交</el-button>
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
</div>
|
|
|
@@ -387,12 +387,61 @@ components: {vuedraggable},
|
|
|
}
|
|
|
},
|
|
|
methods:{
|
|
|
+ unique(arr){
|
|
|
+ var x = new Set(arr);
|
|
|
+ return [...x];
|
|
|
+ },
|
|
|
save(){
|
|
|
let id = this.$route.query.id;
|
|
|
+ let widgets = Array.from(this.widgetList);
|
|
|
+ let flag = 0;
|
|
|
+ let labels = []
|
|
|
+ widgets.forEach((item,index)=>{
|
|
|
+ labels.push(item.label)
|
|
|
+ })
|
|
|
+ if(labels.length!=this.unique(labels).length){
|
|
|
+ flag = 1
|
|
|
+ this.$alert("题干不能相同请仔细检查数据!","数据错误",{
|
|
|
+ confirmButtonText:"确定",
|
|
|
+ type:"error"
|
|
|
+ })
|
|
|
+ return false
|
|
|
+ }
|
|
|
+ widgets.forEach((item,index)=>{
|
|
|
+ if(item.label==""){
|
|
|
+ flag = 2
|
|
|
+ }
|
|
|
+ if(item.type=="radio"||item.type=="checkbox"){
|
|
|
+ let item_labels = []
|
|
|
+ item.items.forEach((obj,index)=>{
|
|
|
+ item_labels.push(obj.label)
|
|
|
+ })
|
|
|
+ if(item_labels.length!=this.unique(item_labels).length){
|
|
|
+ flag = 3
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ })
|
|
|
+ if(flag==2){
|
|
|
+ this.$alert("题干不能为空请仔细检查数据!","数据错误",{
|
|
|
+ confirmButtonText:"确定",
|
|
|
+ type:"error"
|
|
|
+ })
|
|
|
+ return false
|
|
|
+ }
|
|
|
+ if(flag==3){
|
|
|
+ this.$alert("选择题选项不能相同请仔细检查数据!","数据错误",{
|
|
|
+ confirmButtonText:"确定",
|
|
|
+ type:"error"
|
|
|
+ })
|
|
|
+ return false
|
|
|
+ }
|
|
|
+
|
|
|
let params = {
|
|
|
name:this.title,
|
|
|
- widget:JSON.stringify(this.widgetList)
|
|
|
+ widget:JSON.stringify(widgets)
|
|
|
}
|
|
|
+ console.log(widgets,22222222222)
|
|
|
if(id){
|
|
|
params.id = id;
|
|
|
this.$api.editTemplate(params).then(res=>{
|
|
|
@@ -508,7 +557,7 @@ components: {vuedraggable},
|
|
|
}
|
|
|
},
|
|
|
del(id){
|
|
|
- this.$confirm('确定删除吗', '提示', {
|
|
|
+ this.$confirm('确定删除吗?', '提示', {
|
|
|
type: 'warning'
|
|
|
}).then(() => {
|
|
|
this.$api.deleteEnterprise({id:id}).then((res)=>{
|