Browse Source

涉及报告号订单号列表页添加右键复制功能

wucl 10 months ago
parent
commit
25cd356877

+ 20 - 0
src/main.js

@@ -61,6 +61,26 @@ import * as echarts from 'echarts';
 
 Vue.prototype.$echarts = echarts;
 
+Vue.prototype.$doCopy=function(context){
+      if (context){
+        var element = document.createElement('SPAN');
+        element.textContent= context;
+        document.body.appendChild(element); 
+        if (document.selection) {
+          var range = document.body.createTextRange();
+          range.moveToElementText(element);
+          range.select();
+        } else if (window.getSelection) {
+          var range = document.createRange();
+          range.selectNode(element);
+          window.getSelection().removeAllRanges();
+          window.getSelection().addRange(range);
+        }
+        document.execCommand('copy'); 
+        this.$message({'type':'success','message': context+'已复制!'})
+      }
+}
+
 // Vue.mixin(mixin)
 const app = new Vue({
   // mixins: [mixin],

+ 3 - 3
src/views/assets/allList.vue

@@ -38,7 +38,7 @@
             <parentTable ref="table" v-loading="listLoading" :data="pageData.records" slot="table" style="width: 100%;">
                 <el-table-column label="项目编号" align="center" width="150">
                     <template slot-scope="{row}">
-                        <span>{{ row.orderId }}</span>
+                        <span @contextmenu.prevent="$doCopy(row.orderId)">{{ row.orderId }}</span>
                     </template>
                 </el-table-column>
                 <el-table-column label="分单类型" align="center" width="150">
@@ -48,12 +48,12 @@
                 </el-table-column>
                 <el-table-column label="意见书号" align="center" width="250">
                     <template slot-scope="{row}">
-                        <span>{{ row.statementNo == null ? '-' : row.statementNo }}</span>
+                        <span @contextmenu.prevent="$doCopy(row.statementNo)">{{ row.statementNo == null ? '-' : row.statementNo }}</span>
                     </template>
                 </el-table-column>
                 <el-table-column label="报告号" align="center" width="250">
                     <template slot-scope="{row}">
-                        <span>{{ row.reportNo == null ? '-' : row.reportNo }}</span>
+                        <span @contextmenu.prevent="$doCopy(row.reportNo)">{{ row.reportNo == null ? '-' : row.reportNo }}</span>
                     </template>
                 </el-table-column>
                 <el-table-column label="项目名称" align="center" width="250">

+ 3 - 3
src/views/assets/todoList.vue

@@ -34,7 +34,7 @@
             <parentTable ref="table" v-loading="listLoading" :data="pageData.records" slot="table" style="width: 100%;">
                 <el-table-column label="项目编号" align="center" width="150">
                     <template slot-scope="{row}">
-                        <span>{{ row.orderId }}</span>
+                        <span @contextmenu.prevent="$doCopy(row.orderId)">{{ row.orderId }}</span>
                     </template>
                 </el-table-column>
                 <el-table-column label="分单类型" align="center" width="150">
@@ -44,12 +44,12 @@
                 </el-table-column>
                 <el-table-column label="意见书号" align="center" width="250">
                     <template slot-scope="{row}">
-                        <span>{{ row.statementNo == null ? '-' : row.statementNo }}</span>
+                        <span @contextmenu.prevent="$doCopy(row.statementNo)">{{ row.statementNo == null ? '-' : row.statementNo }}</span>
                     </template>
                 </el-table-column>
                 <el-table-column label="报告号" align="center" width="250">
                     <template slot-scope="{row}">
-                        <span>{{ row.reportNo == null ? '-' : row.reportNo }}</span>
+                        <span @contextmenu.prevent="$doCopy(row.reportNo)">{{ row.reportNo == null ? '-' : row.reportNo }}</span>
                     </template>
                 </el-table-column>
                 <el-table-column label="项目名称" align="center" width="250">

+ 7 - 7
src/views/complex/index.vue

@@ -319,17 +319,17 @@
                   </el-table-column>
                   <el-table-column label="订单号" align="center" width="150">
                     <template slot-scope="{row}">
-                      <span>{{ row.orderId }}</span>
+                      <span @contextmenu.prevent="$doCopy(row.orderId)">{{ row.orderId }}</span>
                     </template>
                   </el-table-column>
                   <el-table-column label="价值意见书号" align="center" width="280" prop="statementNo">
                     <template slot-scope="{row}">
-                      <span>{{ row.statementNo == null ? '--' : row.statementNo }}</span>
+                      <span @contextmenu.prevent="$doCopy(row.statementNo)">{{ row.statementNo == null ? '--' : row.statementNo }}</span>
                     </template>
                   </el-table-column>
                   <el-table-column label="报告号/复评函号" align="center" width="280" prop="reportNo">
                     <template slot-scope="{row}">
-                      <span>{{ row.reportNo == null ? '--' : row.reportNo }}</span>
+                      <span @contextmenu.prevent="$doCopy(row.reportNo)">{{ row.reportNo == null ? '--' : row.reportNo }}</span>
                     </template>
                   </el-table-column>
                   <el-table-column label="评估对象类型" align="center" width="120">
@@ -390,7 +390,7 @@
                   style="width: 100%">
                   <el-table-column label="项目编号" align="center" width="140">
                     <template slot-scope="{row}">
-                      <span>{{ row.orderId }}</span>
+                      <span @contextmenu.prevent="$doCopy(row.orderId)">{{ row.orderId }}</span>
                     </template>
                   </el-table-column>
                   <el-table-column label="坐落" align="center" width="200" show-overflow-tooltip>
@@ -526,7 +526,7 @@
                   :isBoard=450 style="width: 100%;">
                   <el-table-column label="项目编号" align="center" width="150">
                     <template slot-scope="{row}">
-                      <span>{{ row.orderId }}</span>
+                      <span @contextmenu.prevent="$doCopy(row.orderId)">{{ row.orderId }}</span>
                     </template>
                   </el-table-column>
                   <el-table-column label="分单类型" align="center" width="150">
@@ -536,12 +536,12 @@
                   </el-table-column>
                   <el-table-column label="意见书号" align="center" width="250">
                     <template slot-scope="{row}">
-                      <span>{{ row.statementNo }}</span>
+                      <span @contextmenu.prevent="$doCopy(row.statementNo)">{{ row.statementNo }}</span>
                     </template>
                   </el-table-column>
                   <el-table-column label="报告号" align="center" width="250">
                     <template slot-scope="{row}">
-                      <span>{{ row.reportNo }}</span>
+                      <span @contextmenu.prevent="$doCopy(row.reportNo)">{{ row.reportNo }}</span>
                     </template>
                   </el-table-column>
                   <el-table-column label="项目名称" align="center" width="250">

+ 3 - 3
src/views/major/list.vue

@@ -19,17 +19,17 @@
         </el-table-column>
         <el-table-column label="订单号" align="center" width="150" v-if="!hiddenLabels.includes('orderId')" prop="orderId">
           <template slot-scope="{row}">
-            <span class = "enableClick" @click="orderDetail(row)">{{ row.orderId }}</span>
+            <span class = "enableClick" @click="orderDetail(row)" @contextmenu.prevent="$doCopy(row.orderId)">{{ row.orderId }}</span>
           </template>
         </el-table-column>
         <el-table-column label="价值意见书号" align="center" width="200" v-if="!hiddenLabels.includes('statementNo')" prop="statementNo" sortable >
           <template slot-scope="{row}">
-            <span>{{ row.statementNo==null?'-': row.statementNo }}</span>
+            <span @contextmenu.prevent="$doCopy(row.statementNo)">{{ row.statementNo==null?'-': row.statementNo }}</span>
           </template>
         </el-table-column>
         <el-table-column label="报告号/复评函号" align="center" width="200" v-if="!hiddenLabels.includes('reportNo')" prop="reportNo" sortable>
           <template slot-scope="{row}">
-            <span>{{ row.reportNo==null?'-': row.reportNo }}</span>
+            <span @contextmenu.prevent="$doCopy(row.reportNo)">{{ row.reportNo==null?'-': row.reportNo }}</span>
           </template>
         </el-table-column>
         <el-table-column label="当前节点" align="center" width="130" v-if="!hiddenLabels.includes('nodeName')" prop="nodeName" sortable>

+ 3 - 3
src/views/major/todoList.vue

@@ -42,17 +42,17 @@
         </el-table-column>
         <el-table-column label="订单号" align="center" width="150" v-if="!hiddenLabels.includes('orderId')" prop="orderId">
           <template slot-scope="{row}">
-            <span class="enableClick" @click="toDetail(row)">{{ row.orderId }}</span>
+            <span class="enableClick" @click="toDetail(row)" @contextmenu.prevent="$doCopy(row.orderId)">{{ row.orderId }}</span>
           </template>
         </el-table-column>
         <el-table-column label="价值意见书号" align="center" width="200" v-if="!hiddenLabels.includes('statementNo')" prop="statementNo" sortable>
           <template slot-scope="{row}">
-            <span>{{ row.statementNo==null?'-': row.statementNo }}</span>
+            <span @contextmenu.prevent="$doCopy(row.orderId)">{{ row.statementNo==null?'-': row.statementNo }}</span>
           </template>
         </el-table-column>
         <el-table-column label="报告号/复评函号" align="center" width="200" v-if="!hiddenLabels.includes('reportNo')" prop="reportNo" sortable>
           <template slot-scope="{row}">
-            <span>{{ row.reportNo==null?'-': row.reportNo }}</span>
+            <span @contextmenu.prevent="$doCopy(row.orderId)">{{ row.reportNo==null?'-': row.reportNo }}</span>
           </template>
         </el-table-column>
         <el-table-column label="评估对象类型" align="center" width="120" v-if="!hiddenLabels.includes('businessObjectType')" prop="businessObjectType">

+ 3 - 2
src/views/personal/pendingList.vue

@@ -14,7 +14,8 @@
       <parentTable ref="table" v-loading="listLoading" :data="pageData.records" slot="table" style="width: 100%;" @headerClick="switchHeader">
         <el-table-column label="项目编号" align="center" width="150" v-if="!hiddenLabels.includes('orderId')" prop="orderId" >
           <template slot-scope="{row}">
-            <span class="enableClick" @click="orderDetail(row)">{{ row.orderId }}</span>
+            <span class="enableClick" @click="orderDetail(row)" @contextmenu.prevent="$doCopy(row.orderId)">{{ row.orderId }}</span>
+            <input v-show="false" type="text" id="target">
           </template>
         </el-table-column>
         <el-table-column label="坐落" align="center" width="300" v-if="!hiddenLabels.includes('location')" prop="location">
@@ -224,7 +225,7 @@ export default {
     showAllLabel(){
       removeCookie("PersonalPendingList-hiddenLabels");
       location.reload();
-    }
+    },
   },
   
 }

+ 1 - 1
src/views/personal/todoList.vue

@@ -17,7 +17,7 @@
       <parentTable ref="table" v-loading="listLoading" :data="pageData.records" slot="table" style="width: 100%;" @headerClick="switchHeader">
         <el-table-column label="项目编号" align="center" width="150" v-if="!hiddenLabels.includes('orderId')" prop="orderId" >
           <template slot-scope="{row}">
-            <span class="enableClick" @click="toDetail(row)">{{ row.orderId }}</span>
+            <span class="enableClick" @click="toDetail(row)" @contextmenu.prevent="$doCopy(row.orderId)">{{ row.orderId }}</span>
           </template>
         </el-table-column>
         <el-table-column label="坐落" align="center" width="300" v-if="!hiddenLabels.includes('location')" prop="location">