| 
					
				 | 
			
			
				@@ -10,24 +10,27 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           <i v-show="percentage === 100" class="el-icon-check"></i> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         </span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       </el-progress> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      <div v-show="tips.length > 0"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      {{ size }} / {{ total }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <div v-if="notExcel"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <div v-show="tips.length > 0"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <el-divider></el-divider> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <el-alert :title="tips" type="error" @close="closeAlert"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         <el-divider></el-divider> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <el-alert :title="tips" type="error" @close="closeAlert"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      <el-divider></el-divider> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      <ul style="overflow: auto" class="infinite-list" id="jdtRef"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <li v-for="i in jdtData" :key="i" class="infinite-list-item" :class="infiniteList(i)"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <div class="jdt-message" :title="i.message">{{ i.title }} 结果: {{ i.message }}</div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </li> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      </ul> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      <el-divider></el-divider> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      <div style="width: 100%; display: flex; justify-content: right"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <el-button @click="closeModal" :disabled="percentage < 100" type="warning" icon="el-icon-close" size="small"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          关闭 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <el-button @click="exportExcel" :disabled="percentage < 100" type="primary" icon="el-icon-download" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                   size="small"> 导出Excel 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <ul style="overflow: auto" class="infinite-list" id="jdtRef"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <li v-for="i in jdtData" :key="i" class="infinite-list-item" :class="infiniteList(i)"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <div class="jdt-message" :title="i.message">{{ i.title }} 结果: {{ i.message }}</div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </li> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </ul> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-divider></el-divider> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <div style="width: 100%; display: flex; justify-content: right"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <el-button @click="closeModal" :disabled="percentage < 100" type="warning" icon="el-icon-close" size="small"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            关闭 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <el-button @click="exportExcel" :disabled="percentage < 100" type="primary" icon="el-icon-download" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                     size="small"> 导出Excel 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     </el-dialog> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   </div> 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -38,6 +41,8 @@ import {computed, onMounted, ref} from 'vue-demi' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import {useStore} from 'vuex' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import {setCallback} from '@/utils/websocket' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import {Export} from '@/utils/ExportExcel' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import {makePercentage} from "./progUtils"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import {stringNotBlank} from "../../utils/blank-utils"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   setup() { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -60,26 +65,47 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       store.commit('app/closeJdt') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     const tips = ref('') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    const notExcel = ref(true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    const total = ref(0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    const size = ref(0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     const excelTitle = ref({}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     const socketCallback = (data) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      percentage.value = data.percentage 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      for (let key in data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (key.indexOf("#") > -1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          let newKey = key.split("#") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          data[newKey[0]] = data[key] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          if (newKey[0] === 'type') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            excelTitle.value.typeName = newKey[1] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            excelTitle.value[newKey[0]] = newKey[1] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if (stringNotBlank(data.jdtType) && data.jdtType === 'pureProgress') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        store.commit('app/setJdt', { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          title: data.jdtTitle, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          isOpen: true, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          abnormalClosing: true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        total.value = data.total 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        size.value = data.size 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        percentage.value = makePercentage(data.size, data.total) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        notExcel.value = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (percentage.value === 100) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          setTimeout(() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            store.commit('app/closeJdt') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          }, 500) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        percentage.value = data.percentage 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        for (let key in data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          if (key.indexOf("#") > -1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            let newKey = key.split("#") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            data[newKey[0]] = data[key] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (newKey[0] === 'type') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              excelTitle.value.typeName = newKey[1] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              excelTitle.value[newKey[0]] = newKey[1] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            delete data[key] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          delete data[key] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        jdtData.value.push(data) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        const jdtRef = document.getElementById('jdtRef') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        jdtRef.scrollTop = jdtRef.scrollHeight 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      jdtData.value.push(data) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      const jdtRef = document.getElementById('jdtRef') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      jdtRef.scrollTop = jdtRef.scrollHeight 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     const percentage = ref(0) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -136,6 +162,7 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     onMounted(() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       setCallback(socketCallback) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     return { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -148,6 +175,9 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       cptUpldRsTxt, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       tips, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       closeAlert, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      notExcel, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      total, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      size, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 |