feat:rbac接入文件导出功能

This commit is contained in:
陈淳
2024-01-03 12:28:46 +08:00
parent ffaa3153b3
commit b96fe12aeb
4 changed files with 22 additions and 16 deletions

View File

@@ -38,4 +38,8 @@
</None> </None>
</ItemGroup> </ItemGroup>
<ItemGroup>
<Folder Include="database_backup\" />
</ItemGroup>
</Project> </Project>

View File

@@ -1,6 +1,12 @@
import request from '@/utils/request.js' import request,{download} from '@/utils/request.js'
import { parseStrEmpty } from "@/utils/ruoyi"; import { parseStrEmpty } from "@/utils/ruoyi";
// 导出角色
export function getExportExcel(query) {
return download('/user/export-excel',query,'导出数据.xlsx')
}
// 查询用户列表 // 查询用户列表
export function listUser(query) { export function listUser(query) {
return request({ return request({
@@ -141,3 +147,4 @@ export function updateAuthRole(data) {
// method: 'get' // method: 'get'
// }) // })
// } // }

View File

@@ -23,7 +23,7 @@ const service = axios.create({
//处理批零参数 //处理批零参数
paramsSerializer:params => { paramsSerializer:params => {
// return qs.stringify(params,{indices:false}) // return qs.stringify(params,{indices:false})
console.log(params,"params") // console.log(params,"params")
// if(params.id!=undefined) // if(params.id!=undefined)
// { // {
// if(Array.isArray(params.id) ) // if(Array.isArray(params.id) )
@@ -134,23 +134,18 @@ service.interceptors.response.use(res => {
) )
// 通用下载方法 // 通用下载方法
export function download(url, params, filename) { export function download(url, query, filename) {
downloadLoadingInstance = ElLoading.service({ text: "正在下载数据,请稍候", background: "rgba(0, 0, 0, 0.7)", }) downloadLoadingInstance = ElLoading.service({ text: "正在下载数据,请稍候", background: "rgba(0, 0, 0, 0.7)", })
return service.post(url, params, { return service({
transformRequest: [(params) => { return tansParams(params) }], url: url,
method: 'get',
params: query,
headers: { 'Content-Type': 'application/x-www-form-urlencoded' }, headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
responseType: 'blob' responseType: 'blob'
}).then(async (data) => { }).then(async (data) => {
const isLogin = await blobValidate(data); debugger;
if (isLogin) { const blob = new Blob([data.data])
const blob = new Blob([data])
saveAs(blob, filename) saveAs(blob, filename)
} else {
const resText = await data.text();
const rspObj = JSON.parse(resText);
const errMsg = errorCode[rspObj.code] || rspObj.message || errorCode['default']
ElMessage.error(errMsg);
}
downloadLoadingInstance.close(); downloadLoadingInstance.close();
}).catch((r) => { }).catch((r) => {
console.error(r) console.error(r)

View File

@@ -236,7 +236,7 @@
<script setup name="User"> <script setup name="User">
import { getToken } from "@/utils/auth"; import { getToken } from "@/utils/auth";
import { changeUserStatus, listUser, resetUserPwd, delUser, getUser, updateUser, addUser } from "@/api/system/user"; import { changeUserStatus, listUser, resetUserPwd, delUser, getUser, updateUser, addUser,getExportExcel } from "@/api/system/user";
import { roleOptionselect } from "@/api/system/role"; import { roleOptionselect } from "@/api/system/role";
import { postOptionselect } from "@/api/system/post"; import { postOptionselect } from "@/api/system/post";
import { listDept } from "@/api/system/dept"; import { listDept } from "@/api/system/dept";
@@ -371,7 +371,7 @@ function handleDelete(row) {
}; };
/** 导出按钮操作 */ /** 导出按钮操作 */
function handleExport() { function handleExport() {
proxy.download("user/export"); getExportExcel(proxy.addDateRange(queryParams.value, dateRange.value));
}; };
/** 用户状态修改 */ /** 用户状态修改 */
function handleStatusChange(row) { function handleStatusChange(row) {