| 
					
				 | 
			
			
				@@ -0,0 +1,259 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import OSS from 'ali-oss' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// import { ElMessage } from 'element-plus' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import request from "../../common/request" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import { PUBLIC_MODULES_PATH as prefix } from "@/api/AppPath"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+export default class OSSSerive { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  disposeXmlFile (data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    return request({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      url: prefix + '/oss/file/disposeXmlFile', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      method: 'post', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      data: data 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  downLoadFileDisposeXmlFile (url) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    return request({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      url: prefix + '/oss/file/downLoadFileDisposeXmlFile', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      method: 'post', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      params: {file: url} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	queryById (id) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		return request({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			url: prefix + '/oss/file/queryById', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			method: 'get', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			params: { id: id }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  saveMsg (param) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    return request({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      url: prefix + '/oss/file/saveMsg', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      method: 'post', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      data: param 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  findFileList (attachmentId) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    return request({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		  url: prefix + '/oss/file/findFileList', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      method: 'get', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      params: {attachmentId: attachmentId} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  getTemporaryUrl (url) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    return request({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      url: prefix + '/oss/file/getTemporaryUrl', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      method: 'get', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      params: {url: url} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  getFileSizeByUrl (url) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    return request({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      url: prefix + '/oss/file/getFileSizeByUrl', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      method: 'get', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      params: {url: url} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  deleteMsgById (id) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    return request({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      url: prefix + '/oss/file/deleteMsgById', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      method: 'get', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      params: {id: id} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  downLoadAttach (url) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    return request({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      url: prefix + '/oss/file/downLoadAttach', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      method: 'get', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      responseType: 'blob', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      params: {file: url} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+export const client = new OSS({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  region: 'oss-cn-hangzhou', // oss地址 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  accessKeyId: 'LTAI5tQDWoM9c1WyJNPs86rX', // 通过阿里云控制台创建的AccessKey ID。 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  accessKeySecret: '84dDIx4edT1n78KUOqqSmDZ35pchJv', // 通过阿里云控制台创建的AccessKey Secret。 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  bucket: 'xgxm-test', // 仓库名字 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	// bucket: 'xg-pg', // 仓库名字 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  useFetch: true, // 支持上传大于100KB的文件 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  secure: false // 返回的url为https 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+export const headers = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  // 指定该Object被下载时网页的缓存行为。 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  'Cache-Control': 'no-cache', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  // 指定该Object被下载时的名称。 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  'Content-Disposition': 'inline', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  // 指定该Object被下载时的内容编码格式。 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  'Content-Encoding': 'UTF-8', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  // 指定过期时间。 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  Expires: 'Wed, 08 Jul 2023 16:57:01 GMT', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  // 指定Object的存储类型。 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  'x-oss-storage-class': 'Standard', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  // 指定Object的访问权限。 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  // 'x-oss-object-acl': 'private', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  // 设置Object的标签,可同时设置多个标签。 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  'x-oss-tagging': 'Tag1=1&Tag2=2', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  // 指定CopyObject操作时是否覆盖同名目标Object。此处设置为true,表示禁止覆盖同名Object。 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  'x-oss-forbid-overwrite': 'true' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  // 'secure': 'true' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+export function onChange (file, files) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  // console.log(file, 'file', files, 'Filest') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  return files 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// eslint-disable-next-line no-unused-vars 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+export function handleUploadSuccess (response, file, fileS) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  // console.log(response, file, fileS, 'response, file, fileList') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+export function handleRemove (e, files) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  return files 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+export function fileName (file) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  // console.log('文件名称处理') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  const tmpcnt = file.file.name.lastIndexOf('.') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  let fileName = file.file.name.substring(0, tmpcnt) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  // 将单引号‘’都转换成',将双引号“”都转换成" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  fileName = fileName.replace(/’|‘/g, '\'').replace(/“|”/g, '') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  // 将中括号【】转换成[],将大括号{}转换成{} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  fileName = fileName.replace(/【/g, '(').replace(/】/g, ')').replace(/{/g, '(').replace(/}/g, ')') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  fileName = fileName.replace(/\[/g, '(').replace(/]/g, ')').replace(/{/g, '(').replace(/}/g, ')') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  // 将逗号,转换成,,将:转换成: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  fileName = fileName.replace(/,/g, ',').replace(/:/g, ':') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  // 将中文——转换为英文- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  fileName = fileName.replace(/—/g, '-') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  fileName = fileName.replace(/……/g, '') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  fileName = fileName.replace(/±/g, '') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  fileName = fileName.replace(/#/g, '') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  fileName = fileName.replace(/%/g, '') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  fileName = fileName.replace(/Π/g, '') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  fileName = fileName.replace(/π/g, '') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  fileName = fileName.replace(/·/g, '.') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  // console.log('文件名处理结果', fileName) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  return fileName 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+export function beforeAvatarUpload (file, fileList, maxValue) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  // 文件大小校验 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  const isLt2M = file.size / 1024 / 1024 < maxValue 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  if (!isLt2M) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    fileList.splice(fileList.length - 1, 1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // console.log('文件大小不能超过 ' + maxValue + ' MB!') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  return isLt2M 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// export function exnameFix (file, isShow, names) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//   // console.log('格式校验') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//   const tmpcnt = file.name.lastIndexOf('.') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//   const exname = file.name.substring(tmpcnt + 1) // 获取后缀名 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//   if (names.indexOf(exname) < 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//     if (isShow === '1') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// 		ElMessage({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// 			message: '不支持的格式!', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// 			type: 'error', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// 		}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//     return false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//   } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//   return true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+export async function httpRequest (file, name, type, maxValue) { // 阿里云OSS上传 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  if (!beforeAvatarUpload(file.file, [], maxValue)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  // console.log('开始上传') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  // 判断扩展名 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  const tmpcnt = file.file.name.lastIndexOf('.') // 获取.的下标 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  const exname = file.file.name.substring(tmpcnt + 1) // 获取后缀名 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  // console.log(exname, '后缀名') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  const now = new Date() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  const year = now.getFullYear() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  const month = now.getMonth() + 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  const day = now.getDate() > 10 ? now.getDate() : '0' + now.getDate() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  const filePath = '/attachment-file/assess/' + type + '/' + year + '/' + month + '/' + day + '/' + now.getTime() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  // console.log(filePath, '文件存储路径') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  const fileName = filePath + name + '.' + exname 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  // console.log(fileName, '文件名') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  await client.multipartUpload(fileName, file.file, { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	  // eslint-disable-next-line no-unused-vars 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    progress: await function (p, checkpoint) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      file.onProgress({percent: Math.floor(p * 100)}) // 触发el-upload组件的onProgress方法 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // mime: type, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }).then(await function (result) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // console.log(result) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    if (result.res.status === 200) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // file.onSuccess(result) // 触发el-upload组件的onSuccess方法 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      file.file.url = fileName 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	  // eslint-disable-next-line handle-callback-err,no-unused-vars 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }).catch(function (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // console.log(err) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    file.onError('上传失败') // 触发el-upload组件的onError方法,此方法会移除文件列表 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// eslint-disable-next-line no-unused-vars 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+function getTemporaryByUrl (url) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  return request({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    url: prefix + '/oss/file/getTemporaryUrl', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    method: 'get', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    params: {url: url} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+export async function openWindowOnUrl (row) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  if (row.url === undefined || row.url === null || row.url === '') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // Message.error('没有获取到文件的url') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  let rowUrl = '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  let suffix = row.name.substring(row.name.lastIndexOf('.') + 1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  if (suffix === 'jpg' || suffix === 'png' || suffix === 'gif' || suffix === 'bmp' || suffix === 'jpeg') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    await getTemporaryByUrl(row.url).then((data) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // eslint-disable-next-line no-undef 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      onPreview(data) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  await getTemporaryByUrl(row.url).then((data) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    rowUrl = data 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  if (suffix === 'pdf') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    window.open('https://view.xdocin.com/xdoc?_xdoc=' + encodeURIComponent(rowUrl), '_blank') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  } else if (suffix === 'rar' || suffix === 'zip' || suffix === 'jar' || suffix === '7z') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    window.open('https://view.xdocin.com/xdoc?_xdoc=' + encodeURIComponent(rowUrl), '_blank') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    window.open('https://view.officeapps.live.com/op/view.aspx?src=' + encodeURIComponent(rowUrl), '_blank') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+export async function toHref (row) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  if (row.url === null || row.url === undefined || row.url === '') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // Message.error('没有获取到文件的url') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  const link = document.createElement('a') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  await getTemporaryByUrl(row.url).then((data) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    const url = data // 完整的url则直接使用 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 这里是将url转成blob地址, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    fetch(url).then(res => res.blob()).then(blob => { // 将链接地址字符内容转变成blob地址 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      link.href = URL.createObjectURL(blob) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      link.download = row.name || '' // 下载文件的名字 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // a.download = url.split('/')[url.split('/').length -1] //  // 下载文件的名字 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      document.body.appendChild(link) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      link.click() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 在资源下载完成后 清除 占用的缓存资源 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      window.URL.revokeObjectURL(link.href) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      document.body.removeChild(link) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 |