index.js 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. import request from '@/utils/request';
  2. import { download } from '@/utils/file';
  3. /**
  4. * 上传文件
  5. * @param file 文件
  6. */
  7. export async function uploadFile(data) {
  8. const formData = new FormData();
  9. formData.append('multiPartFile', data.multiPartFile);
  10. formData.append('module', data.module);
  11. const res = await request.post('/main/file/upload', formData);
  12. if (res.data.code === '0') {
  13. return res.data;
  14. }
  15. return Promise.reject(new Error(res.data.message));
  16. }
  17. /**
  18. * 上传文件 批量
  19. * @param file 文件
  20. */
  21. export async function uploadBatch(data) {
  22. const formData = new FormData();
  23. data.multiPartFiles.forEach((item, index) => {
  24. formData.append(`multiPartFiles`, item);
  25. });
  26. const res = await request.post(
  27. `/main/file/uploadBatch?module=${data.module}`,
  28. formData
  29. );
  30. if (res.data.code === '0') {
  31. return res.data;
  32. }
  33. return Promise.reject(new Error(res.data.message));
  34. }
  35. /**
  36. * 获取文件路径
  37. */
  38. export async function getPathAddress() {
  39. const res = await request.post('/main/file/getPathAddress');
  40. if (res.data.code === '0') {
  41. return res.data.data;
  42. }
  43. return Promise.reject();
  44. }
  45. /**
  46. * 获取文件
  47. */
  48. export async function getFile(params, fileName) {
  49. const res = await request.get('/main/file/getFile', {
  50. params,
  51. responseType: 'blob'
  52. });
  53. const arr = params.objectName.split('/');
  54. download(res.data, fileName || arr[arr.length - 1]);
  55. // if (res.data.code === '0') {
  56. // return res.data.data;
  57. // }
  58. // return Promise.reject();
  59. }
  60. /**
  61. * 删除文件
  62. */
  63. export async function removeFile(data) {
  64. const res = await request.post(
  65. `/main/file/delete?fileId=${data.fileId}`,
  66. data
  67. );
  68. if (res.data.code === '0') {
  69. return res.data.message;
  70. }
  71. return Promise.reject(new Error(res.data.message));
  72. }
  73. /**
  74. * 文件列表
  75. */
  76. export async function getFileList(data) {
  77. const res = await request.post(`/main/file/list`, data);
  78. if (res.data.code === '0') {
  79. return res.data.data;
  80. }
  81. return Promise.reject(new Error(res.data.message));
  82. }
  83. /**
  84. * 导入文件 批量
  85. * @param file 文件
  86. */
  87. export async function importBatch(data,api,onUploadProgressCb) {
  88. const formData = new FormData();
  89. data.multiPartFiles.forEach((item, index) => {
  90. formData.append(`file`, item);
  91. });
  92. const res = await request.post(api, formData,{
  93. onUploadProgress:onUploadProgressCb?onUploadProgressCb:()=>{}
  94. });
  95. if (res.data.code === '0') {
  96. return res.data;
  97. }
  98. return Promise.reject(new Error(res.data.message));
  99. }
  100. /**
  101. * 下载模板
  102. */
  103. export async function downLoadTemplate(url,name) {
  104. const res = await request.post(
  105. url,
  106. {},
  107. {
  108. responseType: 'blob',
  109. }
  110. );
  111. console.log(res.data, '***********');
  112. download(res.data, name);
  113. }
  114. /**
  115. * 导出
  116. */
  117. export async function exportTable(data) {
  118. const res = await request.post(
  119. data.api,
  120. data.data,
  121. {
  122. responseType: 'blob'
  123. }
  124. );
  125. console.log(res.data, '***********');
  126. download(res.data, data.fileName+'.xlsx');
  127. }