导出
This commit is contained in:
@@ -76,6 +76,7 @@ interface ColumnConfig {
|
|||||||
interface Props {
|
interface Props {
|
||||||
modelValue: boolean
|
modelValue: boolean
|
||||||
columns: Record<string, any>
|
columns: Record<string, any>
|
||||||
|
fieldList?: any[] // fieldList 数据,用于获取 exportEntity.isExport
|
||||||
}
|
}
|
||||||
|
|
||||||
const props = defineProps<Props>()
|
const props = defineProps<Props>()
|
||||||
@@ -97,16 +98,35 @@ const initColumnConfig = () => {
|
|||||||
columnConfigList.value = Object.keys(props.columns)
|
columnConfigList.value = Object.keys(props.columns)
|
||||||
.map(key => {
|
.map(key => {
|
||||||
const column = props.columns[key]
|
const column = props.columns[key]
|
||||||
|
const prop = column.prop || key
|
||||||
|
|
||||||
|
// 如果 IndexedDB 没有记录(isExport === undefined),则从 fieldList 中获取 exportEntity.isExport
|
||||||
|
let isExport = column.isExport
|
||||||
|
if (isExport === undefined) {
|
||||||
|
// 查找 fieldList 中对应的字段
|
||||||
|
if (props.fieldList && Array.isArray(props.fieldList)) {
|
||||||
|
const field = props.fieldList.find((f: any) => f.fieldCode === prop)
|
||||||
|
if (field && field.exportEntity && field.exportEntity.isExport === 'Y') {
|
||||||
|
isExport = 'Y'
|
||||||
|
} else {
|
||||||
|
// 如果 fieldList 中没有找到或不是 'Y',默认导出
|
||||||
|
isExport = 'Y'
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// 如果没有 fieldList,默认导出
|
||||||
|
isExport = 'Y'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return {
|
return {
|
||||||
prop: column.prop || key,
|
prop,
|
||||||
label: column.label || key,
|
label: column.label || key,
|
||||||
hide: column.hide || false,
|
hide: column.hide || false,
|
||||||
fixed: column.fixed || false,
|
fixed: column.fixed || false,
|
||||||
sortable: column.sortable || false,
|
sortable: column.sortable || false,
|
||||||
showColumn: column.showColumn !== false,
|
showColumn: column.showColumn !== false,
|
||||||
sortNum: column.sortNum,
|
sortNum: column.sortNum,
|
||||||
// 默认全部勾选导出,如果已有配置则使用配置值
|
isExport
|
||||||
isExport: column.isExport !== undefined ? column.isExport : 'Y'
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.sort((a, b) => {
|
.sort((a, b) => {
|
||||||
|
|||||||
@@ -41,7 +41,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<!-- 列配置抽屉 -->
|
<!-- 列配置抽屉 -->
|
||||||
<ColumnConfigDialog v-if="props.model === 'default'" v-model="showColumnConfigDrawer"
|
<ColumnConfigDialog v-if="props.model === 'default'" v-model="showColumnConfigDrawer"
|
||||||
:columns="tableOption.column" @confirm="handleColumnConfigConfirm" />
|
:columns="tableOption.column" :field-list="fieldListRef" @confirm="handleColumnConfigConfirm" />
|
||||||
<div class="flex-1 w-100%" :class="{ 'table-content': tableInfo.tableType == 'treeAround' }" v-if="isInit">
|
<div class="flex-1 w-100%" :class="{ 'table-content': tableInfo.tableType == 'treeAround' }" v-if="isInit">
|
||||||
<!-- 主体表格 -->
|
<!-- 主体表格 -->
|
||||||
<avue-crud ref="crudRef" v-model="tableForm" v-model:search="tableSearch" v-bind="crudBind"
|
<avue-crud ref="crudRef" v-model="tableForm" v-model:search="tableSearch" v-bind="crudBind"
|
||||||
|
|||||||
Reference in New Issue
Block a user