chao 1 week ago
parent
commit
702ee4ffef

File diff suppressed because it is too large
+ 0 - 4
docs/assets/index-BtbW-Rxj.js


File diff suppressed because it is too large
+ 4 - 0
docs/assets/index-D65GGF5u.js


File diff suppressed because it is too large
+ 0 - 0
docs/assets/index-DPQ10BII.css


+ 2 - 2
docs/index.html

@@ -5,8 +5,8 @@
     <link rel="icon" type="image/svg+xml" href="./vite.svg" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
     <title>AI 校园智慧控制中心</title>
-    <script type="module" crossorigin src="./assets/index-BtbW-Rxj.js"></script>
-    <link rel="stylesheet" crossorigin href="./assets/index-BT22PddN.css">
+    <script type="module" crossorigin src="./assets/index-D65GGF5u.js"></script>
+    <link rel="stylesheet" crossorigin href="./assets/index-DPQ10BII.css">
   </head>
   <body>
     <div id="app"></div>


+ 28 - 13
src/pages/Entry/components/RealtimeData/index.vue

@@ -19,6 +19,7 @@ const editCocoPiVisible = ref(false);
 const CocoPiData = ref<any>({});
 const socketUrl = ref<string[]>([])
 const problem = ref("")
+const editCocoPiData = ref<any>({});
 
 onMounted(async () => {
   getData()
@@ -40,7 +41,8 @@ const initConnections = async (urls: any) => {
     (res as WebSocket).onmessage = (e: any) => {
       tableData.value.map((i: any) => {
         if (`wss://${i.ip}:5678/` === `${(res as WebSocket).url}`) {
-          i.socketData = e.data;
+          console.log("接收到数据", JSON.parse(e.data));
+          i.socketData = JSON.parse(e.data);
           i.status = 'connected';
         }
       })
@@ -55,6 +57,7 @@ const initConnections = async (urls: any) => {
   })));
 };
 const onSubmit = async () => {
+  console.log("CocoPiData", CocoPiData.value);
   if (!CocoPiData.value.name || !CocoPiData.value.ip) {
     alert("请填写完整信息");
     return;
@@ -71,7 +74,8 @@ const onSubmit = async () => {
         ip: CocoPiData.value.ip,
         status: "connected",
         socketData: sendData[`wss://${CocoPiData.value.ip}:5678`],
-        send: send
+        send: send,
+        command: CocoPiData.value.command || "无指令"
       }
       tableData.value.push(obj)
       socketUrl.value.push(`wss://${CocoPiData.value.ip}:5678`)
@@ -96,7 +100,7 @@ const detectionIP = () => {
 
 const handleEdit = (data: any) => {
   editCocoPiVisible.value = true
-  console.log("handleEdit", data);
+  editCocoPiData.value = data
 }
 
 const handleDelete = (data: any) => {
@@ -109,12 +113,17 @@ const copyCode = () => {
   // sockets.value['wss://192.168.232.46:5678'].send(`echo close > /root/socket.txt`)
   
   let data = problem.value
-  console.log(data)
-  sockets.value['wss://192.168.232.46:5678'].send(`echo ${data} > /root/socket.txt`)
+  console.log(data,sockets)
+  if (!data) {
+    alert("请输入命令");
+    return;
+  }
+  sockets.value['wss://'+ editCocoPiData.value.ip+':5678'].send(`echo ${data} > /root/receive.txt`)
 };
 
 const clearAlldevice = () => { 
   tableData.value = []
+  socketUrl.value = []
   localStorage.setItem("tableData", JSON.stringify([]))
   localStorage.setItem("socketUrl", JSON.stringify([]))
 };
@@ -132,12 +141,18 @@ const clearAlldevice = () => {
         </el-table-column> -->
         <el-table-column label="名字" prop="name" width="80">
         </el-table-column>
-        <el-table-column label="IP" prop="ip" width="130">
-        </el-table-column>
+        <!-- <el-table-column label="IP" prop="ip" width="130">
+        </el-table-column> -->
         <el-table-column label="连接状态" prop="status" width="120">
         </el-table-column>
         <el-table-column label="数据" prop="socketData" >
           
+        </el-table-column>
+        <el-table-column label="发送指令" prop="command">
+          <template v-slot="scope">
+            {{ scope.row.command }}
+          </template>
+
         </el-table-column>
         <el-table-column label="操作" width="140">
           <template v-slot="scope">
@@ -156,6 +171,9 @@ const clearAlldevice = () => {
           <el-input v-model="CocoPiData.ip" placeholder="请输入硬件IP地址" style="width: 200px;"></el-input>
           <el-button @click="detectionIP">检测ip 服务是否启动</el-button>
         </el-form-item>
+        <el-form-item label="发送硬件指令:">
+          <el-input-tag v-model="CocoPiData.command" placeholder="请输入硬件指令" aria-label="输入后请按回车键" />
+        </el-form-item>
         <!-- <el-form-item label="地图位置:">
           <el-input v-model="CocoPiData.port" placeholder="请输入硬件端口" type="number"></el-input>
         </el-form-item> -->
@@ -166,12 +184,9 @@ const clearAlldevice = () => {
       </el-form>
     </el-dialog>
     <el-dialog v-model="editCocoPiVisible" title="操作" width="600">
-      <!-- <el-select>
-        <el-option label="" value=""></el-option>
-        <el-option label="" value=""></el-option>
-      </el-select> -->
-      <el-input style="width: 60%;" v-model="problem" aria-placeholder="请输入功能" placeholder="请输入功能"></el-input>
-      <!-- <el-button @click="onCodeSubmit">发送指令</el-button> -->
+      <el-select v-model="problem" placeholder="请选择">
+        <el-option v-for="item in editCocoPiData.command" :label="item" :value="item"></el-option>
+      </el-select>
       <br /><br />
       <!-- <span>内容显示:</span> -->
         <el-button @click="copyCode">发送指令</el-button>

+ 9 - 9
src/pages/Entry/index.vue

@@ -2,7 +2,7 @@
 import { ref } from "vue";
 // import { $get } from "@src/service/request";
 // import cityCodeMap from "@assets/JSON/cityCode.json";
-import MapChart from "./components/MapChart/index.vue";
+// import MapChart from "./components/MapChart/index.vue";
 import RealtimeData from "./components/RealtimeData/index.vue";
 import Right from "./components/homeRight/right.vue"
 
@@ -12,13 +12,13 @@ import Right from "./components/homeRight/right.vue"
 //   };
 // }
 
-interface MapPM25 {
-  code: string;
-  value: number;
-}
+// interface MapPM25 {
+//   code: string;
+//   value: number;
+// }
 
 // const tip = ref("");
-const mapData = ref<MapPM25[]>([]);
+// const mapData = ref<MapPM25[]>([]);
 
 const pvUv = ref({
   pv: 6666,
@@ -37,12 +37,12 @@ const pvUv = ref({
     </div>
   </section>
   <el-row :gutter="20" class="content">
-    <el-col :xl="12" :md="12" :sm="24" :xs="24">
+    <el-col :xl="24" :md="24" :sm="24" :xs="24">
       <RealtimeData :data="pvUv" />
     </el-col>
-    <el-col :xl="12" :md="12" :sm="24" :xs="24">
+    <!-- <el-col :xl="12" :md="12" :sm="24" :xs="24">
       <MapChart :data="mapData" />
-    </el-col>
+    </el-col> -->
   </el-row>
   <section class="right">
     <Right />

+ 1 - 1
src/service/socket/socket.ts

@@ -16,7 +16,7 @@ function useMultipleWebSockets(urls: any) {
 
     sockets[url].onmessage = (event) => {
       // console.log(`Message from ${url}:`, event.data);
-      sendData[url] = event.data;
+      sendData[url] = JSON.parse(event.data);
       // 处理不同来源的消息
     };
 

Some files were not shown because too many files changed in this diff