index.js 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. import request from '@/utils/request';
  2. import { download } from '@/utils/file';
  3. /**
  4. * 上传文件
  5. * @param file 文件
  6. */
  7. export async function uploadFile(file) {
  8. const formData = new FormData();
  9. formData.append('file', file);
  10. const res = await request.post('/file/upload', formData);
  11. if (res.data.code === 0) {
  12. return res.data.data;
  13. }
  14. return Promise.reject(new Error(res.data.message));
  15. }
  16. /**
  17. * 上传 base64 文件
  18. * @param base64 文件数据
  19. * @param fileName 文件名称
  20. */
  21. export async function uploadBase64File(base64, fileName) {
  22. const formData = new FormData();
  23. formData.append('base64', base64);
  24. if (fileName) {
  25. formData.append('fileName', fileName);
  26. }
  27. const res = await request.post('/file/upload/base64', formData);
  28. if (res.data.code === 0 && res.data.data) {
  29. return res.data.data;
  30. }
  31. return Promise.reject(new Error(res.data.message));
  32. }
  33. /**
  34. * 分页查询文件上传记录
  35. */
  36. export async function pageFiles(params) {
  37. const res = await request.get('/file/page', { params });
  38. if (res.data.code === 0) {
  39. return res.data.data;
  40. }
  41. return Promise.reject(new Error(res.data.message));
  42. }
  43. /**
  44. * 删除文件
  45. */
  46. export async function removeFile(id) {
  47. const res = await request.delete('/file/remove/' + id);
  48. if (res.data.code === 0) {
  49. return res.data.message;
  50. }
  51. return Promise.reject(new Error(res.data.message));
  52. }
  53. /**
  54. * 批量删除文件
  55. */
  56. export async function removeFiles(data) {
  57. const res = await request.delete('/file/remove/batch', {
  58. data
  59. });
  60. if (res.data.code === 0) {
  61. return res.data.message;
  62. }
  63. return Promise.reject(new Error(res.data.message));
  64. }
  65. // 通过文件名获取文件流
  66. export async function getFile(params, fileName) {
  67. console.log(params);
  68. console.log(fileName);
  69. const res = await request.get('/main/file/getFile', {
  70. params,
  71. responseType: 'blob'
  72. });
  73. console.log(res);
  74. const arr = params.objectName.split('/');
  75. download(res.data, fileName || arr[arr.length - 1]);
  76. }
  77. export async function importBatch(data) {
  78. const formData = new FormData();
  79. data.multiPartFiles.forEach((item, index) => {
  80. formData.append(`multiPartFiles`, item);
  81. });
  82. const res = await request.post(
  83. `/wms/outintwo/importStock?module=${data.module}`,
  84. formData
  85. );
  86. if (res.data.code === '0') {
  87. return res.data;
  88. }
  89. return Promise.reject(new Error(res.data.message));
  90. }
  91. export async function downLoadTemplateNew(url,fileName) {
  92. const res = await request.post(url,{}, {
  93. responseType: 'blob'
  94. });
  95. console.log(res.data,'***********');
  96. download(res.data, fileName);
  97. }
  98. /**
  99. * 导出
  100. */
  101. export async function exportTable(data) {
  102. const res = await request.post(
  103. data.api,
  104. data.data,
  105. {
  106. responseType: 'blob'
  107. }
  108. );
  109. console.log(res.data, '***********');
  110. download(res.data, data.fileName+'.xlsx');
  111. }