diff --git a/apps/web-antd/loading.html b/apps/web-antd/loading.html
new file mode 100644
index 0000000..dbbdb7c
--- /dev/null
+++ b/apps/web-antd/loading.html
@@ -0,0 +1,431 @@
+
+
+
+
+
<%= VITE_APP_TITLE %>
+
diff --git a/apps/web-antd/package.json b/apps/web-antd/package.json
index c5fd098..110d9bc 100644
--- a/apps/web-antd/package.json
+++ b/apps/web-antd/package.json
@@ -52,7 +52,6 @@
"lodash-es": "^4.17.21",
"monaco-editor": "^0.52.2",
"pinia": "catalog:",
- "qrcode.vue": "^3.6.0",
"rxjs": "^7.8.2",
"tinymce": "^7.3.0",
"unplugin-vue-components": "^0.27.3",
diff --git a/apps/web-antd/src/app.vue b/apps/web-antd/src/app.vue
index f03f108..8be2bdb 100644
--- a/apps/web-antd/src/app.vue
+++ b/apps/web-antd/src/app.vue
@@ -41,3 +41,14 @@ const tokenTheme = computed(() => {
+
+
diff --git a/apps/web-antd/src/components/MonacoEditor/index.vue b/apps/web-antd/src/components/MonacoEditor/index.vue
index 6ab485e..e46df8a 100644
--- a/apps/web-antd/src/components/MonacoEditor/index.vue
+++ b/apps/web-antd/src/components/MonacoEditor/index.vue
@@ -93,5 +93,7 @@ defineExpose({
diff --git a/apps/web-antd/src/store/device.ts b/apps/web-antd/src/store/device.ts
index 1af9fe8..7729dcc 100644
--- a/apps/web-antd/src/store/device.ts
+++ b/apps/web-antd/src/store/device.ts
@@ -28,6 +28,10 @@ export const useDeviceStore = defineStore('device', {
this.deviceCount = count;
},
+ updateDeviceStatus(state: string) {
+ this.currentDevice.deviceState = state;
+ },
+
async getDetail(id: string) {
try {
const res = await deviceInfo(id);
diff --git a/apps/web-antd/src/views/device/device/detail/components/BasicInfo.vue b/apps/web-antd/src/views/device/device/detail/components/BasicInfo.vue
index 9bcd216..8c6a7f0 100644
--- a/apps/web-antd/src/views/device/device/detail/components/BasicInfo.vue
+++ b/apps/web-antd/src/views/device/device/detail/components/BasicInfo.vue
@@ -6,10 +6,16 @@ import { computed, ref } from 'vue';
import { useVbenDrawer } from '@vben/common-ui';
import { EditOutlined, EyeOutlined } from '@ant-design/icons-vue';
-import { Button, Descriptions, DescriptionsItem, Drawer, Space } from 'ant-design-vue';
+import {
+ Button,
+ Descriptions,
+ DescriptionsItem,
+ Drawer,
+ Space,
+} from 'ant-design-vue';
import { deviceTypeOptions, networkTypeOptions } from '#/constants/dicts';
-import TSLViewer from '#/views/device/product/detail/components/TSLViewer.vue';
+import TSLViewer from '#/views/device/product/detail/components/metadata/TSLViewer.vue';
import deviceDrawer from '../../device-drawer.vue';
@@ -53,7 +59,12 @@ const metadataObj = computed(() => {