修改环境大屏和机械分厂环境大屏 粉尘显示效果 固定 焊接,精饰 大件粉尘传感器devId

This commit is contained in:
hzz 2023-06-05 10:48:25 +08:00
parent d669e39c55
commit 873baee839
4 changed files with 378 additions and 299 deletions

View File

@ -9,7 +9,7 @@
*/
import { defineStore } from "pinia";
import { Names } from '@/store/storeName'
import {gettime,clacendTime} from "@/utils/time"
import { gettime, clacendTime } from "@/utils/time"
export const useSocketStore = defineStore(Names.socket, {
// 使用方式
// const Index= useIndexStore()
@ -172,17 +172,36 @@ export const useSocketStore = defineStore(Names.socket, {
* @函数备注:
*/
changePM(val) {
if (val.enName == 'welding') {
this.pm.welding.two = val.pm25
this.pm.welding.ten = val.pm10
} else if (val.enName == 'stuff') {
this.pm.stuff.two = val.pm25
this.pm.stuff.ten = val.pm10
} else if (val.enName == 'ornaments') {
this.pm.ornaments.two = val.pm25
this.pm.ornaments.ten = val.pm10
let arr = ['083e3900-3435-11ed-a7e1-fd42bca6c8c6', 'bcbfb530-88b2-11ed-a926-570995ad0254', '01336fd0-1fa0-11ed-9223-7db1174970a8']
// if (arr.indexOf(val.devId) > -1) {
// console.log(val,'这三个设备');
// }
if (val.devId == '083e3900-3435-11ed-a7e1-fd42bca6c8c6') {
this.pm.welding.two = val.pm25
this.pm.welding.ten = val.pm10
} else if (val.devId == 'bcbfb530-88b2-11ed-a926-570995ad0254') {
this.pm.ornaments.two = val.pm25
this.pm.ornaments.ten = val.pm10
} else if (val.devId == '01336fd0-1fa0-11ed-9223-7db1174970a8') {
this.pm.stuff.two = val.pm25
this.pm.stuff.ten = val.pm10
}
// if (val.enName == 'welding') {
// this.pm.welding.two = val.pm25
// this.pm.welding.ten = val.pm10
// } else if (val.enName == 'stuff') {
// this.pm.stuff.two = val.pm25
// this.pm.stuff.ten = val.pm10
// } else if (val.enName == 'ornaments') {
// this.pm.ornaments.two = val.pm25
// this.pm.ornaments.ten = val.pm10
// }
},
/**
* @函数功能:
@ -325,7 +344,7 @@ export const useSocketStore = defineStore(Names.socket, {
cIndex = this.newVerticalNum[pIndex].value.findIndex(item => item.name == val.data.name)
}
if (cIndex != -1) {
if (val.data.val>this.newVerticalNum[pIndex].limit) {
if (val.data.val > this.newVerticalNum[pIndex].limit) {
let now = new Date().getTime()
if (this.newVerticalNum[pIndex].value[cIndex].date == null) {
@ -335,7 +354,7 @@ export const useSocketStore = defineStore(Names.socket, {
let time = this.newVerticalNum[pIndex].value[cIndex].time
this.newVerticalNum[pIndex].value[cIndex].continuous = clacendTime(now,time)
this.newVerticalNum[pIndex].value[cIndex].continuous = clacendTime(now, time)
} else {
this.newVerticalNum[pIndex].value[cIndex].date = null
this.newVerticalNum[pIndex].value[cIndex].time = null

View File

@ -172,16 +172,16 @@ export const useSocketStore = defineStore(Names.socketjixiefenchang,{
* @函数备注:
*/
changePM(val){
if(val.enName=='welding'){
this.pm.welding.two=val.pm25
this.pm.welding.ten=val.pm10
}else if(val.enName=='stuff'){
this.pm.stuff.two=val.pm25
this.pm.stuff.ten=val.pm10
}else if(val.enName=='ornaments'){
this.pm.ornaments.two=val.pm25
this.pm.ornaments.ten=val.pm10
}
if (val.devId == '083e3900-3435-11ed-a7e1-fd42bca6c8c6') {
this.pm.welding.two = val.pm25
this.pm.welding.ten = val.pm10
} else if (val.devId == 'bcbfb530-88b2-11ed-a926-570995ad0254') {
this.pm.ornaments.two = val.pm25
this.pm.ornaments.ten = val.pm10
} else if (val.devId == '01336fd0-1fa0-11ed-9223-7db1174970a8') {
this.pm.stuff.two = val.pm25
this.pm.stuff.ten = val.pm10
}
},
/**

View File

@ -1,119 +1,121 @@
<template>
<div class="content-right">
<el-row >
<el-col :span="8">
<border2 ref="borderElectriccontrol">
<template v-slot>
<pm name="Electriccontrol" :title="t('messages.pmHanJie')" ref="refwelding"></pm>
</template>
</border2>
</el-col>
<el-col :span="8">
<border2 ref="borderfinish">
<template v-slot>
<pm name="finish" :title="t('messages.pmJingShi')" ref="refornaments"></pm>
</template>
</border2>
</el-col>
<el-col :span="8">
<border2 ref="borderlarge">
<template v-slot>
<pm name="large" :title="t('messages.pmDaJian')" ref="refstuff"></pm>
</template>
</border2>
</el-col>
</el-row>
<el-row >
<el-col :span="24">
<border2 ref="borderhumiture">
<template v-slot>
<humiture ref="Refhumiture"></humiture>
</template>
</border2>
</el-col>
</el-row>
</div>
</template>
<div class="content-right">
<el-row @click="toPmData">
<el-col :span="8">
<border2 ref="borderElectriccontrol">
<template v-slot>
<pm name="Electriccontrol" :title="t('messages.pmHanJie')" ref="refwelding"></pm>
</template>
</border2>
</el-col>
<el-col :span="8">
<border2 ref="borderfinish">
<template v-slot>
<pm name="finish" :title="t('messages.pmJingShi')" ref="refornaments"></pm>
</template>
</border2>
</el-col>
<el-col :span="8">
<border2 ref="borderlarge">
<template v-slot>
<pm name="large" :title="t('messages.pmDaJian')" ref="refstuff"></pm>
</template>
</border2>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<border2 ref="borderhumiture">
<template v-slot>
<humiture ref="Refhumiture"></humiture>
</template>
</border2>
</el-col>
</el-row>
</div>
</template>
<script setup lang="ts">
import border2 from "@/components/borderBox/border2.vue";
import pm from "./chart/pm.vue"
import humiture from './chart/humiture.vue'
import { calcWH } from "@/components/ts/selfAdaption";
import { getHumitureData,getPmtenData, getPmtwoData } from "@/http/generalEnvironment";
// import { getHumitureData,getPmtenData, getPmtwoData } from "@/http/environment";
import {onMounted, reactive, ref, watch} from "vue"
import { useSocketStore } from "@/store/moduleSocket"
import { useI18n } from 'vue-i18n'
let {t} = useI18n();
const store = useSocketStore()
let props=defineProps<{
width:number,
height:number,
}>()
<script setup lang="ts">
import border2 from "@/components/borderBox/border2.vue";
import pm from "./chart/pm.vue"
import humiture from './chart/humiture.vue'
import { calcWH } from "@/components/ts/selfAdaption";
import { getHumitureData, getPmtenData, getPmtwoData } from "@/http/generalEnvironment";
// import { getHumitureData,getPmtenData, getPmtwoData } from "@/http/environment";
import { onMounted, reactive, ref, watch } from "vue"
import { useSocketStore } from "@/store/moduleSocket"
import { useRouter } from "vue-router";
import { useI18n } from 'vue-i18n'
let { t } = useI18n();
const store = useSocketStore()
const router = useRouter()
let props = defineProps<{
width: number,
height: number,
}>()
watch(()=>props,(newVal, oldVal)=>{
//
reset(newVal)
},{immediate:true,deep:true,flush:'post'})
watch(() => props, (newVal, oldVal) => {
//
reset(newVal)
}, { immediate: true, deep: true, flush: 'post' })
//dom
let borderElectriccontrol=ref()
let borderfinish=ref()
let borderlarge=ref()
let borderhumiture=ref()
//dom
let borderElectriccontrol = ref()
let borderfinish = ref()
let borderlarge = ref()
let borderhumiture = ref()
//dom
let refwelding=ref()
let refornaments=ref()
let refstuff=ref()
let Refhumiture=ref()
function reset(val:any){
//0
if(!val.width && !val.height) return
let refwelding = ref()
let refornaments = ref()
let refstuff = ref()
let Refhumiture = ref()
function reset(val: any) {
//0
if (!val.width && !val.height) return
//
resetBorder()
//
threebox(val.width,val.height)
onebox(val.width,val.height)
}
const resetBorder=()=>{
borderElectriccontrol.value.resetWH()
borderfinish.value.resetWH()
borderlarge.value.resetWH()
borderhumiture.value.resetWH()
}
const threebox=(width:any,height:any)=>{
let a=calcWH(height,width,3,3,0)
//
refwelding.value.setchartWH(a.oWidth,a.oHeight)
refornaments.value.setchartWH(a.oWidth,a.oHeight)
refstuff.value.setchartWH(a.oWidth,a.oHeight)
//
resetBorder()
//
threebox(val.width, val.height)
onebox(val.width, val.height)
}
const onebox=(width:any,height:any)=>{
let a=calcWH(height,width,3,1,0)
const resetBorder = () => {
borderElectriccontrol.value.resetWH()
borderfinish.value.resetWH()
borderlarge.value.resetWH()
borderhumiture.value.resetWH()
}
const threebox = (width: any, height: any) => {
let a = calcWH(height, width, 3, 3, 0)
//
Refhumiture.value.setchartWH(a.oWidth,a.oHeight*2-49)
refwelding.value.setchartWH(a.oWidth, a.oHeight)
refornaments.value.setchartWH(a.oWidth, a.oHeight)
refstuff.value.setchartWH(a.oWidth, a.oHeight)
}
const onebox = (width: any, height: any) => {
let a = calcWH(height, width, 3, 1, 0)
//
Refhumiture.value.setchartWH(a.oWidth, a.oHeight * 2 - 49)
}
watch(
() => store.humiture,
(newVal, oldVal) => {
//echarts
// if(oldVal)
Refhumiture.value.setData(newVal,2)
Refhumiture.value.setData(newVal, 2)
},
{ deep: true, flush: "post" }
);
async function gethumitureData(){
let result:any = await getHumitureData({})
async function gethumitureData() {
let result: any = await getHumitureData({})
if(result.code==200){
Refhumiture.value.setData(result.data,1)
store.$patch((state)=>{
state.humiture=result.data
if (result.code == 200) {
Refhumiture.value.setData(result.data, 1)
store.$patch((state) => {
state.humiture = result.data
})
}
}
@ -126,9 +128,9 @@ watch(
() => store.pm,
(newVal, oldVal) => {
//echarts
refwelding.value.setData(newVal.welding,2)
refornaments.value.setData(newVal.ornaments,2)
refstuff.value.setData(newVal.stuff,2)
refwelding.value.setData(newVal.welding, 2)
refornaments.value.setData(newVal.ornaments, 2)
refstuff.value.setData(newVal.stuff, 2)
},
{ deep: true, flush: "post" }
);
@ -137,48 +139,75 @@ watch(
* @出口参数:
* @函数备注:
*/
async function getPmtwoDatafun(){
let resulttwo:any = await getPmtwoData()
if(resulttwo.code==200){
async function getPmtwoDatafun() {
let resulttwo: any = await getPmtwoData()
if (resulttwo.code == 200) {
return resulttwo
}
return false
}
async function getPmtenDatafun(){
let resultten:any = await getPmtenData()
if(resultten.code==200){
async function getPmtenDatafun() {
let resultten: any = await getPmtenData()
if (resultten.code == 200) {
return resultten
}
return false
}
async function getPmData(){
async function getPmData() {
// let resulttwo:any = await getPmtwoData()
// let resultten:any = await getPmtenData()
let data=reactive({welding:{two:null,ten:null},stuff:{two:null,ten:null},ornaments:{two:null,ten:null}})
Promise.all([getPmtwoDatafun(),getPmtenDatafun()]).then((res)=>{
if(res){
res[0].data.forEach(ele=>{
if(data[ele.enName]){
data[ele.enName].two=ele.value
}
// 083e3900-3435-11ed-a7e1-fd42bca6c8c6
// bcbfb530-88b2-11ed-a926-570995ad0254
// 01336fd0-1fa0-11ed-9223-7db1174970a8
let arr = ['01336fd0-1fa0-11ed-9223-7db1174970a8', '083e3900-3435-11ed-a7e1-fd42bca6c8c6', 'bcbfb530-88b2-11ed-a926-570995ad0254']
let data = reactive({ welding: { two: null, ten: null }, stuff: { two: null, ten: null }, ornaments: { two: null, ten: null } })
Promise.all([getPmtwoDatafun(), getPmtenDatafun()]).then((res) => {
if (res) {
res[0].data.forEach(ele => {
switch (ele.devId) {
case '083e3900-3435-11ed-a7e1-fd42bca6c8c6':
data.welding.two = ele.value
break;
case 'bcbfb530-88b2-11ed-a926-570995ad0254':
data.ornaments.two = ele.value
break;
case '01336fd0-1fa0-11ed-9223-7db1174970a8':
data.stuff.two = ele.value
break;
default:
break;
}
})
}
if(res){
res[1].data.forEach(ele=>{
if(data[ele.enName]){
data[ele.enName].ten=ele.value
}
if (res) {
res[1].data.forEach(ele => {
switch (ele.devId) {
case '083e3900-3435-11ed-a7e1-fd42bca6c8c6':
data.welding.ten = ele.value
break;
case 'bcbfb530-88b2-11ed-a926-570995ad0254':
data.ornaments.ten = ele.value
break;
case '01336fd0-1fa0-11ed-9223-7db1174970a8':
data.stuff.ten = ele.value
break;
default:
break;
}
})
}
refwelding.value.setData(data.welding,1)
refornaments.value.setData(data.ornaments,1)
refstuff.value.setData(data.stuff,1)
refwelding.value.setData(data.welding, 1)
refornaments.value.setData(data.ornaments, 1)
refstuff.value.setData(data.stuff, 1)
store.$patch((state)=>{
state.pm=data
})
store.$patch((state) => {
state.pm = data
})
})
// if(resulttwo.code==200){
@ -201,16 +230,19 @@ async function getPmData(){
}
onMounted(()=>{
function toPmData() {
router.push({ path: '/pmData' })
}
onMounted(() => {
gethumitureData()
getPmData()
})
</script>
</script>
<style scope>
.content-right{
width: 100%;
}
</style>
<style scope>
.content-right {
width: 100%;
}
</style>

View File

@ -1,120 +1,123 @@
<template>
<div class="content-right">
<el-row >
<el-col :span="8">
<border2 ref="borderElectriccontrol">
<template v-slot>
<pm name="Electriccontrol" :title="t('messages.pmHanJie')" ref="refwelding"></pm>
</template>
</border2>
</el-col>
<el-col :span="8">
<border2 ref="borderfinish">
<template v-slot>
<pm name="finish" :title="t('messages.pmJingShi')" ref="refornaments"></pm>
</template>
</border2>
</el-col>
<el-col :span="8">
<border2 ref="borderlarge">
<template v-slot>
<pm name="large" :title="t('messages.pmDaJian')" ref="refstuff"></pm>
</template>
</border2>
</el-col>
</el-row>
<el-row >
<el-col :span="24">
<border2 ref="borderhumiture">
<template v-slot>
<humiture ref="Refhumiture"></humiture>
</template>
</border2>
</el-col>
</el-row>
</div>
</template>
<div class="content-right">
<el-row @click="toPmData">
<el-col :span="8">
<border2 ref="borderElectriccontrol">
<template v-slot>
<pm name="Electriccontrol" :title="t('messages.pmHanJie')" ref="refwelding"></pm>
</template>
</border2>
</el-col>
<el-col :span="8">
<border2 ref="borderfinish">
<template v-slot>
<pm name="finish" :title="t('messages.pmJingShi')" ref="refornaments"></pm>
</template>
</border2>
</el-col>
<el-col :span="8">
<border2 ref="borderlarge">
<template v-slot>
<pm name="large" :title="t('messages.pmDaJian')" ref="refstuff"></pm>
</template>
</border2>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<border2 ref="borderhumiture">
<template v-slot>
<humiture ref="Refhumiture"></humiture>
</template>
</border2>
</el-col>
</el-row>
</div>
</template>
<script setup lang="ts">
import border2 from "@/components/borderBox/border2.vue";
import pm from "./chart/pm.vue"
import humiture from './chart/humiture.vue'
import { calcWH } from "@/components/ts/selfAdaption";
import { getHumitureData,getPmtenData, getPmtwoData } from "@/http/generalEnvironment";
// import { getHumitureData,getPmtenData, getPmtwoData } from "@/http/environment";
import {onMounted, ref, watch} from "vue"
import { useSocketStore } from "@/store/moduleSocketjixie";
import { useI18n } from 'vue-i18n'
let {t} = useI18n();
const store = useSocketStore()
let props=defineProps<{
width:number,
height:number,
}>()
<script setup lang="ts">
import border2 from "@/components/borderBox/border2.vue";
import pm from "./chart/pm.vue"
import humiture from './chart/humiture.vue'
import { calcWH } from "@/components/ts/selfAdaption";
import { getHumitureData, getPmtenData, getPmtwoData } from "@/http/generalEnvironment";
// import { getHumitureData,getPmtenData, getPmtwoData } from "@/http/environment";
import { onMounted, ref, watch } from "vue"
import { useRouter } from "vue-router";
import { useSocketStore } from "@/store/moduleSocketjixie";
import { useI18n } from 'vue-i18n'
let { t } = useI18n();
watch(()=>props,(newVal, oldVal)=>{
//
reset(newVal)
},{immediate:true,deep:true,flush:'post'})
const router = useRouter()
const store = useSocketStore()
let props = defineProps<{
width: number,
height: number,
}>()
//dom
let borderElectriccontrol=ref()
let borderfinish=ref()
let borderlarge=ref()
let borderhumiture=ref()
watch(() => props, (newVal, oldVal) => {
//
reset(newVal)
}, { immediate: true, deep: true, flush: 'post' })
//dom
let borderElectriccontrol = ref()
let borderfinish = ref()
let borderlarge = ref()
let borderhumiture = ref()
//dom
let refwelding=ref()
let refornaments=ref()
let refstuff=ref()
let Refhumiture=ref()
function reset(val:any){
//0
if(!val.width && !val.height) return
let refwelding = ref()
let refornaments = ref()
let refstuff = ref()
let Refhumiture = ref()
function reset(val: any) {
//0
if (!val.width && !val.height) return
//
resetBorder()
//
threebox(val.width,val.height)
onebox(val.width,val.height)
}
const resetBorder=()=>{
borderElectriccontrol.value.resetWH()
borderfinish.value.resetWH()
borderlarge.value.resetWH()
borderhumiture.value.resetWH()
}
const threebox=(width:any,height:any)=>{
let a=calcWH(height,width,3,3,0)
//
refwelding.value.setchartWH(a.oWidth,a.oHeight)
refornaments.value.setchartWH(a.oWidth,a.oHeight)
refstuff.value.setchartWH(a.oWidth,a.oHeight)
//
resetBorder()
//
threebox(val.width, val.height)
onebox(val.width, val.height)
}
const onebox=(width:any,height:any)=>{
let a=calcWH(height,width,3,1,0)
const resetBorder = () => {
borderElectriccontrol.value.resetWH()
borderfinish.value.resetWH()
borderlarge.value.resetWH()
borderhumiture.value.resetWH()
}
const threebox = (width: any, height: any) => {
let a = calcWH(height, width, 3, 3, 0)
//
Refhumiture.value.setchartWH(a.oWidth,a.oHeight*2-49)
refwelding.value.setchartWH(a.oWidth, a.oHeight)
refornaments.value.setchartWH(a.oWidth, a.oHeight)
refstuff.value.setchartWH(a.oWidth, a.oHeight)
}
const onebox = (width: any, height: any) => {
let a = calcWH(height, width, 3, 1, 0)
//
Refhumiture.value.setchartWH(a.oWidth, a.oHeight * 2 - 49)
}
watch(
() => store.humiture,
(newVal, oldVal) => {
//echarts
// if(oldVal)
Refhumiture.value.setData(newVal,2)
Refhumiture.value.setData(newVal, 2)
},
{ deep: true, flush: "post" }
);
async function gethumitureData(){
let pageValue='6,7,9,10,11'
let result:any = await getHumitureData({deptIds:pageValue})
async function gethumitureData() {
let pageValue = '6,7,9,10,11'
let result: any = await getHumitureData({ deptIds: pageValue })
if(result.code==200){
Refhumiture.value.setData(result.data,1)
store.$patch((state)=>{
state.humiture=result.data
if (result.code == 200) {
Refhumiture.value.setData(result.data, 1)
store.$patch((state) => {
state.humiture = result.data
})
}
}
@ -127,9 +130,9 @@ watch(
() => store.pm,
(newVal, oldVal) => {
//echarts
refwelding.value.setData(newVal.welding,2)
refornaments.value.setData(newVal.ornaments,2)
refstuff.value.setData(newVal.stuff,2)
refwelding.value.setData(newVal.welding, 2)
refornaments.value.setData(newVal.ornaments, 2)
refstuff.value.setData(newVal.stuff, 2)
},
{ deep: true, flush: "post" }
);
@ -138,46 +141,71 @@ watch(
* @出口参数:
* @函数备注:
*/
async function getPmData(){
let resulttwo:any = await getPmtwoData()
let resultten:any = await getPmtenData()
let data={welding:{two:null,ten:null},stuff:{two:null,ten:null},ornaments:{two:null,ten:null}}
if(resulttwo.code==200){
resulttwo.data.forEach(res=>{
if(data[res.enName]){
data[res.enName].two=res.value
async function getPmData() {
let resulttwo: any = await getPmtwoData()
let resultten: any = await getPmtenData()
let data = { welding: { two: null, ten: null }, stuff: { two: null, ten: null }, ornaments: { two: null, ten: null } }
if (resulttwo) {
resulttwo.data.forEach(ele => {
switch (ele.devId) {
case '083e3900-3435-11ed-a7e1-fd42bca6c8c6':
data.welding.two = ele.value
break;
case 'bcbfb530-88b2-11ed-a926-570995ad0254':
data.ornaments.two = ele.value
break;
case '01336fd0-1fa0-11ed-9223-7db1174970a8':
data.stuff.two = ele.value
break;
default:
break;
}
})
}
if(resultten.code==200){
resultten.data.forEach(res=>{
if(data[res.enName]){
data[res.enName].ten=res.value
}
})
}
refwelding.value.setData(data.welding,1)
refornaments.value.setData(data.ornaments,1)
refstuff.value.setData(data.stuff,1)
if (resultten) {
resultten.data.forEach(ele => {
switch (ele.devId) {
case '083e3900-3435-11ed-a7e1-fd42bca6c8c6':
data.welding.ten = ele.value
break;
case 'bcbfb530-88b2-11ed-a926-570995ad0254':
data.ornaments.ten = ele.value
break;
case '01336fd0-1fa0-11ed-9223-7db1174970a8':
data.stuff.ten = ele.value
break;
default:
break;
}
})
}
refwelding.value.setData(data.welding, 1)
refornaments.value.setData(data.ornaments, 1)
refstuff.value.setData(data.stuff, 1)
store.$patch((state)=>{
state.pm=data
store.$patch((state) => {
state.pm = data
})
}
onMounted(()=>{
function toPmData() {
router.push({ path: '/pmData' })
}
onMounted(() => {
gethumitureData()
getPmData()
})
</script>
</script>
<style scope>
.content-right{
width: 100%;
}
</style>
<style scope>
.content-right {
width: 100%;
}
</style>