Files
sgxt_web/src/views/home/components/assessmentItem.vue
2025-11-27 14:27:59 +08:00

132 lines
3.3 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<template>
<div class="warning-card ">
<div class="warning-info warning-boder pb5">
<div class="mt4 two_text_detail">{{ item[nameData.title] }}</div>
</div>
<!-- 态势研判预警 -->
<div class="warning-info pt5 pb5 flex align-center just-between" v-if="lx == 1">
<div class="mt4 two_text_detail flex align-center">预警类别
<DictTag :tag="false" :value="item.ypLx" color="#fff" :options="dict.D_SG_TSYPGZ" />
</div>
<div class="mt4 two_text_detail">预警次数{{ item.num }}</div>
</div>
<!-- 群体预警 -->
<div class="warning-info pt5 pb5 flex align-center just-between" v-if="lx == 2">
<div class="mt4 two_text_detail flex align-center">群体类别
<DictTag :tag="false" :value="item.qtlb" color="#fff" :options="dict.D_GS_ZDQT_LB" />
</div>
<div class="mt4 two_text_detail flex align-center">风险等级
<DictTag :tag="false" :value="item.yjJb" color="#fff" :options="dict.D_BZ_YJJB" />
</div>
</div>
<!-- 经验分享 -->
<div class="warning-info pt5 pb5 flex align-center just-between" v-if="lx == 3">
<div class="mt4 two_text_detail">经验发布人{{ item.fbr }}</div>
</div>
<div class="warning-info pt5 pb5 warning-boder" v-if="lx == 1 || lx == 2">
<div class="mt4 two_text_detail">预警时间{{ item.yjsj }}</div>
</div>
<div class="warning-info pt5 pb5 warning-boder" v-if="lx == 3">
<div class="mt4 two_text_detail">经验内容{{ item.fbnr }}</div>
</div>
</div>
</template>
<script setup>
import { IdCard } from '@/utils/validate.js'
import { reactive, ref, watch } from "vue";
const props = defineProps({
item: {
type: Object,
default: {}
}, dict: {
tupe: Object,
default: {}
},
lx: {
type: Number,
default: 1
}
});
let nameData = ref({
title: "ypMc",
lbNoe: "预警类别:",
})
watch(() => props.lx, (val) => {
switch (val) {
case 1:
nameData.value = { title: 'ypMc' }
break;
case 2:
nameData.value = { title: 'qtMc' }
case 3:
nameData.value = { title: 'jymc' }
break;
}
}, { immediate: true })
</script>
<style lang="scss" scoped>
.warning-card {
background: url("~@/assets/images/xxxxxx.png") no-repeat center center;
background-size: 100% 100%;
gap: 12px;
margin-bottom: 4px;
padding: 10px;
box-sizing: border-box;
.warning-image {
//
// width: 80px;
// height: 100px;
// img {
// width: 100%;
// height: 100%;
// object-fit: cover;
// }
}
.warning-info {
flex: 1;
.tag {
padding: 1px 6px;
background: #0072FF;
border-radius: 2px 2px 2px 2px;
font-size: 12px;
}
.gapline {
width: 2px;
height: 14px;
background: #e9e9e9;
}
}
.warning-boder {
border-bottom: 2px dashed #0958b2;
}
}
.red {
background: url("~@/assets/images/GroupRed.png") no-repeat center center;
background-size: 100% 100%;
}
.orange {
background: url("~@/assets/images/GroupOrange.png") no-repeat center center;
background-size: 100% 100%;
}
.yellow {
background: url("~@/assets/images/GroupYellow.png") no-repeat center center;
background-size: 100% 100%;
}
.blue {
background: url("~@/assets/images/GroupBlue.png") no-repeat center center;
background-size: 100% 100%;
}
</style>