接入系统公司、部门、角色接口

This commit is contained in:
龙运模
2024-07-06 17:00:41 +08:00
parent 0bb1d10f4b
commit 6e01d7c891
37 changed files with 1336 additions and 258 deletions
+15 -7
View File
@@ -13,7 +13,8 @@
<el-table v-bind="$attrs" :header-cell-style="{'background': '#F5F7FA','color':'#606266'}" :data="tableData" :row-key="rowKey" :key="toggleIndex" ref="scTable" :height="height=='auto'?null:'100%'" :size="config.size" :border="config.border" :stripe="config.stripe" :summary-method="remoteSummary?remoteSummaryMethod:summaryMethod" @sort-change="sortChange" @filter-change="filterChange">
<slot></slot>
<template v-for="(item, index) in userColumn" :key="index">
<el-table-column v-if="!item.hide" :column-key="item.prop" :label="item.label" :prop="item.prop" :width="item.width" :sortable="item.sortable" :fixed="item.fixed" :filters="item.filters" :filter-method="remoteFilter||!item.filters?null:filterHandler" :show-overflow-tooltip="item.showOverflowTooltip">
<!-- item.showOverflowTooltip-->
<el-table-column v-if="!item.hide" :column-key="item.prop" :label="item.label" :prop="item.prop" :width="item.width" :sortable="item.sortable" :fixed="item.fixed" :filters="item.filters" :filter-method="remoteFilter||!item.filters?null:filterHandler" :show-overflow-tooltip="true">
<template #default="scope">
<slot :name="item.prop" v-bind="scope">
{{scope.row[item.prop]}}
@@ -29,7 +30,7 @@
</div>
<div class="scTable-page" v-if="!hidePagination || !hideDo">
<div class="scTable-pagination">
<el-pagination v-if="!hidePagination" background :small="true" :layout="paginationLayout" :total="total" :page-size="scPageSize" :page-sizes="pageSizes" v-model:currentPage="currentPage" @current-change="paginationChange" @update:page-size="pageSizeChange"></el-pagination>
<el-pagination v-if="!hidePagination && showPagination" background :small="true" :layout="paginationLayout" :total="total" :page-size="scPageSize" :page-sizes="pageSizes" v-model:currentPage="currentPage" @current-change="paginationChange" @update:page-size="pageSizeChange"></el-pagination>
</div>
<div class="scTable-do" v-if="!hideDo">
<el-button v-if="!hideRefresh" @click="refresh" icon="el-icon-refresh" circle style="margin-left:15px"></el-button>
@@ -89,6 +90,7 @@
remoteFilter: { type: Boolean, default: false },
remoteSummary: { type: Boolean, default: false },
hidePagination: { type: Boolean, default: false },
showPagination: { type: Boolean, default: true },
hideDo: { type: Boolean, default: false },
hideRefresh: { type: Boolean, default: false },
hideSetting: { type: Boolean, default: false },
@@ -143,7 +145,7 @@
mounted() {
//判断是否开启自定义列
if(this.column){
this.getCustomColumn()
// this.getCustomColumn()
}else{
this.userColumn = this.column
}
@@ -172,12 +174,12 @@
//获取数据
async getData(){
this.loading = true;
var reqData = {
const reqData = {
[config.request.page]: this.currentPage,
[config.request.pageSize]: this.scPageSize,
[config.request.prop]: this.prop,
[config.request.order]: this.order
}
};
if(this.hidePagination){
delete reqData[config.request.page]
delete reqData[config.request.pageSize]
@@ -208,11 +210,17 @@
}else{
this.tableData = response.rows || [];
}
if(response.data.columnConfig){
this.userColumn = response.data.columnConfig; // 表头获取
}
this.total = response.total || 0;
this.summary = response.summary || {};
this.loading = false;
}
this.$refs.scTable.setScrollTop(0)
if(this.$refs.scTable){
this.$refs.scTable.setScrollTop(0)
}
this.$emit('dataChange', res, this.tableData)
},
//分页点击
@@ -254,7 +262,7 @@
async columnSettingSave(userColumn){
this.$refs.columnSetting.isSave = true
try {
await config.columnSettingSave(this.tableName, userColumn)
await config.columnSettingSave(this.tableName, userColumn,this.apiObj)
}catch(error){
this.$message.error('保存失败')
this.$refs.columnSetting.isSave = false