|
@@ -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>
|