190 lines
5.0 KiB
Vue
190 lines
5.0 KiB
Vue
import { defHttp } from '/@/utils/http/axios';
|
||
import { message } from 'ant-design-vue';
|
||
import { resolveApiBaseUrl } from '/@/utils/env/apiBaseUrl';
|
||
|
||
enum Api {
|
||
positionList = '/sys/position/list',
|
||
userList = '/sys/user/list',
|
||
roleList = '/sys/role/list',
|
||
queryDepartTreeSync = '/sys/sysDepart/queryDepartTreeSync',
|
||
queryTreeList = '/sys/sysDepart/queryTreeList',
|
||
loadTreeData = '/sys/category/loadTreeData',
|
||
loadDictItem = '/sys/category/loadDictItem',
|
||
getDictItems = '/sys/dict/getDictItems/',
|
||
getTableList = '/sys/user/queryUserComponentData',
|
||
getCategoryData = '/sys/category/loadAllData',
|
||
refreshDragCache = '/drag/page/refreshCache',
|
||
refreshDefaultIndexCache = '/sys/sysRoleIndex/cleanDefaultIndexCache',
|
||
//异步获取部门和岗位
|
||
queryDepartAndPostTreeSync = '/sys/sysDepart/queryDepartAndPostTreeSync',
|
||
//查询部门岗位下的用户
|
||
queryDepartPostUserPageList = '/sys/user/queryDepartPostUserPageList',
|
||
//查询所选部门的所有父节点ID
|
||
queryAllParentId = '/sys/sysDepart/queryAllParentId',
|
||
}
|
||
|
||
/**
|
||
* 上传地址(须含 context-path;开发环境 domain 仅为 host 时需拼 apiUrl)
|
||
*/
|
||
export const uploadUrl = `${resolveApiBaseUrl()}/sys/common/upload`;
|
||
|
||
/**
|
||
* 职务列表
|
||
* @param params
|
||
*/
|
||
export const getPositionList = (params) => {
|
||
return defHttp.get({ url: Api.positionList, params });
|
||
};
|
||
|
||
/**
|
||
* 用户列表
|
||
* @param params
|
||
*/
|
||
export const getUserList = (params) => {
|
||
return defHttp.get({ url: Api.userList, params });
|
||
};
|
||
|
||
/**
|
||
* 角色列表
|
||
* @param params
|
||
*/
|
||
export const getRoleList = (params) => {
|
||
return defHttp.get({ url: Api.roleList, params });
|
||
};
|
||
|
||
/**
|
||
* 异步获取部门树列表
|
||
*/
|
||
export const queryDepartTreeSync = (params?) => {
|
||
return defHttp.get({ url: Api.queryDepartTreeSync, params });
|
||
};
|
||
/**
|
||
* 异步获取部门职位树列表
|
||
*/
|
||
export const queryDepartAndPostTreeSync = (params?) => {
|
||
return defHttp.get({ url: Api.queryDepartAndPostTreeSync, params });
|
||
};
|
||
|
||
/**
|
||
* 获取部门树列表
|
||
*/
|
||
export const queryTreeList = (params?) => {
|
||
return defHttp.get({ url: Api.queryTreeList, params });
|
||
};
|
||
|
||
/**
|
||
* 分类字典树控件 加载节点
|
||
*/
|
||
export const loadTreeData = (params?) => {
|
||
return defHttp.get({ url: Api.loadTreeData, params });
|
||
};
|
||
|
||
/**
|
||
* 根据字典code加载字典text
|
||
*/
|
||
export const loadDictItem = (params?) => {
|
||
return defHttp.get({ url: Api.loadDictItem, params });
|
||
};
|
||
|
||
/**
|
||
* 根据字典code加载字典text
|
||
*/
|
||
export const getDictItems = (dictCode) => {
|
||
return defHttp.get({ url: Api.getDictItems + dictCode }, { joinTime: false });
|
||
};
|
||
/**
|
||
* 部门用户modal选择列表加载list
|
||
*/
|
||
export const getTableList = (params) => {
|
||
return defHttp.get({ url: Api.getTableList, params });
|
||
};
|
||
|
||
/**
|
||
* 部门岗位用户modal【查询部门岗位下的用户】
|
||
*/
|
||
export const queryDepartPostUserPageList = (params) => {
|
||
return defHttp.get({ url: Api.queryDepartPostUserPageList, params });
|
||
};
|
||
|
||
/**
|
||
* 查询所选部门的所有父节点ID
|
||
*/
|
||
export const queryAllParentId = (params) => {
|
||
return defHttp.get({ url: Api.queryAllParentId, params });
|
||
};
|
||
|
||
/**
|
||
* 加载全部分类字典数据
|
||
*/
|
||
export const loadCategoryData = (params) => {
|
||
return defHttp.get({ url: Api.getCategoryData, params });
|
||
};
|
||
/**
|
||
* 文件上传
|
||
*/
|
||
export const uploadFile = (params, success) => {
|
||
return defHttp.uploadFile({ url: uploadUrl }, params, { success });
|
||
};
|
||
/**
|
||
* 下载文件
|
||
* @param url 文件路径
|
||
* @param fileName 文件名
|
||
* @param parameter
|
||
* @returns {*}
|
||
*/
|
||
export const downloadFile = (url, fileName?, parameter?) => {
|
||
return getFileblob(url, parameter).then((data) => {
|
||
if (!data || data.size === 0) {
|
||
message.warning('文件下载失败');
|
||
return;
|
||
}
|
||
if (typeof window.navigator.msSaveBlob !== 'undefined') {
|
||
window.navigator.msSaveBlob(new Blob([data]), fileName);
|
||
} else {
|
||
let url = window.URL.createObjectURL(new Blob([data]));
|
||
let link = document.createElement('a');
|
||
link.style.display = 'none';
|
||
link.href = url;
|
||
link.setAttribute('download', fileName);
|
||
document.body.appendChild(link);
|
||
link.click();
|
||
document.body.removeChild(link); //下载完成移除元素
|
||
window.URL.revokeObjectURL(url); //释放掉blob对象
|
||
}
|
||
});
|
||
};
|
||
|
||
/**
|
||
* 下载文件 用于excel导出
|
||
* @param url
|
||
* @param parameter
|
||
* @returns {*}
|
||
*/
|
||
export const getFileblob = (url, parameter) => {
|
||
return defHttp.get(
|
||
{
|
||
url: url,
|
||
params: parameter,
|
||
responseType: 'blob',
|
||
},
|
||
{ isTransformResponse: false }
|
||
);
|
||
};
|
||
|
||
/**
|
||
* 【用于评论功能】自定义文件上传-方法
|
||
*/
|
||
export const uploadMyFile = (url, data) => {
|
||
return defHttp.uploadMyFile(url, data);
|
||
};
|
||
/**
|
||
* 刷新仪表盘缓存
|
||
* @param params
|
||
*/
|
||
export const refreshDragCache = () => defHttp.get({ url: Api.refreshDragCache }, { isTransformResponse: false });
|
||
/**
|
||
* 刷新默认首页缓存
|
||
* @param params
|
||
*/
|
||
export const refreshHomeCache = () => defHttp.get({ url: Api.refreshDefaultIndexCache }, { isTransformResponse: false });
|