|
@ -47,11 +47,14 @@ const allData = ref([]) // 字段设置列表展现字段 除操作外 |
|
|
const checkedDataList = ref([]) |
|
|
const checkedDataList = ref([]) |
|
|
const checkAll = ref(true) |
|
|
const checkAll = ref(true) |
|
|
const handlecheckallchange = (val: boolean) => { |
|
|
const handlecheckallchange = (val: boolean) => { |
|
|
|
|
|
console.log('handlecheckallchange全部',val) |
|
|
checkedDataList.value = val ? allData.value : [] |
|
|
checkedDataList.value = val ? allData.value : [] |
|
|
isIndeterminate.value = false |
|
|
isIndeterminate.value = false |
|
|
save() |
|
|
save() |
|
|
} |
|
|
} |
|
|
const handlecheckedchange = (value: string[]) => { |
|
|
const handlecheckedchange = (value: string[]) => { |
|
|
|
|
|
console.log('handlecheckedchange',value) |
|
|
|
|
|
console.log('allData',allData.value) |
|
|
const checkedCount = value.length |
|
|
const checkedCount = value.length |
|
|
checkAll.value = checkedCount === allData.value.length |
|
|
checkAll.value = checkedCount === allData.value.length |
|
|
isIndeterminate.value = checkedCount > 0 && checkedCount < allData.value.length |
|
|
isIndeterminate.value = checkedCount > 0 && checkedCount < allData.value.length |
|
@ -80,44 +83,43 @@ const closeRowDrop = () => { |
|
|
|
|
|
|
|
|
// 保存 |
|
|
// 保存 |
|
|
const save = () => { |
|
|
const save = () => { |
|
|
let saveDate:any[] = [] |
|
|
|
|
|
// 默认列表第一列(弹出详情用) |
|
|
// 默认列表第一列(弹出详情用) |
|
|
let myTableColumns = props.allSchemas.tableColumns |
|
|
let myTableColumns = props.allSchemas.tableColumns |
|
|
if(props.detailAllSchemas){ |
|
|
if(props.detailAllSchemas){ |
|
|
myTableColumns = [...props.allSchemas?.tableColumns,...props.detailAllSchemas?.tableMainColumns] |
|
|
myTableColumns = [...props.allSchemas?.tableColumns,...props.detailAllSchemas?.tableMainColumns] |
|
|
} |
|
|
} |
|
|
let actionData = myTableColumns.find(item=>item.field=='action') |
|
|
console.log('myTableColumns',myTableColumns) |
|
|
if(actionData){ |
|
|
console.log('checkedDataList',checkedDataList) |
|
|
myTableColumns.splice(myTableColumns[actionData],1) |
|
|
console.log('allData',allData.value) |
|
|
myTableColumns = [...myTableColumns,actionData] |
|
|
|
|
|
} |
|
|
let leftArr = [] |
|
|
if(props.allSchemas?.tableColumns[0].fixed=='left'&&!saveDate.find(item=>item.fixed=='left')){ |
|
|
let rightArr = [] |
|
|
saveDate.push(props.allSchemas?.tableColumns[0]) |
|
|
myTableColumns.forEach(item=>{ |
|
|
} |
|
|
if(item.fixed=='left'){ |
|
|
allData.value.forEach((item) => { |
|
|
leftArr.push(item) |
|
|
const _item:any = myTableColumns.find(itemColumns => (itemColumns.label == item )) |
|
|
}else if(item.fixed=='right'){ |
|
|
if(_item){ |
|
|
rightArr.push(item) |
|
|
_item.isTable = false |
|
|
} |
|
|
if (checkedDataList.value.indexOf(_item.label) > -1) { |
|
|
}) |
|
|
_item.isTable = true |
|
|
let saveDate:any[] = [...leftArr] |
|
|
if(!saveDate.includes(_item)){ |
|
|
allData.value.forEach(itemLabel=>{ |
|
|
|
|
|
const _item:any = myTableColumns.find(itemColumns => (itemColumns.label == itemLabel )) |
|
|
|
|
|
if(_item){ |
|
|
|
|
|
_item.isTable = checkedDataList.value.find(checkedLabel => checkedLabel==itemLabel)?true:false |
|
|
|
|
|
if(_item.isTable){ |
|
|
saveDate.push(_item) |
|
|
saveDate.push(_item) |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
}) |
|
|
}) |
|
|
// 默认操作列 |
|
|
saveDate = [...saveDate,...rightArr] |
|
|
if(actionData&&!saveDate.includes(actionData)){ |
|
|
|
|
|
saveDate.push(actionData) |
|
|
|
|
|
} |
|
|
|
|
|
updataTableColumns(saveDate) |
|
|
updataTableColumns(saveDate) |
|
|
console.log(99, saveDate) |
|
|
|
|
|
|
|
|
|
|
|
let paramsData = saveDate.map(item=>({ |
|
|
let paramsData = saveDate.map(item=>({ |
|
|
label:item.label, |
|
|
label:item.label, |
|
|
fixed:item.fixed, |
|
|
fixed:item.fixed, |
|
|
field:item.field |
|
|
field:item.field, |
|
|
|
|
|
isTable:item.isTable |
|
|
})) |
|
|
})) |
|
|
|
|
|
console.log('paramsData',paramsData) |
|
|
RedisApi.addRedis({key: routeName.value,value: JSON.stringify(paramsData)}).then(() => { |
|
|
RedisApi.addRedis({key: routeName.value,value: JSON.stringify(paramsData)}).then(() => { |
|
|
}).catch(err => { |
|
|
}).catch(err => { |
|
|
console.log(err) |
|
|
console.log(err) |
|
@ -149,46 +151,41 @@ const dragover = (e) => { |
|
|
// 初始化当前全选状态 |
|
|
// 初始化当前全选状态 |
|
|
const initSelectSta = () => { |
|
|
const initSelectSta = () => { |
|
|
RedisApi.getRedis(routeName.value).then(res => { |
|
|
RedisApi.getRedis(routeName.value).then(res => { |
|
|
|
|
|
let myTableColumns = [...props.allSchemas?.tableColumns] |
|
|
let _myTableColumns = [...props.allSchemas?.tableColumns] |
|
|
|
|
|
if(props.detailAllSchemas){ |
|
|
if(props.detailAllSchemas){ |
|
|
_myTableColumns = [...props.allSchemas?.tableColumns,...props.detailAllSchemas?.tableMainColumns] |
|
|
myTableColumns = [...props.allSchemas?.tableColumns,...props.detailAllSchemas?.tableMainColumns] |
|
|
} |
|
|
} |
|
|
updateSort(_myTableColumns) |
|
|
let leftArr = [] |
|
|
|
|
|
let rightArr = [] |
|
|
|
|
|
myTableColumns.forEach(item=>{ |
|
|
|
|
|
if(item.fixed=='left'){ |
|
|
|
|
|
leftArr.push(item) |
|
|
|
|
|
}else if(item.fixed=='right'){ |
|
|
|
|
|
rightArr.push(item) |
|
|
|
|
|
} |
|
|
|
|
|
}) |
|
|
|
|
|
updateSort(myTableColumns) |
|
|
// 有缓存 |
|
|
// 有缓存 |
|
|
if (res) { |
|
|
if (res) { |
|
|
checkedDataList.value = [] |
|
|
checkedDataList.value = [] |
|
|
allData.value = [] |
|
|
allData.value = [] |
|
|
// 缓存回显临时变量 |
|
|
// 缓存回显临时变量 |
|
|
const _showTableColumns = [] |
|
|
const _showTableColumns = [...leftArr] |
|
|
_showTableColumns.push(_myTableColumns[0]) |
|
|
|
|
|
// 显示缓存中的字段 |
|
|
// 显示缓存中的字段 |
|
|
JSON.parse(res).forEach((item, index) => { |
|
|
JSON.parse(res).forEach((item, index) => { |
|
|
// 列表字段第一个不能参与排序及显隐操作(详情弹窗必备) |
|
|
// 列表字段第一个不能参与排序及显隐操作(详情弹窗必备) |
|
|
// 列表字段操作列不能参与排序及显隐操作 |
|
|
// 列表字段操作列不能参与排序及显隐操作 |
|
|
if (!item.fixed) { |
|
|
if (!item.fixed) { |
|
|
if (item.field != 'action') { |
|
|
if (item.isTable) { |
|
|
checkedDataList.value.push(item.label) |
|
|
checkedDataList.value.push(item.label) |
|
|
_showTableColumns.push(_myTableColumns.find(myItem => (myItem.label == item.label))) |
|
|
|
|
|
allData.value.push(t(`ts.${item.label}`).replace('ts.','')) |
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
let itemColumn = myTableColumns.find(myItem => (myItem.label == item.label)) |
|
|
|
|
|
itemColumn.isTable = item.isTable |
|
|
|
|
|
_showTableColumns.push(itemColumn) |
|
|
|
|
|
allData.value.push(t(`ts.${item.label}`).replace('ts.','')) |
|
|
} |
|
|
} |
|
|
}) |
|
|
}) |
|
|
|
|
|
_showTableColumns = [..._showTableColumns,...rightArr] |
|
|
// 字段设置 显示全部字段 |
|
|
|
|
|
_myTableColumns?.forEach((myTableItem, index) => { |
|
|
|
|
|
// 列表字段第一个不能参与排序及显隐操作(详情弹窗必备) |
|
|
|
|
|
// 列表字段操作列不能参与排序及显隐操作 |
|
|
|
|
|
if (!myTableItem.fixed) { |
|
|
|
|
|
if (myTableItem.field != 'action') { |
|
|
|
|
|
if (allData.value.indexOf(myTableItem.label) == -1) { |
|
|
|
|
|
allData.value.push(t(`ts.${myTableItem.label}`).replace('ts.','')) |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
}) |
|
|
|
|
|
|
|
|
|
|
|
_showTableColumns.push(_myTableColumns[_myTableColumns.length-1]) |
|
|
|
|
|
if(checkedDataList.value.length>0){ |
|
|
if(checkedDataList.value.length>0){ |
|
|
if(allData.value?.length != checkedDataList.value.length){ |
|
|
if(allData.value?.length != checkedDataList.value.length){ |
|
|
isIndeterminate.value = true |
|
|
isIndeterminate.value = true |
|
@ -206,18 +203,16 @@ const initSelectSta = () => { |
|
|
} else { // 无缓存 |
|
|
} else { // 无缓存 |
|
|
checkedDataList.value = [] |
|
|
checkedDataList.value = [] |
|
|
allData.value = [] |
|
|
allData.value = [] |
|
|
_myTableColumns?.forEach((item, index) => { |
|
|
myTableColumns?.forEach((item, index) => { |
|
|
// 列表字段第一个不能参与排序及显隐操作(详情弹窗必备) |
|
|
// 列表字段第一个不能参与排序及显隐操作(详情弹窗必备) |
|
|
// 列表字段操作列不能参与排序及显隐操作 |
|
|
// 列表字段操作列不能参与排序及显隐操作 |
|
|
if (!item.fixed) { |
|
|
if (!item.fixed) { |
|
|
if (item.field != 'action') { |
|
|
checkedDataList.value.push(item.label) |
|
|
checkedDataList.value.push(item.label) |
|
|
allData.value.push(t(`ts.${item.label}`).replace('ts.','')) |
|
|
allData.value.push(t(`ts.${item.label}`).replace('ts.','')) |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
} |
|
|
}) |
|
|
}) |
|
|
checkAll.value = true |
|
|
checkAll.value = true |
|
|
updataTableColumns(_myTableColumns) |
|
|
updataTableColumns(myTableColumns) |
|
|
} |
|
|
} |
|
|
}).catch(err => { |
|
|
}).catch(err => { |
|
|
console.log(err) |
|
|
console.log(err) |
|
|