Jelajahi Sumber

Merge branch 'dev' of http://47.106.221.167:8088/zhuliu/RMS-FrontEnd into dev

zhuliu 2 tahun lalu
induk
melakukan
d6295480e3

+ 4 - 1
RMS-FrontEnd/src/views/report/FTO/FTOPage/ReportDetails/index.vue

@@ -12,7 +12,7 @@
         <el-container>
           <!-- <el-header></el-header> -->
           <el-main class="admin-main-box">
-            <component :row="row" :is="activeMenu" :reportMessage="row" :reportId="reportId" :patentNo="signPatentNo" :signPatentNo="signPatentNo" :reportId2="reportId"></component>
+            <component :row="row" :is="activeMenu" :reportMessage="row" :reportId="reportId" :patentNo="signPatentNo" :signPatentNo="signPatentNo" :reportId2="reportId" :reportType="reportType"></component>
           </el-main>
         </el-container>
       </el-container>
@@ -67,6 +67,9 @@ export default {
         row(){
             return this.$s.getSession('row')
         },
+        reportType(){
+            return this.$s.getSession('row').type
+        },
         reportId(){
             return this.$s.getSession('row').id
         },

+ 32 - 3
RMS-FrontEnd/src/views/report/FTO/FTOPage/components/PatentFeatures.vue

@@ -34,7 +34,10 @@
           <div>
             <el-button @click="keepSendCollaboration" type="primary" style="margin-right: 10px;" v-if="this.coordination && this.FeaturesNumber==0">完成协同</el-button>
             <el-button @click="keep" type="primary" style="float: right;" :loading="this.loadings">保存</el-button>
-            <el-button @click="handleWhole" v-if="this.taskWorkRemakA==0" type="primary" style="margin-right: 10px;">全部修改</el-button>
+            <el-tooltip class="item" effect="dark" content="一键同意保存协同人所有修改意见" placement="top"  v-if="this.taskWorkRemakA==0">
+               <el-button @click="handleWhole" type="primary" style="margin-right: 10px;">全部同意</el-button>
+            </el-tooltip>
+           
           </div>
         </div>
         <!-- 表格部分 -->
@@ -156,7 +159,10 @@
           </el-table-column>
           <el-table-column v-if="this.taskWorkRemakA==0" label="操作" min-width="120"  align="center" >
             <template slot-scope="scope">
-              <el-button @click="handleClick(scope.row)" size="small">一键修改</el-button>
+              <div  v-if="scope.row.isDelShow==1">
+                <el-button  @click="handleClick(scope.row)" size="small">同意协同人意见</el-button>
+              </div>
+              
             </template>
           </el-table-column>
         </el-table>
@@ -200,6 +206,7 @@
         taskWorkRemakA: this.taskWorkRemak,
         // isKeepB:this.isKeepA,
         isAll:false,
+        ishandleClick:true,
         options: [
           {
             value: 1,
@@ -493,6 +500,7 @@
               console.log(2222, this.taskWorkRemakA);
               if (res.code == 200) {
                 this.CompareMessage(res)
+                this.isDel()
                 this.isAll=true
               }
             // console.log("@@",this.tableData1);
@@ -544,6 +552,27 @@
         //   })
         // }
       },
+      isDel() {
+       
+        for (let i = 0; i < this.tableData.length; i++){
+          if (this.tableData[i].compareResult2 ==undefined) {
+            this.tableData[i].compareResult2=''
+          }
+          if (this.tableData[i].targetDescription2 ==undefined) {
+            this.tableData[i].targetDescription2=''
+          }
+          if (this.tableData[i].compareDescription2 ==undefined) {
+            this.tableData[i].compareDescription2=''
+          }
+          if (this.tableData[i].targetDescription!=this.tableData[i].targetDescription2||this.tableData[i].compareDescription!=this.tableData[i].compareDescription2||this.tableData[i].compareResult != this.tableData[i].compareResult2) {
+            this.tableData[i].isDelShow=1
+          } else {
+            this.tableData[i].isDelShow=0
+            console.log(2);
+          }
+        }
+        console.log(this.tableData);
+      },
       //查询对比记录数据处理
       CompareMessage(res) {
         this.tableData1 = [];
@@ -590,7 +619,6 @@
         if (!this.isAll) {
           return false
         }
-        // var two = ["targetDescription2", "compareDescription2", "compareResult2"]
           if (this.tableData[rowIndex].compareResult2 ==undefined) {
             this.tableData[rowIndex].compareResult2=''
           }
@@ -601,6 +629,7 @@
             this.tableData[rowIndex].compareDescription2=''
           }
         if (this.tableData[rowIndex].targetDescription!=this.tableData[rowIndex].targetDescription2||this.tableData[rowIndex].compareDescription!=this.tableData[rowIndex].compareDescription2||this.tableData[rowIndex].compareResult != this.tableData[rowIndex].compareResult2) {
+
           return 'red';
 
         }

+ 34 - 51
RMS-FrontEnd/src/views/report/FTO/FTOPage/components/ProductResult.vue

@@ -4,7 +4,7 @@
             
             <el-aside style="background:white" :style="{width:'calc(100% - ' + width +')'}">
                 <div style="display:flex; justify-content:flex-end;align-items:center;margin-bottom: 10px;">
-                    <el-button @click="choice" type="primary" size="small" >选择专利</el-button>
+                    <!-- <el-button @click="choice" type="primary" size="small" >选择专利</el-button> -->
                     <el-button @click="taskWork" type="primary" size="small" >协同办公</el-button>
                     <el-dropdown size="medium" style="margin:10px 20px 10px 20px">
                         <el-button type="primary" size="small" >
@@ -148,33 +148,8 @@
           :visible.sync="dialogVisible"
           width="800px"
           :before-close="handleClose">
-            <patentTable :tableData="choiceTableData" :queryParams="queryParams" :choiceMark="choiceMark" :isHandleSure="isHandleSure" @selected="handleSelected" @onForm="handleOnForm"></patentTable>
-          <!-- <el-table
-            :data="choiceTableData"
-            border
-            style="width: 100%">
-            <el-table-column
-              prop="date"
-              label="专利号"
-              width="180">
-              <template slot-scope="scope">
-                <el-checkbox-group v-model="checkList">
-                  <el-checkbox :label="scope.row.patentNo"><span>{{ scope.row.patentNo }}</span></el-checkbox>
-                   
-                </el-checkbox-group>
-               
-              </template>
-            </el-table-column>
-            <el-table-column
-              prop="name"
-              label="比对结果"
-              width="180">
-              <template slot-scope="scope">
-                <span>{{ scope.row.patentNo }}</span>
-              </template>
-            </el-table-column>
-           
-          </el-table> -->
+            <patentTable :tableData="choiceTableData" :queryParams="queryParams" :choiceMark="choiceMark" :isHandleSure="isHandleSure" @selected="handleSelected" @onForm="handleOnForm" @onSelected="handleSelected"></patentTable>
+         
           <div class="pagination">
             <el-pagination :current-page.sync="queryParams.current" :page-size="queryParams.size" :total="total" @current-change="handleCurrentChange" layout="total, prev, pager, next, jumper" background></el-pagination>
           </div>
@@ -183,8 +158,9 @@
             <el-button type="primary" @click="handleSure">确 定</el-button>
           </span>
         </el-dialog>
+
         <CreateReport ref="ReportForm" @getList="isGetList"></CreateReport>
-        <sendCollaboration :visibleCollaborations="visibleWork" @collaboration="collaboration" :reportId="queryParams.reportId" :compareResultA="compareResult" :selected="selected"></sendCollaboration>
+        <sendCollaboration :visibleCollaborations="visibleWork" @collaboration="collaboration" :reportId="queryParams.reportId" :compareResultA="compareResult" :selected="selected" :reportType="row.type" :patentNo1="row.signPatentNo"></sendCollaboration>
     </div>
 </template>
 
@@ -198,12 +174,13 @@ export default {
     sendCollaboration,
     patentTable,
     },
-    props:['reportId','row','taskId'],
+    props:['reportId','row','taskId',"reportType"],
     data() {
       return {
             choiceTableData: [],
             checkList: [],
-            choiceMark:true,
+        choiceMark: false,
+        choiceScreen:false,
             isHandleSure:false,
             selected:[],
             dialogVisible:false,
@@ -261,7 +238,7 @@ export default {
       },
         
     },
-   async mounted() {
+  async mounted() {
        await this.getPatentList()
        if(this.patentList.length>0){
         this.patent = this.patentList[0]
@@ -271,20 +248,27 @@ export default {
     },
   methods: {
       // 选择专利
-    choice() {
-        this.dialogVisible=true
-        },
+    // choice() {
+    //     this.dialogVisible=true
+    //     },
+     // 选择专利关闭
     handleClose() {
         this.dialogVisible=false
     },
+     // 选择专利确定
     handleSure() { 
       this.dialogVisible = false
-      this.isHandleSure=true
+      this.isHandleSure = true
+
+      this.visibleWork = true
+      this.compareResult = this.queryParams.compareResult
+          
     },
-    // 选择专利数据
+    // 选专利数据
     handleSelected(val) {
-      console.log(val);
-      this.selected=val
+      console.log(val)
+      this.selected = val
+      console.log(this.selected);
       this.isHandleSure=false
     },
     // 选择专利筛选条件
@@ -296,14 +280,6 @@ export default {
       await this.getPatentList()
     },
     handleCurrentChange(val) {//分页
-      
-      // if (this.params) {
-      //   this.params.current = val;
-      //   this.getList2()
-      // } else {
-      //   this.queryParams.current = val;
-      //   this.getList()
-      // }
     },
       async handleAnalyse(id) {
         //     let a = {
@@ -481,12 +457,19 @@ export default {
         }
       },
        // 工作协同
-      taskWork() { 
-        this.visibleWork = true
-        this.compareResult=this.queryParams.compareResult
+    taskWork() { 
+        if (this.row.type==4) {
+          //侵权分析
+           this.visibleWork = true//协同办公框打开
+            this.compareResult=this.queryParams.compareResult
+        } else {
+          this.dialogVisible=true//选择专利框打开
+          this.choiceMark=true//选择专利框打开
+        }
+       
       },
       collaboration(val) { 
-        this.visibleWork=val
+        this.visibleWork = val
       },
     },
 }

+ 4 - 1
RMS-FrontEnd/src/views/report/Invalid/InvalidPage/AssignTasks.vue

@@ -46,7 +46,10 @@
                 <el-button v-if="!scope.row.vVisible" class="items" @click.native="save(scope.row)">保存</el-button>
                 <!-- <span>&nbsp;|&nbsp;</span> -->
                 <el-button @click="chosePatentFile(scope.row)" v-if="scope.row.isChoose!=true">选择</el-button>
-                <el-button @click="cancelChoose(scope.row)" v-else>取消选择</el-button>
+                <el-tooltip v-else class="item" effect="dark" content="取消选择的专利" placement="top">
+                  <el-button @click="cancelChoose(scope.row)" >取消</el-button>
+                </el-tooltip>
+                
 
                 <el-button @click="removePerson(scope.row)"  type="danger">移除</el-button>
             </div>

+ 28 - 14
RMS-FrontEnd/src/views/report/avoid/avoidPage/avoidDirection.vue

@@ -25,7 +25,7 @@
       </div>
       <div>
         <el-button @click="keep" type="primary">保存</el-button>
-        <!-- <el-button @click="finish" type="primary">完成</el-button> -->
+        <el-button @click="finish" type="primary">完成</el-button>
       </div>
         
     </div>
@@ -136,24 +136,38 @@ export default {
     };
   },
   mounted() {
-    // console.log( this.$s.getSession('reportMessage1'));
+    console.log( this.$s.getSession('reportMessage1'),this.reportId);
     // this.splitPatentRight()
     this.getSplitMessage()
   },
   methods: {
     //完成
-    // finish() {
-      // this.$confirm('请您确定任务不再修改, 是否继续?', '提示', {
-      //         confirmButtonText: '确定',
-      //         cancelButtonText: '取消',
-      //         type: 'warning'
-      //       }).then(() => {
-      //         this.$message.success("任务已完成")
-      //         // this.$api
-      //       }).catch(() => {
-      //         this.$message.info("任务继续进行")         
-      // });
-    // },
+    finish() {
+      this.$confirm('请您确定任务不再修改, 是否继续?', '提示', {
+              confirmButtonText: '确定',
+              cancelButtonText: '取消',
+              type: 'warning'
+            }).then(() => {
+              this.$message.success("任务已完成,跳转报告管理页面")
+              var a = {
+                reportId:this.reportId,
+                status:2
+              }
+              this.$api.UpdateStatus(a).then(response=>{
+                if(response.code == 200){
+                  var a = this.$s.getSession('params')
+                  a.reportStatus = 2
+                  this.$s.setSession('params',a)
+                  var b = this.$s.getSession('reportMessage1')
+                  b.status = 2
+                  this.$s.setSession('reportMessage1', b)
+                  this.$router.replace("/admin/rManage");
+                }
+              })
+            }).catch(() => {
+              this.$message.info("任务继续进行")         
+      });
+    },
     getSplitMessage() {
       let a = {
         taskId:null,

+ 43 - 17
RMS-FrontEnd/src/views/report/components/patentTable.vue

@@ -160,6 +160,7 @@ export default{
       form: {},
       choiceForm: {},
       choiceFormS: {},
+      // choiceScreen: false,
       // formS: {},
       // tableData:[],
       checkList:[],
@@ -183,7 +184,7 @@ export default{
     }
   },
   mounted() {
-    console.log(this.tableData,this.selected);
+    console.log(this.tableData,this.selected,this.choiceMark);
   },
   watch:{
     isSubmit(val){
@@ -212,19 +213,41 @@ export default{
     getRowKeys(row) {
       return row.id
     },
-    getFunInfo(patentNo){
-      if (this.checkList.includes(patentNo)) {
-        this.checkList.splice(
-          this.checkList.indexOf(this.checkList.find(function (element) {
-            return element === patentNo;
-          }
-          )
-          ), 1);
+    getFunInfo(patentNo) {
+      // if (this.choiceMark) {
+      //   if (this.selected.includes(patentNo)) {
+      //     this.selected.splice(
+      //       this.selected.indexOf(this.selected.find(function (element) {
+      //         return element === patentNo;
+      //       }
+      //       )
+      //       ), 1);
 
-      } else {
-        this.checkList.push(patentNo)
+      //   } else {
+      //     this.selected.push(patentNo)
+      //   }
+      //   this.$emit('onSelected',this.selected)
+      // } else {
+         if (this.checkList.includes(patentNo)) {
+            this.checkList.splice(
+              this.checkList.indexOf(this.checkList.find(function (element) {
+                return element === patentNo;
+              }
+              )
+              ), 1);
+
+          } else {
+            this.checkList.push(patentNo)
+          }
+      this.$emit('PersonPatent', this.checkList)
+      if (this.choiceMark) {
+        this.selected = this.checkList
+        console.log(this.checkList,this.selected);
       }
-      this.$emit('PersonPatent',this.checkList)
+        
+      // }
+      
+     
     },
     sift() {
       this.visible = true
@@ -247,13 +270,16 @@ export default{
       // }
       // this.queryParams.patentName=this.form.patentName
       // this.getList()
-      if (!this.choiceMark) {
-        this.formS=JSON.parse(JSON.stringify(this.form))
-        this.$emit("onForm", this.formS)
-        this.visible = false
-      } else {
+      if (this.choiceMark) {
         this.choiceFormS = JSON.parse(JSON.stringify(this.choiceForm))
+        // this.choiceScreen = true
         this.$emit("onForm", this.choiceFormS)
+        // this.$emit("onScreen", this.choiceScreen)
+        console.log(this.choiceFormS);
+        this.visible = false
+      } else {
+        this.formS = JSON.parse(JSON.stringify(this.form))
+        this.$emit("onForm", this.formS)
         this.visible = false
       }
       

+ 20 - 19
RMS-FrontEnd/src/views/report/components/sendCollaboration.vue

@@ -200,9 +200,9 @@ export default {
     ...mapGetters(['userinfo'])
   },
   mounted() {
-    // if (this.reportType==4) {
-      // this.queryParams.patentNos.push(this.patentNo1)
-    // }
+    if (this.reportType==4) {
+      this.queryParams.patentNos.push(this.patentNo1)
+    }
     console.log(this.selected);
     this.getPersonnelList()
     
@@ -236,24 +236,23 @@ export default {
                 }
               }
           }
-          if (this.selected.length > 0) {
-            console.log(this.selected);
-            this.selected.forEach(item => {
-              this.queryParams.patentNos.push(item)
-              this.queryParams.isAll=0
+          console.log(this.selected, this.queryParams.patentNos);
+          if (this.selected==undefined) {
+            this.selected=[]
+          }
+          if (this.selected.length > 0 && this.reportType!=4 ) {
+            this.selected.forEach(item1 => {
+              let a=this.queryParams.patentNos.findIndex(item2 => {
+                return item2==item1
+              })
+              console.log(a);
+              if (a < 0) {
+                this.queryParams.patentNos.push(item1)
+                this.queryParams.isAll=0
+              }
             })
-            
-            // this.queryParams.isAll=null
+
           }
-          // if (this.queryParams.patentNo) {
-          //   this.queryParams.isAll=null
-          // }
-          // console.log(this.queryParams.patentNo);
-          // if (this.queryParams.patentNo.length>0) {
-          //   this.queryParams.isAll=null
-          // }
-            
-          // }
           if (Object.keys(this.clientForm).length > 0) {
               for (let kForm in this.clientForm) {
                 this.queryParams[kForm] = this.clientForm[kForm]
@@ -266,6 +265,7 @@ export default {
               this.$emit("collaboration", this.visibleCollaboration)
               this.clientForm = {}
               this.$message.success("任务创建成功,邮件已成功发送")
+           this.queryParams.patentNos=[]
             }
           })
           console.log(this.queryParams);
@@ -431,6 +431,7 @@ export default {
       // this.$emit('getClientInformation', this.clientInformation)
       this.visibleCollaboration = false
       this.clientForm = {}
+      this.queryParams.patentNos=[]
       this.$emit("collaboration", this.visibleCollaboration)
     }
   },

+ 68 - 6
RMS-FrontEnd/src/views/task/MyHandle.vue

@@ -98,7 +98,52 @@
 
 	  <el-dialog title="报告详情" :visible.sync="showDialog" width="600px" :close-on-click-modal="false"  @close="handleClose">
 
-		<el-descriptions class="margin-top" :column="1" :size="size">
+      <el-form :model="form" ref="reportForm" label-width="120px">
+                <el-form-item label="标的专利号:" prop="signPatentNo">
+                    <span>{{form.signPatentNo}}</span>
+                </el-form-item>
+                <el-form-item label="报告名称:" prop="name">
+                    <span>{{form.name}}</span>
+                </el-form-item>
+                <el-form-item label="承担部门:" prop="departmentId">
+                    <span>{{form.departmentName}}</span>
+                </el-form-item>
+                <el-form-item label="负责人:" prop="personId">
+                    <span>{{form.personName}}</span>
+                </el-form-item>
+                <el-form-item label="委托方:" prop="clientId" >
+                    <span>{{form.clientName}}</span>
+                </el-form-item>
+                <el-form-item label="产品/技术:" >
+                    <span>{{form.proTec}}</span>
+                </el-form-item>
+                <el-form-item label="应用场景:" prop="easFlag" >
+                  <div style="word-wrap:keep-all;">
+                    <span v-for="item in form.scenarioNames">{{item  }}&nbsp;&nbsp;&nbsp;</span>
+                  </div>
+                </el-form-item>
+                <el-form-item label="关联报告:" >
+                    <span>{{form.associateReportName}}</span>
+                </el-form-item>
+                <el-form-item label="卷号:" prop="volumeNumber" >
+                    <span>{{form.volumeNumber}}</span>
+                </el-form-item>
+                <el-form-item label="附件:">
+                  <div v-if="form.reportFiles" class="upload-file">
+                      <div v-for="item in form.reportFiles" style="margin:0;display:flex;justify-content:space-around;"><p style="margin:0;width:calc(100% - 40px);overflow: hidden;white-space: nowrap;text-overflow:ellipsis">{{item.name?item.name:item.fileName}}</p> <p style="margin:0;" @click="delFile(item.id)"><i class="el-icon-close"></i></p></div>
+                  </div>
+                  <!-- <el-upload  ref="upload" class="upload-file" drag action="#" :auto-upload="false" :show-file-list="true" :on-change="onChange" multiple   :on-preview="handlePreview" :on-remove="handleRemove">
+                      <i :class="!file ? 'el-icon-upload' : 'el-icon-refresh'"></i>
+                      <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+                      <div class="el-upload__tip" slot="tip"></div>
+                  </el-upload> -->
+                </el-form-item>
+                <el-form-item label="备注:" prop="remark" >
+                    <span>{{form.remark}}</span>
+                </el-form-item>
+      </el-form>
+
+		<!-- <el-descriptions  class="margin-top" :column="1" :size="size">
 
 			<el-descriptions-item label="标的专利号">{{form.signPatentNo}}</el-descriptions-item>
 			<el-descriptions-item label="报告名称">{{form.name}}</el-descriptions-item>
@@ -117,7 +162,7 @@
 			<el-descriptions-item label="关联报告">{{form.associateReportName}}</el-descriptions-item>
 			<el-descriptions-item label="卷号">{{form.volumeNumber}}</el-descriptions-item>
 			<el-descriptions-item label="备注">{{form.remark}}</el-descriptions-item>
-  		</el-descriptions>
+  		</el-descriptions> -->
         <span slot="footer" class="dialog-footer">
               <el-button @click="handleClose">取 消</el-button>
 			  <el-dropdown split-button type="primary" @click="submit">
@@ -183,7 +228,7 @@
 	// 	'0':'未完成',
 	// 	'1':'完成'
 	//   },
-      coordination:true,
+      coordination: true,
 	  };
 	},
 	watch:{
@@ -246,7 +291,8 @@
 									}
 								}
 								
-							})
+              })
+              
 						// }else{
 						// 	setTimeout(() => {
 						// 		if(item.taskStatus == 1){
@@ -256,7 +302,7 @@
 						// 		}
 						// 	}, 500)
 						// }
-						})
+            })
 					}else{
 						this.tableData = data.data.records
 						this.total = data.data.total
@@ -274,7 +320,20 @@
 					
 				// }
 			// })
-		},
+    },
+    // 超时提醒
+    // remind({ row, column, rowIndex, columnIndex }) {
+    //   if (this.tableData[rowIndex].endTime==undefined) {
+       
+    //   }
+    //   let b = Date.parse(new Date)
+    //   let a = Date.parse(this.tableData[rowIndex].endTime)
+    //   console.log(a,b,this.tableData[rowIndex].endTime);
+    //   if ((a - b) < 8.64e7) {
+    //       console.log("超时",a,b);
+    //       return 'red'
+    //   } 
+    // },
 	  
 	  //切换按钮
 	  onChangeFamily(key) {
@@ -424,4 +483,7 @@
   </script>
   
 <style lang="scss" scoped>
+.el-table .red{
+    background: #df543e;
+  }
   </style>

+ 1 - 1
RMS-FrontEnd/src/views/task/MyInitiate.vue

@@ -51,7 +51,7 @@
           </template>
         </el-table-column>
 			  <el-table-column prop="finishTime" label="实际完成时间" width="200" sortable align="center" v-if="queryParams.taskStatus == 1"></el-table-column>
-			  <el-table-column label="操作" sortable align="center" fixed="right" width="220">
+			  <el-table-column label="操作" sortable align="center" fixed="right" width="120">
           <template slot-scope="scope">
             <div>
               <!-- <el-button type="primary" size="small" @click="edit(scope.row)" v-if="scope.row.taskStatus == 0">编辑</el-button> -->