From c56e32865068bc1c8c4950394772922d69f820f8 Mon Sep 17 00:00:00 2001 From: wujingjing <gersonwu@qq.com> Date: 星期日, 03 十一月 2024 17:09:03 +0800 Subject: [PATCH] 修复统计 --- src/views/project/yw/lowCode/sqlAmis/SqlAmis.vue | 59 +++++++++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 43 insertions(+), 16 deletions(-) diff --git a/src/views/project/yw/lowCode/sqlAmis/SqlAmis.vue b/src/views/project/yw/lowCode/sqlAmis/SqlAmis.vue index 3544210..0ab119e 100644 --- a/src/views/project/yw/lowCode/sqlAmis/SqlAmis.vue +++ b/src/views/project/yw/lowCode/sqlAmis/SqlAmis.vue @@ -12,8 +12,9 @@ children: 'children', }" :treedata="listTreeData" - title-name="鍒嗙粍鍒楄〃" + title-name="鍦烘櫙鍒楄〃" :show-more-operate="false" + defaultExpandAll :show-add="false" :current-node-key="currentListID" :node-icon="() => 'ele-Document'" @@ -24,11 +25,11 @@ <template #header> <el-form ref="queryFormRef" :inline="true" :model="queryParams"> <el-form-item label="鏍囬" prop="title"> - <el-input v-model="queryParams.title" style="width: 226.4px" placeholder="鏍囬" clearable /> + <el-input v-model="queryParams.title" style="width: 226.4px" placeholder="鏍囬" clearable @input="debounceQueryTable" /> </el-form-item> <el-form-item> - <el-button type="primary" icon="ele-Search" @click="handleQueryTable"> 鏌ヨ </el-button> + <!-- <el-button type="primary" icon="ele-Search" @click="handleQueryTable"> 鏌ヨ </el-button> --> <el-button icon="ele-Refresh" @click="resetQuery">閲嶇疆 </el-button> <el-button icon="ele-Plus" @click="openOptDlg()"> 娣诲姞 </el-button> </el-form-item> @@ -167,6 +168,7 @@ label: 'title', children: 'children', }" + defaultExpandAll :data="parentSelectOptions" node-key="id" :clearable="true" @@ -196,36 +198,36 @@ <script setup lang="ts"> import { useDraggable } from '@vueuse/core'; -import { deleteCurrentRow, travelTree } from '/@/utils/util'; +import { debounce, travelTree } from '/@/utils/util'; import { computed, onMounted, ref } from 'vue'; import { usePageDisplay } from '/@/hooks/usePageDisplay'; import { useQueryTable } from '/@/hooks/useQueryTable'; // import { useTableSort } from '/@/hooks/useTableSort'; // import { useValidateUniqueness } from '/@/hooks/useValidateUniqueness'; +import axios, { CancelTokenSource } from 'axios'; import type { FormInstance, FormRules } from 'element-plus'; import { ElMessage, ElMessageBox } from 'element-plus'; import { nextTick } from 'vue'; import SqlAmisEdit from './edit/SqlAmisEdit.vue'; import OptDlg from './optDlg/OptDlg.vue'; import { SupervisorPublished, supervisorPublishedMap } from './types'; +import * as agentGroupApi from '/@/api/ai/agentGroup'; import * as supervisorAdminApi from '/@/api/supervisorAdmin'; import { checkSupervisorValidate, updatePublishStatus } from '/@/api/supervisorAdmin'; +import * as supervisorGroupApi from '/@/api/supervisorAdmin/supervisorGroup'; import Chat from '/@/components/chat/Chat.vue'; +import AHMContainer from '/@/components/layout/AHMContainer.vue'; +import ColFilter from '/@/components/table/colFilter/ColFilter.vue'; +import { TableCol } from '/@/components/table/colFilter/types'; +import LeftTreeByMgr from '/@/components/tree/leftTreeByMgr.vue'; +import { useUpdateData } from '/@/hooks/useUpdateData'; import emitter from '/@/utils/mitt'; import { deepClone } from '/@/utils/other'; import { gotoRoute } from '/@/utils/route'; import { useCompRef } from '/@/utils/types'; import { convertListToTree } from '/@/utils/util'; -import * as agentGroupApi from '/@/api/ai/agentGroup'; - -import axios, { CancelTokenSource } from 'axios'; -import * as supervisorGroupApi from '/@/api/supervisorAdmin/supervisorGroup'; -import AHMContainer from '/@/components/layout/AHMContainer.vue'; -import LeftTreeByMgr from '/@/components/tree/leftTreeByMgr.vue'; -import { useUpdateData } from '/@/hooks/useUpdateData'; -import ColFilter from '/@/components/table/colFilter/ColFilter.vue'; -import { TableCol } from '/@/components/table/colFilter/types'; +import { OptClassificationMap, classificationEnum } from '/@/views/types/metrics'; const columnList = ref<TableCol[]>([ { prop: 'title', label: '鏍囬', width: 300, fixed: 'left' }, @@ -246,10 +248,19 @@ const currentNode = ref(null); const listTreeData = computed(() => { - const result = convertListToTree(listData.value, { + const byParentData = convertListToTree(listData.value, { ID: 'group_id', ParentID: 'p_group_id', Children: 'children', + }); + const result = []; + byParentData.forEach((item) => { + if ( + item.group_type != OptClassificationMap[classificationEnum.Office] && + item.group_type != OptClassificationMap[classificationEnum.Knowledge] + ) { + result.push(item); + } }); return result; }); @@ -382,6 +393,12 @@ //#endregion //#region ====================== 琛ㄦ牸鏁版嵁锛宼able 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 tableLoading = ref(false); const tableData = ref([]); const isDragStatus = ref(false); @@ -395,8 +412,18 @@ 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})` + + }) + } - tableData.value = allTableData.value.filter((item) => item.group_id === currentListID.value); + tableData.value = allTableData.value.filter( + (item) => + item.group_id === currentListID.value || currentNode.value.children?.some((treeItem) => treeItem.group_id === item.group_id) + ); }; //#endregion @@ -408,7 +435,7 @@ const { resetQuery, handleQueryTable, displayTableData } = useQueryTable(tableData, queryParams, () => { displayTableData.value = tableData.value; }); - +const debounceQueryTable = debounce(handleQueryTable, 400); //#endregion //#region ====================== 鏌ヨ蹇嵎閿� ====================== -- Gitblit v1.9.3