Browse Source

官方无效的无效理由优化

zhuliu 1 year ago
parent
commit
4bb8e769e8

+ 10 - 3
src/views/report/InvalidResponse/components/reasonsAndEvidence/details.vue

@@ -18,6 +18,7 @@
         <el-button type="primary" size="small" @click="editContent" class="margin-right_10">{{edit?'完成':'编辑'}}</el-button>
     </div>
     <div class="content" v-if="content.proofGroupMessage">
+        <!-- 权利要求 -->
         <template>
             <div >
                 <div class="left">
@@ -83,6 +84,7 @@
                 </div>
             </div>
         </template>
+        <!-- 无效发条 -->
         <template>
             <div>
                 <div class="left">
@@ -203,7 +205,8 @@
                 </div>
             </template>
         </template>
-        <template  v-if="['2','3','4','8'].indexOf(row.statutesId) !=-1">
+        <!-- 证据组合 -->
+        <template  v-if="['2','3','4','8'].indexOf(row.statutesId) !=-1 && this.row.proofGroupId">
             <!-- <div>
                 <div class="left">
                     组合
@@ -338,13 +341,13 @@
         </template>
     </div>
     <!-- 控制隐藏 -->
-    <div class="controlShow">
+    <div class="controlShow" v-if="this.row.proofGroupId">
         <el-link type="primary" @click="controlShow">
             {{ content.showFeature?'隐藏':'展开' }}
         </el-link>
     </div>
 
-    <div v-if="content.showFeature || edit">
+    <div v-if="(content.showFeature || edit) && this.row.proofGroupId">
         <div v-for="(item,index) in content.FirstEvidenceReason" :key="index">
             <div class="content" style="background:#ffca00">
                 <div>
