Browse Source

对比文件快选bug修改

zhuhao 2 years ago
parent
commit
679d2c509f

+ 51 - 5
RMS-FrontEnd/src/views/report/FTO/FTOPage/ChosePatent.vue

@@ -288,7 +288,7 @@ mixins:[PatentDetails,importPatent],
       // console.log(this.queryParams.isAdd,this.queryParams.isDelete);
       this.selectedTotal = Number(this.endNumber) - Number(this.startNumber) + 1 + Number(this.queryParams.isAdd.length) - Number(this.queryParams.isDelete.length)
     },
-    Switch(type) {//选择...确定公用
+    async Switch(type) {//选择...确定公用
       let params = { ...this.queryParams }
       if (params.field.length == 0) {
         params.field = params.tree
@@ -297,8 +297,49 @@ mixins:[PatentDetails,importPatent],
         case 0:
           this.queryParams.selected = this.tableData.map(item => item.patentNo);
           this.checkList = [...new Set(this.checkList.concat(this.queryParams.selected))]
-          this.selectedTotal = this.checkList.length
-          this.queryParams.isAdd=JSON.parse(JSON.stringify(this.checkList))
+          // this.selectedTotal = this.checkList.length
+          if(!this.quickSelect){
+            this.queryParams.isAdd=JSON.parse(JSON.stringify(this.checkList))
+            this.getSelectedTotal()
+            break;
+          }
+          this.tableData.forEach((item,index)=>{
+            var position = (this.queryParams.current-1)*this.queryParams.size + index + 1
+            if(position>=this.startNumber){
+              if(this.endNumber>=this.queryParams.current * this.queryParams.size){
+                var index1 = this.queryParams.isDelete.findIndex(i=>{
+                  return i == item.patentNo
+                })
+                if(index1!=-1){
+                  this.queryParams.isDelete.splice(index1,1)
+                }
+              }else{
+                if(position<=this.endNumber){
+                  var index1 = this.queryParams.isDelete.findIndex(i=>{
+                      return i == item.patentNo
+                    })
+                    if(index1!=-1){
+                      this.queryParams.isDelete.splice(index1,1)
+                    }
+                }else{
+                  var index2 = this.queryParams.isAdd.findIndex(i=>{
+                    return i == item.patentNo
+                  })
+                  if(index2==-1){
+                    this.queryParams.isAdd.push(item.patentNo)
+                  }
+                }
+              }
+            }else{
+              var index2 = this.queryParams.isAdd.findIndex(i=>{
+                return i == item.patentNo
+              })
+              if(index2==-1){
+                this.queryParams.isAdd.push(item.patentNo)
+              }
+            }
+          })
+          this.getSelectedTotal()
           this.getList()
 
           break
@@ -324,7 +365,12 @@ mixins:[PatentDetails,importPatent],
           // })
           this.queryParams.isDelete = []
           this.queryParams.isAdd = []
-          if(type == 2){
+          if (type == 2) {
+            if (!Number(this.queryParams.startNumber)||!Number(this.queryParams.endNumber)) {
+              this.queryParams.endNumber =this.endNumber>0?this.endNumber:this.total
+              this.queryParams.startNumber =this.endNumber>0?this.startNumber:1
+              break;
+            }
             this.startNumber = this.queryParams.startNumber
             this.endNumber = this.queryParams.endNumber
           }
@@ -333,7 +379,7 @@ mixins:[PatentDetails,importPatent],
           this.checkList=[]
           this.queryParams.isDelete = []
           this.queryParams.isAdd = []
-          this.getList()
+          await this.getList()
           this.commonSwitch()
           this.quickSelect = true
           

+ 52 - 6
RMS-FrontEnd/src/views/report/Invalid/InvalidPage/ChosePatent.vue

@@ -361,7 +361,7 @@ mixins:[PatentDetails,importPatent],
       //console.log(this.queryParams.isAdd,this.queryParams.isDelete);
       this.selectedTotal = Number(this.endNumber) - Number(this.startNumber) + 1 + Number(this.queryParams.isAdd.length) - Number(this.queryParams.isDelete.length)
     },
-    Switch(type) {//选择...确定公用
+    async Switch(type) {//选择...确定公用
       let params = { ...this.queryParams }
       if (params.field.length == 0) {
         params.field = params.tree
@@ -370,8 +370,49 @@ mixins:[PatentDetails,importPatent],
         case 0:
           this.queryParams.selected = this.tableData.map(item => item.patentNo);
           this.checkList = [...new Set(this.checkList.concat(this.queryParams.selected))]
-          this.selectedTotal = this.checkList.length
-          this.queryParams.isAdd=JSON.parse(JSON.stringify(this.checkList))
+          // this.selectedTotal = this.checkList.length
+          if(!this.quickSelect){
+            this.queryParams.isAdd=JSON.parse(JSON.stringify(this.checkList))
+            this.getSelectedTotal()
+            break;
+          }
+          this.tableData.forEach((item,index)=>{
+            var position = (this.queryParams.current-1)*this.queryParams.size + index + 1
+            if(position>=this.startNumber){
+              if(this.endNumber>=this.queryParams.current * this.queryParams.size){
+                var index1 = this.queryParams.isDelete.findIndex(i=>{
+                  return i == item.patentNo
+                })
+                if(index1!=-1){
+                  this.queryParams.isDelete.splice(index1,1)
+                }
+              }else{
+                if(position<=this.endNumber){
+                  var index1 = this.queryParams.isDelete.findIndex(i=>{
+                      return i == item.patentNo
+                    })
+                    if(index1!=-1){
+                      this.queryParams.isDelete.splice(index1,1)
+                    }
+                }else{
+                  var index2 = this.queryParams.isAdd.findIndex(i=>{
+                    return i == item.patentNo
+                  })
+                  if(index2==-1){
+                    this.queryParams.isAdd.push(item.patentNo)
+                  }
+                }
+              }
+            }else{
+              var index2 = this.queryParams.isAdd.findIndex(i=>{
+                return i == item.patentNo
+              })
+              if(index2==-1){
+                this.queryParams.isAdd.push(item.patentNo)
+              }
+            }
+          })
+          this.getSelectedTotal()
           this.getList()
           break
         case 1:
@@ -396,19 +437,24 @@ mixins:[PatentDetails,importPatent],
           // })
           this.queryParams.isDelete = []
           this.queryParams.isAdd = []
-          if(type == 2){
+          if (type == 2) {
+            if (!Number(this.queryParams.startNumber)||!Number(this.queryParams.endNumber)) {
+              this.queryParams.endNumber =this.endNumber>0?this.endNumber:this.total
+              this.queryParams.startNumber =this.endNumber>0?this.startNumber:1
+              break;
+            }
             this.startNumber = this.queryParams.startNumber
             this.endNumber = this.queryParams.endNumber
+            
           }
           
           // this.checkList =JSON.parse(JSON.stringify(this.queryParams.selected)) 
           this.checkList=[]
           this.queryParams.isDelete = []
           this.queryParams.isAdd = []
-          this.getList()
+          await this.getList()
           this.commonSwitch()
           this.quickSelect = true
-          
           break
       }
     },

+ 59 - 12
RMS-FrontEnd/src/views/report/components/SelectedPatent.vue

@@ -249,7 +249,7 @@
       getSelectedTotal(){
         this.selectedTotal = Number(this.endNumber) - Number(this.startNumber) + 1 + Number(this.queryParams.isAdd.length) - Number(this.queryParams.isDelete.length)
       },
-      Switch(type) {//选择...确定公用
+      async Switch(type) {//选择...确定公用
         let params = { ...this.queryParams }
         if (params.field.length == 0) {
           params.field = params.tree
@@ -259,8 +259,51 @@
             this.queryParams.selected = this.tableData.map(item => item.patentNo);
             this.checkList = [...new Set(this.checkList.concat(this.queryParams.selected))]
             // this.endNumber = this.queryParams.endNumber
-            this.selectedTotal = this.checkList.length
+            // this.selectedTotal = this.checkList.length
+              // 
+            
+          if(!this.quickSelect){
             this.queryParams.isAdd=JSON.parse(JSON.stringify(this.checkList))
+            this.getSelectedTotal()
+            break;
+          }
+          this.tableData.forEach((item,index)=>{
+            var position = (this.queryParams.current-1)*this.queryParams.size + index + 1
+            if(position>=this.startNumber){
+              if(this.endNumber>=this.queryParams.current * this.queryParams.size){
+                var index1 = this.queryParams.isDelete.findIndex(i=>{
+                  return i == item.patentNo
+                })
+                if(index1!=-1){
+                  this.queryParams.isDelete.splice(index1,1)
+                }
+              }else{
+                if(position<=this.endNumber){
+                  var index1 = this.queryParams.isDelete.findIndex(i=>{
+                      return i == item.patentNo
+                    })
+                    if(index1!=-1){
+                      this.queryParams.isDelete.splice(index1,1)
+                    }
+                }else{
+                  var index2 = this.queryParams.isAdd.findIndex(i=>{
+                    return i == item.patentNo
+                  })
+                  if(index2==-1){
+                    this.queryParams.isAdd.push(item.patentNo)
+                  }
+                }
+              }
+            }else{
+              var index2 = this.queryParams.isAdd.findIndex(i=>{
+                return i == item.patentNo
+              })
+              if(index2==-1){
+                this.queryParams.isAdd.push(item.patentNo)
+              }
+            }
+          })
+            this.getSelectedTotal()
             this.getList()
             break
           case 1:
@@ -285,7 +328,12 @@
             // })
             this.queryParams.isDelete = []
             this.queryParams.isAdd = []
-            if(type == 2){
+              if (type == 2) {
+                if (!Number(this.queryParams.startNumber)||!Number(this.queryParams.endNumber)) {
+                  this.queryParams.endNumber =this.endNumber>0?this.endNumber:this.total
+                  this.queryParams.startNumber =this.endNumber>0?this.startNumber:1
+                  break;
+                }
               this.startNumber = this.queryParams.startNumber
               this.endNumber = this.queryParams.endNumber
             }
@@ -294,9 +342,8 @@
             this.checkList=[]
             this.queryParams.isDelete = []
             this.queryParams.isAdd = []
-            this.getList()
+            await this.getList()
             this.commonSwitch()
-            console.log(this.checkList);
             this.quickSelect = true
             
             break
@@ -566,7 +613,7 @@
         // this.checkList = []
         // this.queryParams.endNumber=0
           await this.getList();
-          console.log(this.checkList);
+          // console.log(this.checkList);
         if(this.quickSelect){
           this.commonSwitch()
         }
@@ -583,7 +630,7 @@
         }
         this.queryParams.startNumber=this.startNumber,
         this.queryParams.endNumber=this.endNumber,
-        this.queryParams.reportId=this.reportId,
+        this.queryParams.reportId = this.reportId,
         this.$api.deleteCompareNo(this.queryParams).then(res => {
             if (res.code==200) {
               this.startNumber = 1
@@ -593,10 +640,10 @@
               this.queryParams.isAdd=[]
               this.queryParams.isDelete=[]
               this.checkList = []
-              for (let key in this.form) {
-                this.queryParams[key]=''
-              }
-              this.form = {}
+              // for (let key in this.form) {
+              //   this.queryParams[key]=''
+              // }
+              // this.form = {}
               this.getList2()
               this.$emit("save", true);
               this.$message({
@@ -653,7 +700,7 @@
           // this.checkList =JSON.parse(JSON.stringify([...new Set(this.checkList.concat(this.queryParams.selected))])) 
           // this.selected = this.checkList
           this.isFetch = true
-  
+          
         //  this.selectedTotal=response.data.selectedTotal+(this.endNumber-this.startNumber+1)+this.queryParams.isAdd.length-this.queryParams.isDelete.length
         
         }).catch(error => {