首页展示61850连通状态

newCac1.0
fanluyan 6 months ago
parent baf4fc3c09
commit b5d7610e9b

@ -19,6 +19,14 @@ export function getlistAllCountApi(data) {
data, data,
}); });
} }
//61850网络状态
export function getnetWorkStatusApi(data) {
return request({
url: "/icdconfig/testIed",
method: "get",
data,
});
}
//获取新的树结构 //获取新的树结构
export function getTreeApi(data) { export function getTreeApi(data) {

@ -136,7 +136,7 @@ export default {
thresholdR: "", thresholdR: "",
riskLevelVal: 0, // riskLevelVal: 0, //
state: 1, state: 1,
notifyCom: 1, notifyCom: 0,
}, },
rulesId: "", rulesId: "",
//type //type
@ -382,7 +382,7 @@ export default {
thresholdR: "", thresholdR: "",
riskLevelVal: 0, // riskLevelVal: 0, //
state: 1, state: 1,
notifyCom: 1, notifyCom: 0,
}; };
}, },
}, },

@ -27,7 +27,8 @@
<monitoringDevice></monitoringDevice> <monitoringDevice></monitoringDevice>
</div> </div>
<div class="divcenter"> <div class="divcenter">
<sf6 @dataDispose="dataDispose"></sf6> <!-- <sf6 @dataDispose="dataDispose"></sf6> -->
<networkStatus></networkStatus>
</div> </div>
<div class="divBottom"> <div class="divBottom">
<arrester @dataDispose="dataDispose"></arrester> <arrester @dataDispose="dataDispose"></arrester>
@ -50,6 +51,7 @@ import homeChart from "./Echarts/index"; //折线图
import partialDischarges from "./partialDischarges/index.vue"; // import partialDischarges from "./partialDischarges/index.vue"; //
import monitoringDevice from "./monitoringDevice/index.vue"; // import monitoringDevice from "./monitoringDevice/index.vue"; //
import networkStatus from "./networkStatus/index.vue"; //61850
import sf6 from "./sf6/index.vue"; //sf6 import sf6 from "./sf6/index.vue"; //sf6
import arrester from "./arrester/index.vue"; // import arrester from "./arrester/index.vue"; //
@ -63,7 +65,8 @@ export default {
partialDischarges, partialDischarges,
homeChart, homeChart,
monitoringDevice, monitoringDevice,
sf6, networkStatus,
//sf6,
arrester, arrester,
warnMessage, warnMessage,
}, },

@ -0,0 +1,151 @@
<template>
<div class="networkStatus">
<h3>{{ pageCardTitle }}</h3>
<div class="devContent">
<el-table :data="networkArr" height="100%" border size="mini">
<el-table-column prop="name" label="名称"> </el-table-column>
<el-table-column prop="ip" label="IP地址"> </el-table-column>
<el-table-column prop="connected" label="状态" width="90px">
<template slot-scope="scope">
<span
style="
display: flex;
width: 16px;
height: 16px;
background-color: #67c23a;
border-radius: 50%;
margin: auto;
"
v-if="scope.row.connected == 1"
></span>
<span
style="
display: flex;
width: 16px;
height: 16px;
background-color: #f56c6c;
border-radius: 50%;
margin: auto;
"
v-else
></span>
</template>
</el-table-column>
</el-table>
</div>
</div>
</template>
<script>
import { getnetWorkStatusApi } from "@/utils/api/index";
export default {
name: "networkStatus",
components: {},
data() {
return {
pageCardTitle: "61850网络状态",
networkArr: [], //
};
},
created() {
this.getStatus();
},
computed: {},
methods: {
//
getStatus() {
getnetWorkStatusApi()
.then((res) => {
if (res.success) {
console.log(res.data);
this.networkArr = res.data;
}
})
.catch((err) => {});
this.loading = true;
},
},
};
</script>
<style lang="less">
.networkStatus {
//background-color: #fcc;
height: 100%;
h3 {
height: 50px;
line-height: 50px;
padding: 0px 60px 0px 20px;
box-sizing: border-box;
color: #03bcff;
font-weight: normal;
text-align: left;
display: flex;
font-size: 16px;
justify-content: space-between;
align-items: center;
}
.devContent {
padding: 10px !important;
box-sizing: border-box;
height: calc(100% - 52px);
.el-table--mini .el-table__cell {
padding: 3px 0;
text-align: center;
color: #03bcff;
}
.el-table td.el-table__cell,
.el-table th.el-table__cell.is-leaf {
border-bottom: 1px solid #03bcff;
}
.el-table--border .el-table__cell {
border-right: 1px solid #03bcff;
}
.el-table {
border: 1px solid #03bcff;
background-color: transparent; /* 设置为透明背景 */
tr {
background-color: transparent; /* 设置为透明背景 */
}
th.el-table__cell {
background-color: transparent; /* 设置为透明背景 */
}
}
.el-table__row,
.el-table__body-wrapper {
background-color: transparent; /* 确保行和单元格也是透明的 */
}
}
.el-table::before {
height: 0px;
}
.el-table--border::after,
.el-table--group::after {
width: 0px;
}
.el-table--border th.el-table__cell.gutter:last-of-type {
//background: #03bcff !important;
border-bottom: 1px solid #03bcff;
}
.el-table--enable-row-hover .el-table__body tr:hover > td.el-table__cell {
background-color: transparent;
}
::-webkit-scrollbar {
width: 6px !important;
height: 6px !important;
}
::-webkit-scrollbar-thumb {
background-color: #03bcff;
/* 关键代码 */
border-radius: 32px;
}
/* 滚动条轨道 */
::-webkit-scrollbar-track {
background-color: transparent;
border-radius: 32px;
}
}
</style>

