修改
机械分厂设备大屏 隐藏故障率
This commit is contained in:
parent
44fa4b00fe
commit
c4d68a6771
@ -2,119 +2,119 @@ import { ref, computed } from 'vue'
|
|||||||
import { Names } from "@/store/storeName";
|
import { Names } from "@/store/storeName";
|
||||||
import { defineStore } from 'pinia'
|
import { defineStore } from 'pinia'
|
||||||
// import { sensor, shuiyaData } from '@/utils/sensor'
|
// import { sensor, shuiyaData } from '@/utils/sensor'
|
||||||
import {newPoint} from '@/mock/newPoint'
|
import { newPoint } from '@/mock/newPoint'
|
||||||
|
|
||||||
export const useFactoryStore = defineStore(Names.Factory, () => {
|
export const useFactoryStore = defineStore(Names.Factory, () => {
|
||||||
const sensorList =ref<any>([]) //ref<any>(JSON.parse(localStorage.getItem('sensorList') || '[]'))
|
const sensorList = ref<any>([]) //ref<any>(JSON.parse(localStorage.getItem('sensorList') || '[]'))
|
||||||
const objSensor = {}
|
const objSensor = {}
|
||||||
const devdataList = ref<any>([])
|
const devdataList = ref<any>([])
|
||||||
//要更新的传感器数据
|
//要更新的传感器数据
|
||||||
const updateSensorData= ref<any>({})
|
const updateSensorData = ref<any>({})
|
||||||
//传感器数量列表
|
//传感器数量列表
|
||||||
const temp_iconList = [
|
const temp_iconList = [
|
||||||
{
|
{
|
||||||
id: 1,
|
id: 1,
|
||||||
name: "icon-icon-temperature",
|
name: "icon-icon-temperature",
|
||||||
i18n:'messages.humitureSensor',
|
i18n: 'messages.humitureSensor',
|
||||||
value: "温湿度传感器",
|
value: "温湿度传感器",
|
||||||
iconType:"温湿度",
|
iconType: "温湿度",
|
||||||
counts: 0,
|
counts: 0,
|
||||||
allnum: 0,
|
allnum: 0,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 2,
|
id: 2,
|
||||||
name: "icon-shengyin",
|
name: "icon-shengyin",
|
||||||
i18n:'messages.noiseSensor',
|
i18n: 'messages.noiseSensor',
|
||||||
value: "噪音传感器",
|
value: "噪音传感器",
|
||||||
iconType:"噪音",
|
iconType: "噪音",
|
||||||
counts: 0,
|
counts: 0,
|
||||||
allnum: 0,
|
allnum: 0,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 3,
|
id: 3,
|
||||||
name: "icon-dianliu",
|
name: "icon-dianliu",
|
||||||
i18n:'messages.powerSensor',
|
i18n: 'messages.powerSensor',
|
||||||
value: "电力传感器",
|
value: "电力传感器",
|
||||||
iconType:"电力",
|
iconType: "电力",
|
||||||
counts: 0,
|
counts: 0,
|
||||||
allnum: 0,
|
allnum: 0,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 4,
|
id: 4,
|
||||||
name: "icon-weibiaoti1",
|
name: "icon-weibiaoti1",
|
||||||
i18n:'messages.sparkSensor',
|
i18n: 'messages.sparkSensor',
|
||||||
value: "火花传感器",
|
value: "火花传感器",
|
||||||
iconType:"火花",
|
iconType: "火花",
|
||||||
counts: 0,
|
counts: 0,
|
||||||
allnum: 0,
|
allnum: 0,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 5,
|
id: 5,
|
||||||
name: "icon-fenchen",
|
name: "icon-fenchen",
|
||||||
i18n:'messages.dustSensor',
|
i18n: 'messages.dustSensor',
|
||||||
value: "粉尘传感器",
|
value: "粉尘传感器",
|
||||||
iconType:"粉尘",
|
iconType: "粉尘",
|
||||||
counts: 0,
|
counts: 0,
|
||||||
allnum: 0,
|
allnum: 0,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 6,
|
id: 6,
|
||||||
name: "icon-app_icons--",
|
name: "icon-app_icons--",
|
||||||
i18n:'messages.TVOC_CH2OSensor',
|
i18n: 'messages.TVOC_CH2OSensor',
|
||||||
value: "TVOC/甲醛传感器",
|
value: "TVOC/甲醛传感器",
|
||||||
iconType:"TVOC/甲醛",
|
iconType: "TVOC/甲醛",
|
||||||
counts: 0,
|
counts: 0,
|
||||||
allnum: 0,
|
allnum: 0,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 7,
|
id: 7,
|
||||||
name: "icon-yanwubaojingqi",
|
name: "icon-yanwubaojingqi",
|
||||||
i18n:'messages.smokeSensor',
|
i18n: 'messages.smokeSensor',
|
||||||
value: "烟雾传感器",
|
value: "烟雾传感器",
|
||||||
iconType:"烟雾",
|
iconType: "烟雾",
|
||||||
counts: 0,
|
counts: 0,
|
||||||
allnum: 0,
|
allnum: 0,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 8,
|
id: 8,
|
||||||
name: "icon-ranqi",
|
name: "icon-ranqi",
|
||||||
i18n:'messages.gasSensor',
|
i18n: 'messages.gasSensor',
|
||||||
value: "燃气传感器",
|
value: "燃气传感器",
|
||||||
iconType:"燃气",
|
iconType: "燃气",
|
||||||
counts: 0,
|
counts: 0,
|
||||||
allnum: 0,
|
allnum: 0,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 9,
|
id: 9,
|
||||||
name: "icon-shuiya",
|
name: "icon-shuiya",
|
||||||
i18n:'messages.waterPressureSensor',
|
i18n: 'messages.waterPressureSensor',
|
||||||
value: "水压传感器",
|
value: "水压传感器",
|
||||||
iconType:"水压",
|
iconType: "水压",
|
||||||
counts: 0,
|
counts: 0,
|
||||||
allnum: 0,
|
allnum: 0,
|
||||||
},{
|
}, {
|
||||||
id: 10,
|
id: 10,
|
||||||
name: "icon-qiya",
|
name: "icon-qiya",
|
||||||
i18n:'messages.gasPressureSensor',
|
i18n: 'messages.gasPressureSensor',
|
||||||
value: "气压传感器",
|
value: "气压传感器",
|
||||||
iconType:"气压",
|
iconType: "气压",
|
||||||
counts: 0,
|
counts: 0,
|
||||||
allnum: 0,
|
allnum: 0,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 11,
|
id: 11,
|
||||||
name: "icon-beikongshuiwupingtaimenhu-tubiao_zhinengwangguan",
|
name: "icon-beikongshuiwupingtaimenhu-tubiao_zhinengwangguan",
|
||||||
i18n:'messages.gateway',
|
i18n: 'messages.gateway',
|
||||||
value: "网关",
|
value: "网关",
|
||||||
iconType:"网关",
|
iconType: "网关",
|
||||||
counts: 0,
|
counts: 0,
|
||||||
allnum: 0,
|
allnum: 0,
|
||||||
},
|
},
|
||||||
]
|
]
|
||||||
const temp_devList = [ {
|
const temp_devList = [{
|
||||||
id: 1,
|
id: 1,
|
||||||
name: "icon-shebeiditu",
|
name: "icon-shebeiditu",
|
||||||
i18n:'messages.Dev',
|
i18n: 'messages.Dev',
|
||||||
value: "设备",
|
value: "设备",
|
||||||
counts: 0,
|
counts: 0,
|
||||||
allnum: 0,
|
allnum: 0,
|
||||||
@ -124,29 +124,29 @@ export const useFactoryStore = defineStore(Names.Factory, () => {
|
|||||||
const devList = ref(JSON.parse(JSON.stringify(temp_devList)))
|
const devList = ref(JSON.parse(JSON.stringify(temp_devList)))
|
||||||
|
|
||||||
//更新传感器数据方法
|
//更新传感器数据方法
|
||||||
const updateSensorList= (data:any) => {
|
const updateSensorList = (data: any) => {
|
||||||
// console.log(objSensor,'updateSensorList');
|
// console.log(objSensor,'updateSensorList');
|
||||||
// objSensor.hasOwnProperty(data.id) && (objSensor[data.id].status = data.status)
|
// objSensor.hasOwnProperty(data.id) && (objSensor[data.id].status = data.status)
|
||||||
data.status = data.status === 'true' ? true : false
|
data.status = data.status === 'true' ? true : false
|
||||||
if (objSensor.hasOwnProperty(data.id)&&objSensor[data.id].status != data.status) {
|
if (objSensor.hasOwnProperty(data.id) && objSensor[data.id].status != data.status) {
|
||||||
objSensor[data.id].status = data.status
|
objSensor[data.id].status = data.status
|
||||||
updateSensorData.value[data.id] = objSensor[data.id]
|
updateSensorData.value[data.id] = objSensor[data.id]
|
||||||
}
|
}
|
||||||
// updateSensorData.value[data.id] = data
|
// updateSensorData.value[data.id] = data
|
||||||
}
|
}
|
||||||
//更新后清除 更新传感器数据
|
//更新后清除 更新传感器数据
|
||||||
const clearupdateSensorData= () => {
|
const clearupdateSensorData = () => {
|
||||||
updateSensorData.value = {}
|
updateSensorData.value = {}
|
||||||
}
|
}
|
||||||
|
|
||||||
const setDataList = (sensor:any) => {
|
const setDataList = (sensor: any) => {
|
||||||
const data:any[] = []
|
const data: any[] = []
|
||||||
sensorList.value = []
|
sensorList.value = []
|
||||||
iconList.value = JSON.parse(JSON.stringify(temp_iconList))
|
iconList.value = JSON.parse(JSON.stringify(temp_iconList))
|
||||||
|
|
||||||
for(let i in sensor) {
|
for (let i in sensor) {
|
||||||
let iconListKey = iconList.value.findIndex(item=>item.iconType == i)
|
let iconListKey = iconList.value.findIndex(item => item.iconType == i)
|
||||||
let items = sensor[i].map((item:any)=>{
|
let items = sensor[i].map((item: any) => {
|
||||||
item.icon = i
|
item.icon = i
|
||||||
//传感器数量
|
//传感器数量
|
||||||
iconList.value[iconListKey].allnum++
|
iconList.value[iconListKey].allnum++
|
||||||
@ -158,9 +158,9 @@ export const useFactoryStore = defineStore(Names.Factory, () => {
|
|||||||
})
|
})
|
||||||
data.push(...items)
|
data.push(...items)
|
||||||
}
|
}
|
||||||
let newData:object[] = []
|
let newData: object[] = []
|
||||||
data.forEach(item => {
|
data.forEach(item => {
|
||||||
let {id, x, y, name, status,icon } = item
|
let { id, x, y, name, status, icon } = item
|
||||||
if (x !== 0 && y !== 0) {
|
if (x !== 0 && y !== 0) {
|
||||||
const listItem = {
|
const listItem = {
|
||||||
id,
|
id,
|
||||||
@ -181,10 +181,10 @@ export const useFactoryStore = defineStore(Names.Factory, () => {
|
|||||||
//localStorage.setItem('sensorList', JSON.stringify(newData))
|
//localStorage.setItem('sensorList', JSON.stringify(newData))
|
||||||
sensorList.value = newData;
|
sensorList.value = newData;
|
||||||
}
|
}
|
||||||
const setdevList = (data:any) => {
|
const setdevList = (data: any) => {
|
||||||
devList.value = JSON.parse(JSON.stringify(temp_devList))
|
devList.value = JSON.parse(JSON.stringify(temp_devList))
|
||||||
devdataList.value = []
|
devdataList.value = []
|
||||||
for(let i in data) {
|
for (let i in data) {
|
||||||
data[i].forEach(element => {
|
data[i].forEach(element => {
|
||||||
element.icon = '设备'
|
element.icon = '设备'
|
||||||
element.status = element.status === 'true' ? true : false
|
element.status = element.status === 'true' ? true : false
|
||||||
@ -207,9 +207,9 @@ export const useFactoryStore = defineStore(Names.Factory, () => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
//保存新点位坐标
|
//保存新点位坐标
|
||||||
function saveNewPoint(id:string,x:number,y:number) {
|
function saveNewPoint(id: string, x: number, y: number) {
|
||||||
newPoint.value[id] = {x,y}
|
newPoint.value[id] = { x, y }
|
||||||
}
|
}
|
||||||
|
|
||||||
return { sensorList,devdataList,devList,iconList,updateSensorData,updateSensorList,clearupdateSensorData,setDataList,setdevList,saveNewPoint }
|
return { sensorList, devdataList, devList, iconList, updateSensorData, updateSensorList, clearupdateSensorData, setDataList, setdevList, saveNewPoint }
|
||||||
})
|
})
|
||||||
|
@ -92,7 +92,7 @@ let devFaultTipData = ref([])
|
|||||||
let devStatusTipData = ref([])
|
let devStatusTipData = ref([])
|
||||||
let ringData = ref([])
|
let ringData = ref([])
|
||||||
let scrollBoardConfig = reactive({
|
let scrollBoardConfig = reactive({
|
||||||
header: ['序号', '设备名称', '所属车间', '设备状态', '稼动率', '故障率'],
|
header: ['序号', '设备名称', '所属车间', '设备状态', '稼动率'],//, '故障率'
|
||||||
headerBGC: 'rgb(52, 105, 243)',
|
headerBGC: 'rgb(52, 105, 243)',
|
||||||
oddRowBGC: '#100c2a',
|
oddRowBGC: '#100c2a',
|
||||||
evenRowBGC: '#100c2a',
|
evenRowBGC: '#100c2a',
|
||||||
@ -172,7 +172,7 @@ async function reqDeviceTotelListMFfun() {
|
|||||||
item.dept,
|
item.dept,
|
||||||
compare[item.status] ? compare[item.status] : '停机',
|
compare[item.status] ? compare[item.status] : '停机',
|
||||||
item.activation + '%',
|
item.activation + '%',
|
||||||
item.failure + '%'
|
// item.failure + '%'
|
||||||
]
|
]
|
||||||
})
|
})
|
||||||
scrollBoardConfig.rawData = result.data;
|
scrollBoardConfig.rawData = result.data;
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
<div class="container">
|
<div class="container">
|
||||||
<dv-border-box-6 :color="['#20aec5', '#20aec5']">
|
<dv-border-box-6 :color="['#20aec5', '#20aec5']">
|
||||||
<div class="content">
|
<div class="content">
|
||||||
<div class="status online">{{ prop.data.status }}</div>
|
<div class="status" :class="statusClass">{{ prop.data.status }}</div>
|
||||||
<div class="right-top">
|
<div class="right-top">
|
||||||
<div class="num">{{ prop.data.count }}</div>
|
<div class="num">{{ prop.data.count }}</div>
|
||||||
<div class="name">当日总针数</div>
|
<div class="name">当日总针数</div>
|
||||||
@ -19,7 +19,7 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup lang='ts'>
|
<script setup lang='ts'>
|
||||||
import { getCurrentInstance, ref, onMounted,watch } from 'vue';
|
import { getCurrentInstance, ref, onMounted,watch, computed } from 'vue';
|
||||||
const { proxy } = getCurrentInstance()! as any;
|
const { proxy } = getCurrentInstance()! as any;
|
||||||
const chart = ref(null);
|
const chart = ref(null);
|
||||||
let myChart: any = null;
|
let myChart: any = null;
|
||||||
@ -41,6 +41,11 @@ const prop = defineProps({
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
let statusClass = computed(() => {
|
||||||
|
return prop.data.status == '在线' ? 'online' : 'outline'
|
||||||
|
})
|
||||||
|
|
||||||
const init = () => {
|
const init = () => {
|
||||||
if (!myChart) {
|
if (!myChart) {
|
||||||
myChart = proxy.$echarts.init(chart.value);
|
myChart = proxy.$echarts.init(chart.value);
|
||||||
|
Loading…
Reference in New Issue
Block a user