Files
sgxt_web/src/views/home/model/dbCount.vue

144 lines
3.8 KiB
Vue
Raw Normal View History

2025-04-15 14:38:12 +08:00
<template>
<div class="comom-title">
<span class="title">线索研判盯办统计</span>
2025-12-27 11:10:31 +08:00
<el-popover placement="right" :width="430" :visible="visible">
2025-10-26 12:25:50 +08:00
<template #reference>
2025-12-27 11:10:31 +08:00
<div class="title" style="position: relative;z-index: 10000;height: 40px;width: 40px;" @click="visible = true">
</div>
2025-10-26 12:25:50 +08:00
</template>
2025-11-22 21:59:58 +08:00
<div>
<div class="qbltData">
<div>查询</div>
<div class="close" @click.stop="close()">X</div>
</div>
<TimeData v-if="visible" @changeTime="changeTime" />
</div>
2025-10-26 12:25:50 +08:00
</el-popover>
</div>
2025-04-15 14:38:12 +08:00
<ul class="comom-cnt xsBox flex flex-warp just-between align-center">
2025-12-27 11:10:31 +08:00
<li class="xs-item" v-for="(item, idx) in contentItem" :key="idx" @click="openTc(item.type)">
2025-10-26 12:25:50 +08:00
{{ item.label }}:{{ item.value }}
2025-04-15 14:38:12 +08:00
</li>
</ul>
2025-12-27 11:10:31 +08:00
<TotalNumberClues v-model="openShow.xfzs" :title="title"/>
<TotalNumberDistributions v-model="openShow.xszs" />
2025-04-15 14:38:12 +08:00
</template>
<script setup>
2025-12-27 11:10:31 +08:00
import { ref, onMounted, reactive } from 'vue';
2025-11-22 21:59:58 +08:00
import TimeData from '@/views/home/model/mesgSwitch/timeData.vue'
2025-12-27 11:10:31 +08:00
import TotalNumberClues from '@/views/home/components/totalNumberClues.vue'
import TotalNumberDistributions from '@/views/home/components/totalNumberDistributions.vue'
2025-12-11 21:08:18 +08:00
import { qbcjDpxsCount } from "@/api/model.js"
2025-04-15 14:38:12 +08:00
const contentItem = ref([
2025-12-27 11:10:31 +08:00
{ label: '线索总数', value: '0', type: 'xszs' },
{ label: '下发总数', value: '0', type: 'xfzs' },
{ label: '已处置总数', value: '0', type: 'yczzs' },
{ label: '反馈总数', value: '0', type: 'fkzs' },
{ label: '未反馈总数', value: '0', type: 'wfks' },
{ label: '未处置总数', value: '0', type: 'wczzs' },
2025-04-15 14:38:12 +08:00
])
2025-11-22 21:59:58 +08:00
const visible = ref(false)
const changeTime = (val) => {
listQuery.value = {
...val
}
getCount()
}
2025-12-27 11:10:31 +08:00
const title = ref('下发总数')
2025-12-11 21:08:18 +08:00
onMounted(() => {
2025-12-27 11:10:31 +08:00
2025-12-11 21:08:18 +08:00
qbcjDpxsCount({}, '/mosty-gsxt/tbXs/getXsCount').then(res => {
res = res || {}
// 根据API返回的数据更新contentItem
contentItem.value = [
2025-12-27 11:10:31 +08:00
{ label: '线索总数', value: res.xszs || 0, type: 'xszs' },
{ label: '下发总数', value: res.xfzs || 0, type: 'xfzs' },
{ label: '已处置总数', value: res.yczzs || 0, type: 'yczzs' },
{ label: '反馈总数', value: res.fkzs || 0, type: 'fkzs' },
{ label: '未反馈总数', value: res.wfkzs || 0, type: 'wfks' },
{ label: '未处置总数', value: res.wczzs || 0, type: 'wczzs' },
2025-12-11 21:08:18 +08:00
]
})
})
2025-12-27 11:10:31 +08:00
const openShow=reactive({
xszs: false,
xfzs: false,
yczzs: false,
fkzs: false,
wfks: false,
wczzs: false,
})
const openTc = (val) => {
console.log(val);
switch (val) {
case 'xszs':
openShow.xszs = true
break;
case 'xfzs':
openShow.xfzs = true
title.value = '下发总数'
break;
case 'yjzs': break;
case 'yczzs': break;
case 'fkzs': break;
case 'wfks':
openShow.xfzs = true
title.value = '未反馈数'
break;
case 'wczzs': break;
}
}
// // 线索总数
// const xsCount = () => {
// xxcjQbcjSelectPage({}).then(res => {
// console.log(res);
// })
// }
// // 下发总数
// const xfxsCount = () => {
// xxcjXfxsSelectPage({}).then(res => {
// console.log(res);
// })
// }
2025-11-22 21:59:58 +08:00
const close = () => {
visible.value = false
}
2025-04-15 14:38:12 +08:00
</script>
<style lang="scss" scoped>
@import "@/assets/css/homeScreen.scss";
2025-10-26 12:25:50 +08:00
.xsBox {
background: url("~@/assets/images/bg_12.png") no-repeat center center;
background-size: 100% 100%;
2025-12-27 11:10:31 +08:00
position: relative;
z-index: 299;
2025-10-26 12:25:50 +08:00
.xs-item {
2025-12-27 11:10:31 +08:00
cursor: pointer;
2025-10-26 12:25:50 +08:00
width: 31%;
height: 36px;
line-height: 36px;
text-align: center;
background: url("~@/assets/images/content-item.png") no-repeat center center;
2025-04-15 14:38:12 +08:00
background-size: 100% 100%;
2025-10-26 12:25:50 +08:00
}
2025-04-15 14:38:12 +08:00
}
2025-12-27 11:10:31 +08:00
2025-11-22 21:59:58 +08:00
.qbltData {
width: 100%;
display: flex;
justify-content: space-between;
padding: 0 10px 10px
}
.close {
cursor: pointer;
}
2025-10-26 12:25:50 +08:00
</style>