| 
					
				 | 
			
			
				@@ -28,12 +28,29 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       style="width: 400px; margin: 0 auto" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       label-position="left" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      <el-form-item label="启用标签" prop="labelFlag"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-form-item 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        label="启用标签" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        prop="labelFlag" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        :rules="{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          required: true, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          message: '请选择是否开启标签', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          trigger: 'change', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         <el-radio-group v-model="labelForm.labelFlag" :disabled="editable"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           <el-radio label="0">关闭</el-radio> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           <el-radio label="1">开启</el-radio> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         </el-radio-group> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <div 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        v-if=" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          labelForm.labelFlag == 1 && (labelForm.labelArr || []).length == 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        " 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-form-item label=" "> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          您没有添加标签,所以标签功能尚未生效 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       <div v-if="labelForm.labelFlag == 1"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         <el-form-item 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           v-for="(label, index) in labelForm.labelArr" 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -49,13 +66,24 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           <el-input v-model="label.labelName" :disabled="editable"></el-input> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           <el-popconfirm 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             title="此标签在用,删除前请仔细检查,是否删除?" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            confirm-button-text='删除' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            confirm-button-text="删除" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             @onConfirm="removeLabel(label)" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             v-if="!!label.id" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            <el-button slot="reference"  :disabled="editable">删除</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <el-button 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              slot="reference" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              :disabled="editable" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              :loading="label.loading" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              >删除</el-button 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           </el-popconfirm> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <el-button @click="removeLabel(label)"  :disabled="editable" v-else>删除</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <el-button 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            @click="removeLabel(label)" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            :disabled="editable" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            :loading="label.loading" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            v-else 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            >删除</el-button 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       <el-form-item> 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -65,6 +93,9 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           v-show="labelForm.labelFlag == 1" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           >新增</el-button 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-button type="danger" @click="editLabel">{{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          editable ? "修改标签" : "取消" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }}</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         <el-button 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           type="primary" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           @click="submitForm('labelForm')" 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -72,15 +103,12 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           v-show="!editable" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           >提交</el-button 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <el-button type="danger" @click="editLabel">{{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          editable ? "修改标签" : "取消" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        }}</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     </el-form> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 </template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 <script> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import { sysDeptDemoList, addlabel } from "@/api/label/label"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import { sysDeptDemoList, addlabel, selectLabel } from "@/api/label/label"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   name: "Label_AddLabel", 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -92,13 +120,12 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             id: "", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             labelName: "hah", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         delArr: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       editable: true, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       tempForm: undefined, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      delLabelItem:{} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   created() { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -108,9 +135,7 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     init() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       this.getList(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    test(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-       
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    test() {}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     getList() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       return sysDeptDemoList().then((res) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (res.code == 200) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -121,9 +146,6 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    delLabel(label){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      this.delLabelItem = label; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     submitForm(labelForm) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       this.$refs[labelForm].validate((valid) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (valid) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -144,14 +166,41 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       this.$refs[labelForm].resetFields(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     removeLabel(item) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      if(!!item.id){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        this.labelForm.delArr.push(item.id); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        console.log(this.labelForm.delArr) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var index = this.labelForm.labelArr.indexOf(item); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      if (index !== -1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        this.labelForm.labelArr.splice(index, 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      item.loading = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.labelForm = { ...this.labelForm }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if (!item.id) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        var index = this.labelForm.labelArr.indexOf(item); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (index !== -1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.labelForm.labelArr.splice(index, 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        item.loading = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.labelForm = { ...this.labelForm }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      selectLabel({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        labelId: item.id, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }).then((res) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (res.code == 200) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          if (res.data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.labelForm.delArr.push(item.id); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            var index = this.labelForm.labelArr.indexOf(item); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (index !== -1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              this.labelForm.labelArr.splice(index, 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            item.loading = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.labelForm = { ...this.labelForm }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.msgError("请先清空标签下的成员之后,再来删除标签操作"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            item.loading = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.labelForm = { ...this.labelForm }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.msgError("查询标签状态失败,请重试"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          item.loading = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.labelForm = { ...this.labelForm }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     addLabel() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       this.labelForm.labelArr.push({ 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -163,7 +212,7 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (!this.editable) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (this.tempForm !== undefined) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           this.labelForm = JSON.parse(this.tempForm); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          this.labelForm.delArr = [] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.labelForm.delArr = []; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         this.tempForm = JSON.stringify({ ...this.labelForm }); 
			 |