|
|
@ -2,15 +2,30 @@
|
|
|
|
<div class="reportBox">
|
|
|
|
<div class="reportBox">
|
|
|
|
<div class="commandBox">
|
|
|
|
<div class="commandBox">
|
|
|
|
<div class="commandRunLeft commandClass">
|
|
|
|
<div class="commandRunLeft commandClass">
|
|
|
|
<h3>待下发终端</h3>
|
|
|
|
<div class="headTitle">
|
|
|
|
|
|
|
|
<span class="title">待下发终端</span>
|
|
|
|
|
|
|
|
<el-select
|
|
|
|
|
|
|
|
v-model="operateL"
|
|
|
|
|
|
|
|
placeholder="筛选运操维作"
|
|
|
|
|
|
|
|
@change="selectLeftChanged"
|
|
|
|
|
|
|
|
>
|
|
|
|
|
|
|
|
<el-option
|
|
|
|
|
|
|
|
v-for="item in operateOptions"
|
|
|
|
|
|
|
|
:key="item.id"
|
|
|
|
|
|
|
|
:label="item.name"
|
|
|
|
|
|
|
|
:value="item.id"
|
|
|
|
|
|
|
|
></el-option>
|
|
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
|
|
<span class="time">更新时间:{{ updateTime }}</span>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
<div
|
|
|
|
<div
|
|
|
|
class="commandList"
|
|
|
|
class="commandList"
|
|
|
|
v-loading="leftComLoading"
|
|
|
|
v-loading="leftComLoading"
|
|
|
|
v-if="runCommand.length != 0"
|
|
|
|
v-if="leftCommand.length != 0"
|
|
|
|
>
|
|
|
|
>
|
|
|
|
<p
|
|
|
|
<p
|
|
|
|
class="comLi"
|
|
|
|
class="comLi"
|
|
|
|
v-for="(item, index) in runCommand"
|
|
|
|
v-for="(item, index) in leftCommand"
|
|
|
|
:key="index"
|
|
|
|
:key="index"
|
|
|
|
@dblclick="handleShowCommand(item)"
|
|
|
|
@dblclick="handleShowCommand(item)"
|
|
|
|
>
|
|
|
|
>
|
|
|
@ -22,14 +37,29 @@
|
|
|
|
>
|
|
|
|
>
|
|
|
|
</p>
|
|
|
|
</p>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="commandList">
|
|
|
|
<div class="commandList" v-else>
|
|
|
|
<p>暂无下发命令</p>
|
|
|
|
<p>暂无下发命令</p>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="commandRunRight commandClass">
|
|
|
|
<div class="commandRunRight commandClass">
|
|
|
|
<h3>已下发终端</h3>
|
|
|
|
<div class="headTitle">
|
|
|
|
<div class="commandList">
|
|
|
|
<span class="title">已下发终端</span>
|
|
|
|
<p class="comLi" v-for="(item, index) in endCommand" :key="index">
|
|
|
|
<el-select
|
|
|
|
|
|
|
|
v-model="operateR"
|
|
|
|
|
|
|
|
placeholder="筛选运操维作"
|
|
|
|
|
|
|
|
@change="selectRightChanged"
|
|
|
|
|
|
|
|
>
|
|
|
|
|
|
|
|
<el-option
|
|
|
|
|
|
|
|
v-for="item in operateOptions"
|
|
|
|
|
|
|
|
:key="item.id"
|
|
|
|
|
|
|
|
:label="item.name"
|
|
|
|
|
|
|
|
:value="item.id"
|
|
|
|
|
|
|
|
></el-option>
|
|
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
|
|
<span class="time">更新时间:{{ updateTime }}</span>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div class="commandList" v-if="rightCommand.length != 0">
|
|
|
|
|
|
|
|
<p class="comLi" v-for="(item, index) in rightCommand" :key="index">
|
|
|
|
<el-tooltip
|
|
|
|
<el-tooltip
|
|
|
|
class="item"
|
|
|
|
class="item"
|
|
|
|
effect="dark"
|
|
|
|
effect="dark"
|
|
|
@ -52,6 +82,9 @@
|
|
|
|
>
|
|
|
|
>
|
|
|
|
</p>
|
|
|
|
</p>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div class="commandList" v-else>
|
|
|
|
|
|
|
|
<p>暂无已下发命令</p>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<el-dialog
|
|
|
|
<el-dialog
|
|
|
@ -84,6 +117,8 @@ export default {
|
|
|
|
leftComLoading: false, //左侧loading
|
|
|
|
leftComLoading: false, //左侧loading
|
|
|
|
runCommand: [],
|
|
|
|
runCommand: [],
|
|
|
|
endCommand: [],
|
|
|
|
endCommand: [],
|
|
|
|
|
|
|
|
leftCommand: [],
|
|
|
|
|
|
|
|
rightCommand: [],
|
|
|
|
commandShow: false,
|
|
|
|
commandShow: false,
|
|
|
|
deveceMsg: "",
|
|
|
|
deveceMsg: "",
|
|
|
|
cmdCn: {
|
|
|
|
cmdCn: {
|
|
|
@ -100,6 +135,23 @@ export default {
|
|
|
|
},
|
|
|
|
},
|
|
|
|
cmdtimer: null,
|
|
|
|
cmdtimer: null,
|
|
|
|
endtimer: null,
|
|
|
|
endtimer: null,
|
|
|
|
|
|
|
|
updateTime: null,
|
|
|
|
|
|
|
|
//运维操作列表
|
|
|
|
|
|
|
|
operateOptions: [
|
|
|
|
|
|
|
|
{ id: 0, name: "全部" },
|
|
|
|
|
|
|
|
{ id: 1, name: "重启" },
|
|
|
|
|
|
|
|
{ id: 2, name: "重启装置" },
|
|
|
|
|
|
|
|
{ id: 3, name: "设置I1服务器" },
|
|
|
|
|
|
|
|
{ id: 4, name: "设置运维服务器" },
|
|
|
|
|
|
|
|
{ id: 5, name: "设置心跳周期" },
|
|
|
|
|
|
|
|
{ id: 6, name: "上传日志" },
|
|
|
|
|
|
|
|
{ id: 7, name: "升级" },
|
|
|
|
|
|
|
|
{ id: 8, name: "开启frpc" },
|
|
|
|
|
|
|
|
{ id: 9, name: "停止frpc" },
|
|
|
|
|
|
|
|
{ id: 10, name: "停止老化测试" },
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
operateL: 0,
|
|
|
|
|
|
|
|
operateR: 0,
|
|
|
|
};
|
|
|
|
};
|
|
|
|
},
|
|
|
|
},
|
|
|
|
computed: {},
|
|
|
|
computed: {},
|
|
|
@ -120,6 +172,8 @@ export default {
|
|
|
|
console.log(res);
|
|
|
|
console.log(res);
|
|
|
|
this.runCommand = res.data;
|
|
|
|
this.runCommand = res.data;
|
|
|
|
this.leftComLoading = false;
|
|
|
|
this.leftComLoading = false;
|
|
|
|
|
|
|
|
this.selectLeftChanged(this.operateL);
|
|
|
|
|
|
|
|
this.updateTime = new Date();
|
|
|
|
})
|
|
|
|
})
|
|
|
|
.catch((err) => {});
|
|
|
|
.catch((err) => {});
|
|
|
|
},
|
|
|
|
},
|
|
|
@ -167,10 +221,134 @@ export default {
|
|
|
|
.then((res) => {
|
|
|
|
.then((res) => {
|
|
|
|
console.log(res);
|
|
|
|
console.log(res);
|
|
|
|
this.endCommand = res.data;
|
|
|
|
this.endCommand = res.data;
|
|
|
|
|
|
|
|
this.selectRightChanged(this.operateR);
|
|
|
|
// this.leftComLoading = false;
|
|
|
|
// this.leftComLoading = false;
|
|
|
|
|
|
|
|
this.updateTime = new Date().toLocaleString();
|
|
|
|
})
|
|
|
|
})
|
|
|
|
.catch((err) => {});
|
|
|
|
.catch((err) => {});
|
|
|
|
},
|
|
|
|
},
|
|
|
|
|
|
|
|
//左侧筛选
|
|
|
|
|
|
|
|
selectLeftChanged(val) {
|
|
|
|
|
|
|
|
console.log(val);
|
|
|
|
|
|
|
|
switch (val) {
|
|
|
|
|
|
|
|
case 0:
|
|
|
|
|
|
|
|
this.leftCommand = this.runCommand;
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
case 1:
|
|
|
|
|
|
|
|
this.leftCommand = this.runCommand.filter(
|
|
|
|
|
|
|
|
(item) => item.cmdName == "yw_cmd_android_reboot"
|
|
|
|
|
|
|
|
);
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
case 2:
|
|
|
|
|
|
|
|
this.leftCommand = this.runCommand.filter(
|
|
|
|
|
|
|
|
(item) => item.cmdName == "yw_cmd_mcu_reboot"
|
|
|
|
|
|
|
|
);
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
case 3:
|
|
|
|
|
|
|
|
this.leftCommand = this.runCommand.filter(
|
|
|
|
|
|
|
|
(item) => item.cmdName == "i1_cmd_set_i1_server_ip_port"
|
|
|
|
|
|
|
|
);
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
case 4:
|
|
|
|
|
|
|
|
this.leftCommand = this.runCommand.filter(
|
|
|
|
|
|
|
|
(item) => item.cmdName == "i1_cmd_set_xy_yw_ip_port"
|
|
|
|
|
|
|
|
);
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
case 5:
|
|
|
|
|
|
|
|
this.leftCommand = this.runCommand.filter(
|
|
|
|
|
|
|
|
(item) => item.cmdName == "i1_cmd_set_i1_heart_beat_time"
|
|
|
|
|
|
|
|
);
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
case 6:
|
|
|
|
|
|
|
|
this.leftCommand = this.runCommand.filter(
|
|
|
|
|
|
|
|
(item) =>
|
|
|
|
|
|
|
|
item.cmdName == "yw_cmd_myw_cmd_upload_i1_zip_logcu_reboot"
|
|
|
|
|
|
|
|
);
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
case 7:
|
|
|
|
|
|
|
|
this.leftCommand = this.runCommand.filter(
|
|
|
|
|
|
|
|
(item) => item.cmdName == "upgrade"
|
|
|
|
|
|
|
|
);
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
case 8:
|
|
|
|
|
|
|
|
this.leftCommand = this.runCommand.filter(
|
|
|
|
|
|
|
|
(item) => item.cmdName == "yw_cmd_start_frpc"
|
|
|
|
|
|
|
|
);
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
case 9:
|
|
|
|
|
|
|
|
this.leftCommand = this.runCommand.filter(
|
|
|
|
|
|
|
|
(item) => item.cmdName == "yw_cmd_stop_frpc"
|
|
|
|
|
|
|
|
);
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
case 10:
|
|
|
|
|
|
|
|
this.leftCommand = this.runCommand.filter(
|
|
|
|
|
|
|
|
(item) => item.cmdName == "i1_cmd_stop_aging_test"
|
|
|
|
|
|
|
|
);
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
//右侧筛选
|
|
|
|
|
|
|
|
selectRightChanged(val) {
|
|
|
|
|
|
|
|
console.log(val);
|
|
|
|
|
|
|
|
switch (val) {
|
|
|
|
|
|
|
|
case 0:
|
|
|
|
|
|
|
|
this.rightCommand = this.endCommand;
|
|
|
|
|
|
|
|
console.log(this.rightCommand);
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
case 1:
|
|
|
|
|
|
|
|
this.rightCommand = this.endCommand.filter(
|
|
|
|
|
|
|
|
(item) => item.cmdName == "yw_cmd_android_reboot"
|
|
|
|
|
|
|
|
);
|
|
|
|
|
|
|
|
console.log(this.rightCommand);
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
case 2:
|
|
|
|
|
|
|
|
this.rightCommand = this.endCommand.filter(
|
|
|
|
|
|
|
|
(item) => item.cmdName == "yw_cmd_mcu_reboot"
|
|
|
|
|
|
|
|
);
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
case 3:
|
|
|
|
|
|
|
|
this.rightCommand = this.endCommand.filter(
|
|
|
|
|
|
|
|
(item) => item.cmdName == "i1_cmd_set_i1_server_ip_port"
|
|
|
|
|
|
|
|
);
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
case 4:
|
|
|
|
|
|
|
|
this.rightCommand = this.endCommand.filter(
|
|
|
|
|
|
|
|
(item) => item.cmdName == "i1_cmd_set_xy_yw_ip_port"
|
|
|
|
|
|
|
|
);
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
case 5:
|
|
|
|
|
|
|
|
this.rightCommand = this.endCommand.filter(
|
|
|
|
|
|
|
|
(item) => item.cmdName == "i1_cmd_set_i1_heart_beat_time"
|
|
|
|
|
|
|
|
);
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
case 6:
|
|
|
|
|
|
|
|
this.rightCommand = this.endCommand.filter(
|
|
|
|
|
|
|
|
(item) =>
|
|
|
|
|
|
|
|
item.cmdName == "yw_cmd_myw_cmd_upload_i1_zip_logcu_reboot"
|
|
|
|
|
|
|
|
);
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
case 7:
|
|
|
|
|
|
|
|
this.rightCommand = this.endCommand.filter(
|
|
|
|
|
|
|
|
(item) => item.cmdName == "upgrade"
|
|
|
|
|
|
|
|
);
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
case 8:
|
|
|
|
|
|
|
|
this.rightCommand = this.endCommand.filter(
|
|
|
|
|
|
|
|
(item) => item.cmdName == "yw_cmd_start_frpc"
|
|
|
|
|
|
|
|
);
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
case 9:
|
|
|
|
|
|
|
|
this.rightCommand = this.endCommand.filter(
|
|
|
|
|
|
|
|
(item) => item.cmdName == "yw_cmd_stop_frpc"
|
|
|
|
|
|
|
|
);
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
case 10:
|
|
|
|
|
|
|
|
this.rightCommand = this.endCommand.filter(
|
|
|
|
|
|
|
|
(item) => item.cmdName == "i1_cmd_stop_aging_test"
|
|
|
|
|
|
|
|
);
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
beforeDestroy() {
|
|
|
|
beforeDestroy() {
|
|
|
|
//清除定时器
|
|
|
|
//清除定时器
|
|
|
@ -196,11 +374,22 @@ export default {
|
|
|
|
border: 1px solid #dcdfe6;
|
|
|
|
border: 1px solid #dcdfe6;
|
|
|
|
margin-right: 12px;
|
|
|
|
margin-right: 12px;
|
|
|
|
border-radius: 4px;
|
|
|
|
border-radius: 4px;
|
|
|
|
h3 {
|
|
|
|
.headTitle {
|
|
|
|
|
|
|
|
height: 40px;
|
|
|
|
|
|
|
|
line-height: 40px;
|
|
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
|
|
.title {
|
|
|
|
font-size: 16px;
|
|
|
|
font-size: 16px;
|
|
|
|
font-weight: normal;
|
|
|
|
font-weight: normal;
|
|
|
|
height: 32px;
|
|
|
|
}
|
|
|
|
line-height: 32px;
|
|
|
|
.el-select {
|
|
|
|
|
|
|
|
margin: 0px 12px;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
.time {
|
|
|
|
|
|
|
|
font-size: 12px;
|
|
|
|
|
|
|
|
margin-left: 8px;
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
.commandList {
|
|
|
|
.commandList {
|
|
|
|
width: 100%;
|
|
|
|
width: 100%;
|
|
|
|