wujingjing
2024-11-03 2af68406788a95115dd8312c9cd20e70104cd573
添加、删除计数bug
已修改1个文件
54 ■■■■ 文件已修改
src/views/project/yw/lowCode/sqlAmis/SqlAmis.vue 54 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/project/yw/lowCode/sqlAmis/SqlAmis.vue
@@ -8,7 +8,7 @@
                ref="leftTreeRef"
                :defaultProps="{
                    id: 'group_id',
                    label: 'group_name',
                    label: 'label',
                    children: 'children',
                }"
                :treedata="listTreeData"
@@ -107,6 +107,7 @@
                                                    deleteCurrentRow(scope.row, '页面', supervisorAdminApi.deleteSupervisor, () => {
                                                        const foundIndex = tableData.findIndex((item) => item === scope.row);
                                                        foundIndex > -1 && tableData.splice(foundIndex, 1);
                                                        setCurrentLen(-1);
                                                    });
                                                }
                                            "
@@ -198,7 +199,7 @@
<script setup lang="ts">
import { useDraggable } from '@vueuse/core';
import { debounce, travelTree } from '/@/utils/util';
import { debounce, deleteCurrentRow, travelTree } from '/@/utils/util';
import { computed, onMounted, ref } from 'vue';
import { usePageDisplay } from '/@/hooks/usePageDisplay';
@@ -393,12 +394,38 @@
//#endregion
//#region ====================== 表格数据,table init ======================
const getLenById =(data:any[],id:string,value:any)=>{
    return data.filter(
        (item) =>
            item.group_id === id || value.children?.some((treeItem) => treeItem.group_id === item.group_id)
    ).length;
}
const setCurrentLen = (offset: 1 | -1) => {
    currentNode.value.label = `${currentNode.value.group_name} (${tableData.value.length})`;
    const pId = currentNode.value.p_group_id;
    if (pId) {
        travelTree(listTreeData.value, (value) => {
            if (value.group_id === pId) {
                value.len += offset;
                value.label = `${value.group_name} (${value.len})`;
                return true;
            }
        });
    }
    // 修改名称后,不知道为什么会失去 current 选中
    setTimeout(() => {
        leftTreeRef.value?.treeRef.setCurrentKey(currentListID.value);
    }, 0);
};
const setListLen = () => {
    travelTree(listTreeData.value, (value, index, array, parent) => {
        const id = value.group_id;
        const len = allTableData.value.filter(
            (item) => item.group_id === id || value.children?.some((treeItem) => treeItem.group_id === item.group_id)
        ).length;
        value.len = len;
        value.label = `${value.group_name} (${len})`;
    });
    // 修改名称后,不知道为什么会失去 current 选中
    setTimeout(() => {
        leftTreeRef.value?.treeRef.setCurrentKey(currentListID.value);
    }, 0);
};
const tableLoading = ref(false);
const tableData = ref([]);
const isDragStatus = ref(false);
@@ -412,13 +439,7 @@
            return item;
        });
        travelTree(listTreeData.value, (value, index, array, parent) => {
            const len = getLenById(allTableData.value,value.group_id,value);
            value.group_name =`${value.group_name} (${len})`
        })
        setListLen();
    }
    tableData.value = allTableData.value.filter(
        (item) =>
@@ -492,6 +513,9 @@
const insertOpt = (newData) => {
    tableData.value.unshift({ ...newData, published: SupervisorPublished.N });
    allTableData.value.unshift({ ...newData, published: SupervisorPublished.N });
    setCurrentLen(1);
};
//#endregion