From 4ef6c36c631c3aa3916e0861fd211dec9b03231b Mon Sep 17 00:00:00 2001
From: 马宇豪 <978517621@qq.com>
Date: 星期一, 08 一月 2024 09:54:05 +0800
Subject: [PATCH] 修改跳转

---
 src/views/notCoalMine/nPeopleManage/index.vue |   34 ++++++++++++++++++++++------------
 1 files changed, 22 insertions(+), 12 deletions(-)

diff --git a/src/views/notCoalMine/nPeopleManage/index.vue b/src/views/notCoalMine/nPeopleManage/index.vue
index fa63a38..0dd1e86 100644
--- a/src/views/notCoalMine/nPeopleManage/index.vue
+++ b/src/views/notCoalMine/nPeopleManage/index.vue
@@ -63,7 +63,7 @@
       <el-table-column label="最高学历" align="center" prop="highestEducation"/>
       <el-table-column label="作业证书" align="center" prop="certCount">
         <template #default="scope">
-          <el-button v-if="scope.row.certCount>0" type="text">{{ scope.row.certCount }}</el-button>
+          <el-button v-if="scope.row.certCount>0" type="text" @click="openCert(scope.row)">{{ scope.row.certCount }}</el-button>
           <span v-else>{{scope.row.certCount}}</span>
         </template>
       </el-table-column>
@@ -71,7 +71,8 @@
       <el-table-column label="违章次数" align="center" prop="violationCount"/>
       <el-table-column label="证件照片" align="center" prop="photoPath">
         <template #default="scope">
-          <el-button type="text" @click="viewFile(scope.row.photoPath)">预览</el-button>
+          <el-button type="text" v-if="scope.row.photoPath && scope.row.photoPath !==''" @click="viewFile(scope.row.photoPath)">预览</el-button>
+          <span type="text" v-else>暂无</span>
         </template>
       </el-table-column>
       <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
@@ -99,6 +100,7 @@
       @pagination="getPage"
     />
     <peopleDialog ref="peopleDialog"></peopleDialog>
+    <certDialog ref="certDialog" @closeDialog="resetQuery"></certDialog>
   </div>
 </template>
 
@@ -107,11 +109,11 @@
 import peopleDialog from "./components/peopleDialog";
 import axios from "axios";
 import {getToken} from "@/utils/auth";
-
+import certDialog from "@/views/notCoalMine/nPeopleManage/components/certDialog"
 export default {
   name: "nPeopleManage",
   dicts: ['sys_nation_code'],
-  components: { peopleDialog },
+  components: { peopleDialog, certDialog },
   data() {
     return {
       loading: false,
@@ -178,7 +180,11 @@
     },
     viewFile(file){
       const t = this
-      axios.get(process.env.VUE_APP_BASE_API + file,{headers:{'Content-Type': 'application/json','Authorization': "Bearer " + getToken()},responseType: 'blob'}).then(res=>{
+      if(file.substring(0, 1) !== '/'){
+        t.$message.error('无效的图片地址')
+        return
+      }
+      axios.get(process.env.VUE_APP_BASE_API + file,{headers:{'Content-Type': 'application/json','Authorization': "Bearer " + getToken()},responseType: 'blob',timeout: 3000}).then(res=>{
         if (res) {
           const link = document.createElement('a')
           let blob = new Blob([res.data],{type: res.data.type})
@@ -189,14 +195,18 @@
           t.$message.error('获取文件失败')
         }
       }).catch(function(err){
-        if(err == 'Error: Network Error'){
-          t.$message.error('获取文件失败')
-        }
-        if(err == 'Error: Request failed with status code 404'){
-          t.$message.error('获取文件失败')
-        }
+        // if(err == 'Error: Network Error'){
+        //   t.$message.error('获取文件失败')
+        // }else if(err == 'Error: Request failed with status code 404'){
+        //   t.$message.error('获取文件失败')
+        // }else{
+          t.$message.error(err)
+        // }
       })
-    }
+    },
+    openCert(data){
+      this.$refs.certDialog.openDialog(data)
+    },
   }
 };
 </script>

--
Gitblit v1.9.2