|
@@ -2,30 +2,34 @@
|
|
|
* @Author: fxs bjnsfxs@163.com
|
|
|
* @Date: 2024-08-20 18:16:18
|
|
|
* @LastEditors: fxs bjnsfxs@163.com
|
|
|
- * @LastEditTime: 2024-09-18 14:45:33
|
|
|
- * @FilePath: \Game-Backstage-Management-System\src\components\Table.vue
|
|
|
+ * @LastEditTime: 2024-10-16 11:15:24
|
|
|
+ * @FilePath: \Quantity-Creation-Management-Systemc:\Users\NINGMEI\Desktop\Game-Backstage-Management-System\src\components\Table.vue
|
|
|
* @Description:
|
|
|
*
|
|
|
-->
|
|
|
<script setup lang="ts">
|
|
|
import type { PropsParams, TablePaginationSetting } from '@/types/table'
|
|
|
import type { ReqConfig } from '@/types/dataAnalysis'
|
|
|
+import type { TableFieldInfo } from '@/types/table'
|
|
|
+import type { FormInstance } from 'element-plus'
|
|
|
+
|
|
|
import { FilterType, FieldSpecialEffectType } from '@/types/table'
|
|
|
import { initLoadResouce } from '@/utils/resource'
|
|
|
import { fuzzySearch } from '@/utils/common'
|
|
|
-
|
|
|
+import { throttleFunc } from '@/utils/common'
|
|
|
import { computed, onMounted, reactive, ref, toRaw, watch } from 'vue'
|
|
|
import { useTable } from '@/hooks/useTable'
|
|
|
+import { useRequest } from '@/hooks/useRequest'
|
|
|
|
|
|
import FilterPopover from './toolsBtn/FilterPopover.vue'
|
|
|
import RegreshBtn from './toolsBtn/RegreshBtn.vue'
|
|
|
-import { useRequest } from '@/hooks/useRequest'
|
|
|
-
|
|
|
-import type { FormInstance } from 'element-plus'
|
|
|
import axiosInstance from '@/utils/axios/axiosInstance'
|
|
|
|
|
|
const { analysisResCode } = useRequest()
|
|
|
|
|
|
+// 节流的延迟时间
|
|
|
+const throttleTime = 500
|
|
|
+
|
|
|
// 表格工具图标大小
|
|
|
const toolsIconSize = ref(25)
|
|
|
|
|
@@ -41,7 +45,8 @@ const props = withDefaults(defineProps<PropsParams>(), {
|
|
|
openFilterQuery: false,
|
|
|
openPageQuery: false,
|
|
|
needUpload: false,
|
|
|
- needDownLoad: false
|
|
|
+ needDownLoad: false,
|
|
|
+ openRemoteinquiry: false
|
|
|
})
|
|
|
|
|
|
// 父组件触发的方法
|
|
@@ -62,9 +67,12 @@ const queryFormData = reactive<{ [key: string]: any }>({})
|
|
|
|
|
|
const backupQueryFormData = reactive<{ [key: string]: any }>({})
|
|
|
|
|
|
+// 备份其他的请求信息
|
|
|
+let backupReqOtherOptions = {}
|
|
|
+
|
|
|
// 分页数据
|
|
|
-const paginationConfig2 = reactive<TablePaginationSetting>({
|
|
|
- currentPage: 0,
|
|
|
+const paginationConfig = reactive<TablePaginationSetting>({
|
|
|
+ currentPage: 1,
|
|
|
limit: 0,
|
|
|
total: 0,
|
|
|
pagesizeList: []
|
|
@@ -85,12 +93,12 @@ const resourceInfo: Record<string, string> = {
|
|
|
const blobUrlInfo = reactive<Record<string, string>>({})
|
|
|
|
|
|
// 一些公用方法
|
|
|
-const { getTableData } = useTable(tableData, paginationConfig2)
|
|
|
+const { getTableData } = useTable(tableData, paginationConfig)
|
|
|
|
|
|
// 没有开启分页查询的时候使用的数据
|
|
|
const tableDataNoPaging = computed(() => {
|
|
|
- let curPage = paginationConfig2.currentPage
|
|
|
- let limit = paginationConfig2.limit
|
|
|
+ let curPage = paginationConfig.currentPage
|
|
|
+ let limit = paginationConfig.limit
|
|
|
let begin = curPage * limit - limit
|
|
|
//这里不减一是因为,slice方法裁切是左闭右开数组
|
|
|
let end = curPage * limit
|
|
@@ -116,17 +124,59 @@ const dateFieldsList = computed(() => {
|
|
|
|
|
|
// 计算行号
|
|
|
const computedRowIndex = (index: number) => {
|
|
|
- return (paginationConfig2.currentPage - 1) * paginationConfig2.limit + index + 1
|
|
|
+ return (paginationConfig.currentPage - 1) * paginationConfig.limit + index + 1
|
|
|
}
|
|
|
|
|
|
// 改变页码
|
|
|
const handleCurrentChange = (val: number) => {
|
|
|
- paginationConfig2.currentPage = val
|
|
|
+ paginationConfig.currentPage = val
|
|
|
}
|
|
|
|
|
|
// 改变每页大小
|
|
|
const handleSizeChange = (val: number) => {
|
|
|
- paginationConfig2.limit = val
|
|
|
+ paginationConfig.limit = val
|
|
|
+}
|
|
|
+
|
|
|
+/**
|
|
|
+ * @description: 加载表格数据
|
|
|
+ * @return {*}
|
|
|
+ */
|
|
|
+const loadTableData = async () => {
|
|
|
+ return new Promise(async (resolve, reject) => {
|
|
|
+ loading.value = true
|
|
|
+ if (props.dataList) {
|
|
|
+ tableData.splice(0, tableData.length, ...props.dataList)
|
|
|
+
|
|
|
+ paginationConfig.total = props.paginationConfig.total
|
|
|
+ loading.value = false
|
|
|
+
|
|
|
+ resolve(true)
|
|
|
+ } else {
|
|
|
+ if (props.requestConfig) {
|
|
|
+ try {
|
|
|
+ // 如果开启了分页查询,那么要计算出需要展示的页码位置所对应的偏移量
|
|
|
+ // 同时要将查询的条数改为对应的用户选择的展示条数
|
|
|
+ if (props.openPageQuery) {
|
|
|
+ reqconfig.otherOptions.offset =
|
|
|
+ (paginationConfig.currentPage - 1) * paginationConfig.limit
|
|
|
+ reqconfig.otherOptions.limit = paginationConfig.limit
|
|
|
+ }
|
|
|
+ await getTableData(reqconfig.url, reqconfig.otherOptions, props.openPageQuery)
|
|
|
+ backupTableData.splice(0, backupTableData.length, ...tableData)
|
|
|
+ resolve(true)
|
|
|
+ } catch (err) {
|
|
|
+ console.log(err)
|
|
|
+ reject(err)
|
|
|
+ } finally {
|
|
|
+ loading.value = false
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ loading.value = false
|
|
|
+
|
|
|
+ throw new Error('no match requestConfig')
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -136,82 +186,31 @@ const handleSizeChange = (val: number) => {
|
|
|
const getData = () => {
|
|
|
return new Promise(async (resolve, reject) => {
|
|
|
try {
|
|
|
- const loadTableData = async () => {
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
- if (props.dataList) {
|
|
|
- tableData.splice(0, tableData.length, ...props.dataList)
|
|
|
-
|
|
|
- paginationConfig2.total = props.paginationConfig.total
|
|
|
- loading.value = false
|
|
|
- // emits('loadSuccess', tableData)
|
|
|
-
|
|
|
- resolve(true)
|
|
|
- } else {
|
|
|
- loading.value = true
|
|
|
- if (props.requestConfig) {
|
|
|
- if (props.openPageQuery) {
|
|
|
- // 如果开启了分页查询,那么要计算出需要展示的页码位置所对应的偏移量
|
|
|
- // 同时要将查询的条数改为对应的用户选择的展示条数
|
|
|
- reqconfig.otherOptions.offset =
|
|
|
- (paginationConfig2.currentPage - 1) * paginationConfig2.limit
|
|
|
- reqconfig.otherOptions.limit = paginationConfig2.limit
|
|
|
- }
|
|
|
-
|
|
|
- // 查询时要根据是否开启分页查询传入对应参数
|
|
|
- getTableData(reqconfig.url, reqconfig.otherOptions, props.openPageQuery)
|
|
|
- .then(() => {
|
|
|
- // emits('loadSuccess', tableData)
|
|
|
- backupTableData.splice(0, backupTableData.length, ...tableData)
|
|
|
-
|
|
|
- resolve(true)
|
|
|
- })
|
|
|
- .catch((err) => {
|
|
|
- console.log(err)
|
|
|
-
|
|
|
- reject(err)
|
|
|
- })
|
|
|
- .finally(() => {
|
|
|
- loading.value = false
|
|
|
- })
|
|
|
- } else {
|
|
|
- loading.value = false
|
|
|
-
|
|
|
- throw new Error('no match requestConfig')
|
|
|
- }
|
|
|
- }
|
|
|
- })
|
|
|
- }
|
|
|
// 等待数据加载完成
|
|
|
await loadTableData()
|
|
|
- .then(async () => {
|
|
|
- if (props.needAverage) {
|
|
|
- let rowData: any = {}
|
|
|
- let oldList: Array<any> = JSON.parse(JSON.stringify(tableData))
|
|
|
- Object.values(props.tableFieldsInfo).map((item, index) => {
|
|
|
- let sum = oldList
|
|
|
- .map((item) => item.count)
|
|
|
- .reduce((accumulator, currentValue) => accumulator + currentValue, 0)
|
|
|
- let averageList = oldList
|
|
|
- .map((val) => val[item.name])
|
|
|
- .filter((item) => item !== undefined)
|
|
|
- if (index === 0) rowData[item.name] = '均值'
|
|
|
- else if (item.name === 'count') rowData[item.name] = sum
|
|
|
- else {
|
|
|
- let num =
|
|
|
- averageList.reduce((accumulator, currentValue) => accumulator + currentValue, 0) /
|
|
|
- averageList.length
|
|
|
-
|
|
|
- rowData[item.name] = isNaN(num) ? 0 : num.toFixed(2)
|
|
|
- }
|
|
|
- })
|
|
|
- insertRow(0, rowData)
|
|
|
+ if (props.needAverage) {
|
|
|
+ let rowData: any = {}
|
|
|
+ let oldList: Array<any> = JSON.parse(JSON.stringify(tableData))
|
|
|
+ Object.values(props.tableFieldsInfo).map((item: TableFieldInfo, index: number) => {
|
|
|
+ let sum = oldList
|
|
|
+ .map((item) => item.count)
|
|
|
+ .reduce((accumulator, currentValue) => accumulator + currentValue, 0)
|
|
|
+ let averageList = oldList
|
|
|
+ .map((val) => val[item.name])
|
|
|
+ .filter((item) => item !== undefined)
|
|
|
+ if (index === 0) rowData[item.name] = '均值'
|
|
|
+ else if (item.name === 'count') rowData[item.name] = sum
|
|
|
+ else {
|
|
|
+ let num =
|
|
|
+ averageList.reduce((accumulator, currentValue) => accumulator + currentValue, 0) /
|
|
|
+ averageList.length
|
|
|
+
|
|
|
+ rowData[item.name] = isNaN(num) ? 0 : num.toFixed(2)
|
|
|
}
|
|
|
- resolve(true)
|
|
|
- })
|
|
|
- .catch((err) => {
|
|
|
- console.log(err)
|
|
|
- reject(err)
|
|
|
})
|
|
|
+ insertRow(0, rowData)
|
|
|
+ }
|
|
|
+ resolve(true)
|
|
|
} catch (err) {
|
|
|
console.log(err)
|
|
|
reject(err)
|
|
@@ -219,6 +218,9 @@ const getData = () => {
|
|
|
})
|
|
|
}
|
|
|
|
|
|
+// 包装一下获取数据
|
|
|
+const throttleGetData = throttleFunc(getData, 1000)
|
|
|
+
|
|
|
/**
|
|
|
* @description: 清空表格数据
|
|
|
* @return {*}
|
|
@@ -232,11 +234,10 @@ const resetTableData = () => {
|
|
|
* @return {*}
|
|
|
*/
|
|
|
const queryTableData = () => {
|
|
|
- if (props.requestConfig) {
|
|
|
+ if (props.openRemoteinquiry && props.requestConfig) {
|
|
|
reqconfig.otherOptions = { ...props.requestConfig.otherOptions, ...queryFormData }
|
|
|
- }
|
|
|
- if (props.openPageQuery) getData()
|
|
|
- else {
|
|
|
+ getData()
|
|
|
+ } else {
|
|
|
let filteredTable = []
|
|
|
// 过滤出来所有符合formData数据的条件
|
|
|
filteredTable = backupTableData.filter((item) => {
|
|
@@ -255,14 +256,15 @@ const queryTableData = () => {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+// 把查询方法包装一下,节流
|
|
|
+const throttleQueryTableData = throttleFunc(queryTableData, throttleTime)
|
|
|
+
|
|
|
/**
|
|
|
* @description: 重置整个查询表单,重置后,再请求一次全部表格
|
|
|
* @param {*} formEl 表单对象
|
|
|
* @return {*}
|
|
|
*/
|
|
|
-const resetQueryForm = (formEl: FormInstance | undefined) => {
|
|
|
- if (!formEl) return
|
|
|
-
|
|
|
+const resetQueryForm = (neewQuery: boolean = true) => {
|
|
|
// 使用函数返回保存的备份信息,这样可以正确的给queryformdata赋值
|
|
|
// JSON.stringify()第二个参数可以用来处理undefined的情况,第一个参数设置为_可以避免ts检查
|
|
|
function resetFormData() {
|
|
@@ -272,10 +274,14 @@ const resetQueryForm = (formEl: FormInstance | undefined) => {
|
|
|
return data
|
|
|
}
|
|
|
Object.assign(queryFormData, resetFormData())
|
|
|
+ reqconfig.otherOptions = backupReqOtherOptions // 要把请求的参数也重置一次,不然切换平台等操作,会带着原来的查询参数请求
|
|
|
|
|
|
- queryTableData()
|
|
|
+ if (neewQuery) queryTableData()
|
|
|
}
|
|
|
|
|
|
+// 把重置方法包装一下,节流
|
|
|
+const throttleResetQueryForm = throttleFunc(resetQueryForm, throttleTime)
|
|
|
+
|
|
|
/**
|
|
|
* @description: 在获取完数据后,插入均值行
|
|
|
* @param {*} start 插入的位置
|
|
@@ -324,26 +330,24 @@ const tableCellStyle = (info: any) => {
|
|
|
/**
|
|
|
* @description: 监听litmit,currentpage的变化,改变后去重新请求数据
|
|
|
* 如果是limit的变化,则需要把当前页置为1
|
|
|
- *
|
|
|
- * 对于Gid需要去监听props的,而不是本地的,因为是外部的改变
|
|
|
* @return {*}
|
|
|
*/
|
|
|
-const changePageLimit = watch(
|
|
|
- () => [paginationConfig2.limit, paginationConfig2.currentPage],
|
|
|
- ([newLimit, newCurPage], [oldLimit, oldCruPage]) => {
|
|
|
+watch(
|
|
|
+ () => [paginationConfig.limit, paginationConfig.currentPage],
|
|
|
+ ([newLimit], [oldLimit]) => {
|
|
|
+ resetQueryForm(false)
|
|
|
+
|
|
|
if (newLimit != oldLimit) {
|
|
|
// 需要给分页按钮加上:current-page.sync="current_page" 配置,不然不生效
|
|
|
// 当改变每页大小时把之前的缓存全部清除,重新开始
|
|
|
- paginationConfig2.currentPage = 1
|
|
|
- // resetTableData()
|
|
|
+ paginationConfig.currentPage = 1
|
|
|
}
|
|
|
|
|
|
- if (newCurPage != oldCruPage) paginationConfig2.currentPage = newCurPage
|
|
|
-
|
|
|
- // if (newGid != oldGid) reqconfig.otherOptions.gid = newGid
|
|
|
- // || newGid != oldGid
|
|
|
-
|
|
|
- if (newLimit != oldLimit || !tableData[paginationConfig2.currentPage]) {
|
|
|
+ // 开启分页查询的情况下,改变limit或者没有这页的缓存的情况下,重新请求
|
|
|
+ if (
|
|
|
+ props.openPageQuery &&
|
|
|
+ (newLimit !== oldLimit || !tableData[paginationConfig.currentPage])
|
|
|
+ ) {
|
|
|
getData()
|
|
|
}
|
|
|
},
|
|
@@ -358,16 +362,33 @@ watch(
|
|
|
() => props.requestConfig?.otherOptions.gid,
|
|
|
(newGid, oldGid) => {
|
|
|
if (newGid != oldGid) {
|
|
|
+ resetQueryForm(false)
|
|
|
reqconfig.otherOptions.gid = newGid
|
|
|
+
|
|
|
getData()
|
|
|
}
|
|
|
- }
|
|
|
+ },
|
|
|
+ { deep: true }
|
|
|
+)
|
|
|
+
|
|
|
+// 监听pf
|
|
|
+const watchPf = watch(
|
|
|
+ () => props.requestConfig?.otherOptions.pf,
|
|
|
+ (newPf, oldPf) => {
|
|
|
+ if (newPf != oldPf) {
|
|
|
+ resetQueryForm(false)
|
|
|
+ reqconfig.otherOptions.pf = newPf
|
|
|
+ getData()
|
|
|
+ }
|
|
|
+ },
|
|
|
+ { deep: true }
|
|
|
)
|
|
|
|
|
|
// 监听传入的datalist的变化,然后去更新数据
|
|
|
const changeDataList = watch(
|
|
|
() => [props.dataList],
|
|
|
() => {
|
|
|
+ resetQueryForm(false)
|
|
|
getData()
|
|
|
},
|
|
|
{
|
|
@@ -379,6 +400,7 @@ const changeDataList = watch(
|
|
|
const watchDateChange = watch(
|
|
|
() => [props.requestConfig?.otherOptions.startTime, props.requestConfig?.otherOptions.endTime],
|
|
|
() => {
|
|
|
+ resetQueryForm(false)
|
|
|
getData()
|
|
|
},
|
|
|
{ deep: true }
|
|
@@ -392,6 +414,9 @@ const createRowKey = () => {
|
|
|
return `${Date.now()}-${Math.random().toString(36).substr(2, 9)}`
|
|
|
}
|
|
|
|
|
|
+// 没有pf取消掉
|
|
|
+if (!props.requestConfig?.otherOptions.pf) watchPf()
|
|
|
+
|
|
|
//如果没有日期就取消掉
|
|
|
if (!props.requestConfig?.otherOptions.startTime && !props.requestConfig?.otherOptions.endTime) {
|
|
|
watchDateChange()
|
|
@@ -402,17 +427,12 @@ if (!props.dataList) {
|
|
|
changeDataList()
|
|
|
}
|
|
|
|
|
|
-// 没有开启分页查询就关闭掉这个监听
|
|
|
-if (!props.openPageQuery) {
|
|
|
- changePageLimit()
|
|
|
-}
|
|
|
-
|
|
|
/**
|
|
|
* @description: 拷贝一份配置文件
|
|
|
* @return {*}
|
|
|
*/
|
|
|
const initpageConfig = () => {
|
|
|
- Object.assign(paginationConfig2, props.paginationConfig)
|
|
|
+ Object.assign(paginationConfig, props.paginationConfig)
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -432,6 +452,8 @@ const initFormData = () => {
|
|
|
queryFormData[item.name] = item.default
|
|
|
backupQueryFormData[item.name] = item.default
|
|
|
})
|
|
|
+ // backupQueryFormData = JSON.parse(JSON.stringify(queryFormData))
|
|
|
+ Object.assign(backupQueryFormData, JSON.parse(JSON.stringify(queryFormData)))
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -440,6 +462,7 @@ const initFormData = () => {
|
|
|
* @return {*}
|
|
|
*/
|
|
|
const tableSortChange = (data: { column: any; prop: string; order: any }) => {
|
|
|
+ resetQueryForm(false)
|
|
|
let { order } = { ...data }
|
|
|
if (order === 'ascending') order = 'asc'
|
|
|
else if (order === 'descending') order = 'desc'
|
|
@@ -459,6 +482,7 @@ const deleteRow = (url: string, filedsInfo: any) => {
|
|
|
.post(url, { ...filedsInfo })
|
|
|
.then((data) => {
|
|
|
analysisResCode(data).then(() => {
|
|
|
+ resetQueryForm(false)
|
|
|
getData()
|
|
|
})
|
|
|
})
|
|
@@ -489,19 +513,22 @@ defineExpose({
|
|
|
resetTableData,
|
|
|
deleteRow,
|
|
|
downLoadTable,
|
|
|
- outGetTableData
|
|
|
+ outGetTableData,
|
|
|
+ resetQueryForm
|
|
|
})
|
|
|
|
|
|
onMounted(() => {
|
|
|
initpageConfig()
|
|
|
initReqConfig()
|
|
|
initFormData()
|
|
|
+ backupReqOtherOptions = reqconfig.otherOptions // 备份一份请求参数
|
|
|
+ // registerWatchProps()
|
|
|
if (props.loadingState !== undefined) {
|
|
|
loading.value = props.loadingState
|
|
|
}
|
|
|
- // if (!props.openPageQuery) {
|
|
|
- // getData()
|
|
|
- // }
|
|
|
+ // 这里会造成有的table页第一次进来刷新两次,因为有的页面gid或者平台等数据会变化,导致请求第二次
|
|
|
+ // 但是这里又必须请求一次,因为有的页面数据是没有变化的
|
|
|
+ getData()
|
|
|
// 去加载所有需要的资源
|
|
|
initLoadResouce(resourceInfo).then((data) => {
|
|
|
Object.assign(blobUrlInfo, data)
|
|
@@ -525,7 +552,12 @@ onMounted(() => {
|
|
|
:label-position="'left'"
|
|
|
>
|
|
|
<!-- 所有的input查询框 -->
|
|
|
- <el-form-item :label="item.label" v-for="item in inputFieldsList" class="filterItem">
|
|
|
+ <el-form-item
|
|
|
+ @keyup.enter.native="throttleQueryTableData"
|
|
|
+ :label="item.label"
|
|
|
+ v-for="item in inputFieldsList"
|
|
|
+ class="filterItem"
|
|
|
+ >
|
|
|
<el-input
|
|
|
v-model="queryFormData[item.name]"
|
|
|
:placeholder="item.placeholder"
|
|
@@ -562,10 +594,10 @@ onMounted(() => {
|
|
|
<div class="queryBox">
|
|
|
<el-divider class="queryPartition" content-position="center" direction="vertical" />
|
|
|
<div class="queryBtnBox">
|
|
|
- <el-button class="queryBtn" color="#165dff" @click="queryTableData">
|
|
|
+ <el-button class="queryBtn" color="#165dff" @click="throttleQueryTableData">
|
|
|
<el-icon><Search /></el-icon>查询
|
|
|
</el-button>
|
|
|
- <el-button class="refreshBtn" color="#f2f3f5" @click="resetQueryForm(queryFormRef)">
|
|
|
+ <el-button class="refreshBtn" color="#f2f3f5" @click="throttleResetQueryForm()">
|
|
|
<el-icon><RefreshRight /></el-icon>重置
|
|
|
</el-button>
|
|
|
</div>
|
|
@@ -600,8 +632,8 @@ onMounted(() => {
|
|
|
>
|
|
|
<el-icon><Download /></el-icon>下载
|
|
|
</el-button>
|
|
|
-
|
|
|
- <RegreshBtn @refresh-table="getData" :icon-size="toolsIconSize"></RegreshBtn>
|
|
|
+ <!-- throttleFunc(queryTableData, 200) -->
|
|
|
+ <RegreshBtn @refresh-table="throttleGetData" :icon-size="toolsIconSize"></RegreshBtn>
|
|
|
|
|
|
<FilterPopover
|
|
|
:table-fields-info="tableFieldsInfo"
|
|
@@ -613,7 +645,7 @@ onMounted(() => {
|
|
|
<div class="tableBox">
|
|
|
<!-- 没有分页的时候需要重新计算一下data -->
|
|
|
<el-table
|
|
|
- :data="openPageQuery ? tableData[paginationConfig2.currentPage] : tableDataNoPaging"
|
|
|
+ :data="openPageQuery ? tableData[paginationConfig.currentPage] : tableDataNoPaging"
|
|
|
style="width: 100%"
|
|
|
class="tableBody"
|
|
|
:cell-style="tableCellStyle"
|
|
@@ -775,12 +807,12 @@ onMounted(() => {
|
|
|
<el-pagination
|
|
|
class="userTablePagination"
|
|
|
background
|
|
|
- :page-size="paginationConfig2.limit"
|
|
|
- :page-sizes="paginationConfig2.pagesizeList"
|
|
|
+ :page-size="paginationConfig.limit"
|
|
|
+ :page-sizes="paginationConfig.pagesizeList"
|
|
|
table-layout="fixed"
|
|
|
layout="prev, pager, next ,jumper ,sizes,total,"
|
|
|
- :total="paginationConfig2.total"
|
|
|
- :current-page.sync="paginationConfig2.currentPage"
|
|
|
+ :total="paginationConfig.total"
|
|
|
+ :current-page.sync="paginationConfig.currentPage"
|
|
|
@current-change="handleCurrentChange"
|
|
|
@size-change="handleSizeChange"
|
|
|
/>
|
|
@@ -814,6 +846,8 @@ onMounted(() => {
|
|
|
.filterHeader,
|
|
|
.filterBody {
|
|
|
width: 98%;
|
|
|
+ box-sizing: border-box;
|
|
|
+
|
|
|
margin: 0 auto;
|
|
|
}
|
|
|
|
|
@@ -829,6 +863,7 @@ onMounted(() => {
|
|
|
|
|
|
.filterBody {
|
|
|
display: flex;
|
|
|
+ padding: 0 24px;
|
|
|
}
|
|
|
|
|
|
.queryBox {
|