This commit is contained in:
lcw
2025-11-22 21:59:58 +08:00
parent ea3022c3f6
commit 93c49dff27
661 changed files with 195357 additions and 2160 deletions

View File

@ -1,59 +1,73 @@
<template>
<div class="warning-card" :style="{'border':`1px solid ${changeBG(item.yjJb)}`}" >
<div class="warning-card" :style="{ 'border': `1px solid ${changeBG(item.yjjb)}` }">
<div class="warning-image flex">
<!-- -->
<template v-if="!item.yjTp || item.yjTp.includes('baidu')">
<img src="@/assets/images/car.png" width="65" height="70" v-if="item.yjLx == 2" />
<template v-if="!item.yjtp || item.yjtp.includes('baidu')">
<img src="@/assets/images/car.png" width="65" height="70" v-if="item.yjlb == 2" />
<img src="@/assets/images/default_male.png" width="65" height="70" v-else />
</template>
<el-image v-else style="width: 65px; height: 70px" :src="item.yjTp" :preview-src-list="[item.yjTp]" show-progress>
<el-image preview-teleported v-else @click.stop style="width: 65px; height: 70px" :src="item.yjtp" :preview-src-list="[item.yjtp]" show-progress>
<template #error>
<div class="image-slot error">
<img src="@/assets/images/car.png" width="65" height="70" v-if="item.yjLx == 2" />
<img src="@/assets/images/car.png" width="65" height="70" v-if="item.yjlb == 2" />
<img src="@/assets/images/default_male.png" width="65" height="70" v-else />
</div>
</template>
</el-image>
<div class="ml10 warning-info">
<div class="flex just-between align-center">
<div class="flex align-center mt4" v-if="item.yjLx == 2">
<span>{{ item.yjClcph }}</span>
<div class="flex align-center mt4" v-if="item.yjlb == 2">
<span>{{ item.cph }}</span>
</div>
<div class="flex align-center mt4" v-else>
<span>{{ item.yjRyxm }}</span>
<span>{{ item.ryxm }}</span>
<span class="gapline mr10 ml10"></span>
<span>{{ IdCard(item.yjRysfzh, 2) }}</span>
<span>{{ IdCard(item.rysfzh, 2) }}</span>
<span class="gapline mr10 ml10"></span>
<span>{{ IdCard(item.yjRysfzh, 3) }}</span>
<span>{{ IdCard(item.rysfzh, 3) }}</span>
</div>
<span class="tag" v-if="item.yjbqmc" :style="{'background':`${changeBG(item.yjJb)}`}">{{ item.yjbqmc }}</span>
<span class="tag" v-if="item.yjbq" :style="{ 'background': `${changeBG(item.yjjb)}` }">{{ item.yjbq }}</span>
</div>
<div v-if="item.yjLx == 2" class="flex">车牌类型
<DictTag :tag="false" :value="item.yjHplx" color="#fff" :options="dict.D_BZ_HPZL" />
<div v-if="item.yjlb == 2" class="flex">车牌类型
<DictTag :tag="false" :value="item.hplx" color="#fff" :options="dict.D_BZ_HPZL" />
</div>
<div class="mt4" v-else>身份证{{ item.yjRysfzh }}</div>
<div class="mt4 two_text_detail">预警时间{{ item.yjSj }}</div>
<div class="mt4" v-else>身份证{{ item.rysfzh }}</div>
<div class="mt4 two_text_detail">预警时间{{ item.yjsj }}</div>
</div>
</div>
<div class="warning-info warning-boder pb5">
<div class="mt4 two_text_detail">预警内容{{ item.yjNr }}</div>
<div class="warning-info warning-boder pb5" v-if="item.yjlx == '01'">
<div class="mt4 two_text_detail">预警内容{{ item.yjnr }}</div>
</div>
<div class="warning-info pt5 pb5 warning-boder">
<div class="mt4 two_text_detail">处置结果{{ item.yjNr }}</div>
<div class="warning-info pt5 pb5 warning-boder" v-if="item.yjlx == '01'">
<div class="mt4 two_text_detail">处置结果{{ item.yjnr }}</div>
</div>
<div class="warning-info pt5 ">
<div class="warning-info pt5 " v-if="item.yjlx == '01'">
<div class="two_text_detail flex lh25"><img src="@/assets/images/ddtb.png" width="20" height="25" alt=""
srcset="">{{
item.yjNr }}</div>
item.yjnr }}</div>
</div>
<div class="mt4 two_text_detail" v-if="buttonBox">
<el-button type="primary" @click="pushAssess(item)">全息档案</el-button>
<el-button color="#ef7762" @click="showDetail(item)" style="color: #fff;">转合成</el-button>
<el-button type="warning">转基管</el-button>
<el-button type="danger">转会商</el-button>
<el-button type="success" @click="showFeedback(item, '签收')" v-if="item.czzt == '01'">签收</el-button>
<el-button type="success" @click="showFeedback(item, '反馈')" v-if="item.czzt == '02'">反馈</el-button>
<el-button type="success" @click="showFeedback(item, '查看反馈')" v-if="item.czzt == '03'">查看反馈</el-button>
<el-button type="success" @click="plotThetrajectory(item.rysfzh)">轨迹上图</el-button>
</div>
<!-- props.item.czzt == '03'" -->
</div>
<HolographicArchive v-model="assessShow" :dataList="dataList" />
</template>
<script setup>
import { IdCard } from '@/utils/validate.js'
import { reactive, ref } from "vue";
import { reactive, ref, getCurrentInstance } from "vue";
import { qcckGet, qcckPost } from "@/api/qcckApi.js";
import HolographicArchive from './holographicArchive.vue'
const { proxy } = getCurrentInstance();
const props = defineProps({
item: {
type: Object,
@ -61,8 +75,12 @@ const props = defineProps({
}, dict: {
tupe: Object,
default: {}
}, buttonBox: {
type: Boolean,
default: false
}
});
const emit = defineEmits(["plotThetrajectory", "showDetail", 'showFeedback']);
const changeBG = (str) => {
switch (str) {
@ -72,9 +90,44 @@ const changeBG = (str) => {
return "orange";
case "30":
return "#b5b522";
default: return "blue";
default:
return "blue";
}
};
// 轨迹上图
const plotThetrajectory = (val) => {
emit('plotThetrajectory', val);
}
// 查看反馈
const showFeedback = (val, type) => {
switch (type) {
case '签收':
proxy.$confirm("是否确定要签收", "警告", { type: "warning" }).then(() => {
qcckPost({ id: val.id }, "/mosty-gsxt/tbYjxx/yjqs").then(() => {
val.czzt = '02'
proxy.$message({ type: "success", message: "签收成功" });
});
})
break;
case '反馈':
case '查看反馈':
const data = {
...val,
type: type,
}
emit('showFeedback', data);
break;
}
}
const showDetail = (item) => {
emit('showDetail', item);
}
const assessShow = ref(false)
const dataList = ref()
const pushAssess = (val) => {
assessShow.value = true;
dataList.value = val;
}
</script>
<style lang="scss" scoped>