lcw
This commit is contained in:
@ -232,6 +232,18 @@ export const publicRoutes = [
|
||||
meta: { title: "积分排名", icon: "article-create" },
|
||||
component: () => import("@/views/backOfficeSystem/fourColorManage/warningControl/scoreRanking/index"),
|
||||
},
|
||||
{
|
||||
path: "/sevenWarning",
|
||||
name: "sevenWarning",
|
||||
meta: { title: "七类重点人员", icon: "article" },
|
||||
component: () => import("@/views/backOfficeSystem/fourColorManage/warningControl/sevenWarning/index.vue"),
|
||||
},
|
||||
{
|
||||
path: "/sevenWarningFail",
|
||||
name: "sevenWarningFail",
|
||||
meta: { title: "报错", icon: "article" },
|
||||
component: () => import("@/views/backOfficeSystem/fourColorManage/warningControl/sevenWarningFail/index.vue"),
|
||||
},
|
||||
// {
|
||||
// path: "/modelWarning",
|
||||
// name: "modelWarning",
|
||||
|
||||
@ -26,7 +26,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="true" @chooseData="handleChooseData">
|
||||
@ -148,20 +148,16 @@ const pageData = reactive({
|
||||
pageSize: 20,
|
||||
pageCurrent: 1
|
||||
}, //分页
|
||||
controlsWidth: 160, //操作栏宽度
|
||||
controlsWidth: 220, //操作栏宽度
|
||||
tableColumn: [
|
||||
{ label: "状态", prop: "czzt", showSolt: true },
|
||||
{ label: "预警时间", prop: "yjsj" },
|
||||
{ label: "姓名", prop: "xm" },
|
||||
{ label: "身份证号", prop: "sfzh", width: 200 },
|
||||
// { label: "电话", prop: "dh", width: 150 },
|
||||
{ label: "行为大类", prop: "xldlmc" },
|
||||
{ label: "行为子类", prop: "xwzlmc", showOverflowTooltip: true },
|
||||
{ label: "行为描述", prop: "xwms", showOverflowTooltip: true },
|
||||
{ label: "行为次数", prop: "xwcs", showSolt: true },
|
||||
{ label: "行为颜色", prop: "bqys", showSolt: true },
|
||||
{ label: "行为分值", prop: "xwfz", },
|
||||
{ label: "处置状态", prop: "czzt", showSolt: true },
|
||||
{ label: "所属县局", prop: "ssxgaj" },
|
||||
{ label: "处置单位", prop: "ssbm" },
|
||||
{ label: "身份证号", prop: "sfzh" },
|
||||
{ label: "标签", prop: "yjbqmc" },
|
||||
{ label: "接收单位", prop: "ssbm" },
|
||||
{ label: "活动频次", prop: "xwcs", showSolt: true },
|
||||
{ label: "预警分值", prop: "xwfz", },
|
||||
]
|
||||
});
|
||||
|
||||
@ -359,17 +355,14 @@ const handleChooseData = (val) => {
|
||||
}
|
||||
const exportExl = () => {
|
||||
const titleObj = {
|
||||
czzt_cname: "状态",
|
||||
yjsj: "预警时间",
|
||||
xm: "姓名",
|
||||
sfzh: "身份证号",
|
||||
dh: "电话",
|
||||
xldlmc: "行为大类",
|
||||
xwzlmc: "行为子类",
|
||||
xwms: "行为描述",
|
||||
xwcs: "行为次数",
|
||||
bqys_cname: "行为颜色",
|
||||
xwfz: "行为分值",
|
||||
czzt_cname: "处置状态",
|
||||
ssbm: "所属县局",
|
||||
yjbqmc: "标签",
|
||||
ssbm: "接收单位",
|
||||
sfcs: "活动频次",
|
||||
sffz: "预警分值",
|
||||
}
|
||||
/** 导出【选中】的数据 (没有就全部)*/
|
||||
const needArr = selectRows.value?.length > 0 ? selectRows.value : pageData.tableData
|
||||
@ -386,7 +379,7 @@ const exportExl = () => {
|
||||
|
||||
</script>
|
||||
|
||||
<style>
|
||||
<style lang="scss">
|
||||
.el-loading-mask {
|
||||
background: rgba(0, 0, 0, 0.5) !important;
|
||||
}
|
||||
@ -398,4 +391,11 @@ const exportExl = () => {
|
||||
border-color: #c2c203;
|
||||
outline-color: #0000ff;
|
||||
}
|
||||
|
||||
.tabBox_zdy{
|
||||
.el-table--fit {
|
||||
overflow: unset !important;
|
||||
}
|
||||
}
|
||||
|
||||
</style>
|
||||
|
||||
@ -11,9 +11,8 @@
|
||||
<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>
|
||||
<div class="item-row" v-for="(it,idx) in Fklist" :key="idx">
|
||||
<div class="info-item">
|
||||
@ -28,13 +27,13 @@
|
||||
</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>
|
||||
</template>
|
||||
<script setup>
|
||||
import { ref, computed, onMounted } from 'vue'
|
||||
import { ref, onMounted } from 'vue'
|
||||
import { qcckPost,qcckGet } from "@/api/qcckApi.js";
|
||||
|
||||
const props = defineProps({
|
||||
@ -61,7 +60,6 @@ onMounted(() => {
|
||||
Fklist.value = res.fkList || []
|
||||
})
|
||||
})
|
||||
// console.log('row😃: ', props.row);
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.warning-item {
|
||||
@ -86,4 +84,11 @@ onMounted(() => {
|
||||
}
|
||||
}
|
||||
|
||||
::v-deep .el-empty{
|
||||
--el-empty-padding: 0px;
|
||||
margin-bottom: 18px;
|
||||
--el-empty-description-margin-top: 10px;
|
||||
}
|
||||
|
||||
|
||||
</style>
|
||||
|
||||
@ -26,7 +26,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="true" @chooseData="handleChooseData">
|
||||
@ -40,7 +40,7 @@
|
||||
<DictTag :value="row.czzt" :options="D_GSXT_YJXX_CZZT" />
|
||||
</template>
|
||||
<template #expand="{ props }">
|
||||
<div class="expand-content" style="max-width: 100%; max-height: 400px; overflow-y: auto; padding: 10px;">
|
||||
<div>
|
||||
<Items :row="props || {}" :dict="dict" />
|
||||
</div>
|
||||
</template>
|
||||
@ -141,19 +141,14 @@ const pageData = reactive({
|
||||
},
|
||||
controlsWidth: 200,
|
||||
tableColumn: [
|
||||
{ label: "状态", prop: "czzt", showSolt: true },
|
||||
{ label: "预警时间", prop: "yjsj"},
|
||||
{ label: "姓名", prop: "xm" },
|
||||
{ label: "身份证号", prop: "sfzh" , width: 200 },
|
||||
// { label: "电话", prop: "dh" },
|
||||
{ label: "预警标签", prop: "yjbqmc" },
|
||||
// { label: "组合大类", prop: "sfdlmc" },
|
||||
// { label: "组合小类", prop: "sfzlmc" },
|
||||
{ label: "组合次数", prop: "sfcs", showSolt: true },
|
||||
{ label: "标签颜色", prop: "bqys", showSolt: true },
|
||||
{ label: "预警时间", prop: "yjsj" , width: 200 },
|
||||
{ label: "身份证号", prop: "sfzh" },
|
||||
{ label: "标签", prop: "yjbqmc" },
|
||||
{ label: "接收单位", prop: "ssbm" },
|
||||
{ label: "活动频次", prop: "sfcs" },
|
||||
{ label: "预警分值", prop: "sffz" },
|
||||
{ label: "处置状态", prop: "czzt", showSolt: true },
|
||||
{ label: "所属县局", prop: "ssxgaj" },
|
||||
{ label: "处置单位", prop: "ssbm" },
|
||||
]
|
||||
});
|
||||
|
||||
@ -344,19 +339,15 @@ const handleChooseData = (val) => {
|
||||
selectRows.value = val
|
||||
}
|
||||
const exportExl = () => {
|
||||
|
||||
const titleObj = {
|
||||
czzt_cname: "状态",
|
||||
yjsj: "预警时间",
|
||||
xm: "姓名",
|
||||
sfzh: "身份证号",
|
||||
dh: "电话",
|
||||
sfdlmc: "组合大类",
|
||||
sfzlmc: "组合小类",
|
||||
sfcs: "组合次数",
|
||||
bqys_cname: "标签颜色",
|
||||
yjsj: "预警时间",
|
||||
yjbqmc: "标签",
|
||||
ssbm: "接收单位",
|
||||
sfcs: "活动频次",
|
||||
sffz: "预警分值",
|
||||
czzt_cname: "处置状态",
|
||||
ssbm: "所属县局",
|
||||
}
|
||||
/** 导出【选中】的数据 (没有就全部)*/
|
||||
const needArr = selectRows.value?.length > 0 ? selectRows.value : pageData.tableData
|
||||
@ -373,9 +364,17 @@ 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>
|
||||
|
||||
|
||||
@ -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>
|
||||
@ -67,6 +66,7 @@ onMounted(() => {
|
||||
.warning-item {
|
||||
width: 100%;
|
||||
padding: 15px;
|
||||
box-sizing: border-box;
|
||||
border-radius: 8px;
|
||||
background-color: #fafafa;
|
||||
}
|
||||
@ -85,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>
|
||||
|
||||
@ -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>
|
||||
|
||||
@ -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>
|
||||
|
||||
@ -26,21 +26,18 @@
|
||||
</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">
|
||||
<template #expand="{ props }">
|
||||
<div class="expand-content" style="max-width: 100%">
|
||||
<div style="max-width: 100%">
|
||||
<Items :row="props || {}" :dict="dict" />
|
||||
</div>
|
||||
</template>
|
||||
<template #sfcs="{ row }">
|
||||
<span style="color: #0072ff;" @click="handleClick(row)">{{ row.sfcs }}</span>
|
||||
</template>
|
||||
<template #bqys="{ row }">
|
||||
<DictTag :value="row.bqys" :tag="false" :color="bqYs(row.bqys)" :options="D_GS_SSYJ" />
|
||||
</template>
|
||||
<template #czzt="{ row }">
|
||||
<DictTag :value="row.czzt" :options="D_GSXT_YJXX_CZZT" />
|
||||
</template>
|
||||
@ -139,26 +136,20 @@ const pageData = reactive({
|
||||
},
|
||||
controlsWidth: 200, //操作栏宽度
|
||||
tableColumn: [
|
||||
{ label: "状态", prop: "czzt", showSolt: true },
|
||||
{ label: "预警时间", prop: "yjsj"},
|
||||
{ label: "姓名", prop: "xm" },
|
||||
{ label: "身份证号", prop: "sfzh" , width: 200 },
|
||||
// { label: "电话", prop: "dh" },
|
||||
{ label: "预警标签", prop: "yjbqmc" },
|
||||
// { label: "组合大类", prop: "sfdlmc" },
|
||||
// { label: "组合小类", prop: "sfzlmc" },
|
||||
{ label: "组合次数", prop: "sfcs", showSolt: true },
|
||||
{ label: "标签颜色", prop: "bqys", showSolt: true },
|
||||
{ label: "预警时间", prop: "yjsj", width: 200 },
|
||||
{ label: "身份证号", prop: "sfzh" },
|
||||
{ label: "标签", prop: "yjbqmc" },
|
||||
{ label: "接收单位", prop: "ssbm" },
|
||||
{ label: "活动频次", prop: "sfcs" },
|
||||
{ label: "预警分值", prop: "sffz" },
|
||||
{ label: "处置状态", prop: "czzt", showSolt: true },
|
||||
{ label: "所属县局", prop: "ssxgaj" },
|
||||
{ label: "处置单位", prop: "ssbm" },
|
||||
]
|
||||
});
|
||||
|
||||
onMounted(() => {
|
||||
let str = getItem('deptId') ? getItem('deptId')[0].deptLevel : ''
|
||||
permission_sfqs.value = str.startsWith('2'||'3') ? false : true;
|
||||
|
||||
let rols = getItem('roleList') ? getItem('roleList'):[]
|
||||
let obj = rols.find(item => {
|
||||
return ['JS_666666','JS_777777','JS_888888'].includes(item.roleCode)
|
||||
@ -208,7 +199,6 @@ const getList = () => {
|
||||
bqys_cname: getMultiDictVal(item.bqys, D_GS_SSYJ),
|
||||
czzt_cname: getMultiDictVal(item.czzt, D_GSXT_YJXX_CZZT),
|
||||
}
|
||||
|
||||
})
|
||||
pageData.total = res?.total || 0;
|
||||
pageData.tableConfiger.loading = false;
|
||||
@ -365,17 +355,14 @@ const handleChooseData = (val) => {
|
||||
}
|
||||
const exportExl = () => {
|
||||
const titleObj = {
|
||||
czzt_cname: "状态",
|
||||
yjsj: "预警时间",
|
||||
xm: "姓名",
|
||||
sfzh: "身份证号",
|
||||
dh: "电话",
|
||||
sfdlmc: "组合大类",
|
||||
sfzlmc: "组合小类",
|
||||
sfcs: "组合次数",
|
||||
bqys_cname: "标签颜色",
|
||||
yjsj: "预警时间",
|
||||
yjbqmc: "标签",
|
||||
ssbm: "接收单位",
|
||||
sfcs: "活动频次",
|
||||
sffz: "预警分值",
|
||||
czzt_cname: "处置状态",
|
||||
ssbm: "所属县局",
|
||||
}
|
||||
/** 导出【选中】的数据 (没有就全部)*/
|
||||
const needArr = selectRows.value?.length > 0 ? selectRows.value : pageData.tableData
|
||||
@ -392,8 +379,17 @@ const exportExl = () => {
|
||||
|
||||
</script>
|
||||
|
||||
<style>
|
||||
<style scoped >
|
||||
|
||||
</style>
|
||||
<style lang="scss">
|
||||
.el-loading-mask {
|
||||
background: rgba(0, 0, 0, 0.5) !important;
|
||||
}
|
||||
.tabBox_zdy{
|
||||
.el-table--fit {
|
||||
overflow: unset !important;
|
||||
}
|
||||
}
|
||||
|
||||
</style>
|
||||
|
||||
@ -1,7 +1,6 @@
|
||||
<template>
|
||||
<div class="warning-item" >
|
||||
|
||||
<el-divider content-position="left">处置建议</el-divider>
|
||||
<el-divider content-position="left">处置建议</el-divider>
|
||||
<div class="item-row" v-for="(it,idx) in list" :key="idx">
|
||||
<div class="info-item">
|
||||
<span class="text">预警人姓名:{{ it.jryXm }}</span>
|
||||
@ -10,10 +9,7 @@
|
||||
</div>
|
||||
<div class="info-item">建议内容:<span>{{ it.jynr || '暂无' }}</span></div>
|
||||
</div>
|
||||
<div>
|
||||
<el-empty v-if="list.length === 0" description="暂无数据" />
|
||||
</div>
|
||||
|
||||
<el-empty v-if="list.length === 0" :image-size="0.5" description="暂无数据" />
|
||||
<el-divider content-position="left">反馈内容</el-divider>
|
||||
<div class="item-row" v-for="(it,idx) in Fklist" :key="idx">
|
||||
<div class="info-item">
|
||||
@ -27,14 +23,11 @@
|
||||
<span class="text">常控立线侦察评估依据:<span>{{ it.cklxzcpgyj || '暂无' }}</span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<el-empty v-if="Fklist.length === 0" description="暂无数据" />
|
||||
</div>
|
||||
|
||||
<el-empty :image-size="0.5" v-if="Fklist.length === 0" description="暂无数据" />
|
||||
</div>
|
||||
</template>
|
||||
<script setup>
|
||||
import { ref, computed, onMounted } from 'vue'
|
||||
import { ref, onMounted } from 'vue'
|
||||
import { qcckPost,qcckGet } from "@/api/qcckApi.js";
|
||||
|
||||
const props = defineProps({
|
||||
@ -61,20 +54,18 @@ onMounted(() => {
|
||||
Fklist.value = res.fkList || []
|
||||
})
|
||||
})
|
||||
// console.log('row😃: ', props.row);
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.warning-item {
|
||||
width: 100%;
|
||||
padding: 15px;
|
||||
box-sizing: border-box;
|
||||
border-radius: 8px;
|
||||
background-color: #fafafa;
|
||||
}
|
||||
.item-row{
|
||||
border-bottom: 1px dashed #e8e8e8;
|
||||
line-height: 36px;
|
||||
padding-bottom: 10px;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
.info-item{
|
||||
line-height: 36px;
|
||||
@ -86,4 +77,10 @@ onMounted(() => {
|
||||
}
|
||||
}
|
||||
|
||||
::v-deep .el-empty{
|
||||
--el-empty-padding: 0px;
|
||||
margin-bottom: 18px;
|
||||
--el-empty-description-margin-top: 10px;
|
||||
}
|
||||
|
||||
</style>
|
||||
|
||||
@ -30,6 +30,9 @@
|
||||
<template #yjlb="{ row }">
|
||||
<DictTag :value="row.yjlb" :options="D_BZ_YJLX" />
|
||||
</template>
|
||||
<template #sffz="{ row }">
|
||||
<span :style="row.sffz > 100 ? 'color: #ff0000;' : 'color: #0072ff;'">{{ row.sffz }}</span>
|
||||
</template>
|
||||
|
||||
<!-- <template #yjjb="{ row }">
|
||||
<DictTag :value="row.yjjb" :tag="false" :color="bqYs(row.yjjb)" :options="D_BZ_YJJB" />
|
||||
@ -52,6 +55,7 @@
|
||||
</template>
|
||||
<template #controls="{ row }">
|
||||
<el-link type="success" @click="handleToImportantMan(row)">转重点人</el-link>
|
||||
<el-link type="success" @click="pushAssess(row)">全息档案</el-link>
|
||||
<!-- <el-link type="primary" @click="openAddFrom(row)">详情</el-link> -->
|
||||
</template>
|
||||
</MyTable>
|
||||
@ -69,6 +73,7 @@
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { holographicProfileJump } from "@/utils/tools.js"
|
||||
import PageTitle from "@/components/aboutTable/PageTitle.vue";
|
||||
import Searchs from "@/components/aboutTable/Search.vue";
|
||||
import MyTable from "@/components/aboutTable/MyTable.vue";
|
||||
@ -120,6 +125,7 @@ const pageData = reactive({
|
||||
}, //分页
|
||||
controlsWidth: 300, //操作栏宽度
|
||||
tableColumn: [
|
||||
{ label: "身份分值", prop: "sffz", showSolt: true },
|
||||
// { label: "预警图片", prop: "yjtp", showSlot: true, width: 100 },
|
||||
// { label: "预警时间", prop: "yjsj", showOverflowTooltip: true, width: 150 },
|
||||
{ label: "姓名", prop: "ryxm", showOverflowTooltip: true },
|
||||
@ -133,7 +139,7 @@ const pageData = reactive({
|
||||
{ label: "预警类别", prop: "yjlb", showSolt: true },
|
||||
{ label: "预警类型", prop: "yjlx", showSolt: true },
|
||||
// { label: "身份次数", prop: "sfcs", showSlot: true },
|
||||
{ label: "身份分值", prop: "sffz" },
|
||||
|
||||
{ label: "预警内容", prop: "yjnr", showOverflowTooltip: true },
|
||||
]
|
||||
});
|
||||
@ -158,6 +164,10 @@ const changeSize = (val) => {
|
||||
getList()
|
||||
}
|
||||
|
||||
const pushAssess = (val) => {
|
||||
return holographicProfileJump(val.yjlx,val) // 全息档案跳转
|
||||
}
|
||||
|
||||
// 获取标签大类数据
|
||||
const gettbGsxtBqglSelectList = (val) => {
|
||||
tbGsxtBqglSelectList({ sflx: val }).then(res => {
|
||||
|
||||
@ -0,0 +1,182 @@
|
||||
<template>
|
||||
<div>
|
||||
<div class="titleBox">
|
||||
<PageTitle title="七类重点人员" />
|
||||
</div>
|
||||
<!-- 搜索 -->
|
||||
<div ref="searchBox">
|
||||
<Search :searchArr="searchConfiger" @submit="onSearch" :key="pageData.keyCount">
|
||||
<template #age="{ row }">
|
||||
<div class="ageBox">
|
||||
<el-input v-model="queryFrom.age_s" placeholder="开始年龄" type="number" :min="1" :max="100" style="width: 102px;"></el-input>
|
||||
<span style="color: #333;" class="ml5 mr5">至</span>
|
||||
<el-input v-model="queryFrom.age_b" placeholder="结束年龄" type="number" :min="parseInt(queryFrom.age_s)+1" :max="100" style="width: 102px;"></el-input>
|
||||
</div>
|
||||
</template>
|
||||
</Search>
|
||||
</div>
|
||||
<!-- 表格 -->
|
||||
<div class="tabBox">
|
||||
<MyTable :tableData="pageData.tableData" :tableColumn="pageData.tableColumn" :tableHeight="pageData.tableHeight"
|
||||
:key="pageData.keyCount" :tableConfiger="pageData.tableConfiger" :controlsWidth="pageData.controlsWidth">
|
||||
<template #czzt="{ row }">
|
||||
<DictTag :value="row.czzt" :tag="false" :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 #yjJb="{ row }">
|
||||
<DictTag :value="row.yjJb" :tag="false" :options="D_BZ_YJJB" />
|
||||
</template>
|
||||
<template #bqdl="{ row }">
|
||||
<DictTag :value="row.bqdl" :tag="false" :options="D_GS_QLZDRLX" />
|
||||
</template>
|
||||
<template #yjLylx="{ row }">
|
||||
<DictTag :value="row.yjLylx" :tag="false" :options="D_BZ_YJLY" />
|
||||
</template>
|
||||
<template #yjLx="{ row }">
|
||||
<DictTag :value="row.yjLx" :tag="false" :options="D_GS_QLZDRYXX" />
|
||||
</template>
|
||||
<template #controls="{ row }">
|
||||
<el-link type="warning" v-if="row.sfbc != '1'" @click="failWarning(row)">报错</el-link>
|
||||
<el-link type="warning" @click="pushWarning(row)">指派</el-link>
|
||||
</template>
|
||||
</MyTable>
|
||||
<Pages @changeNo="changeNo" @changeSize="changeSize" :tableHeight="pageData.tableHeight" :pageConfiger="{
|
||||
...pageData.pageConfiger,
|
||||
total: pageData.total
|
||||
}"></Pages>
|
||||
</div>
|
||||
</div>
|
||||
<ZpForm v-model="warningShow" :dataList="dataList"/>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import ZpForm from "./zpForm.vue";
|
||||
import { IdCard } from '@/utils/validate.js'
|
||||
import PageTitle from "@/components/aboutTable/PageTitle.vue";
|
||||
import Search from "@/components/aboutTable/Search.vue";
|
||||
import MyTable from "@/components/aboutTable/MyTable.vue";
|
||||
import Pages from "@/components/aboutTable/Pages.vue";
|
||||
import { qcckGet, qcckPost } from "@/api/qcckApi.js";
|
||||
import { reactive, ref, onMounted, getCurrentInstance, } from "vue";
|
||||
const { proxy } = getCurrentInstance();
|
||||
const { D_BZ_YJLY,D_GS_QLZDRLX,D_BZ_YJJB, D_GS_QLZDRYXX,D_BZ_XB,D_GSXT_YJXX_CZZT } = proxy.$dict('D_BZ_YJLY','D_GS_QLZDRLX',"D_BZ_YJJB", "D_GS_QLZDRYXX", "D_BZ_XB","D_GSXT_YJXX_CZZT"); //获取字典数据
|
||||
const searchBox = ref(); //搜索框
|
||||
const warningShow = ref(false);
|
||||
const dataList = ref([]);
|
||||
const searchConfiger = ref(
|
||||
[
|
||||
{ label: "姓名", prop: 'yjRyxm', placeholder: "请输入姓名", showType: "input" },
|
||||
// { label: "年龄段", prop: 'age', placeholder: "请输入身份证号码", showType: "Slot" },
|
||||
{ label: "性别", prop: 'xbdm', placeholder: "请选择性别", showType: "select", options: D_BZ_XB },
|
||||
{ label: "身份证", prop: 'yjRysfzh', placeholder: "请输入身份证号码", showType: "input" },
|
||||
{ label: "预警时间", prop: 'times', showType: "datetimerange" },
|
||||
{ label: "状态", prop: 'czzt', placeholder: "请选择状态", showType: "select", options: D_GSXT_YJXX_CZZT },
|
||||
{ label: "人员类别", prop: 'bqdl', placeholder: "请选择人员类别", showType: "select", options: D_GS_QLZDRLX },
|
||||
{ label: "细类", prop: 'yjbqmc', placeholder: "请输入细类", showType: "input" },
|
||||
{ label: "活动发生地址", prop: 'yjDz', placeholder: "请输入活动发生地址", showType: "input" },
|
||||
{ label: "接收单位", prop: 'ssbmdm',showType: "department" },
|
||||
]);
|
||||
|
||||
const queryFrom = ref({});
|
||||
const pageData = reactive({
|
||||
tableData: [], //表格数据
|
||||
keyCount: 0,
|
||||
tableConfiger: {
|
||||
rowHieght: 61,
|
||||
showSelectType: "null",
|
||||
loading: false,
|
||||
haveControls: true
|
||||
},
|
||||
total: 0,
|
||||
pageConfiger: {
|
||||
pageSize: 20,
|
||||
pageCurrent: 1
|
||||
}, //分页
|
||||
controlsWidth: 160, //操作栏宽度
|
||||
tableColumn: [
|
||||
{ label: "状态", prop: "czzt", showSolt: true },
|
||||
{ label: "预警时间", prop: "yjSj" },
|
||||
{ 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" },
|
||||
]
|
||||
});
|
||||
|
||||
onMounted(() => {
|
||||
tabHeightFn();
|
||||
getList()
|
||||
});
|
||||
|
||||
// 搜索
|
||||
const onSearch = (val) => {
|
||||
queryFrom.value = { ...val }
|
||||
queryFrom.value.startTime = val.times ? val.times[0] : ''
|
||||
queryFrom.value.endTime = val.times ? val.times[1] : ''
|
||||
pageData.pageConfiger.pageCurrent = 1;
|
||||
getList()
|
||||
}
|
||||
const changeNo = (val) => {
|
||||
pageData.pageConfiger.pageCurrent = val;
|
||||
getList()
|
||||
}
|
||||
const changeSize = (val) => {
|
||||
pageData.pageConfiger.pageSize = val;
|
||||
getList()
|
||||
}
|
||||
const getList = () => {
|
||||
pageData.tableConfiger.loading = true;
|
||||
const promes = {
|
||||
...queryFrom.value,
|
||||
pageCurrent: pageData.pageConfiger.pageCurrent,
|
||||
pageSize: pageData.pageConfiger.pageSize,
|
||||
}
|
||||
delete promes.times;
|
||||
qcckPost(promes, '/mosty-gsxt/tbYjxx/getQlzdrPageList').then((res) => {
|
||||
pageData.total = res.total || 0;
|
||||
pageData.tableConfiger.loading = false;
|
||||
pageData.tableData = res.records || []
|
||||
}).catch(() => {
|
||||
pageData.tableConfiger.loading = false;
|
||||
})
|
||||
}
|
||||
|
||||
const pushWarning = (val) => {
|
||||
warningShow.value = true;
|
||||
dataList.value = val;
|
||||
}
|
||||
|
||||
const failWarning = (val) => {
|
||||
let ids = [val.id]
|
||||
qcckPost({ids}, '/mosty-gsxt/tbYjxx/yjbc').then((res) => {
|
||||
proxy.$message({ type: "success", message: "成功" });
|
||||
getList();
|
||||
}).catch(() => {
|
||||
proxy.$message({ type: "error", message: "失败" });
|
||||
});
|
||||
}
|
||||
|
||||
// 表格高度计算
|
||||
const tabHeightFn = () => {
|
||||
pageData.tableHeight = window.innerHeight - searchBox.value.offsetHeight - 250;
|
||||
window.onresize = function () { tabHeightFn(); };
|
||||
};
|
||||
</script>
|
||||
|
||||
<style>
|
||||
.el-loading-mask {
|
||||
background: rgba(0, 0, 0, 0.5) !important;
|
||||
}
|
||||
</style>
|
||||
@ -0,0 +1,76 @@
|
||||
<!--预警指派展示组件 -->
|
||||
<template>
|
||||
<el-dialog :draggable="true" :model-value="modelValue" :title="title" :width="width" @close="close" append-to-body>
|
||||
<div class="archive-container">
|
||||
<FormMessage :formList="formData" v-model="listQuery" ref="elform" :rules="rules" :labelWidth="90">
|
||||
</FormMessage>
|
||||
</div>
|
||||
<template #footer>
|
||||
<div class="dialog-footer" style="text-align: center;">
|
||||
<el-button type="primary" @click="submit">确定</el-button>
|
||||
<el-button @click="close">关闭</el-button>
|
||||
</div>
|
||||
</template>
|
||||
</el-dialog>
|
||||
</template>
|
||||
<script setup>
|
||||
import { ref, defineProps, defineEmits, reactive, getCurrentInstance } from 'vue';
|
||||
import FormMessage from "@/components/aboutTable/FormMessage.vue";
|
||||
import { tbYjxxYjzp } from '@/api/yj'
|
||||
const { proxy } = getCurrentInstance();
|
||||
const props = defineProps({
|
||||
modelValue: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
},
|
||||
title: {
|
||||
type: String,
|
||||
default: '预警指派'
|
||||
},
|
||||
width: {
|
||||
type: String,
|
||||
default: '50%'
|
||||
},
|
||||
url: {
|
||||
type: String,
|
||||
default: ''
|
||||
},
|
||||
dataList: {
|
||||
type: Object,
|
||||
default: () => ({})
|
||||
}
|
||||
});
|
||||
const listQuery = ref()
|
||||
const formData = ref([
|
||||
{ label: "指派部门", prop: "zpbmdm", depMc: 'zpbm', type: "department", width: '45%' },
|
||||
{ label: "指派原因", prop: "zpyy", type: "textarea", width: '80%' },
|
||||
])
|
||||
|
||||
const rules = reactive({
|
||||
zpbmdm: [{ required: true, message: "请选择指派部门", trigger: "blur" }],
|
||||
zpyy: [{ required: true, message: "请输入指派原因", trigger: "change" }],
|
||||
});
|
||||
|
||||
const elform = ref(null)
|
||||
const submit = async () => {
|
||||
elform.value.submit(() => {
|
||||
const params = { ...listQuery.value, yjid: props.dataList.id };
|
||||
tbYjxxYjzp(params).then((res) => {
|
||||
proxy.$message({ type: "success", message: "成功" });
|
||||
close();
|
||||
}).catch(() => {
|
||||
proxy.$message({ type: "error", message: "失败" });
|
||||
});
|
||||
});
|
||||
}
|
||||
// 定义事件
|
||||
const emit = defineEmits(['update:modelValue']);
|
||||
const close = () => {
|
||||
elform.value.reset()
|
||||
emit('update:modelValue', false);
|
||||
};
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
|
||||
</style>
|
||||
@ -0,0 +1,168 @@
|
||||
<template>
|
||||
<div>
|
||||
<div class="titleBox">
|
||||
<PageTitle title="报错" />
|
||||
</div>
|
||||
<!-- 搜索 -->
|
||||
<div ref="searchBox">
|
||||
<Search :searchArr="searchConfiger" @submit="onSearch" :key="pageData.keyCount">
|
||||
<template #age="{ row }">
|
||||
<div class="ageBox">
|
||||
<el-input v-model="queryFrom.age_s" placeholder="开始年龄" type="number" :min="1" :max="100" style="width: 102px;"></el-input>
|
||||
<span style="color: #333;" class="ml5 mr5">至</span>
|
||||
<el-input v-model="queryFrom.age_b" placeholder="结束年龄" type="number" :min="parseInt(queryFrom.age_s)+1" :max="100" style="width: 102px;"></el-input>
|
||||
</div>
|
||||
</template>
|
||||
</Search>
|
||||
</div>
|
||||
<!-- 表格 -->
|
||||
<div class="tabBox">
|
||||
<MyTable :tableData="pageData.tableData" :tableColumn="pageData.tableColumn" :tableHeight="pageData.tableHeight"
|
||||
:key="pageData.keyCount" :tableConfiger="pageData.tableConfiger" :controlsWidth="pageData.controlsWidth">
|
||||
<template #czzt="{ row }">
|
||||
<DictTag :value="row.czzt" :tag="false" :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 #yjJb="{ row }">
|
||||
<DictTag :value="row.yjJb" :tag="false" :options="D_BZ_YJJB" />
|
||||
</template>
|
||||
<template #bqdl="{ row }">
|
||||
<DictTag :value="row.bqdl" :tag="false" :options="D_GS_QLZDRLX" />
|
||||
</template>
|
||||
<template #yjLylx="{ row }">
|
||||
<DictTag :value="row.yjLylx" :tag="false" :options="D_BZ_YJLY" />
|
||||
</template>
|
||||
<template #yjLx="{ row }">
|
||||
<DictTag :value="row.yjLx" :tag="false" :options="D_GS_QLZDRYXX" />
|
||||
</template>
|
||||
<template #controls="{ row }">
|
||||
<el-link type="warning" @click="pushAssess(row)">全息档案</el-link>
|
||||
</template>
|
||||
</MyTable>
|
||||
<Pages @changeNo="changeNo" @changeSize="changeSize" :tableHeight="pageData.tableHeight" :pageConfiger="{
|
||||
...pageData.pageConfiger,
|
||||
total: pageData.total
|
||||
}"></Pages>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { holographicProfileJump } from "@/utils/tools.js"
|
||||
import { IdCard } from '@/utils/validate.js'
|
||||
import PageTitle from "@/components/aboutTable/PageTitle.vue";
|
||||
import Search from "@/components/aboutTable/Search.vue";
|
||||
import MyTable from "@/components/aboutTable/MyTable.vue";
|
||||
import Pages from "@/components/aboutTable/Pages.vue";
|
||||
import { qcckGet, qcckPost } from "@/api/qcckApi.js";
|
||||
import { reactive, ref, onMounted, getCurrentInstance, } from "vue";
|
||||
const { proxy } = getCurrentInstance();
|
||||
const { D_BZ_YJLY,D_GS_QLZDRLX,D_BZ_YJJB, D_GS_QLZDRYXX,D_BZ_XB,D_GSXT_YJXX_CZZT } = proxy.$dict('D_BZ_YJLY','D_GS_QLZDRLX',"D_BZ_YJJB", "D_GS_QLZDRYXX", "D_BZ_XB","D_GSXT_YJXX_CZZT"); //获取字典数据
|
||||
const searchBox = ref(); //搜索框
|
||||
const searchConfiger = ref(
|
||||
[
|
||||
{ label: "姓名", prop: 'yjRyxm', placeholder: "请输入姓名", showType: "input" },
|
||||
// { label: "年龄段", prop: 'age', placeholder: "请输入身份证号码", showType: "Slot" },
|
||||
{ label: "性别", prop: 'xbdm', placeholder: "请选择性别", showType: "select", options: D_BZ_XB },
|
||||
{ label: "身份证", prop: 'yjRysfzh', placeholder: "请输入身份证号码", showType: "input" },
|
||||
{ label: "预警时间", prop: 'times', showType: "datetimerange" },
|
||||
{ label: "状态", prop: 'czzt', placeholder: "请选择状态", showType: "select", options: D_GSXT_YJXX_CZZT },
|
||||
{ label: "人员类别", prop: 'bqdl', placeholder: "请选择人员类别", showType: "select", options: D_GS_QLZDRLX },
|
||||
{ label: "细类", prop: 'yjbqmc', placeholder: "请输入细类", showType: "input" },
|
||||
{ label: "活动发生地址", prop: 'yjDz', placeholder: "请输入活动发生地址", showType: "input" },
|
||||
{ label: "接收单位", prop: 'ssbmdm',showType: "department" },
|
||||
]);
|
||||
|
||||
const queryFrom = ref({});
|
||||
const pageData = reactive({
|
||||
tableData: [], //表格数据
|
||||
keyCount: 0,
|
||||
tableConfiger: {
|
||||
rowHieght: 61,
|
||||
showSelectType: "null",
|
||||
loading: false,
|
||||
haveControls: true
|
||||
},
|
||||
total: 0,
|
||||
pageConfiger: {
|
||||
pageSize: 20,
|
||||
pageCurrent: 1
|
||||
}, //分页
|
||||
controlsWidth: 160, //操作栏宽度
|
||||
tableColumn: [
|
||||
{ label: "状态", prop: "czzt", showSolt: true },
|
||||
{ label: "预警时间", prop: "yjSj" },
|
||||
{ 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" },
|
||||
]
|
||||
});
|
||||
|
||||
onMounted(() => {
|
||||
tabHeightFn();
|
||||
getList()
|
||||
});
|
||||
|
||||
// 搜索
|
||||
const onSearch = (val) => {
|
||||
queryFrom.value = { ...val }
|
||||
queryFrom.value.startTime = val.times ? val.times[0] : ''
|
||||
queryFrom.value.endTime = val.times ? val.times[1] : ''
|
||||
pageData.pageConfiger.pageCurrent = 1;
|
||||
getList()
|
||||
}
|
||||
const changeNo = (val) => {
|
||||
pageData.pageConfiger.pageCurrent = val;
|
||||
getList()
|
||||
}
|
||||
const changeSize = (val) => {
|
||||
pageData.pageConfiger.pageSize = val;
|
||||
getList()
|
||||
}
|
||||
const getList = () => {
|
||||
pageData.tableConfiger.loading = true;
|
||||
const promes = {
|
||||
...queryFrom.value,
|
||||
pageCurrent: pageData.pageConfiger.pageCurrent,
|
||||
pageSize: pageData.pageConfiger.pageSize,
|
||||
sfbc:'1'
|
||||
}
|
||||
delete promes.times;
|
||||
qcckPost(promes, '/mosty-gsxt/tbYjxx/getQlzdrPageList').then((res) => {
|
||||
pageData.total = res.total || 0;
|
||||
pageData.tableConfiger.loading = false;
|
||||
pageData.tableData = res.records || []
|
||||
}).catch(() => {
|
||||
pageData.tableConfiger.loading = false;
|
||||
})
|
||||
}
|
||||
|
||||
const pushAssess = (val) => {
|
||||
return holographicProfileJump(null,val) // 全息档案跳转
|
||||
}
|
||||
|
||||
// 表格高度计算
|
||||
const tabHeightFn = () => {
|
||||
pageData.tableHeight = window.innerHeight - searchBox.value.offsetHeight - 250;
|
||||
window.onresize = function () { tabHeightFn(); };
|
||||
};
|
||||
</script>
|
||||
|
||||
<style>
|
||||
.el-loading-mask {
|
||||
background: rgba(0, 0, 0, 0.5) !important;
|
||||
}
|
||||
</style>
|
||||
@ -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>
|
||||
@ -106,7 +106,8 @@ const props = defineProps({
|
||||
maxHeight: {
|
||||
type: [Number, String],
|
||||
default: 666
|
||||
}, search: {
|
||||
},
|
||||
search: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
},
|
||||
@ -145,7 +146,7 @@ const pageData = reactive({
|
||||
{ label: "数据来源", prop: "yjLylx", showOverflowTooltip: true, showSolt: 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 },
|
||||
]
|
||||
@ -325,7 +326,7 @@ defineExpose({
|
||||
})
|
||||
</script>
|
||||
|
||||
<style>
|
||||
<style lang="scss">
|
||||
.el-loading-mask {
|
||||
background: rgba(0, 0, 0, 0.5) !important;
|
||||
}
|
||||
@ -370,4 +371,10 @@ defineExpose({
|
||||
.warning-level-04 td {
|
||||
background-color: transparent !important;
|
||||
}
|
||||
|
||||
.tabBox_zdy{
|
||||
.el-table--fit {
|
||||
overflow: unset !important;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
@ -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_YJLY" />
|
||||
</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,showSolt:D_BZ_YJLY },
|
||||
{ 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 },
|
||||
|
||||
@ -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>
|
||||
|
||||
@ -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>
|
||||
@ -129,19 +130,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: "yjLylx", showOverflowTooltip: true, showSolt: true },
|
||||
|
||||
|
||||
|
||||
{ label: "预警地址", prop: "yjDz", showOverflowTooltip: true },
|
||||
{ label: "接收单位", prop: "ssbm", showOverflowTooltip: true },
|
||||
{ label: "内容", prop: "yjNr", showOverflowTooltip: true },
|
||||
]
|
||||
});
|
||||
|
||||
@ -202,8 +201,6 @@ const assessShow = ref(false)
|
||||
const dataList = ref()
|
||||
const pushAssess = (val) => {
|
||||
return holographicProfileJump(val.yjLx,val) // 全息档案跳转
|
||||
// assessShow.value = true;
|
||||
// dataList.value = val;
|
||||
}
|
||||
// 处理签收
|
||||
const handleQsFk = (val, type) => {
|
||||
@ -317,7 +314,7 @@ defineExpose({
|
||||
})
|
||||
</script>
|
||||
|
||||
<style>
|
||||
<style lang="scss">
|
||||
.el-loading-mask {
|
||||
background: rgba(0, 0, 0, 0.5) !important;
|
||||
}
|
||||
@ -362,4 +359,11 @@ defineExpose({
|
||||
.warning-level-04 td {
|
||||
background-color: transparent !important;
|
||||
}
|
||||
|
||||
.tabBox_zdy{
|
||||
.el-table--fit {
|
||||
overflow: unset !important;
|
||||
}
|
||||
}
|
||||
|
||||
</style>
|
||||
|
||||
@ -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 = () => {
|
||||
|
||||
@ -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>
|
||||
|
||||
@ -50,11 +50,7 @@ const rules = reactive({
|
||||
zpbmdm: [{ required: true, message: "请选择指派部门", trigger: "blur" }],
|
||||
zpyy: [{ required: true, message: "请输入指派原因", trigger: "change" }],
|
||||
});
|
||||
watch(() => props.modelValue, (newVal, oldVal) => {
|
||||
if (newVal) {
|
||||
|
||||
}
|
||||
})
|
||||
const elform = ref(null)
|
||||
const submit = async () => {
|
||||
elform.value.submit(() => {
|
||||
|
||||
Reference in New Issue
Block a user