@@ -1258,6 +1261,10 @@ export default {
     },
     async getData(){
         if(!this.row.details){
+            if(!this.row.proofGroupId){
+                this.content.proofGroupMessage = {}
+                return false
+            }
             const [proofGroupMessage,FirstEvidenceReason,secondEvidenceReason] = await Promise.allSettled([this.getProofGroupMessage(),this.queryEvidenceReason(0),this.queryEvidenceReason(1)])
             this.content.proofGroupMessage = proofGroupMessage.status == "fulfilled"?proofGroupMessage.value:{}
             var FirstEvidenceReason1 = FirstEvidenceReason.status == "fulfilled"?FirstEvidenceReason.value:[]

+ 79 - 23
src/views/report/InvalidResponse/components/reasonsAndEvidence/reasonsAndEvidence.vue

@@ -750,23 +750,48 @@ export default {
     },
     //获取无效理由和证据
     async getList(){
-        var params = {
-            projectId:this.projectId
-        }
+        // var params = {
+        //     projectId:this.projectId
+        // }
+        // var data = []
+        // this.loading = true
+        // this.expends = []
+        // await this.$api.queryInvalidStatutes(params).then(response=>{
+        //     if(response.code == 200){
+        //         data = response.data.data
+        //         data.forEach(async item=>{
+        //            await this.queryProofGroup(item,data)
+        //         })
+                
+        //     }
+        // }).catch(error=>{
+
+        // })
         var data = []
         this.loading = true
         this.expends = []
-        await this.$api.queryInvalidStatutes(params).then(response=>{
-            if(response.code == 200){
-                data = response.data.data
-                data.forEach(async item=>{
-                   await this.queryProofGroup(item,data)
-                })
-                
+        const [InvalidStatutes] = await Promise.allSettled([this.queryInvalidStatutes()])
+        data = InvalidStatutes.status =='fulfilled'?InvalidStatutes.value:[]
+        if(data.length>0){
+            for(var i = 0;i<data.length;i++){
+                var item = data[i]
+                const [ProofGroup] = await Promise.allSettled([this.queryProofGroup(item)])
+                item.proofGroups = ProofGroup.status =='fulfilled'?ProofGroup.value:[]
+                if(item.proofGroups.length>0){
+                    for(var j = 0;j<item.proofGroups.length;j++){
+                        var item1 = item.proofGroups[j]
+                        if(this.ifSecondInvalid){
+                            const [EvidenceReason,SecondEvidenceReason] = await Promise.allSettled([this.queryEvidenceReason(item1,0),this.queryEvidenceReason(item1,1)])
+                            item1.evidenceReason = EvidenceReason.status =='fulfilled'?EvidenceReason.value:[]
+                            item1.secondEvidenceReason = SecondEvidenceReason.status =='fulfilled'?SecondEvidenceReason.value:[]
+                        }else{
+                            const [EvidenceReason] = await Promise.allSettled([this.queryEvidenceReason(item1,0)])
+                            item1.evidenceReason = EvidenceReason.status =='fulfilled'?EvidenceReason.value:[]
+                        }
+                    }
+                }
             }
-        }).catch(error=>{
-
-        })
+        }
         setTimeout(()=>{
             this.loading = false
             var data2 = []
@@ -962,7 +987,7 @@ export default {
             // console.log(data2)
             this.getSpanArr(this.tableData)
             
-        },1000)
+        },100)
     },
      //装载数据
      freightData(FirstEvidenceReason1){
@@ -989,18 +1014,30 @@ export default {
             }
             return obj
     },
+
+    //查询无效发条
+    async queryInvalidStatutes(){
+        var params = {
+            projectId:this.projectId
+        }
+        return await this.$api.queryInvalidStatutes(params).then(response=> response.data.data)
+    },
     //查询证据组合
     async queryProofGroup(item,data){
         var params = {
             invalidStatutesId:item.id
         }
+        return await this.$api.queryProofGroup(params).then(response=>response.data.data)
+        var params = {
+            invalidStatutesId:item.id
+        }
         await this.$api.queryProofGroup(params).then(response=>{
             if(response.code == 200){
                 item.proofGroups = response.data.data
-                item.proofGroups.forEach(item1=>{
-                    this.queryEvidenceReason(item1,0)
+                item.proofGroups.forEach(async item1=>{
+                    await this.queryEvidenceReason(item1,0)
                     if(this.ifSecondInvalid){
-                       this.queryEvidenceReason(item1,1) 
+                     await  this.queryEvidenceReason(item1,1) 
                     }
                     
                 })
@@ -1015,6 +1052,11 @@ export default {
             groupId:row.id,
             gen:type
         }
+        return await this.$api.queryEvidenceReason(params).then(response=>response.data.data)
+        var params = {
+            groupId:row.id,
+            gen:type
+        }
         await this.$api.queryEvidenceReason(params).then(response=>{
             if(response.code == 200){
                 if(type == 0){
@@ -1339,9 +1381,16 @@ export default {
     },
     showDetails(data){
         var row = data.row
-        var num = this.tableData.findLastIndex(item=>{
-            return item.proofGroupId == row.proofGroupId
-        })
+        if(row.proofGroupId){
+            var num = this.tableData.findLastIndex(item=>{
+                return item.proofGroupId == row.proofGroupId
+            })
+        }else{
+            var num = this.tableData.findLastIndex(item=>{
+                return item.statutesId == row.statutesId
+            })
+        }
+        
         var keyId = this.tableData[num].keyId
         return  this.expends.indexOf(keyId) == -1
     },
@@ -1349,9 +1398,16 @@ export default {
     details(data){
         var row = data.row
         var scrollTop = document.querySelector('.el-table__body-wrapper').scrollTop
-        var num = this.tableData.findLastIndex(item=>{
-            return item.proofGroupId == row.proofGroupId
-        })
+        if(row.proofGroupId){
+            var num = this.tableData.findLastIndex(item=>{
+                return item.proofGroupId == row.proofGroupId
+            })
+        }else{
+            var num = this.tableData.findLastIndex(item=>{
+                return item.statutesId == row.statutesId
+            })
+        }
+        
         var keyId = this.tableData[num].keyId
         var index = this.expends.indexOf(keyId)
         if(index!=-1){