From fb44ace832214d0a7283206d4ac7ca5718e6795d Mon Sep 17 00:00:00 2001 From: ChenYi <296215406@outlook.com> Date: Thu, 10 Jul 2025 13:59:55 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A7=BB=E9=99=A4=E6=97=A0=E7=94=A8=E7=9A=84?= =?UTF-8?q?=E5=86=85=E5=AE=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dataManger/deviceData/basic-test.vue | 111 ---------------- .../views/dataManger/deviceData/example.ts | 122 ------------------ .../src/views/dataManger/deviceData/index.vue | 1 - .../dataManger/deviceData/simple-test.vue | 110 ---------------- .../src/views/dataManger/deviceData/test.vue | 113 ---------------- 5 files changed, 457 deletions(-) delete mode 100644 apps/web-antd/src/views/dataManger/deviceData/basic-test.vue delete mode 100644 apps/web-antd/src/views/dataManger/deviceData/example.ts delete mode 100644 apps/web-antd/src/views/dataManger/deviceData/simple-test.vue delete mode 100644 apps/web-antd/src/views/dataManger/deviceData/test.vue diff --git a/apps/web-antd/src/views/dataManger/deviceData/basic-test.vue b/apps/web-antd/src/views/dataManger/deviceData/basic-test.vue deleted file mode 100644 index 1b79463..0000000 --- a/apps/web-antd/src/views/dataManger/deviceData/basic-test.vue +++ /dev/null @@ -1,111 +0,0 @@ - - - - - - 基本测试模式 - 这个页面使用最基本的列定义来测试数据是否能正常显示。 - - 调试信息: - {{ debugInfo }} - - - - - diff --git a/apps/web-antd/src/views/dataManger/deviceData/example.ts b/apps/web-antd/src/views/dataManger/deviceData/example.ts deleted file mode 100644 index 0967bda..0000000 --- a/apps/web-antd/src/views/dataManger/deviceData/example.ts +++ /dev/null @@ -1,122 +0,0 @@ -import type { DynamicDeviceData, DynamicPageResponse } from './types'; - -// 示例1:处理标准IoTDB数据 -export const handleStandardIoTDBData = (response: any): DynamicPageResponse => { - // 确保响应格式正确 - if (!response || !response.items) { - return { items: [], totalCount: 0 }; - } - - // 转换数据,确保所有字段都被包含 - const items = response.items.map((item: any) => ({ - SystemName: item.SystemName || '', - ProjectId: item.ProjectId || '', - ProjectName: item.ProjectName || '', - IoTDataType: item.IoTDataType || '', - DeviceType: item.DeviceType || '', - DeviceId: item.DeviceId || '', - Timestamps: item.Timestamps || '', - APPData: item.APPData || '', - // 包含所有其他字段 - ...item, - })); - - return { - items, - totalCount: response.totalCount || items.length, - }; -}; - -// 示例2:处理自定义字段数据 -export const handleCustomFieldData = (response: any): DynamicPageResponse => { - if (!response || !response.items) { - return { items: [], totalCount: 0 }; - } - - // 直接使用原始数据,允许任意字段 - return { - items: response.items, - totalCount: response.totalCount || response.items.length, - }; -}; - -// 示例3:数据验证和清理 -export const validateAndCleanData = (data: any[]): DynamicDeviceData[] => { - return data.map(item => { - const cleaned: DynamicDeviceData = {}; - - // 遍历所有字段,进行类型转换和清理 - Object.keys(item).forEach(key => { - const value = item[key]; - - // 根据字段名进行特殊处理 - switch (key) { - case 'Timestamps': - cleaned[key] = value ? String(value) : ''; - break; - case 'SystemName': - case 'ProjectName': - case 'DeviceType': - case 'IoTDataType': - cleaned[key] = value ? String(value) : ''; - break; - case 'ProjectId': - case 'DeviceId': - cleaned[key] = value ? String(value) : ''; - break; - default: - // 对于未知字段,保持原值 - cleaned[key] = value; - } - }); - - return cleaned; - }); -}; - -// 示例4:动态字段检测 -export const detectDynamicFields = (data: DynamicDeviceData[]): string[] => { - if (!data || data.length === 0) return []; - - const allFields = new Set(); - - data.forEach(item => { - Object.keys(item).forEach(key => { - allFields.add(key); - }); - }); - - return Array.from(allFields); -}; - -// 示例5:字段重要性排序 -export const sortFieldsByImportance = (fields: string[]): string[] => { - const importanceOrder = [ - 'Timestamps', - 'SystemName', - 'ProjectName', - 'DeviceType', - 'DeviceId', - 'IoTDataType', - 'APPData', - ]; - - return fields.sort((a, b) => { - const aIndex = importanceOrder.indexOf(a); - const bIndex = importanceOrder.indexOf(b); - - // 如果都在预定义列表中,按列表顺序排序 - if (aIndex !== -1 && bIndex !== -1) { - return aIndex - bIndex; - } - - // 如果只有a在预定义列表中,a排在前面 - if (aIndex !== -1) return -1; - - // 如果只有b在预定义列表中,b排在前面 - if (bIndex !== -1) return 1; - - // 都不在预定义列表中,按字母顺序排序 - return a.localeCompare(b); - }); -}; diff --git a/apps/web-antd/src/views/dataManger/deviceData/index.vue b/apps/web-antd/src/views/dataManger/deviceData/index.vue index 150c5f9..20201d9 100644 --- a/apps/web-antd/src/views/dataManger/deviceData/index.vue +++ b/apps/web-antd/src/views/dataManger/deviceData/index.vue @@ -12,7 +12,6 @@ import { postTreeModelDeviceDataInfoPage } from '#/api-client'; import { querySchema, tableSchema } from './schema'; import { generateDynamicColumns } from './dynamicColumns'; -import { handleStandardIoTDBData, validateAndCleanData } from './example'; defineOptions({ name: 'DeviceData', diff --git a/apps/web-antd/src/views/dataManger/deviceData/simple-test.vue b/apps/web-antd/src/views/dataManger/deviceData/simple-test.vue deleted file mode 100644 index 7c040d5..0000000 --- a/apps/web-antd/src/views/dataManger/deviceData/simple-test.vue +++ /dev/null @@ -1,110 +0,0 @@ - - - - - - 简单测试模式 - 这个页面使用最简单的配置来测试数据是否能正常显示。 - - 调试信息: - {{ debugInfo }} - - - - - diff --git a/apps/web-antd/src/views/dataManger/deviceData/test.vue b/apps/web-antd/src/views/dataManger/deviceData/test.vue deleted file mode 100644 index 8eb298f..0000000 --- a/apps/web-antd/src/views/dataManger/deviceData/test.vue +++ /dev/null @@ -1,113 +0,0 @@ - - - - - - 测试模式 - 这个页面使用固定列定义来测试数据是否能正常显示。 - 请查看控制台输出来了解数据结构。 - - - -
这个页面使用最基本的列定义来测试数据是否能正常显示。
{{ debugInfo }}
这个页面使用最简单的配置来测试数据是否能正常显示。
这个页面使用固定列定义来测试数据是否能正常显示。
请查看控制台输出来了解数据结构。