From 0bb7dffa90bfa3bd5ad04b75da9c31d21347c668 Mon Sep 17 00:00:00 2001
From: wujingjing <gersonwu@qq.com>
Date: 星期一, 13 一月 2025 17:06:02 +0800
Subject: [PATCH] 用户管理页面调整

---
 src/views/project/yw/systemManage/metricAgentMgr/MetricAgentMgr.vue |   55 +++++++++++++++++++++++++++++++++++--------------------
 1 files changed, 35 insertions(+), 20 deletions(-)

diff --git a/src/views/project/yw/systemManage/metricAgentMgr/MetricAgentMgr.vue b/src/views/project/yw/systemManage/metricAgentMgr/MetricAgentMgr.vue
index 367c59f..896a93d 100644
--- a/src/views/project/yw/systemManage/metricAgentMgr/MetricAgentMgr.vue
+++ b/src/views/project/yw/systemManage/metricAgentMgr/MetricAgentMgr.vue
@@ -36,17 +36,11 @@
 				<el-form-item>
 					<el-button icon="ele-Refresh" @click="resetQuery">閲嶇疆 </el-button>
 				</el-form-item>
-				<div class="absolute top-0 right-0 w-[112px] h-[24[x]] bg-white z-50 leading-3 pt-2">
-					<el-radio-group v-model="canvasRadio" size="small">
-						<el-radio-button label="鍒楄〃" :value="RadioType.List" />
-						<el-radio-button label="鐢诲竷" :value="RadioType.Canvas" />
-					</el-radio-group>
-				</div>
 			</el-form>
 		</template>
 		<template #main>
 			<div class="w100 h100">
-				<div class="h-full" v-show="canvasRadio === RadioType.List">
+				<div class="h-full">
 					<el-table
 						v-loading="tableLoading"
 						ref="draggableTableRef"
@@ -56,8 +50,16 @@
 						:data="displayTableData"
 						highlight-current-row
 					>
+						<el-table-column type="index" label="搴忓彿" width="55" fixed="left" align="center"></el-table-column>
+
 						<el-table-column prop="title" label="鍚嶇О" width="300" fixed="left" show-overflow-tooltip> </el-table-column>
-						<el-table-column label="鍒涘缓浜�" prop="creator" width="100" show-overflow-tooltip> </el-table-column>
+						<el-table-column label="璋冪敤鏂瑰紡" prop="inner_call" width="100" show-overflow-tooltip>
+							<template #default="scope">
+								{{ scope.row.inner_call === 'Y' ? '鍐呴儴' : '澶栭儴' }}
+							</template>
+						</el-table-column>
+
+						<el-table-column label="鍒涘缓浜�" prop="create_user" width="100" show-overflow-tooltip> </el-table-column>
 						<el-table-column label="鍒涘缓鏃堕棿" prop="create_time" width="105" show-overflow-tooltip> </el-table-column>
 						<el-table-column label="鍙戝竷鐘舵��" prop="published" width="85" show-overflow-tooltip>
 							<template #default="scope">
@@ -80,7 +82,12 @@
 											@click="openMetricNameDlg(scope.row)"
 										></i>
 									</el-tooltip>
-
+									<el-tooltip effect="dark" content="鎸囨爣鍥捐氨" placement="top">
+										<i
+											class="ywifont ywicon-duoweidu !text-[17px] text-blue-400 cursor-pointer"
+											@click="gotoAgentGraph(scope.row)"
+										></i>
+									</el-tooltip>
 									<el-tooltip effect="dark" content="瀵硅瘽娴嬭瘯" placement="top">
 										<i class="ywifont ywicon-ceshi !text-[20px] text-blue-400 cursor-pointer" @click="openChatTest(scope.row)"></i>
 									</el-tooltip>
@@ -106,7 +113,6 @@
 						<Chat ref="chatRef" class="flex-auto px-2" :questionApi="questionAi"> </Chat>
 					</div>
 				</div>
-				<AgentGraph v-if="canvasRadio ===RadioType.Canvas" />
 			</div>
 		</template>
 		<!-- <OptDlg v-model="optDlgIsShow" :item="optDlgMapRow" @insert="insertOpt" @update="updateOpt" :groupId="currentListID"></OptDlg> -->
@@ -129,10 +135,10 @@
 import LeftTreeByMgr from '/@/components/tree/leftTreeByMgr.vue';
 import { useQueryTable } from '/@/hooks/useQueryTable';
 import { useSearch } from '/@/hooks/useSearch';
+import { gotoRoute } from '/@/utils/route';
 import { useCompRef } from '/@/utils/types';
-import { convertListToTree, debounce } from '/@/utils/util';
+import { convertListToTree, debounce, travelTree } from '/@/utils/util';
 import { OptClassificationMap, classificationEnum } from '/@/views/types/metrics';
-import AgentGraph from './graph/AgentGraph.vue';
 //#region ====================== 宸︿晶鏍戞暟鎹紝tree init ======================
 const leftTreeRef = useCompRef(LeftTreeByMgr);
 const treeLoading = ref(false);
@@ -181,12 +187,20 @@
 const isDragStatus = ref(false);
 const metricStatus = ref(false);
 const allTableData = ref(null);
+const getLenById = (data: any[], id: string, value: any) => {
+	return data.filter((item) => item.agent_group === id || value.children?.some((treeItem) => treeItem.group_id === item.agent_group))
+		.length;
+};
 const getTableData = async () => {
 	if (!allTableData.value) {
 		const res = await metricApi.getMetricAgentListByPost();
 		allTableData.value = (res.values || []).map((item) => {
 			item.create_time = item.create_time?.slice(0, 10);
 			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;
@@ -212,15 +226,7 @@
 	showQuotaList.value = tableData.value;
 });
 //#endregion
-//#region ====================== 妯″瀷绠$悊(娌℃湁鐖惰妭鐐�) ======================
 
- const enum RadioType {
-	List = 'list',
-	Canvas='canvas'
-}
-const canvasRadio = ref(RadioType.List);
-const getNodeTableData = () => {};
-//#endregion
 //#region ====================== Chat 娴嬭瘯 ======================
 const chatRef = useCompRef(Chat);
 const chatTestMapRow = ref(null);
@@ -278,6 +284,15 @@
 	metricNameMapRow.value = row;
 	metricNameIsShow.value = true;
 };
+
+const gotoAgentGraph = (row) => {
+	gotoRoute({
+		name: 'AgentGraph',
+		query: {
+			id: row.id,
+		},
+	});
+};
 //#endregion
 
 onMounted(() => {

--
Gitblit v1.9.3