From e84c5e92533e677778cb3eef9923cd62d5e82935 Mon Sep 17 00:00:00 2001
From: gaoshp <291585735@qq.com>
Date: 星期二, 18 六月 2024 23:11:17 +0800
Subject: [PATCH] update
---
src/views/mdc/realtime-status/index.vue | 133 +++++++++++++++++++++++++++++++-------------
1 files changed, 94 insertions(+), 39 deletions(-)
diff --git a/src/views/mdc/realtime-status/index.vue b/src/views/mdc/realtime-status/index.vue
index ec686cb..a13892a 100644
--- a/src/views/mdc/realtime-status/index.vue
+++ b/src/views/mdc/realtime-status/index.vue
@@ -1,7 +1,7 @@
<!--
* @Date: 2024-04-09 22:11:21
- * @LastEditors: Sneed
- * @LastEditTime: 2024-04-09 22:12:14
+ * @LastEditors: lzhe lzhe@example.com
+ * @LastEditTime: 2024-06-18 18:14:08
* @FilePath: /belleson-frontend/Users/mache/Documents/demo/cps-web/src/views/mdc/realtime-status/index.vue
瀹炴椂鐪嬫澘
-->
@@ -36,7 +36,7 @@
<div class="status-next" @click="next">
<el-icon><ArrowRight /></el-icon>
</div>
- <div class="status-content-cardp" v-for="item in timestatus" style="width: 33.3333%; height: 50%;">
+ <div class="status-content-cardp" v-for="item in timestatus" :style="{'width': (100/column) + '%'}">
<div class="status-card-box" style="border-color: #ccc;">
<div class="status-card-top">
<div class="status-card-detail">
@@ -104,22 +104,39 @@
stationlabel: "",
stationlabelList: [],
current: "1",
+ size: "9",
total: 0,
deviceStatus: [],
- workStationGroupIdList: []
+ workStationGroupIdList: [],
+ line: "",
+ column: ""
}
},
mounted() {
- this.getdevicestatus(); //鑾峰彇椤堕儴title
this.getstationlabelList(); //鑾峰彇鏍囩瑙嗗浘涓嬬殑list
this.setIntervalTime(); //鍗佺澧炲姞鏃堕棿
+ this.getSetting(); //璁剧疆鍑犺鍑犲垪 ==銆嬭幏鍙栭《閮╰itle
+ //this.getprocess(); //鑾峰彇棰滆壊锛岃幏鍙栨満鍣�
+ this.gettimestatus(); //ws
},
methods: {
+ getSetting() {
+ this.$HTTP.get(`/api/blade-system/param/detail?paramKey=mdc.realtime.setting`).then(res=> {
+ if(res.code == 200) {
+ var paramValue = JSON.parse(res.data.paramValue);
+ this.line = paramValue.line==0?1:paramValue.line;
+ this.column = paramValue.column;
+ this.current = "1";
+ this.size = this.line * this.column;
+ this.getdevicestatus(); //鑾峰彇椤堕儴title/鍏蜂綋鏁版嵁
+ }
+ })
+ },
setIntervalTime() {
function addTime(timeStr) {
var increaseByMilliseconds = 10 * 1000; // 10绉掕浆鎹负姣
// 瑙f瀽鏃堕棿瀛楃涓蹭负澶╂暟銆佸皬鏃躲�佸垎閽熷拰绉�
- if(timeStr != undefined) {
+ if(timeStr != undefined && timeStr != "--") {
var parts = timeStr.match(/(\d+)澶�(\d+)鏃�(\d+)鍒�(\d+)绉�/);
var days = parseInt(parts[1], 10) * 24 * 60 * 60 * 1000; // 澶╂暟杞崲涓烘绉�
var hours = parseInt(parts[2], 10) * 60 * 60 * 1000; // 灏忔椂杞崲涓烘绉�
@@ -205,9 +222,10 @@
this.gettimestatus();
},
next() {
- if((this.total/9 - this.current) < 0) return;
- this.current = Number(this.current) + 1;
- this.gettimestatus();
+ if((this.current * this.line) < this.total/this.column) {
+ this.current = Number(this.current) + 1;
+ this.gettimestatus();
+ }
},
goSet() {
this.$router.push('/mdc/configuration');
@@ -219,7 +237,6 @@
this.$HTTP.get(`/api/blade-cps/global_wcs/wcs-achievements`).then(res=> {
if(res.code == 200) {
this.allwcs = res.data;
- this.gettimestatus();
}
})
},
@@ -246,8 +263,9 @@
workStationGroupIdList: this.workStationGroupIdList
}
this.timestatus = [];
- this.$HTTP.post(`/api/blade-cps/workstation/real-time-status?current=${this.current}&size=9`,obj).then(res=> {
+ this.$HTTP.post(`/api/blade-cps/workstation/real-time-status?current=${this.current}&size=${this.size}`,obj).then(res=> {
if(res.code == 200) {
+ this.timestatus = res.data.records;
var ids = [];
res.data.records.forEach(item=> {
item.statusName = "鏈煡";
@@ -255,16 +273,40 @@
ids.push(item.id);
if(item.properties != null) {
item.properties.forEach(item1=> {
- this.devicestatus.forEach(item2=> {
- if(item2.status == item1.value) {
- item.statusName = item2.statusName;
- item1.statusName = item2.statusName;
- item.statusStyle = item2.color;
- }
- })
+ // this.devicestatus.forEach(item2=> {
+ // if(item2.status == item1.value) {
+ // item.statusName = item2.statusName;
+ // item1.statusName = item2.statusName;
+ // item.statusStyle = item2.color;
+ // }
+ // })
+ if(item1.value == 1) {
+ item.statusName = '鎶ヨ';
+ item1.statusName = '鎶ヨ';
+ item.statusStyle = "#370C0D";
+ }
+ if(item1.value == 2) {
+ item.statusName = '杩愯';
+ item1.statusName = '杩愯';
+ item.statusStyle = "#73D13D";
+ }
+ if(item1.value == 3) {
+ item.statusName = "寰呮満";
+ item1.statusName = "寰呮満";
+ item.statusStyle = "#FFC53D";
+ }
+ if(item1.value == 4) {
+ item.statusName = "绂荤嚎";
+ item1.statusName = "绂荤嚎";
+ item.statusStyle = "#595959";
+ }
+ if(item1.value == 5) {
+ item.statusName = "璋冭瘯";
+ item1.statusName = "璋冭瘯";
+ item.statusStyle = "#40A9FF";
+ }
})
}
-
})
this.total = res.data.total;
//鍙戦�亀ebsocket
@@ -292,15 +334,15 @@
}else {
var diffTime = "--";
}
- if(res.data.records.length == 0) return; //娌″�间笉鐢ㄥ惊鐜�
- res.data.records.forEach(item=> { //绗竴姝ユ妸v鏀惧埌code閲�
+ if(that.timestatus.length == 0) return; //娌″�间笉鐢ㄥ惊鐜�
+ that.timestatus.forEach((item,index)=> { //绗竴姝ユ妸v鏀惧埌code閲�
if(eventData.id == item.id) {
if(item.properties == null) {
item.properties = [];
return;
}
item.time = diffTime;
- item.properties.forEach(item1=> {
+ item.properties.forEach((item1,index1)=> {
if(item1.key == "DeviceStatus") { //鏈哄櫒鐘舵��
//item1.code = eventData.data[item1.key].v;
if(item1.value == "2") {
@@ -311,26 +353,40 @@
}
}else {
if(item1.key == 'Alarm') { //鎶ヨ
- var v = JSON.parse(eventData.data[item1.key].v);
- item1.name = v.code;
- item1.code = v.msg;
- item1.color = "#370C0D";
+ if(eventData.data[item1.key]) {
+ var v = JSON.parse(eventData.data[item1.key].v);
+ if(Array.isArray(v)) { //濡傛灉鏄暟缁勶紝涓嶈祴鍊�
+ if(v.length == 0) {
+ res.data.records[index].properties.splice(index1,1);
+ }else {
+ item1.name = v[0].code;
+ item1.code = v[0].msg;
+ item1.color = "#370C0D";
+ }
+ }else {
+ item1.name = v.code;
+ item1.code = v.msg;
+ item1.color = "#370C0D";
+ }
+ }
}else {
- item1.code = eventData.data[item1.key].v;
- item1.color = "#75C0C0";
+ if(eventData.data[item1.key]) {
+ item1.code = eventData.data[item1.key].v;
+ item1.color = "#75C0C0";
+ }
}
}
})
}
});
};
- var len = res.data.records.length;
- intervalId = setInterval(function() {
- if (num === len) {
- clearInterval(intervalId);
- that.timestatus = res.data.records; //绛夋墍鏈塻ocket鍥炴潵浠ュ悗璧嬪��
- }
- }, 500);
+ // var len = res.data.records.length;
+ // intervalId = setInterval(function() {
+ // if (num === len) {
+ // clearInterval(intervalId);
+ // that.timestatus = res.data.records; //绛夋墍鏈塻ocket鍥炴潵浠ュ悗璧嬪��
+ // }
+ // }, 500);
}
})
},
@@ -340,8 +396,8 @@
res.data.forEach(item=> {
item.active = false;
})
- res.data[0].color = "#73D13D";
- res.data[1].color = "#370C0D";
+ res.data[0].color = "#370C0D";
+ res.data[1].color = "#73D13D";
res.data[2].color = "#FFC53D";
res.data[3].color = "#595959";
res.data[4].color = "#40A9FF";
@@ -351,7 +407,6 @@
res.data[3].icon = "Warning";
res.data[4].icon = "Odometer";
this.devicestatus = res.data;
- this.getprocess(); //鑾峰彇棰滆壊锛岃幏鍙栨満鍣�
}
})
}
@@ -422,7 +477,7 @@
display: block;
}
.status-content-cardp {
- min-width: 266px;
+ height: 50%;
min-height: 170px;
margin: 0;
padding: 4px;
--
Gitblit v1.9.3