fix: bug#10602、10525、10599、10601、10603

This commit is contained in:
JiangQiming 2023-03-20 15:53:07 +08:00
parent 30e98f69af
commit fd3064dd90
5 changed files with 14 additions and 56 deletions

View File

@ -38,8 +38,7 @@
:params="params"
:rowSelection="{
selectedRowKeys: _selectedRowKeys,
onSelect: onSelectChange,
onSelectAll: onSelectAllChange,
onChange: onSelectChange,
}"
@cancelSelect="_selectedRowKeys = []"
:pagination="{
@ -165,32 +164,9 @@ const handleSearch = (e: any) => {
const listRef = ref();
const _selectedRowKeys = ref<string[]>([]);
const onSelectChange = (
record: any[],
selected: boolean,
selectedRows: any[],
) => {
_selectedRowKeys.value = selected
? [...getSetRowKey(selectedRows)]
: _selectedRowKeys.value.filter((item: any) => item !== record?.id);
const onSelectChange = (keys: string[]) => {
_selectedRowKeys.value = [...keys];
};
const onSelectAllChange = (
selected: boolean,
selectedRows: any[],
changeRows: any[],
) => {
const unRowsKeys = getSelectedRowsKey(changeRows);
_selectedRowKeys.value = selected
? [...getSetRowKey(selectedRows)]
: _selectedRowKeys.value
.concat(unRowsKeys)
.filter((item) => !unRowsKeys.includes(item));
};
const getSelectedRowsKey = (selectedRows: any[]) =>
selectedRows.map((item) => item?.id).filter((i) => !!i);
const getSetRowKey = (selectedRows: any[]) =>
new Set([..._selectedRowKeys.value, ...getSelectedRowsKey(selectedRows)]);
const loading = ref(false);
const handleSave = async () => {

View File

@ -15,8 +15,7 @@
:params="params"
:rowSelection="{
selectedRowKeys: _selectedRowKeys,
onSelect: onSelectChange,
onSelectAll: onSelectAllChange,
onChange: onSelectChange,
}"
@cancelSelect="_selectedRowKeys = []"
:pagination="{
@ -242,32 +241,9 @@ const listRef = ref();
const _selectedRowKeys = ref<string[]>([]);
const bindVis = ref(false);
const onSelectChange = (
record: any[],
selected: boolean,
selectedRows: any[],
) => {
_selectedRowKeys.value = selected
? [...getSetRowKey(selectedRows)]
: _selectedRowKeys.value.filter((item: any) => item !== record?.id);
const onSelectChange = (keys: string[]) => {
_selectedRowKeys.value = [...keys];
};
const onSelectAllChange = (
selected: boolean,
selectedRows: any[],
changeRows: any[],
) => {
const unRowsKeys = getSelectedRowsKey(changeRows);
_selectedRowKeys.value = selected
? [...getSetRowKey(selectedRows)]
: _selectedRowKeys.value
.concat(unRowsKeys)
.filter((item) => !unRowsKeys.includes(item));
};
const getSelectedRowsKey = (selectedRows: any[]) =>
selectedRows.map((item) => item?.id).filter((i) => !!i);
const getSetRowKey = (selectedRows: any[]) =>
new Set([..._selectedRowKeys.value, ...getSelectedRowsKey(selectedRows)]);
/**
* 表格操作按钮

View File

@ -123,7 +123,11 @@
</j-form-item>
</j-col>
<j-col :span="24">
<j-form-item name="address" label="安装地址">
<j-form-item
name="address"
label="安装地址"
:rules="{ max: 64, message: '最多可输入64个字符' }"
>
<j-input
v-model:value="formData.address"
placeholder="请输入安装地址"

View File

@ -234,6 +234,8 @@ watch(
if (val) {
getGatewayList();
} else {
_selectedRowKeys.value = []
extendFormItem.value = []
emit('close');
}
},

View File

@ -69,7 +69,7 @@ const getDeviceList = async () => {
const res = await cascadeApi.getMediaTree({ paging: false });
if (res.success) {
treeData.value = res.result
.sort((a: any, b: any) => a.createTime - b.createTime)
.sort((a: any, b: any) => b.createTime - a.createTime)
.map((m: any) => {
const extra: any = {};
extra.isLeaf = isLeaf(m);