123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125 |
- <template>
- <div class="_runnings">
- <HeadlineTag value="行为检测(周)"></HeadlineTag>
- <div class="_runnings_mains" :style="{ '--heightSume': heightcon + 'px' }">
- <div class="_runnings_mains_left" id="sumeWidth">
- <div class="_runnings_mains_left_tuan tuan1"></div>
- <div class="_runnings_mains_left_conter">
- <div class="_runnings_mains_left_conter_num">{{ resultData.OverloadWarning || 0 }}</div>
- <div class="_runnings_mains_left_conter_text">超载预警</div>
- </div>
- </div>
- <div class="_runnings_mains_left">
- <div class="_runnings_mains_left_tuan tuan2"></div>
- <div class="_runnings_mains_left_conter">
- <div class="_runnings_mains_left_conter_num">{{ resultData.TrappedPersonAlarm || 0 }}</div>
- <div class="_runnings_mains_left_conter_text">困人告警</div>
- </div>
- </div>
- <div class="_runnings_mains_left">
- <div class="_runnings_mains_left_tuan tuan3"></div>
- <div class="_runnings_mains_left_conter">
- <div class="_runnings_mains_left_conter_num">{{ resultData.AbnormalVibration || 0 }}</div>
- <div class="_runnings_mains_left_conter_text">异常震动</div>
- </div>
- </div>
- </div>
- </div>
- </template>
- <script setup>
- import { ref } from "vue";
- import HeadlineTag from '@/components/HeadlineTag'
- const runningList = ref([
- { name: '入侵检测', state: '154', color: '#409eff', tip: '划定区域人员闯入' },
- { name: '异常行为', state: '15', color: '#15acaa', tip: '徘徊、倒地、聚集' },
- { name: '丢失告警', state: '134', color: '#FFC107', tip: '物品遗留/丢失告警' },
- ])
- const props = defineProps({
- resultData: {
- type: Object,
- default: {}
- }
- })
- const heightcon = ref(0)
- // 生命周期
- onMounted(() => {
- var element = document.getElementById("sumeWidth");
- var width = element.offsetWidth;
- heightcon.value = width
- });
- </script>
- <style lang="scss" scoped>
- .tuan1 {
- background: url("@/assets/images/video_bg_1.png");
- animation: scanning 10s linear infinite;
- }
- .tuan2 {
- background: url("@/assets/images/video_bg_2.png");
- animation: scanning 10s linear infinite;
- }
- .tuan3 {
- background: url("@/assets/images/video_bg_3.png");
- animation: scanning 10s linear infinite;
- }
- ._runnings {
- display: flex;
- align-items: center;
- flex-direction: column;
- &_mains {
- flex: 1;
- width: 100%;
- display: flex;
- align-items: center;
- justify-content: space-around;
- &_left {
- flex-shrink: 0;
- width: 32%;
- height: var(--heightSume);
- position: relative;
- &_tuan {
- width: 100%;
- height: 100%;
- background-size: 80% 80%;
- background-position: center;
- background-repeat: no-repeat;
- }
- &_conter {
- position: absolute;
- left: 0;
- top: 0;
- flex-shrink: 0;
- width: 100%;
- height: 100%;
- display: flex;
- flex-direction: column;
- align-items: center;
- justify-content: center;
- color: #fff;
- &_num {
- font-size: 18px;
- }
- &_text {
- font-size: 12px;
- }
- }
- }
- }
- }
- @keyframes scanning {
- to {
- transform: rotate(1turn);
- }
- }
- </style>
|