diff --git a/package.json b/package.json
index 6403a0a..080e8f6 100644
--- a/package.json
+++ b/package.json
@@ -9,10 +9,20 @@
"preview": "vite preview"
},
"dependencies": {
- "@element-plus/icons-vue": "^2.3.1",
+ "@antv/x6": "^2.18.1",
+ "@antv/x6-plugin-clipboard": "^2.1.6",
+ "@antv/x6-plugin-history": "^2.2.4",
+ "@antv/x6-plugin-keyboard": "^2.2.3",
+ "@antv/x6-plugin-selection": "^2.2.2",
+ "@antv/x6-plugin-snapline": "^2.1.7",
+ "@antv/x6-plugin-stencil": "^2.1.5",
+ "@antv/x6-plugin-transform": "^2.1.8",
+ "@antv/x6-vue-shape": "^2.1.2",
"@kjgl77/datav-vue3": "^1.7.3",
"axios": "^1.7.2",
+ "echarts": "^5.6.0",
"element-plus": "^2.9.5",
+ "insert-css": "^2.0.0",
"lib-flexible": "^0.3.2",
"pinia": "^2.1.7",
"postcss-plugin-px2rem": "^0.8.1",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 70bfa2c..85b65ec 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -8,15 +8,48 @@ importers:
.:
dependencies:
+ '@antv/x6':
+ specifier: ^2.18.1
+ version: 2.18.1
+ '@antv/x6-plugin-clipboard':
+ specifier: ^2.1.6
+ version: 2.1.6(@antv/x6@2.18.1)
+ '@antv/x6-plugin-history':
+ specifier: ^2.2.4
+ version: 2.2.4(@antv/x6@2.18.1)
+ '@antv/x6-plugin-keyboard':
+ specifier: ^2.2.3
+ version: 2.2.3(@antv/x6@2.18.1)
+ '@antv/x6-plugin-selection':
+ specifier: ^2.2.2
+ version: 2.2.2(@antv/x6@2.18.1)
+ '@antv/x6-plugin-snapline':
+ specifier: ^2.1.7
+ version: 2.1.7(@antv/x6@2.18.1)
+ '@antv/x6-plugin-stencil':
+ specifier: ^2.1.5
+ version: 2.1.5(@antv/x6@2.18.1)
+ '@antv/x6-plugin-transform':
+ specifier: ^2.1.8
+ version: 2.1.8(@antv/x6@2.18.1)
+ '@antv/x6-vue-shape':
+ specifier: ^2.1.2
+ version: 2.1.2(@antv/x6@2.18.1)(vue@3.4.29(typescript@5.2.2))
'@kjgl77/datav-vue3':
specifier: ^1.7.3
version: 1.7.3(vue@3.4.29(typescript@5.2.2))
axios:
specifier: ^1.7.2
version: 1.7.2
+ echarts:
+ specifier: ^5.6.0
+ version: 5.6.0
element-plus:
specifier: ^2.9.5
version: 2.9.5(vue@3.4.29(typescript@5.2.2))
+ insert-css:
+ specifier: ^2.0.0
+ version: 2.0.0
lib-flexible:
specifier: ^0.3.2
version: 0.3.2
@@ -72,6 +105,65 @@ importers:
packages:
+ '@antv/x6-common@2.0.17':
+ resolution: {integrity: sha512-37g7vmRkNdYzZPdwjaMSZEGv/MMH0S4r70/Jwoab1mioycmuIBN73iyziX8m56BvJSDucZ3J/6DU07otWqzS6A==}
+
+ '@antv/x6-geometry@2.0.5':
+ resolution: {integrity: sha512-MId6riEQkxphBpVeTcL4ZNXL4lScyvDEPLyIafvWMcWNTGK0jgkK7N20XSzqt8ltJb0mGUso5s56mrk8ysHu2A==}
+
+ '@antv/x6-plugin-clipboard@2.1.6':
+ resolution: {integrity: sha512-roZPLnZx6PK8MBvee0QMo90fz/TXeF0WNe4EGin2NBq5M1I5XTWrYvA6N2XVIiWAAI67gjQeEE8TpkL7f8QdqA==}
+ peerDependencies:
+ '@antv/x6': ^2.x
+
+ '@antv/x6-plugin-dnd@2.1.1':
+ resolution: {integrity: sha512-v0szzik1RkadPDn4Qi5mOSaB2AeI78D40/YuCYbPVzplG+HydGsHwO3MLTgJPQ+R5n0eM0W5F850p1VfTOHR7g==}
+ peerDependencies:
+ '@antv/x6': ^2.x
+
+ '@antv/x6-plugin-history@2.2.4':
+ resolution: {integrity: sha512-9gHHvEW4Fla+1hxUV49zNgJyIMoV9CjVM52MrFgAJcvyRn1Kvxz4MfxiKlG+DEZUs+/zvfjl9pS6gJOd8laRkg==}
+ peerDependencies:
+ '@antv/x6': ^2.x
+
+ '@antv/x6-plugin-keyboard@2.2.3':
+ resolution: {integrity: sha512-pnCIC+mDyKKfkcDyLePfGxKVIqXBcldTgannITkHC1kc0IafRS1GMvzpvuDGrM5haRYd6Nwz8kjkJyHkJE4GPA==}
+ peerDependencies:
+ '@antv/x6': ^2.x
+
+ '@antv/x6-plugin-selection@2.2.2':
+ resolution: {integrity: sha512-s2gtR9Onlhr7HOHqyqg0d+4sG76JCcQEbvrZZ64XmSChlvieIPlC3YtH4dg1KMNhYIuBmBmpSum6S0eVTEiPQw==}
+ peerDependencies:
+ '@antv/x6': ^2.x
+
+ '@antv/x6-plugin-snapline@2.1.7':
+ resolution: {integrity: sha512-AsysoCb9vES0U2USNhEpYuO/W8I0aYfkhlbee5Kt4NYiMfQfZKQyqW/YjDVaS2pm38C1NKu1LdPVk/BBr4CasA==}
+ peerDependencies:
+ '@antv/x6': ^2.x
+
+ '@antv/x6-plugin-stencil@2.1.5':
+ resolution: {integrity: sha512-q7wx7XRMFkUKPv3WsHkvZda6O1GW+6q6H/+c1lcrwlQoEKOFv1Djc4Hu2J4SGhV2z98P2JLfVJiT5m7YoOoCHw==}
+ peerDependencies:
+ '@antv/x6': ^2.x
+
+ '@antv/x6-plugin-transform@2.1.8':
+ resolution: {integrity: sha512-GvJuiJ4BKp0H7+qx3R1I+Vzbw5gXp9+oByXo/WyVxE3urOC7LC5sqnaDfIjyYMN6ROLPYPZraLSeSyYBgMgcDw==}
+ peerDependencies:
+ '@antv/x6': ^2.x
+
+ '@antv/x6-vue-shape@2.1.2':
+ resolution: {integrity: sha512-lfLNJ2ztK8NP2JBAWTD6m5Wol0u6tOqj2KdOhWZoT8EtEw9rMmAdxsr8uTi9MRJO9pDMM0nbsR3cidnMh7VeDQ==}
+ peerDependencies:
+ '@antv/x6': ^2.x
+ '@vue/composition-api': ^1.0.0-rc.1
+ vue: ^2.0.0 || >=3.0.0
+ peerDependenciesMeta:
+ '@vue/composition-api':
+ optional: true
+
+ '@antv/x6@2.18.1':
+ resolution: {integrity: sha512-FkWdbLOpN9J7dfJ+kiBxzowSx2N6syBily13NMVdMs+wqC6Eo5sLXWCZjQHateTFWgFw7ZGi2y9o3Pmdov1sXw==}
+
'@babel/helper-string-parser@7.24.7':
resolution: {integrity: sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==}
engines: {node: '>=6.9.0'}
@@ -579,6 +671,9 @@ packages:
domutils@3.1.0:
resolution: {integrity: sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==}
+ echarts@5.6.0:
+ resolution: {integrity: sha512-oTbVTsXfKuEhxftHqL5xprgLoc0k7uScAwtryCgWF6hPYFLRwOUHiFmHGCBKP5NPFNkDVopOieyUqYGH8Fa3kA==}
+
element-plus@2.9.5:
resolution: {integrity: sha512-r+X79oogLbYq8p9L5f9fHSHhUFNM0AL72aikqiZVxSc2/08mK6m/PotiB9e/D90QmWTIHIaFnFmW65AcXmneig==}
peerDependencies:
@@ -696,6 +791,9 @@ packages:
inherits@2.0.4:
resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
+ insert-css@2.0.0:
+ resolution: {integrity: sha512-xGq5ISgcUP5cvGkS2MMFLtPDBtrtQPSFfC6gA6U8wHKqfjTIMZLZNxOItQnoSjdOzlXOLU/yD32RKC4SvjNbtA==}
+
is-binary-path@2.1.0:
resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
engines: {node: '>=8'}
@@ -786,6 +884,9 @@ packages:
minimist@1.2.8:
resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==}
+ mousetrap@1.6.5:
+ resolution: {integrity: sha512-QNo4kEepaIBwiT8CDhP98umTetp+JNfQYBWvC1pc6/OAibuXtRcxZ58Qz8skvEHYvURne/7R8T5VoOI7rDsEUA==}
+
nanoid@3.3.7:
resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==}
engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
@@ -999,8 +1100,8 @@ packages:
resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
engines: {node: '>=8.0'}
- tslib@2.8.1:
- resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==}
+ tslib@2.3.0:
+ resolution: {integrity: sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==}
typescript@5.2.2:
resolution: {integrity: sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==}
@@ -1014,6 +1115,10 @@ packages:
resolution: {integrity: sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==}
deprecated: Please see https://github.com/lydell/urix#deprecated
+ utility-types@3.11.0:
+ resolution: {integrity: sha512-6Z7Ma2aVEWisaL6TvBCy7P8rm2LQoPv6dJ7ecIaIixHcwfbJ0x7mWdbcwlIM5IGQxPZSFYeqRCqlOOeKoJYMkw==}
+ engines: {node: '>= 4'}
+
vite@5.3.1:
resolution: {integrity: sha512-XBmSKRLXLxiaPYamLv3/hnP/KXDai1NDexN0FpkTaZXTfycHvkRHoenpgl/fvuK/kPbB6xAgoyiryAhQNxYmAQ==}
engines: {node: ^18.0.0 || >=20.0.0}
@@ -1045,6 +1150,17 @@ packages:
vscode-uri@3.0.8:
resolution: {integrity: sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==}
+ vue-demi@0.14.10:
+ resolution: {integrity: sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==}
+ engines: {node: '>=12'}
+ hasBin: true
+ peerDependencies:
+ '@vue/composition-api': ^1.0.0-rc.1
+ vue: ^3.0.0-0 || ^2.6.0
+ peerDependenciesMeta:
+ '@vue/composition-api':
+ optional: true
+
vue-demi@0.14.8:
resolution: {integrity: sha512-Uuqnk9YE9SsWeReYqK2alDI5YzciATE0r2SkA6iMAtuXvNTMNACJLJEXNXaEy94ECuBe4Sk6RzRU80kjdbIo1Q==}
engines: {node: '>=12'}
@@ -1081,8 +1197,64 @@ packages:
wrappy@1.0.2:
resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
+ zrender@5.6.1:
+ resolution: {integrity: sha512-OFXkDJKcrlx5su2XbzJvj/34Q3m6PvyCZkVPHGYpcCJ52ek4U/ymZyfuV1nKE23AyBJ51E/6Yr0mhZ7xGTO4ag==}
+
snapshots:
+ '@antv/x6-common@2.0.17':
+ dependencies:
+ lodash-es: 4.17.21
+ utility-types: 3.11.0
+
+ '@antv/x6-geometry@2.0.5': {}
+
+ '@antv/x6-plugin-clipboard@2.1.6(@antv/x6@2.18.1)':
+ dependencies:
+ '@antv/x6': 2.18.1
+
+ '@antv/x6-plugin-dnd@2.1.1(@antv/x6@2.18.1)':
+ dependencies:
+ '@antv/x6': 2.18.1
+
+ '@antv/x6-plugin-history@2.2.4(@antv/x6@2.18.1)':
+ dependencies:
+ '@antv/x6': 2.18.1
+
+ '@antv/x6-plugin-keyboard@2.2.3(@antv/x6@2.18.1)':
+ dependencies:
+ '@antv/x6': 2.18.1
+ mousetrap: 1.6.5
+
+ '@antv/x6-plugin-selection@2.2.2(@antv/x6@2.18.1)':
+ dependencies:
+ '@antv/x6': 2.18.1
+
+ '@antv/x6-plugin-snapline@2.1.7(@antv/x6@2.18.1)':
+ dependencies:
+ '@antv/x6': 2.18.1
+
+ '@antv/x6-plugin-stencil@2.1.5(@antv/x6@2.18.1)':
+ dependencies:
+ '@antv/x6': 2.18.1
+ '@antv/x6-plugin-dnd': 2.1.1(@antv/x6@2.18.1)
+
+ '@antv/x6-plugin-transform@2.1.8(@antv/x6@2.18.1)':
+ dependencies:
+ '@antv/x6': 2.18.1
+
+ '@antv/x6-vue-shape@2.1.2(@antv/x6@2.18.1)(vue@3.4.29(typescript@5.2.2))':
+ dependencies:
+ '@antv/x6': 2.18.1
+ vue: 3.4.29(typescript@5.2.2)
+ vue-demi: 0.14.10(vue@3.4.29(typescript@5.2.2))
+
+ '@antv/x6@2.18.1':
+ dependencies:
+ '@antv/x6-common': 2.0.17
+ '@antv/x6-geometry': 2.0.5
+ utility-types: 3.11.0
+
'@babel/helper-string-parser@7.24.7': {}
'@babel/helper-validator-identifier@7.24.7': {}
@@ -1392,7 +1564,7 @@ snapshots:
'@types/web-bluetooth': 0.0.20
'@vueuse/metadata': 10.11.0
'@vueuse/shared': 10.11.0(vue@3.4.29(typescript@5.2.2))
- vue-demi: 0.14.8(vue@3.4.29(typescript@5.2.2))
+ vue-demi: 0.14.10(vue@3.4.29(typescript@5.2.2))
transitivePeerDependencies:
- '@vue/composition-api'
- vue
@@ -1402,7 +1574,7 @@ snapshots:
'@types/web-bluetooth': 0.0.16
'@vueuse/metadata': 9.13.0
'@vueuse/shared': 9.13.0(vue@3.4.29(typescript@5.2.2))
- vue-demi: 0.14.8(vue@3.4.29(typescript@5.2.2))
+ vue-demi: 0.14.10(vue@3.4.29(typescript@5.2.2))
transitivePeerDependencies:
- '@vue/composition-api'
- vue
@@ -1413,14 +1585,14 @@ snapshots:
'@vueuse/shared@10.11.0(vue@3.4.29(typescript@5.2.2))':
dependencies:
- vue-demi: 0.14.8(vue@3.4.29(typescript@5.2.2))
+ vue-demi: 0.14.10(vue@3.4.29(typescript@5.2.2))
transitivePeerDependencies:
- '@vue/composition-api'
- vue
'@vueuse/shared@9.13.0(vue@3.4.29(typescript@5.2.2))':
dependencies:
- vue-demi: 0.14.8(vue@3.4.29(typescript@5.2.2))
+ vue-demi: 0.14.10(vue@3.4.29(typescript@5.2.2))
transitivePeerDependencies:
- '@vue/composition-api'
- vue
@@ -1548,6 +1720,11 @@ snapshots:
domelementtype: 2.3.0
domhandler: 5.0.3
+ echarts@5.6.0:
+ dependencies:
+ tslib: 2.3.0
+ zrender: 5.6.1
+
element-plus@2.9.5(vue@3.4.29(typescript@5.2.2)):
dependencies:
'@ctrl/tinycolor': 3.6.1
@@ -1691,6 +1868,8 @@ snapshots:
inherits@2.0.4: {}
+ insert-css@2.0.0: {}
+
is-binary-path@2.1.0:
dependencies:
binary-extensions: 2.3.0
@@ -1780,6 +1959,8 @@ snapshots:
minimist@1.2.8: {}
+ mousetrap@1.6.5: {}
+
nanoid@3.3.7: {}
natives@1.1.6: {}
@@ -1966,7 +2147,7 @@ snapshots:
dependencies:
is-number: 7.0.0
- tslib@2.8.1: {}
+ tslib@2.3.0: {}
typescript@5.2.2: {}
@@ -1974,7 +2155,9 @@ snapshots:
urix@0.1.0: {}
- vite@5.3.1(@types/node@20.14.9)(less@4.2.2)(sass@1.77.6):
+ utility-types@3.11.0: {}
+
+ vite@5.3.1(@types/node@20.14.9)(sass@1.77.6):
dependencies:
esbuild: 0.21.5
postcss: 8.4.39
@@ -1987,6 +2170,10 @@ snapshots:
vscode-uri@3.0.8: {}
+ vue-demi@0.14.10(vue@3.4.29(typescript@5.2.2)):
+ dependencies:
+ vue: 3.4.29(typescript@5.2.2)
+
vue-demi@0.14.8(vue@3.4.29(typescript@5.2.2)):
dependencies:
vue: 3.4.29(typescript@5.2.2)
@@ -2019,3 +2206,7 @@ snapshots:
typescript: 5.2.2
wrappy@1.0.2: {}
+
+ zrender@5.6.1:
+ dependencies:
+ tslib: 2.3.0
diff --git a/src/assets/images/TCP.png b/src/assets/images/TCP.png
new file mode 100644
index 0000000..9782c60
Binary files /dev/null and b/src/assets/images/TCP.png differ
diff --git a/src/assets/images/boolean.png b/src/assets/images/boolean.png
new file mode 100644
index 0000000..a53920b
Binary files /dev/null and b/src/assets/images/boolean.png differ
diff --git a/src/assets/images/dianchizu.png b/src/assets/images/dianchizu.png
new file mode 100644
index 0000000..fc066bc
Binary files /dev/null and b/src/assets/images/dianchizu.png differ
diff --git a/src/assets/images/error.png b/src/assets/images/error.png
new file mode 100644
index 0000000..93863d4
Binary files /dev/null and b/src/assets/images/error.png differ
diff --git a/src/assets/images/fuwuqiIP.png b/src/assets/images/fuwuqiIP.png
new file mode 100644
index 0000000..22874c8
Binary files /dev/null and b/src/assets/images/fuwuqiIP.png differ
diff --git a/src/assets/images/fuwuqiProt.png b/src/assets/images/fuwuqiProt.png
new file mode 100644
index 0000000..be7231b
Binary files /dev/null and b/src/assets/images/fuwuqiProt.png differ
diff --git a/src/assets/images/guanxitu.png b/src/assets/images/guanxitu.png
new file mode 100644
index 0000000..03e00ef
Binary files /dev/null and b/src/assets/images/guanxitu.png differ
diff --git a/src/assets/images/openTCP.png b/src/assets/images/openTCP.png
new file mode 100644
index 0000000..350e53e
Binary files /dev/null and b/src/assets/images/openTCP.png differ
diff --git a/src/assets/images/setTCP.png b/src/assets/images/setTCP.png
new file mode 100644
index 0000000..51db08a
Binary files /dev/null and b/src/assets/images/setTCP.png differ
diff --git a/src/assets/images/setzijie.png b/src/assets/images/setzijie.png
new file mode 100644
index 0000000..37f1939
Binary files /dev/null and b/src/assets/images/setzijie.png differ
diff --git a/src/assets/images/swatch.png b/src/assets/images/swatch.png
new file mode 100644
index 0000000..c662af3
Binary files /dev/null and b/src/assets/images/swatch.png differ
diff --git a/src/assets/images/thermometer.png b/src/assets/images/thermometer.png
new file mode 100644
index 0000000..cc32683
Binary files /dev/null and b/src/assets/images/thermometer.png differ
diff --git a/src/assets/images/valueSetting.png b/src/assets/images/valueSetting.png
new file mode 100644
index 0000000..a322e0a
Binary files /dev/null and b/src/assets/images/valueSetting.png differ
diff --git a/src/assets/images/vue.svg b/src/assets/images/vue.svg
new file mode 100644
index 0000000..770e9d3
--- /dev/null
+++ b/src/assets/images/vue.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/images/wenduyibiao.png b/src/assets/images/wenduyibiao.png
new file mode 100644
index 0000000..fa1c37c
Binary files /dev/null and b/src/assets/images/wenduyibiao.png differ
diff --git a/src/assets/images/zhuanhuanqi.png b/src/assets/images/zhuanhuanqi.png
new file mode 100644
index 0000000..a5ff50d
Binary files /dev/null and b/src/assets/images/zhuanhuanqi.png differ
diff --git a/src/router/index.ts b/src/router/index.ts
index c795bad..8d73740 100644
--- a/src/router/index.ts
+++ b/src/router/index.ts
@@ -1,17 +1,26 @@
import { createRouter, createWebHashHistory } from "vue-router";
-import layout from '@/layout/index.vue'
-const routerList :any = [
+import layout from "@/layout/index.vue";
+const routerList: any = [
{
path: "/",
component: layout,
- children:[
+ children: [
{
- path:'',
- name:'Home',
- component:() => import('@/views/largeDataScreen/home.vue')
+ path: "",
+ name: "Home",
+ component: () => import("@/views/largeDataScreen/home.vue"),
},
-
- ]
+ {
+ path: "designRoute",
+ name: "DesignRoute",
+ component: () => import("@/views/designRoute/index.vue"),
+ },
+ {
+ path: "program",
+ name: "Program",
+ component: () => import("@/views/program/index.vue"),
+ }
+ ],
},
{
path: '/login',
@@ -20,14 +29,14 @@ const routerList :any = [
}
];
-const router :any = createRouter({
- history: createWebHashHistory(),
- routes: routerList,
- scrollBehavior() {
- return {
- left: 0,
- top: 0,
- }
- },
- })
- export default router
\ No newline at end of file
+const router: any = createRouter({
+ history: createWebHashHistory(),
+ routes: routerList,
+ scrollBehavior() {
+ return {
+ left: 0,
+ top: 0,
+ };
+ },
+});
+export default router;
diff --git a/src/store/modules/setting.ts b/src/store/modules/setting.ts
index 90d31f0..bd44b28 100644
--- a/src/store/modules/setting.ts
+++ b/src/store/modules/setting.ts
@@ -1,14 +1,69 @@
-import { defineStore } from "pinia"
+import { defineStore } from "pinia";
const settingStore = defineStore("settingStore", {
- state: ():any => {
+ state: (): any => {
return {
title: "虚拟仿真实验项目",
+ qw: 0, // 气温
+ zl: 0, // 质量
+ srmj: 0, // 散热面积
+ jrgl: 0, // 加热功率
+ wdsz: 0, // 温度数值
+ ip: "", // ip
+ port: "", // 端口
+ cssd: 0, // 初始湿度
+ jsgl: 0, // 加湿功率
+ jsmj: 0, // 加湿面积
+ sdsz: 0, // 湿度数值
+ falg: false,
+ timer: null,
};
},
actions: {
setTitle(name: any) {
this.title = name;
},
+ setQw(value: number) {
+ console.log(value);
+
+ this.qw = value;
+ },
+ setValue(value: number, name: string) {
+ this[name] = value;
+ },
+ openHeating() {
+ this.flag = !this.flag; // 切换状态
+ if (this.flag) {
+ // 开启加热
+ this.timer = setInterval(() => {
+ this.qw++;
+ if (this.qw >= 100) {
+ clearInterval(this.timer);
+ }
+ }, 500);
+ } else {
+ // 关闭加热
+ clearInterval(this.timer);
+ }
+ },
+ calculateTemperature() {
+ this.qw >= 0 ? this.qw=1 : this.qw;
+ const a = (100000 * this.zl * this.srmj) / this.jrgl;
+ let time = 0;
+ let currentTemp = this.qw;
+
+ const interval = setInterval(() => {
+ currentTemp = (1 - Math.exp(-time / a)) * 100 + this.qw;
+
+ console.log(`时间: ${time}s, 温度: ${currentTemp.toFixed(2)}°C`);
+ this.qw = currentTemp >= 100 ? 100 : currentTemp;
+ if (currentTemp >= 100) {
+ console.log("温度达到 100°C, 停止加热!");
+ clearInterval(interval);
+ }
+
+ time += 1; // 每秒增加 1s
+ }, 1000);
+ },
},
});
diff --git a/src/views/designRoute/components/RH.vue b/src/views/designRoute/components/RH.vue
new file mode 100644
index 0000000..b88683d
--- /dev/null
+++ b/src/views/designRoute/components/RH.vue
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+