| | |
| | | import { |
| | | chartFontsize |
| | | } from '@/assets/js/chartFontsize' |
| | | import { |
| | | rectifier |
| | | } from '@/assets/js/api' |
| | | import { WebSocketClass } from '@/assets/js/socket' |
| | | const pieImg = require('../../assets/images/rectifier-img.png'); |
| | | export default { |
| | | name: "imgPieChart", |
| | |
| | | }, |
| | | data() { |
| | | return { |
| | | |
| | | websock: null |
| | | } |
| | | }, |
| | | methods: { |
| | |
| | | this.organizeData(sendData) |
| | | } else { |
| | | this.postData() |
| | | setInterval(() => { |
| | | this.postData() |
| | | }, 3000) |
| | | } |
| | | }, |
| | | postData() { |
| | | let userId = localStorage.getItem('userId'); |
| | | let params = { |
| | | userId: userId |
| | | } |
| | | rectifier(params).then((res) => { |
| | | if (res.data.code == 1) { |
| | | let optionData = { |
| | | data: [] |
| | | } |
| | | let resData = res.data.data; |
| | | for (let key in resData) { |
| | | let obj = {}; |
| | | obj.name = key; |
| | | obj.value = resData[key]; |
| | | optionData.data.push(obj) |
| | | } |
| | | this.$options.chartData = optionData; |
| | | this.organizeData(optionData) |
| | | this.websock = new WebSocketClass(`/screen/powerAlarm/rectifier/${userId}`, this.wsMessage) |
| | | }, |
| | | wsMessage(res) { |
| | | if (res.code == 1) { |
| | | let optionData = { |
| | | data: [{ |
| | | value: 0, |
| | | name: '整流器交流异常' |
| | | }, |
| | | { |
| | | value: 0, |
| | | name: '整流器过流' |
| | | }, |
| | | { |
| | | value: 0, |
| | | name: '整流器总故障' |
| | | }, |
| | | { |
| | | value: 0, |
| | | name: '整流器欠压' |
| | | }, |
| | | { |
| | | value: 0, |
| | | name: '整流器过压' |
| | | }, |
| | | ] |
| | | } |
| | | }).catch((err) => { |
| | | console.log(err) |
| | | }); |
| | | let resData = res.data; |
| | | for (let key in resData) { |
| | | optionData.data.map(item => { |
| | | if (item.name == key) { |
| | | item.value = resData[key] |
| | | } |
| | | }) |
| | | } |
| | | this.$options.chartData = optionData; |
| | | this.organizeData(optionData) |
| | | } |
| | | }, |
| | | resize() { |
| | | setTimeout(() => { |
| | |
| | | this.setData(this.$options.chartData); |
| | | } |
| | | }, 300) |
| | | }, |
| | | outClear() { |
| | | this.websock.closeMyself() |
| | | this.websock = null |
| | | window.removeEventListener('resize', this.resize); |
| | | } |
| | | }, |
| | | mounted() { |
| | |
| | | window.addEventListener('resize', this.resize); |
| | | }, |
| | | destroyed() { |
| | | this.websock.closeMyself() |
| | | window.removeEventListener('resize', this.resize); |
| | | } |
| | | } |