diff --git a/src/components/dashboard-page/station-card.vue b/src/components/dashboard-page/station-card.vue
index 80b813c..df6e3e4 100644
--- a/src/components/dashboard-page/station-card.vue
+++ b/src/components/dashboard-page/station-card.vue
@@ -2,10 +2,9 @@
import type { Station } from '@/apis/domains';
import { DeviceType } from '@/enums/device-type';
import { type StationAlarmCounts, type StationDevices } from '@/composables/query';
-import { ControlOutlined } from '@vicons/antd';
-import { Video as VideoIcon } from '@vicons/carbon';
+import { MoreOutlined, EllipsisOutlined } from '@vicons/antd';
import axios from 'axios';
-import { NCard, NTag, NButton, NIcon, useThemeVars, NSpace, NFlex, NText, NTooltip } from 'naive-ui';
+import { NCard, NTag, NButton, NIcon, useThemeVars, NFlex, NText, NTooltip, NDropdown, type DropdownOption } from 'naive-ui';
import { toRefs, computed } from 'vue';
const props = defineProps<{
@@ -89,102 +88,106 @@ const openVideoPlatform = async () => {
}
};
+const dropdownOptions: DropdownOption[] = [
+ {
+ label: '视频平台',
+ key: 'video-platform',
+ onClick: openVideoPlatform,
+ },
+ {
+ label: '设备配置',
+ key: 'device-config',
+ onClick: openDeviceConfigModal,
+ },
+];
+
+const selectDropdownOption = (key: string, option: DropdownOption) => {
+ if (typeof option['onClick'] === 'function') {
+ option['onClick']();
+ }
+};
+
const theme = useThemeVars();
-
+
- {{ station.name }}
+ {{ station.name }}
{{ station.ip }}
- {{ station.name }}
+ {{ station.name }}
-
- {{ station.online ? '在线' : '离线' }}
-
+
+
+ {{ station.online ? '在线' : '离线' }}
+
+
+
+
+
+
+
-
-
-
-
-
-
- 视频平台
-
-
-
-
-
-
- 设备配置
-
-
-
-
-
- 设备统计
-
- {{ onlineDeviceCount }}
- /
- {{ offlineDeviceCount }}
- /
- {{ deviceCount }}
- 台
-
+
+
+
+ {{ deviceCount }} 台设备
+
+
+
-
-
- 告警记录
-
- {{ alarmCount }}
- 条
+
+
+ 在线 {{ onlineDeviceCount }} 台
+ ·
+ 离线 {{ offlineDeviceCount }} 台
+
+
+
-
+
+
+
+ 今日 {{ alarmCount }} 条告警
+
+
+
+
+
+