更新页面

This commit is contained in:
2026-01-20 16:17:56 +08:00
parent d8ee4bb34d
commit 7aa3292ed0
9 changed files with 98 additions and 66 deletions

View File

@ -23,7 +23,7 @@
</Searchs>
</div>
<!-- 表格 -->
<div class="tabBox" :style="{ height: (pageData.tableHeight + 40) + 'px' }">
<div class="tabBox tabBox_zdy" :style="{ height: (pageData.tableHeight + 40) + 'px' }">
<MyTable :tableData="pageData.tableData" :tableColumn="pageData.tableColumn" :tableHeight="pageData.tableHeight"
:key="pageData.keyCount" :tableConfiger="pageData.tableConfiger" :controlsWidth="pageData.controlsWidth" expand
@chooseData="handleChooseData">
@ -38,6 +38,22 @@
<template #czzt="{ row }">
<DictTag :value="row.czzt" :options="D_GSXT_YJXX_CZZT" />
</template>
<template #sex="{ row }">
<span v-if="row.yjRysfzh"> {{ IdCard(row.yjRysfzh,2) }} </span>
</template>
<template #age="{ row }">
<span v-if="row.yjRysfzh"> {{ IdCard(row.yjRysfzh,3) }} </span>
</template>
<template #yjLylx="{ row }">
<DictTag :value="row.yjLylx" :tag="false" :options="D_BZ_YJLY" />
</template>
<template #bqdl="{ row }">
<DictTag :value="row.bqdl" :tag="false" :options="D_GS_QLZDRLX" />
</template>
<template #controls="{ row }">
<el-link type="warning" @click="pushAssess(row)">全息档案</el-link>
<el-link type="primary" @click="handleCzjy(row)" v-if="roleCode">处置建议</el-link>
@ -59,6 +75,7 @@
</template>
<script setup>
import { IdCard } from '@/utils/validate.js'
import Czjy from './components/czjy.vue'
import { getItem, setItem } from '@/utils/storage'
import PageTitle from "@/components/aboutTable/PageTitle.vue";
@ -77,7 +94,7 @@ import { getMultiDictVal } from "@/utils/dict.js"
const czjyRef = ref()
const { proxy } = getCurrentInstance();
const searchBox = ref();
const { D_GSXT_YJXX_CZZT, D_GS_SSYJ,D_BZ_YJJB } = proxy.$dict("D_GSXT_YJXX_CZZT", "D_GS_SSYJ",'D_BZ_YJJB')
const { D_GS_QLZDRLX,D_BZ_YJLY,D_GSXT_YJXX_CZZT, D_GS_SSYJ,D_BZ_YJJB } = proxy.$dict('D_GS_QLZDRLX','D_BZ_YJLY',"D_GSXT_YJXX_CZZT", "D_GS_SSYJ",'D_BZ_YJJB')
const dict = reactive({ D_GSXT_YJXX_CZZT, D_GS_SSYJ })
// 搜索配置
const searchConfiger = ref([
@ -111,16 +128,19 @@ const pageData = reactive({
},
controlsWidth: 200, //操作栏宽度
tableColumn: [
{ label: "预警人员姓名", prop: "yjRyxm" },
{ label: "预警人员身份证号码", prop: "yjRysfzh",width: 200 },
{ label: "预警标签", prop: "yjbqmc" },
{ label: "今日预警次数", prop: "yjJrcs" },
{ label: "标签颜色", prop: "yjJb", showSolt: true },
{ label: "预警内容", prop: "yjNr",showOverflowTooltip: true },
{ label: "预警时间", prop: "yjFssj" ,width: 200},
{ label: "处置状态", prop: "czzt", showSolt: true },
{ label: "所属县局", prop: "ssxgaj" },
{ label: "处置单位", prop: "ssbm" },
{ label: "状态", prop: "czzt", showSolt: true },
{ label: "预警时间", prop: "yjFssj" },
{ label: "人员姓名", prop: "yjRyxm" },
{ label: "身份证号码", prop: "yjRysfzh"},
{ label: "性别", prop: "sex" ,showSolt: true },
{ label: "年龄", prop: "age", showSolt: true },
{ label: "预警级别", prop: "yjJb", showSolt: true },
{ label: "人员类别", prop: "bqdl", showSolt: true },
{ label: "细类", prop: "yjbqmc" },
{ label: "轨迹类别", prop: "yjLylx", showSolt: true },
{ label: "活动发生地", prop: "yjDz" },
{ label: "接收单位", prop: "ssbm" },
{ label: "预警次数", prop: "yjCs" },
]
});
@ -273,8 +293,15 @@ const exportExl = () => {
</script>
<style>
<style lang="scss">
.el-loading-mask {
background: rgba(0, 0, 0, 0.5) !important;
}
.tabBox_zdy{
.el-table--fit {
overflow: unset !important;
}
}
</style>

View File

@ -11,7 +11,7 @@
<div class="info-item">建议内容<span>{{ it.jynr || '暂无' }}</span></div>
</div>
<div>
<el-empty v-if="list.length === 0" description="暂无数据" />
<el-empty v-if="list.length === 0" :image-size="0.5" description="暂无数据" />
</div>
<el-divider content-position="left">反馈内容</el-divider>
@ -28,7 +28,7 @@
</div>
</div>
<div>
<el-empty v-if="Fklist.length === 0" description="暂无数据" />
<el-empty v-if="Fklist.length === 0" :image-size="0.5" description="暂无数据" />
</div>
</div>
@ -67,6 +67,7 @@ onMounted(() => {
.warning-item {
width: 100%;
padding: 15px;
box-sizing: border-box;
border-radius: 8px;
background-color: #fafafa;
}
@ -86,4 +87,10 @@ onMounted(() => {
}
}
::v-deep .el-empty{
--el-empty-padding: 0px;
margin-bottom: 18px;
--el-empty-description-margin-top: 10px;
}
</style>

View File

@ -54,7 +54,6 @@ onMounted(() => {
Fklist.value = res.fkList || []
})
})
// console.log('row😃: ', props.row);
</script>
<style lang="scss" scoped>
.warning-item {

View File

@ -1,12 +1,12 @@
<template>
<div>
<!-- 表格 -->
<div class="tabBox" :style="{ height: !search ? maxHeight + 200 + 'px' : (maxHeight + 150) + 'px' }">
<div class="tabBox tabBox_zdy" :style="{ height: maxHeight + 130 + 'px' }">
<MyTable :tableData="pageData.tableData" :tableColumn="pageData.tableColumn" :tableHeight="maxHeight + 'px'"
:key="pageData.keyCount" :tableConfiger="pageData.tableConfiger" :controlsWidth="pageData.controlsWidth"
:expand="true" @chooseData="handleChooseData">
<template #expand="{ props }">
<div class="expand-content" style="max-width: 100%">
<div>
<Items :row="props" :dict="dict" />
</div>
</template>
@ -103,7 +103,8 @@ const props = defineProps({
maxHeight: {
type: [Number, String],
default: 666
}, search: {
},
search: {
type: Boolean,
default: false
},
@ -142,7 +143,7 @@ const pageData = reactive({
{ label: "数据来源", prop: "yjLylx", showOverflowTooltip: true },
{ label: "身份证", prop: "yjRysfzh", showOverflowTooltip: true, width: 200 },
// { label: "预警级别", prop: "yjJb", showSolt: true },
// { label: "相似度", prop: "xsd", showSolt: true },
{ label: "相似度", prop: "xsd", showSolt: true },
{ label: "布控车牌号", prop: "yjClcph", showOverflowTooltip: true },
{ label: "所属部门", prop: "ssbm", showOverflowTooltip: true },
]
@ -322,7 +323,7 @@ defineExpose({
})
</script>
<style>
<style lang="scss">
.el-loading-mask {
background: rgba(0, 0, 0, 0.5) !important;
}
@ -367,4 +368,10 @@ defineExpose({
.warning-level-04 td {
background-color: transparent !important;
}
.tabBox_zdy{
.el-table--fit {
overflow: unset !important;
}
}
</style>

View File

@ -1,7 +1,6 @@
<template>
<div>
<div class="titleBox">
<PageTitle title="人像预警">
<el-button type="success" @click="openSearch">
<Search style="width: 1em; height: 1em; margin-right: 8px" />
@ -69,6 +68,7 @@
<template #nl="{ row }">
{{ IdCard(row.yjRysfzh, 3) }}
</template>
<template #sxd="{ row }"> {{ row.sxd }}% </template>
<template #yjLylx="{ row }">
<DictTag v-model:value="row.yjLylx" :options="D_BZ_YJLYXT" />
</template>
@ -81,9 +81,6 @@
<template #yjJb="{ row }">
<DictTag v-model:value="row.yjJb" :options="D_BZ_YJJB" />
</template>
<template #xsd="{ row }">
{{ row.xsd }}%
</template>
<!-- 操作 -->
</MyTable>
<template #footer>
@ -167,7 +164,8 @@ const pageData = reactive({
}, //分页
controlsWidth: 160, //操作栏宽度
tableColumn: [
{ label: "预警图片", prop: "yjTp", showSolt: true },
{ label: "相似度", prop: "sxd", showSolt: true },
{ label: "预警图片11", prop: "yjTp", showSolt: true },
{ label: "处置状态", prop: "czzt", showSolt: true },
{ label: "预警时间", prop: "yjSj", showOverflowTooltip: true },
{ label: "姓名", prop: "yjRyxm" },
@ -175,7 +173,6 @@ const pageData = reactive({
{ label: "数据来源", prop: "yjLylx", showOverflowTooltip: true },
{ label: "性别", prop: "xb", showSolt: true },
{ label: "预警级别", prop: "yjJb", showSolt: true },
{ label: "相似度", prop: "xsd", showSolt: true },
{ label: "预警地点", prop: "yjDz", showOverflowTooltip: true },
{ label: "预警次数", prop: "yjCs", showOverflowTooltip: true },
{ label: "布控手机号", prop: "yjRysjh", showOverflowTooltip: true },

View File

@ -1,6 +1,5 @@
<template>
<div class="warning-item" >
<el-divider content-position="left">处置建议</el-divider>
<div class="item-row" v-for="(it,idx) in list" :key="idx">
<div class="info-item">
@ -11,7 +10,7 @@
<div class="info-item">建议内容<span>{{ it.jynr || '暂无' }}</span></div>
</div>
<div>
<el-empty v-if="list.length === 0" description="暂无数据" />
<el-empty v-if="list.length === 0" :image-size="0.5" description="暂无数据" />
</div>
<el-divider content-position="left">反馈内容</el-divider>
@ -28,7 +27,7 @@
</div>
</div>
<div>
<el-empty v-if="Fklist.length === 0" description="暂无数据" />
<el-empty v-if="Fklist.length === 0" :image-size="0.5" description="暂无数据" />
</div>
</div>
@ -66,6 +65,7 @@ onMounted(() => {
.warning-item {
width: 100%;
padding: 15px;
box-sizing: border-box;
border-radius: 8px;
background-color: #fafafa;
}
@ -84,5 +84,9 @@ onMounted(() => {
margin-right: 10px;
}
}
::v-deep .el-empty{
--el-empty-padding: 0px;
margin-bottom: 18px;
--el-empty-description-margin-top: 10px;
}
</style>

View File

@ -1,7 +1,7 @@
<template>
<div>
<!-- 表格 -->
<div class="tabBox" :style="{ height: !search ? maxHeight + 200 + 'px' : (maxHeight + 150) + 'px' }">
<div class="tabBox tabBox_zdy" :style="{ height: maxHeight + 130 + 'px' }">
<MyTable :tableData="pageData.tableData" :tableColumn="pageData.tableColumn" :tableHeight="maxHeight + 'px'"
:key="pageData.keyCount" :tableConfiger="pageData.tableConfiger" :controlsWidth="pageData.controlsWidth"
:expand="true" @chooseData="handleChooseData">
@ -25,6 +25,7 @@
</template>
</el-image>
</template>
<template #nl="{ row }">
{{ IdCard(row.yjRysfzh, 3) }}
</template>
@ -126,17 +127,17 @@ const pageData = reactive({
pageSize: 20,
pageCurrent: 1
}, //分页
controlsWidth: 300, //操作栏宽度
controlsWidth: 200, //操作栏宽度
tableColumn: [
{ label: "状态", prop: "czzt", showSolt: true },
{ label: "预警图片", prop: "yjTp", showSolt: true, width: 100 },
{ label: "布控车牌号", prop: "yjClcph", showOverflowTooltip: true },
{ label: "处置状态", prop: "czzt", showSolt: true },
{ label: "预警时间", prop: "yjSj", showOverflowTooltip: true },
{ label: "标题", prop: "yjBt" },
{ label: "所属部门", prop: "ssbm", showOverflowTooltip: true },
{ label: "内容", prop: "yjNr", showOverflowTooltip: true },
{ label: "预警地址", prop: "yjDz", showOverflowTooltip: true },
{ label: "接收单位", prop: "ssbm", showOverflowTooltip: true },
{ label: "内容", prop: "yjNr", showOverflowTooltip: true },
]
});
@ -312,7 +313,7 @@ defineExpose({
})
</script>
<style>
<style lang="scss">
.el-loading-mask {
background: rgba(0, 0, 0, 0.5) !important;
}
@ -357,4 +358,11 @@ defineExpose({
.warning-level-04 td {
background-color: transparent !important;
}
.tabBox_zdy{
.el-table--fit {
overflow: unset !important;
}
}
</style>

View File

@ -158,7 +158,7 @@ const pageData = reactive({
controlsWidth: 160, //操作栏宽度
tableColumn: [
{ label: "预警图片", prop: "yjTp", showSolt: true },
{ label: "处置状态", prop: "czzt", showSolt: true },
{ label: "状态", prop: "czzt", showSolt: true },
{ label: "预警时间", prop: "yjSj", showOverflowTooltip: true },
{ label: "姓名", prop: "yjRyxm" },
{ label: "年龄", prop: "nl", showSolt: true },
@ -166,7 +166,7 @@ const pageData = reactive({
{ label: "性别", prop: "xb", showSolt: true },
{ label: "预警级别", prop: "yjJb", showSolt: true },
{ label: "相似度", prop: "xsd", showSolt: true },
{ label: "预警地", prop: "yjDz", showOverflowTooltip: true },
{ label: "预警地", prop: "yjDz", showOverflowTooltip: true },
{ label: "预警次数", prop: "yjCs", showOverflowTooltip: true },
{ label: "布控手机号", prop: "yjRysjh", showOverflowTooltip: true },
{ label: "布控车牌号", prop: "yjClcph", showOverflowTooltip: true },
@ -175,16 +175,13 @@ const pageData = reactive({
]
});
const showDc = ref(false)
const activeName = ref('local')
const addFromRefs = ref(null)
onMounted(() => {
tabHeightFn();
emitter.on('openAddFrom', (val) => {
console.log(addFromRefs.value);
if (addFromRefs.value) {
addFromRefs.value.init('add', val)
}
// addFromRefs.value.init('add', val)
})
});
const listQuery = ref({
@ -205,30 +202,13 @@ const onSearch = () => {
localWarningRef.value.getList(promes)
}
const loading = ref(false)
const remoteMethod = (query) => {
if (query) {
loading.value = true
tbGsxtZdrySelectList({ ryXm: query }).then(res => {
opentions.value = res
}).finally(() => {
loading.value = false
})
} else {
opentions.value = []
}
}
const searchArr = ref()
const resetForm = (formEl) => {
listQuery.value = {}
localWarningRef.value.getList()
}
// // 表格高度计算
// const tabHeightFn = () => {
// pageData.tableHeight = window.innerHeight - searchBox.value.offsetHeight - 250;
// window.onresize = function () {
// tabHeightFn();
// };
// };
// 搜索栏
const search = ref(false)
const openSearch = () => {

View File

@ -11,7 +11,7 @@
<div class="info-item">建议内容<span>{{ it.jynr || '暂无' }}</span></div>
</div>
<div>
<el-empty v-if="list.length === 0" description="暂无数据" />
<el-empty v-if="list.length === 0" :image-size="0.5" description="暂无数据" />
</div>
<el-divider content-position="left">反馈内容</el-divider>
@ -28,7 +28,7 @@
</div>
</div>
<div>
<el-empty v-if="Fklist.length === 0" description="暂无数据" />
<el-empty v-if="Fklist.length === 0" :image-size="0.5" description="暂无数据" />
</div>
</div>
@ -62,7 +62,6 @@ onMounted(() => {
Fklist.value = res.fkList || []
})
})
// console.log('row😃: ', props.row);
</script>
<style lang="scss" scoped>
.warning-item {
@ -86,5 +85,9 @@ onMounted(() => {
margin-right: 10px;
}
}
::v-deep .el-empty{
--el-empty-padding: 0px;
margin-bottom: 18px;
--el-empty-description-margin-top: 10px;
}
</style>