user.js 1.9 KB
import request from '@/utils/request'
import { getRefreshToken, getToken } from "@/utils/auth";

export function login (data) {
    return request({
        url: '/api/User/Login',
        method: 'post',
        data: {
            userCode: data.username,
            password: data.password
        }
    }).then((response) => {
        return { ...response, code: 'Success' }
    })
}

export function logout () {
    return Promise.resolve()
}

// 权限获取
export function getLicense () {
    return request({
        url: '/api/System/GetLicense',
        method: 'get'
        // data,
    })
}

// 权限导入
export function importLicense (data) {
    return request({
        url: '/api/System/ImportLicense?content=' + encodeURIComponent(data),
        method: 'get'
        // data,
    })
}
// 权限导入
export function getExport (data) {
    return request({
        url: '/api/MTask/GetMTasks',
        method: 'post',
        data
    })
}

function downloadFile (url, params, text) {
    fetch(url, {
        method: "POST",
        headers: {
            "Content-Type": "application/json",
            Authorization: "Bearer " + getToken(),
            "x-accesstoken": getRefreshToken(),
        },
        body: JSON.stringify(params),
    })
        .then((response) => {
            if (!response.ok) throw new Error("网络响应不是 OK");
            return response.blob();
        })
        .then((blob) => {
            const downloadUrl = window.URL.createObjectURL(blob);
            const link = document.createElement("a");
            link.href = downloadUrl;

            link.setAttribute("download", text); // 指定文件名
            document.body.appendChild(link);
            link.click();
            link.remove();
        })
        .catch((error) => {
            console.error("下载文件出错:", error);
        });
}

// 导出函数以供其他文件使用
export default downloadFile;