|  |  | 
 |  |  |                 prop="id" | 
 |  |  |               /> | 
 |  |  |               <el-table-column | 
 |  |  |                 label="值类型" | 
 |  |  |                 label="结果类型" | 
 |  |  |                 fixed | 
 |  |  |                 align="center" | 
 |  |  |                 key="valueType" | 
 |  |  | 
 |  |  |               /><el-table-column | 
 |  |  |                 label="适用方式" | 
 |  |  |                 align="center" | 
 |  |  |                 key="suitWay" | 
 |  |  |                 prop="suitWay" | 
 |  |  |                 key="suitWayList" | 
 |  |  |                 prop="suitWayList" | 
 |  |  |                 width="120" | 
 |  |  |               > | 
 |  |  |                 <template slot-scope="scope"> | 
 |  |  |                   <dict-tag :options="mode" :value="scope.row.suitWay" /> | 
 |  |  |                   <dict-tag :options="mode" :value="scope.row.suitWayList" /> | 
 |  |  |                 </template> | 
 |  |  |               </el-table-column> | 
 |  |  |               <el-table-column | 
 |  |  | 
 |  |  |         <el-dialog | 
 |  |  |           :title="title" | 
 |  |  |           :visible.sync="indexopen" | 
 |  |  |           :close-on-click-modal="false" | 
 |  |  |           width="900px" | 
 |  |  |           append-to-body | 
 |  |  |         > | 
 |  |  | 
 |  |  |           > | 
 |  |  |             <el-row v-if="!measurement"> | 
 |  |  |               <el-col :span="12"> | 
 |  |  |                 <el-form-item label="指标名称" prop="deptId"> | 
 |  |  |                 <el-form-item label="指标名称" prop="targetname"> | 
 |  |  |                   <el-input | 
 |  |  |                     v-model="indexform.targetname" | 
 |  |  |                     placeholder="请输入指标种类" | 
 |  |  | 
 |  |  |             <!-- deptOptions --> | 
 |  |  |             <el-row v-if="!measurement"> | 
 |  |  |               <el-col :span="8"> | 
 |  |  |                 <el-form-item label="指标分类"> | 
 |  |  |                 <el-form-item label="指标分类" prop="assortid"> | 
 |  |  |                   <el-select | 
 |  |  |                     v-model="indexform.assortid" | 
 |  |  |                     size="medium" | 
 |  |  | 
 |  |  |                 </el-form-item> | 
 |  |  |               </el-col> | 
 |  |  |               <el-col :span="8"> | 
 |  |  |                 <el-form-item label="语言" prop="deptId"> | 
 |  |  |                 <el-form-item label="语言" prop="language"> | 
 |  |  |                   <el-select | 
 |  |  |                     v-model="indexform.language" | 
 |  |  |                     placeholder="请选择语言" | 
 |  |  | 
 |  |  |                 </el-form-item> | 
 |  |  |               </el-col></el-row | 
 |  |  |             > | 
 |  |  |             <el-row v-if="!measurement"> | 
 |  |  |               <el-col :span="24"> | 
 |  |  |                 <el-form-item label="题目类型"> | 
 |  |  |                   <el-radio-group v-model="indexform.scriptType"> | 
 |  |  |                     <el-radio :label="1">单选</el-radio> | 
 |  |  |                     <el-radio :label="2">多选</el-radio> | 
 |  |  |                     <el-radio :label="3">填空</el-radio> | 
 |  |  |                   </el-radio-group> | 
 |  |  |                 </el-form-item> | 
 |  |  |               </el-col></el-row | 
 |  |  |             > | 
 |  |  |  | 
 |  |  |             <el-row v-if="!measurement"> | 
 |  |  |               <el-col :span="24"> | 
 |  |  |                 <el-form-item label="适用方式" prop="email"> | 
 |  |  |                   <el-select v-model="indexform.suitWay" placeholder="请选择"> | 
 |  |  |                 <el-form-item label="适用场景" prop="suitWayList"> | 
 |  |  |                   <el-select | 
 |  |  |                     v-model="indexform.suitWayList" | 
 |  |  |                     multiple | 
 |  |  |                     placeholder="请选择" | 
 |  |  |                   > | 
 |  |  |                     <el-option | 
 |  |  |                       v-for="index in mode" | 
 |  |  |                       :key="index.value" | 
 |  |  | 
 |  |  |               <el-col :span="12"> | 
 |  |  |                 <el-form-item label="测试输入" prop="nickName"> | 
 |  |  |                   <el-input | 
 |  |  |                     v-model="testvalue" | 
 |  |  |                     v-model="indexform.content" | 
 |  |  |                     placeholder="请输入测试内容" | 
 |  |  |                     maxlength="40" | 
 |  |  |                   /> | 
 |  |  |                 </el-form-item> | 
 |  |  |               </el-col> | 
 |  |  |               <el-col :span="4"> | 
 |  |  |                 <el-button type="success">开始测试</el-button> | 
 |  |  |                 <el-button type="success" @click="testtagerlist" | 
 |  |  |                   >开始测试</el-button | 
 |  |  |                 > | 
 |  |  |               </el-col> | 
 |  |  |             </el-row> | 
 |  |  |           </el-form> | 
 |  |  | 
 |  |  |   gettargetInfo, | 
 |  |  |   particulartarget, | 
 |  |  |   gettargetInfoedit, | 
 |  |  |   testtagerlist, | 
 |  |  |   addtarget, | 
 |  |  |   deletetarget, | 
 |  |  |   getillnesslist, | 
 |  |  | 
 |  |  |       valuetypelb: [], | 
 |  |  |  | 
 |  |  |       // 表单校验 | 
 |  |  |       rules: {}, | 
 |  |  |       rules: { | 
 |  |  |         targetname: [ | 
 |  |  |           { required: true, message: "指标名称不能为空", trigger: "blur" }, | 
 |  |  |         ], | 
 |  |  |         assortid: [ | 
 |  |  |           { required: true, message: "指标分类不能为空", trigger: "blur" }, | 
 |  |  |         ], | 
 |  |  |         language: [ | 
 |  |  |           { required: true, message: "指标语言不能为空", trigger: "blur" }, | 
 |  |  |         ], | 
 |  |  |         isAvailable: [ | 
 |  |  |           { required: true, message: "指标语言不能为空", trigger: "blur" }, | 
 |  |  |         ], | 
 |  |  |       }, | 
 |  |  |     }; | 
 |  |  |   }, | 
 |  |  |   watch: { | 
 |  |  | 
 |  |  |         guid: 1, | 
 |  |  |         id: this.indexform.id, | 
 |  |  |         targettype: this.indexform.targettype, | 
 |  |  |         isoperation: 1, | 
 |  |  |         targetvalue: "", | 
 |  |  |         targetregex: "", | 
 |  |  |         targetregex2: "", | 
 |  |  | 
 |  |  |       if (index !== -1) { | 
 |  |  |         this.testuserList[index].isoperation = 3; | 
 |  |  |         this.targetoptionList.push(this.testuserList[index]); | 
 |  |  |         console.log(this.targetoptionList, "aaaa.targetoptionList"); | 
 |  |  |         this.testuserList.splice(index, 1); // 从索引位置删除一个元素 | 
 |  |  |         this.sortFn(); | 
 |  |  |       } else { | 
 |  |  | 
 |  |  |           targetvalue: item.targetvalue, | 
 |  |  |           targetregex2: item.targetregex2, | 
 |  |  |           targetregex: item.targetregex, | 
 |  |  |           targetoptionid: item.targetoptionid, | 
 |  |  |           id: this.indexform.id, | 
 |  |  |           targettype: this.indexform.targettype, | 
 |  |  |           isoperation: item.targetoptionid ? 2 : 1, | 
 |  |  | 
 |  |  |           nodynamiccruxs: item.nodynamiccruxs, | 
 |  |  |           dynamiccruxsJson: item.dynamiccruxsJson, | 
 |  |  |           nodynamiccruxsJson: item.nodynamiccruxsJson, | 
 |  |  |           targetoptionid: item.targetoptionid, | 
 |  |  |         }; | 
 |  |  |       }); | 
 |  |  |       console.log(this.testuserList); | 
 |  |  | 
 |  |  |  | 
 |  |  |     // 取消按钮 | 
 |  |  |     cancel() { | 
 |  |  |       this.indexform = null; | 
 |  |  |       this.indexopen = false; | 
 |  |  |       this.reset(); | 
 |  |  |     }, | 
 |  |  | 
 |  |  |     // 表单重置 | 
 |  |  |     reset() { | 
 |  |  |       this.indexform = { | 
 |  |  |         suitWay: undefined, | 
 |  |  |         suitWayList: undefined, | 
 |  |  |         id: undefined, | 
 |  |  |         targetdesc: undefined, | 
 |  |  |         baseTagList: [], | 
 |  |  |         targetoptionList: [], | 
 |  |  |       }; | 
 |  |  |       this.resetForm("indexform"); | 
 |  |  |       // this.resetForm("indexform"); | 
 |  |  |     }, | 
 |  |  |     /** 搜索按钮操作 */ | 
 |  |  |     handleQuery() { | 
 |  |  | 
 |  |  |       this.reset(); | 
 |  |  |       console.log(row); | 
 |  |  |       this.title = "指标详情"; | 
 |  |  |       this.indexform = {}; | 
 |  |  |       this.indexform = row; | 
 |  |  |       if (!row.targetoptionList[0]) { | 
 |  |  |         row.targetoptionList = [ | 
 |  |  |           { | 
 |  |  |             targettype: "1", | 
 |  |  |             targetvalue: "", | 
 |  |  |             targetregex: "", | 
 |  |  |             targetregex2: "", | 
 |  |  |             isoperation: 1, | 
 |  |  |             dynamiccruxs: [], | 
 |  |  |             nodynamiccruxs: [], | 
 |  |  |             dynamiccruxsJson: "", | 
 |  |  |             nodynamiccruxsJson: "", | 
 |  |  |           }, | 
 |  |  |         ]; | 
 |  |  |       } | 
 |  |  |       this.dynamicTags = row.baseTagList.map(this.processElement); | 
 |  |  |       this.testuserList = row.targetoptionList; | 
 |  |  |       this.testvalue=''; | 
 |  |  |       console.log(this.testuserList, "bbbb"); | 
 |  |  |       this.testvalue = ""; | 
 |  |  |       this.indexopen = true; | 
 |  |  |       this.measurement = false; | 
 |  |  |     }, | 
 |  |  | 
 |  |  |  | 
 |  |  |     /** 更新/修改提交按钮 */ | 
 |  |  |     submitForm: function () { | 
 |  |  |       // this.indexform.targetoptionList=[] | 
 |  |  |       this.indexform.targetoptionList = this.indexform.targetoptionList.map( | 
 |  |  |         (res) => { | 
 |  |  |           res.isoperation = 2; | 
 |  |  |           return res; | 
 |  |  |         } | 
 |  |  |       ); | 
 |  |  |       // this.indexform.targetoptionList = this.indexform.targetoptionList.map( | 
 |  |  |       //   (res) => { | 
 |  |  |       //     res.isoperation = 2; | 
 |  |  |       //     return res; | 
 |  |  |       //   } | 
 |  |  |       // ); | 
 |  |  |  | 
 |  |  |       this.$refs["indexform"].validate((valid) => { | 
 |  |  |         this.indexform.targetoptionList = this.testuserList.concat( | 
 |  |  |           this.targetoptionList | 
 |  |  |         ); | 
 |  |  |         console.log(this.indexform.targetoptionList, "11"); | 
 |  |  |         this.indexform.targetoptionList.forEach((item) => { | 
 |  |  |           if (item.isoperation != 3 && item.targetoptionid) { | 
 |  |  |             console.log(item, "item"); | 
 |  |  |             item.isoperation = 2; | 
 |  |  |           } else { | 
 |  |  |           } | 
 |  |  |         }); | 
 |  |  |         if (valid) { | 
 |  |  |           if (!this.indexform.version) this.indexform.version = "1.0"; | 
 |  |  |           if (this.indexform.id != undefined) { | 
 |  |  | 
 |  |  |         } | 
 |  |  |       }); | 
 |  |  |     }, | 
 |  |  |     // 测试表单 | 
 |  |  |     testtagerlist() { | 
 |  |  |       if (this.indexform.content) { | 
 |  |  |         let data = this.indexform; | 
 |  |  |         data.targetoptionList = this.testuserList.concat(this.targetoptionList); | 
 |  |  |         testtagerlist(data).then((res) => { | 
 |  |  |           this.$modal.msgSuccess("测试成功"); | 
 |  |  |           this.testgovalue = res.msg; | 
 |  |  |           this.getList(); | 
 |  |  |         }); | 
 |  |  |       } else { | 
 |  |  |         this.$modal.msgError("请填写测试内容"); | 
 |  |  |         return; | 
 |  |  |       } | 
 |  |  |     }, | 
 |  |  |     /** 删除按钮操作 */ | 
 |  |  |     handleDelete(row) { | 
 |  |  |       const userIds = row.id || this.ids; |