main
			
			
		
		
							parent
							
								
									80642b31c3
								
							
						
					
					
						commit
						524f74f87e
					
				
										
											Binary file not shown.
										
									
								
							| 
		 After Width: | Height: | Size: 1.5 KiB  | 
| 
						 | 
				
			
			@ -248,6 +248,10 @@ aside {
 | 
			
		|||
  .el-table__inner-wrapper::after,
 | 
			
		||||
  .el-table__inner-wrapper::before {
 | 
			
		||||
    background-color: #00174b !important;
 | 
			
		||||
    color: #fff !important
 | 
			
		||||
    color: #fff !important;
 | 
			
		||||
    
 | 
			
		||||
  }
 | 
			
		||||
  .el-table {
 | 
			
		||||
    border: 1px solid #2E6099 !important;
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -1,16 +1,32 @@
 | 
			
		|||
<template>
 | 
			
		||||
    <div>
 | 
			
		||||
    <div class="check-div">
 | 
			
		||||
        <div class="device-list">
 | 
			
		||||
            <div v-for="(item, index) of deviceList" :key="index">
 | 
			
		||||
                <el-icon size="60" color="#1890ff" v-if="index == 0">
 | 
			
		||||
                    <Suitcase />
 | 
			
		||||
                </el-icon>
 | 
			
		||||
                <el-icon size="60" color="#1890ff" v-if="index == 1">
 | 
			
		||||
                    <TakeawayBox />
 | 
			
		||||
                </el-icon>
 | 
			
		||||
                <el-icon size="60" color="#1890ff" v-if="index == 2">
 | 
			
		||||
                    <Box />
 | 
			
		||||
                </el-icon>
 | 
			
		||||
                <font class="num" :style="{ 'color': item.color }">{{ item.num }}</font>
 | 
			
		||||
                <span>{{ item.name }}</span>
 | 
			
		||||
            </div>
 | 
			
		||||
        </div>
 | 
			
		||||
        <el-table :data="checkArr" border style="width: 100%" height="320">
 | 
			
		||||
            <el-table-column label="序号" width="60" type="index" align="center"></el-table-column>
 | 
			
		||||
            <el-table-column prop="name" label="设备名称" align="center" />
 | 
			
		||||
            <el-table-column prop="isPass" label="巡检结果" align="center">
 | 
			
		||||
                <template #default="scope">
 | 
			
		||||
                    <span :style="{'color': scope.row.isPass? '#0dbc79' : '#e03528'}">{{ scope.row.isPass ? '通过' : '不通过' }}</span>
 | 
			
		||||
                    <span :style="{ 'color': scope.row.isPass ? '#0dbc79' : '#e03528' }">{{ scope.row.isPass ? '通过' : '不通过'
 | 
			
		||||
                    }}</span>
 | 
			
		||||
                </template>
 | 
			
		||||
            </el-table-column>
 | 
			
		||||
            <el-table-column label="巡检时间" align="center">
 | 
			
		||||
                <template #default="scope">
 | 
			
		||||
                    {{ scope.row.isPass ? '2023-12-23': '2023-01-11' }}
 | 
			
		||||
                    {{ scope.row.isPass ? '2023-12-23' : '2023-01-11' }}
 | 
			
		||||
                </template>
 | 
			
		||||
            </el-table-column>
 | 
			
		||||
        </el-table>
 | 
			
		||||
| 
						 | 
				
			
			@ -18,8 +34,63 @@
 | 
			
		|||
</template>
 | 
			
		||||
<script setup>
 | 
			
		||||
import bimStore from '@/store/modules/bim';
 | 
			
		||||
import IconBy from '@/assets/images/icon-by.png';
 | 
			
		||||
import IconWx from '@/assets/images/icon-wx.png';
 | 
			
		||||
import IconXj from '@/assets/images/icon-xj.png';
 | 
			
		||||
import IconPd from '@/assets/images/icon-pd.png';
 | 
			
		||||
import { computed } from 'vue';
 | 
			
		||||
const deviceList = [
 | 
			
		||||
    {
 | 
			
		||||
        name: '巡检总数',
 | 
			
		||||
        num: '4',
 | 
			
		||||
        color: '#fff',
 | 
			
		||||
        imgUrl: IconPd,
 | 
			
		||||
        icon: 'Suitcase'
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
        name: '通过数',
 | 
			
		||||
        num: '2',
 | 
			
		||||
        color: '#fff',
 | 
			
		||||
        imgUrl: IconWx,
 | 
			
		||||
        icon: 'TakeawayBox'
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
        name: '未通过数',
 | 
			
		||||
        num: '2',
 | 
			
		||||
        color: '#fff',
 | 
			
		||||
        imgUrl: IconXj,
 | 
			
		||||
        icon: 'Box'
 | 
			
		||||
    }
 | 
			
		||||
]
 | 
			
		||||
const checkArr = computed(() =>
 | 
			
		||||
  bimStore().checkArr
 | 
			
		||||
    bimStore().checkArr
 | 
			
		||||
);
 | 
			
		||||
</script>
 | 
			
		||||
</script>
 | 
			
		||||
<style lang="scss" scoped>
 | 
			
		||||
.check-div {
 | 
			
		||||
    .device-list {
 | 
			
		||||
        width: 100%;
 | 
			
		||||
        height: 100%;
 | 
			
		||||
        display: flex;
 | 
			
		||||
        justify-content: space-around;
 | 
			
		||||
        align-items: center;
 | 
			
		||||
        border: 1px solid #2E6099;
 | 
			
		||||
        margin-bottom: 15px;
 | 
			
		||||
        border-radius: 4px;
 | 
			
		||||
 | 
			
		||||
        >div {
 | 
			
		||||
            width: 24%;
 | 
			
		||||
            height: 80%;
 | 
			
		||||
            // border: 1px solid red;
 | 
			
		||||
            display: flex;
 | 
			
		||||
            flex-direction: column;
 | 
			
		||||
            align-items: center;
 | 
			
		||||
            padding: 10px 0;
 | 
			
		||||
            color: #fff;
 | 
			
		||||
 | 
			
		||||
            .num {
 | 
			
		||||
                font-size: 36px;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}</style>
 | 
			
		||||
| 
						 | 
				
			
			@ -13,7 +13,7 @@
 | 
			
		|||
                    style="width: 100%;height:100%"></div>
 | 
			
		||||
            </div>
 | 
			
		||||
            <div class="bottom-div">
 | 
			
		||||
                <el-table :data="tableData" border style="width: 100%" height="420">
 | 
			
		||||
                <el-table :data="tableData" border style="width: 100%" height="445">
 | 
			
		||||
                    <el-table-column label="序号" width="60" type="index" align="center"></el-table-column>
 | 
			
		||||
                    <el-table-column prop="name" label="名称" align="center" />
 | 
			
		||||
                    <el-table-column prop="num" label="编码" align="center" />
 | 
			
		||||
| 
						 | 
				
			
			@ -460,7 +460,7 @@ const viewDetail = (val) => {
 | 
			
		|||
 | 
			
		||||
        .bottom-div {
 | 
			
		||||
            height: 74%;
 | 
			
		||||
            border: 1px solid #2E6099;
 | 
			
		||||
            // border: 1px solid #2E6099;
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -177,6 +177,9 @@ const loadSence = () => {
 | 
			
		|||
            if (enableGroup.indexOf(e.name) != -1) {
 | 
			
		||||
                xfobj.push(e);
 | 
			
		||||
            }
 | 
			
		||||
            if (yjGroup.indexOf(e.name) != -1) {
 | 
			
		||||
                yjobj.push(e);
 | 
			
		||||
            }
 | 
			
		||||
        })
 | 
			
		||||
        // 设置漫游点位
 | 
			
		||||
        const objname = ['start', 'middle1', 'middle2', 'end']
 | 
			
		||||
| 
						 | 
				
			
			@ -254,6 +257,10 @@ const enableGroup = [
 | 
			
		|||
    'T11',// 立仓
 | 
			
		||||
    'T12'
 | 
			
		||||
]
 | 
			
		||||
// 预警设备
 | 
			
		||||
const yjGroup = [
 | 
			
		||||
    'T11',
 | 
			
		||||
]
 | 
			
		||||
const isSelent = (obj) => {
 | 
			
		||||
    var o = obj
 | 
			
		||||
    while (true) {
 | 
			
		||||
| 
						 | 
				
			
			@ -377,17 +384,18 @@ const cleanColor = () => {
 | 
			
		|||
}
 | 
			
		||||
// 预警
 | 
			
		||||
const warn = () => {
 | 
			
		||||
    ['T3', 'T4', 'T5', 'T6', 'T7', 'T8', 'T9', 'T10', 'T11', 'T12'].forEach(item => {
 | 
			
		||||
    ['T11'].forEach(item => {
 | 
			
		||||
        warnSets.push(scene.getObjectByName(item));
 | 
			
		||||
    })
 | 
			
		||||
 | 
			
		||||
    warnSets[2].traverse(e => {
 | 
			
		||||
    warnSets[0].traverse(e => {
 | 
			
		||||
        e.material = new THREE.MeshBasicMaterial({
 | 
			
		||||
            transparent: true,
 | 
			
		||||
            opacity: 0.9,
 | 
			
		||||
            color: new THREE.Color('rgb( 237,33,2 )')
 | 
			
		||||
        });
 | 
			
		||||
    })
 | 
			
		||||
    yjf();
 | 
			
		||||
 | 
			
		||||
    // animateCamera(warnSets[0]);
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -591,12 +599,22 @@ const xiaof = () => {
 | 
			
		|||
        xfadd(o, Math.random() < 0.3);
 | 
			
		||||
    })
 | 
			
		||||
}
 | 
			
		||||
// 预警
 | 
			
		||||
const yjf = () => {
 | 
			
		||||
    yjobj.forEach((o) => {
 | 
			
		||||
        xfadd(o, 'yj');
 | 
			
		||||
    })
 | 
			
		||||
}
 | 
			
		||||
let xfobj = [];
 | 
			
		||||
let yjobj = [];
 | 
			
		||||
// 消防标签
 | 
			
		||||
const xfadd = (obj, state) => {
 | 
			
		||||
    const texLoader = new THREE.TextureLoader();
 | 
			
		||||
    let texture = null;
 | 
			
		||||
    if (state) {
 | 
			
		||||
    if(state == 'yj') {
 | 
			
		||||
        texture = texLoader.load("/yj.png");
 | 
			
		||||
    }
 | 
			
		||||
    else if (state) {
 | 
			
		||||
        texture = texLoader.load("/ygr.png");
 | 
			
		||||
    } else {
 | 
			
		||||
        texture = texLoader.load("/yg.png");
 | 
			
		||||
| 
						 | 
				
			
			@ -825,6 +843,9 @@ const checkComplete = () => {
 | 
			
		|||
}
 | 
			
		||||
.arrow_outer {
 | 
			
		||||
    display: flex;
 | 
			
		||||
    
 | 
			
		||||
    flex-direction: column;
 | 
			
		||||
    >div {
 | 
			
		||||
        line-height: 24px;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
</style>
 | 
			
		||||
		Loading…
	
		Reference in New Issue