@ -81,9 +81,9 @@
> >
<el-option <el-option
v-for="item in serveIecOptions" v-for="item in serveIecOptions"
:key="item.inst" :key="item.paramIndex"
:label="item.paramIndex" :label="item.paramIndex"
:value="item.inst" :value="item.paramIndex"
> >
</el-option> </el-option>
</el-select> </el-select>
@ -135,12 +135,14 @@ export default {
deviceValue: "", deviceValue: "",
deviceOptions: [], deviceOptions: [],
deviceList: [], deviceList: [],
deviceNoData: "",
// //
serverValue: "", serverValue: "",
serverOptions: [], serverOptions: [],
serveIecValue: "", serveIecValue: "",
serveIecOptions: [], serveIecOptions: [],
serverdeviceList: [], serverdeviceList: [],
serverNoData: "",
// //
outputValues: {}, // outputValues: {}, //
leftIndex: -1, leftIndex: -1,
@ -196,6 +198,8 @@ export default {
}); });
console.log(selectdevice); console.log(selectdevice);
this.deviceList = selectdevice.attList; this.deviceList = selectdevice.attList;
//
this.deviceNoData = selectdevice.paramIndex;
}, },
//serve //serve
//serve //serve
@ -217,6 +221,8 @@ export default {
}); });
this.serveIecValue = ""; this.serveIecValue = "";
this.serverdeviceList = []; this.serverdeviceList = [];
console.log(serverSelectOption);
this.getserverDeviceList(serverSelectOption); this.getserverDeviceList(serverSelectOption);
}, },
//serer //serer
@ -236,12 +242,18 @@ export default {
changeServerDevice(val) { changeServerDevice(val) {
console.log(val); console.log(val);
let selectserver = this.serveIecOptions.find((item) => { let selectserver = this.serveIecOptions.find((item) => {
return item.inst == val; return item.paramIndex == val;
}); });
console.log(selectserver); console.log(selectserver);
//serve
this.serverNoData = selectserver.paramIndex;
this.serverdeviceList = selectserver.attList; this.serverdeviceList = selectserver.attList;
}, },
submitForm() { submitForm() {
console.log(this.deviceNoData);
console.log(this.serverNoData);
console.log(this.deviceList);
let params = []; let params = [];
this.deviceList.forEach((item) => { this.deviceList.forEach((item) => {
console.log(`设备项: ${item}, 选择的值: ${this.outputValues[item]}`); console.log(`设备项: ${item}, 选择的值: ${this.outputValues[item]}`);
@ -256,6 +268,14 @@ export default {
} }
}); });
console.log(params); console.log(params);
if (params.length == 0) {
params.push({
rptFrom: this.deviceNoData,
rptTo: this.serverNoData,
});
}
console.log(params);
this.callApiWithParams(params); this.callApiWithParams(params);
}, },
async callApiWithParams(params) { async callApiWithParams(params) {

Loading…
Cancel
Save