Przeglądaj źródła

标引时可以取消标引

zhuliu 1 rok temu
rodzic
commit
a919a64aba

+ 12 - 2
src/views/project/patentCollection/components/dialog/PatentBatchIndex.vue

@@ -20,9 +20,10 @@
                     size="small" placeholder="选择日期" class="width_100"></el-date-picker>
                 </template>
                 <template v-if="item.type === 4">
-                  <el-radio-group v-model="item.selected" @change="changeOption(item)">
+                  <!-- @change="changeOption(item)" -->
+                  <el-radio-group v-model="item.selected" >
                     <div v-for="option in item.option" :key="option.id">
-                      <el-radio :label="option.id">{{ option.name }}</el-radio>
+                      <el-radio :label="option.id"  @click.native.prevent="clickItem(option, item)">{{ option.name }}</el-radio>
                     </div>
                   </el-radio-group>
                 </template>
@@ -90,6 +91,14 @@ export default {
   mounted() {
   },
   methods: {
+    clickItem(option,item){
+      if(option.id == item.selected){
+        this.$set(item,'selected',null)
+      }else{
+        this.$set(item,'selected',option.id)
+      }
+      this.changeOption(item)
+    },
     // 
     changeOption(val) {
       var obj = {
@@ -225,6 +234,7 @@ export default {
     },
     // 弹窗关闭
     close() {
+      this.selectValue = []
       this.visible = false
     },
   },

+ 10 - 3
src/views/project/patentCollection/components/dialog/PatentIndexSetting.vue

@@ -33,7 +33,7 @@
             <template v-if="fieldType == 4">
               <el-radio-group v-model="selected">
                 <div v-for="option in customField.option">
-                  <el-radio :label="option.id">{{ option.name }}</el-radio>
+                  <el-radio :label="option.id" @click.native.prevent="clickItem(option)">{{ option.name }}</el-radio>
                 </div>
               </el-radio-group>
             </template>
@@ -94,12 +94,19 @@ export default {
       row: {},
       selected: [],
       patent:{},
-      search:{}
+      search:{},
     }
   },
   mounted() {
   },
   methods: {
+    clickItem(option){
+      if(option.id == this.selected){
+        this.$set(this,'selected',null)
+      }else{
+        this.$set(this,'selected',option.id)
+      }
+    },
     handleCloseLabel(label) {
       this.dynamicLabels.splice(this.dynamicLabels.indexOf(label), 1);
     },
@@ -332,7 +339,7 @@ export default {
                 taskId:this.taskId,
                 fieldType:this.fieldType,
                 fieldId:this.fieldId,
-                fieldValue:[this.selected],
+                fieldValue:this.selected?[this.selected]:[],
                 optionType:2
             }]
             break

+ 9 - 0
src/views/project/patentDetails/components/PatentField.vue

@@ -172,6 +172,14 @@ export default {
     },
     // 
     clickItem(data, item) {
+
+      if(data.id == item.selectedValue){
+        var tag = {
+          valueId:data.id
+        }
+        this.handleCloseValue(item,tag)
+        return
+      }
       this.gong(data, item)
     },
     handleCloseValue(item,tag){
@@ -209,6 +217,7 @@ export default {
     },
     // change与clickItem公用
     gong(data, item, checked) {
+      console.log(data,item)
       var params = {
         projectId: this.projectId,
         taskId: this.taskId,

+ 1 - 1
src/views/project/patentDetails/components/patentMessage/mixins/index.js

@@ -81,7 +81,7 @@ export const patentDetails = {
             
           }
         }).catch(error=>{
-          this.$message.error('数据刷新失败')
+          // this.$message.error('数据刷新失败')
           this.loading = false
         })
       })