elkers
2025-01-16 0b62eca817d6c40c188dc72c3034835a61a30a35
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
// /*
//  * @Author: hqs elkers@163.com
//  * @Date: 2024-05-06 09:59:48
//  * @LastEditors: hqs elkers@163.com
//  * @LastEditTime: 2024-05-06 19:12:56
//  * @FilePath: \RuoYi-Vue3\src\plugins\download.js
//  * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
//  */
// import axios from 'axios'
// import { ElLoading, ElMessage } from 'element-plus'
// import { saveAs } from 'file-saver'
// import { getToken } from '@/utils/auth'
// import errorCode from '@/utils/errorCode'
// import { blobValidate } from '@/utils/ruoyi'
//
// const baseURL = import.meta.env.VITE_APP_BISIC_API
// let downloadLoadingInstance;
//
// export default {
//   name(name, isDelete = true) {
//     var url = baseURL + "/common/download?fileName=" + encodeURIComponent(name) + "&delete=" + isDelete
//     axios({
//       method: 'get',
//       url: url,
//       responseType: 'blob',
//       headers: { 'Authorization': 'Bearer ' + getToken() }
//     }).then((res) => {
//       const isBlob = blobValidate(res.data);
//       if (isBlob) {
//         const blob = new Blob([res.data])
//         this.saveAs(blob, decodeURIComponent(res.headers['download-filename']))
//       } else {
//         this.printErrMsg(res.data);
//       }
//     })
//   },
//   resource(resource) {
//     var url = baseURL + "/common/download/resource?resource=" + encodeURIComponent(resource);
//     axios({
//       method: 'get',
//       url: url,
//       responseType: 'blob',
//       headers: { 'Authorization': 'Bearer ' + getToken() }
//     }).then((res) => {
//       const isBlob = blobValidate(res.data);
//       if (isBlob) {
//         const blob = new Blob([res.data])
//         this.saveAs(blob, decodeURIComponent(res.headers['download-filename']))
//       } else {
//         this.printErrMsg(res.data);
//       }
//     })
//   },
//   zip(url, name) {
//     var url = baseURL + url
//     downloadLoadingInstance = ElLoading.service({ text: "正在下载数据,请稍候", background: "rgba(0, 0, 0, 0.7)", })
//     axios({
//       method: 'get',
//       url: url,
//       responseType: 'blob',
//       headers: { 'Authorization': 'Bearer ' + getToken() }
//     }).then((res) => {
//       const isBlob = blobValidate(res.data);
//       if (isBlob) {
//         const blob = new Blob([res.data], { type: 'application/zip' })
//         this.saveAs(blob, name)
//       } else {
//         this.printErrMsg(res.data);
//       }
//       downloadLoadingInstance.close();
//     }).catch((r) => {
//       console.error(r)
//       ElMessage.error('下载文件出现错误,请联系管理员!')
//       downloadLoadingInstance.close();
//     })
//   },
//   saveAs(text, name, opts) {
//     saveAs(text, name, opts);
//   },
//   async printErrMsg(data) {
//     const resText = await data.text();
//     const rspObj = JSON.parse(resText);
//     const errMsg = errorCode[rspObj.code] || rspObj.msg || errorCode['default']
//     ElMessage.error(errMsg);
//   }
// }
//