diff --git a/src/api/order/order.ts b/src/api/order/order.ts index 761d0fc3651d596b045cefebb3c36671f4a8031b..5cb29c71f231bb81c6887a6bc2a0486edcb65808 100644 --- a/src/api/order/order.ts +++ b/src/api/order/order.ts @@ -4,7 +4,7 @@ import { AfterSaleParams } from '@/model/order/AfterSale' // 枚举接口地址 -enum Api { +export enum Api { ORDER_TABLE = '/api/order/page', AFTER_SALE_TABLE = '/api/order/afterSale/page', AFTER_SALE_EXPORT = '/api/order/afterSale/export', diff --git a/src/utils/download.ts b/src/utils/download.ts new file mode 100644 index 0000000000000000000000000000000000000000..9505881dcd298d0c2b307c413976a12670566974 --- /dev/null +++ b/src/utils/download.ts @@ -0,0 +1,52 @@ +/** + * @description: 下载文件 + * @param {string} url 下载地址 + * @param {Object} params 拼接参数 + * @return {*} + */ +import { getToken } from '@/utils/auth' + +export function downloadFile(apiUrl: string, params: any): void { + const url = spliceUrl(apiUrl, params) + const linkTag: HTMLAnchorElement = document.createElement('a') + linkTag.href = url + document.body.appendChild(linkTag) + linkTag.click() + document.body.removeChild(linkTag) +} + +/** + * @description: 拼接下载地址 + * @param {string} apiUrl + * @param {any} params + * @return {string} url 下载地址 + */ +function spliceUrl(apiUrl: string, params: any) { + // host地址 + let domainUrl: string + switch (import.meta.env.MODE) { + case 'development': + domainUrl = 'http://139.198.172.231:8490' + break + case 'production': + // domainUrl = import.meta.env.VITE_API_DOMAIN as string + domainUrl = 'http://' + window.location.host + break + default: + domainUrl = '' + break + } + + // api 和 token 拼接 + const token = getToken() + apiUrl += '?token=' + token + + // 参数拼接 + let queryUrl = '' + for (const item in params) { + queryUrl += '&' + item + '=' + params[item] + } + // 下载地址 + const url: string = domainUrl + apiUrl + queryUrl + return url +} diff --git a/src/views/order/after-sale/components/AfterSaleTable.vue b/src/views/order/after-sale/components/AfterSaleTable.vue index b3902d53d640149d249a4329393eade7f25bb966..5c858961ab7f3bc68f0cfa2d061097da3df6f700 100644 --- a/src/views/order/after-sale/components/AfterSaleTable.vue +++ b/src/views/order/after-sale/components/AfterSaleTable.vue @@ -54,6 +54,7 @@