增加导入优化导出

This commit is contained in:
龙运模
2024-07-15 17:24:45 +08:00
parent bb6c776515
commit 6dd9d35ce3
10 changed files with 258 additions and 73 deletions
+56 -57
View File
@@ -11,65 +11,65 @@
</el-container>
</el-aside>
<el-container class="mainHeaderNoBorderPadding">
<el-header style="padding-left: 10px;">
<div class="left-panel">
<el-button type="primary" :size="size" icon="el-icon-plus" @click="add">新增用户</el-button>
<el-button type="danger" plain :size="size" icon="el-icon-delete" :disabled="selection.length==0" @click="batch_del"></el-button>
<el-button type="primary" plain :size="size" :disabled="selection.length==0" @click="role">分配角色</el-button>
<el-button type="primary" plain :size="size" :disabled="selection.length==0" @click="rePwd">密码重置</el-button>
<el-header style="padding-left: 10px;">
<div class="left-panel">
<el-button type="primary" :size="size" icon="el-icon-plus" @click="add">新增用户</el-button>
<el-button type="danger" plain :size="size" icon="el-icon-delete" :disabled="selection.length==0" @click="batch_del"></el-button>
<el-button type="primary" plain :size="size" :disabled="selection.length==0" @click="role">分配角色</el-button>
<el-button type="primary" plain :size="size" :disabled="selection.length==0" @click="rePwd">密码重置</el-button>
</div>
<div class="right-panel">
<div class="right-panel-search">
<scExport :size="size" @exportData="exportData" @updateShow="exportChangeShow" :show="exportShow" type="7"></scExport>
</div>
<div class="right-panel">
<div class="right-panel-search">
<scExport :size="size" @exportData="exportData" @updateShow="exportChangeShow" :show="exportShow" type="7"></scExport>
</div>
</div>
</el-header>
<el-main class="nopadding">
<div class="searchMain searchMainNoTop" style="padding-left: 10px;">
<scSearch ref="scSearch" :searchList="searchList" @fetchSelectData="getSelectData"></scSearch>
</div>
</el-header>
<el-main class="nopadding">
<div class="searchMain searchMainNoTop" style="padding-left: 10px;">
<scSearch ref="scSearch" :searchList="searchList" @fetchSelectData="getSelectData"></scSearch>
<div class="searchItem searchBtn">
<el-button :size="size" :icon="searchShow?'el-icon-ArrowUpBold':'el-icon-ArrowDownBold'" @click="searchShowClick">{{searchShow?'收起':'更多'}}</el-button>
<el-button :size="size" type="primary" icon="el-icon-search" @click="upSearch">查询</el-button>
<el-button :size="size" type="info" icon="el-icon-RefreshRight" @click="reset">重置</el-button>
</div>
<div class="searchItem searchBtn">
<el-button :size="size" :icon="searchShow?'el-icon-ArrowUpBold':'el-icon-ArrowDownBold'" @click="searchShowClick">{{searchShow?'收起':'更多'}}</el-button>
<el-button :size="size" type="primary" icon="el-icon-search" @click="upSearch">查询</el-button>
<el-button :size="size" type="info" icon="el-icon-RefreshRight" @click="reset">重置</el-button>
</div>
<scTable ref="table" :apiObj="list.apiObj" :column="list.column" @selection-change="selectionChange" stripe :size="size">
<el-table-column type="selection" align="center" width="45"></el-table-column>
<sc-table-column label="序号" align="center" type="index"></sc-table-column>
<template #avatar="scope">
<div class="userImg">
<el-avatar :src="scope.row.avatar" size="small"></el-avatar>
</div>
</template>
<template #roles="scope">
<span v-if="scope.row.user_roles">
<span v-for="(em,index) in scope.row.user_roles.role_names" :key="index">
<span>{{em}}</span><span v-if="index+1<scope.row.user_roles.role_names.length">、</span>
</span>
</div>
<scTable ref="table" :apiObj="list.apiObj" :column="list.column" @selection-change="selectionChange" stripe :size="size">
<el-table-column type="selection" align="center" width="45"></el-table-column>
<sc-table-column label="序号" align="center" type="index"></sc-table-column>
<template #avatar="scope">
<div class="userImg">
<el-avatar :src="scope.row.avatar" size="small"></el-avatar>
</div>
</template>
<template #roles="scope">
<span v-if="scope.row.user_roles">
<span v-for="(em,index) in scope.row.user_roles.role_names" :key="index">
<span>{{em}}</span><span v-if="index+1<scope.row.user_roles.role_names.length">、</span>
</span>
</span>
</template>
<template #active_status="scope">
<el-switch :size="size" v-model="scope.row.active_status" @change="changeSwitch($event, scope.row)" :loading="scope.row.$switch_status" :active-value="true" :inactive-value="false"></el-switch>
</template>
<el-table-column label="操作" fixed="right" align="center" width="160">
<template #default="scope">
<el-dropdown>
<el-button class="noBorderBtn" icon="el-icon-more" :size="size"></el-button>
<template #dropdown>
<el-dropdown-menu>
<el-dropdown-item @click="table_show(scope.row, 'show')" icon="sc-icon-See">用户详情</el-dropdown-item>
<el-dropdown-item @click="table_edit(scope.row, 'edit')" icon="sc-icon-Edit">编辑用户</el-dropdown-item>
<el-dropdown-item @click="table_empower(scope.row)" icon="sc-icon-AbilityAuthorization" divided>查看权限</el-dropdown-item>
<el-dropdown-item @click="table_del(scope.row, 'delete')" icon="sc-icon-Delete">删除用户</el-dropdown-item>
</el-dropdown-menu>
</template>
</el-dropdown>
</template>
<template #active_status="scope">
<el-switch :size="size" v-model="scope.row.active_status" @change="changeSwitch($event, scope.row)" :loading="scope.row.$switch_status" :active-value="true" :inactive-value="false"></el-switch>
</template>
<el-table-column label="操作" fixed="right" align="center" width="160">
<template #default="scope">
<el-dropdown>
<el-button class="noBorderBtn" icon="el-icon-more" :size="size"></el-button>
<template #dropdown>
<el-dropdown-menu>
<el-dropdown-item @click="table_show(scope.row, 'show')" icon="sc-icon-See">用户详情</el-dropdown-item>
<el-dropdown-item @click="table_edit(scope.row, 'edit')" icon="sc-icon-Edit">编辑用户</el-dropdown-item>
<el-dropdown-item @click="table_empower(scope.row)" icon="sc-icon-AbilityAuthorization" divided>查看权限</el-dropdown-item>
<el-dropdown-item @click="table_del(scope.row, 'delete')" icon="sc-icon-Delete">删除用户</el-dropdown-item>
</el-dropdown-menu>
</template>
</el-dropdown>
</template>
</el-table-column>
</el-table-column>
</scTable>
</el-main>
</scTable>
</el-main>
</el-container>
</el-container>
@@ -85,7 +85,6 @@
import disRoleDialog from './role'
export default {
name: 'user',
components: {
saveDialog, rePwdDialog, disRoleDialog
},
@@ -279,9 +278,9 @@
}, 500);
},
// 下载导出
exportChangeShow(e){
if(e.type == 7){
this.exportShow = e.status==0?true:false
exportChangeShow(params){
if(params.type == 7){
this.exportShow = params.status==0?true:false
}
},
async exportData() {