更新大屏

This commit is contained in:
2026-01-28 18:40:46 +08:00
parent 5545659aee
commit 1390662e4d
6 changed files with 148 additions and 10 deletions

View File

@ -188,8 +188,6 @@ export function MapUtil(map) {
} }
// 弹窗自定义标签内容 // 弹窗自定义标签内容
function zdyContentHtml(flag, item) { function zdyContentHtml(flag, item) {
console.log(item);
let html = '' let html = ''
switch (flag) { switch (flag) {
case 'hm_pop': case 'hm_pop':

View File

@ -132,10 +132,18 @@ const props = defineProps({
tableHeight: { tableHeight: {
type: Number || String, type: Number || String,
}, },
// 在自动滚动中,想滚动到底部,是否请求下一页
hasNext: {
type: Number,
default: false
},
// 自动滚动
isScroll: { isScroll: {
type: Number, type: Number,
default: false default: false
}, },
customClass: { customClass: {
type: String type: String
}, },
@ -333,6 +341,8 @@ const createScroll = () => {
timer.value = setInterval(() => { timer.value = setInterval(() => {
target.scrollTop += 1; target.scrollTop += 1;
if (target.scrollTop >= originalBodyHeight.value) { if (target.scrollTop >= originalBodyHeight.value) {
// 滚动到底部没有下一页了,循环滚动 ,
if(props.hasNext) emit("changePage");
target.scrollTop -= originalBodyHeight.value; target.scrollTop -= originalBodyHeight.value;
} }
}, 20); }, 20);

View File

@ -10,11 +10,18 @@
</div> </div>
<div class="asideL-Bottom"> <div class="asideL-Bottom">
<div class="commom-aside"> <div class="commom-aside">
<QbsbCount></QbsbCount> <transition name="flip" mode="out-in">
<div :key="'qb'" v-if="modelQbsb" class="flip-wrapper">
<QbsbCount @change="modelQbsb = !modelQbsb"></QbsbCount>
</div>
<div :key="'text'" v-else class="flip-wrapper">
<Statistics @change="modelQbsb = !modelQbsb" />
</div>
</transition>
</div> </div>
<div class="commom-aside"> <div class="commom-aside">
<!-- <KeyPpersonneltypes /> --> <!-- <KeyPpersonneltypes /> -->
<Statistics/> <MyCase/>
</div> </div>
<div class="commom-aside" @mouseenter="mouseEnter" @mouseleave="mouseLeave" > <div class="commom-aside" @mouseenter="mouseEnter" @mouseleave="mouseLeave" >
<div style="position: relative; height: 100%;"> <div style="position: relative; height: 100%;">
@ -111,7 +118,6 @@
<BkWarning @changeModel="changeModel"></BkWarning> <BkWarning @changeModel="changeModel"></BkWarning>
</div> </div>
</transition> </transition>
</div> </div>
<div style="width: 33%;"> <div style="width: 33%;">
<Bkcz></Bkcz> <Bkcz></Bkcz>
@ -155,12 +161,14 @@ import GeneralWindow from './model/generalWindow.vue'
import WebSoketClass from '@/utils/webSocket.js' import WebSoketClass from '@/utils/webSocket.js'
import { timeValidate } from '@/utils/tools.js' import { timeValidate } from '@/utils/tools.js'
import Statistics from './model/statistics.vue' import Statistics from './model/statistics.vue'
import MyCase from './model/myCase.vue'
// 导入音频播放器工具类 // 导入音频播放器工具类
import audioPlayer from '@/utils/audioPlayer' import audioPlayer from '@/utils/audioPlayer'
const { proxy } = getCurrentInstance(); const { proxy } = getCurrentInstance();
const { D_BZ_JQDJ } = proxy.$dict('D_BZ_JQDJ') const { D_BZ_JQDJ } = proxy.$dict('D_BZ_JQDJ')
const webSoket = new WebSoketClass() const webSoket = new WebSoketClass()
const modelWarning = ref(true) const modelWarning = ref(true)
const modelQbsb = ref(true)
const searchText = ref('') const searchText = ref('')
const peoDialogRef = ref() const peoDialogRef = ref()
const showSeatch = ref(false) const showSeatch = ref(false)

View File

@ -0,0 +1,108 @@
<template>
<div class="comom-title">
<span class="title">我的关注</span>
</div>
<div class="comom-cnt zdryBox">
<DarkTable
customClass="zdy_bkcz_table"
:tableData="pageData.tableData"
:tableColumn="pageData.tableColumn"
:tableHeight="pageData.tableHeight"
:key="pageData.keyCount"
:isScroll="isScroll"
:hasNext="hasNext"
:tableConfiger="pageData.tableConfiger"
@changePage="changePage"
>
</DarkTable>
</div>
</template>
<script setup>
import { reactive,onMounted,ref } from 'vue'
import DarkTable from '@/components/aboutTable/DarkTable.vue'
import { qcckGet } from "@/api/qcckApi.js";
const isScroll = ref(true)
const hasNext = ref(true)
const isFirst = ref(true)
const pageData = reactive({
tableData: [],
keyCount: 0,
tableHeight: '100%',
tableConfiger: {
loading: false,
rowHieght: 61,
haveControls: false,
showSelectType: "null",
showIndex: false,
stripe: true
},
tableColumn: [
{ label: "情报名称", prop: "qbmc", showOverflowTooltip: true },
{ label: "情报内容", prop: "qbnr", showOverflowTooltip: true },
{ label: "所属部门", prop: "ssbm", showOverflowTooltip: true },
]
});
const page = ref(1);
const total = ref(0);
onMounted(() => {
getList()
})
const changePage = () => {
if(total.value > 0 && pageData.tableData.length == total.value){
hasNext.value = false
}
if(pageData.tableData.length > 0 && pageData.tableData.length < total.value){
console.log('到底了-------');
page.value++;
getList()
}
}
const getList = () => {
if(isFirst.value) pageData.tableConfiger.loading = true;
let params = {
pageCurrent: page.value,
pageSize: 10,
}
qcckGet(params,'/mosty-gsxt/xxcj/selectGzPage').then(res => {
isFirst.value = false;
total.value = res.total;
let arr = res.records || [];
pageData.tableData = page.value == 1 ? arr : [...pageData.tableData, ...arr];
isScroll.value = pageData.tableData.length > 3 ? true : false;
pageData.tableConfiger.loading = false
}).catch(() => {
pageData.tableConfiger.loading = false
})
}
</script>
<style lang="scss" scoped>
@import "@/assets/css/homeScreen.scss";
::v-deeep .comom-title {
background: url("~@/assets/images/bg18.png") no-repeat center center;
background-size: 100% 100%;
}
::v-deep .el-table td.el-table__cell {
color: #ffffff;
}
::v-deep
.el-table--striped
.el-table__body
tr.el-table__row--striped
td.el-table__cell {
background: rgba(0, 61, 130, 0.75);
}
</style>
<style lang="scss">
.zdy_bkcz_table td.el-table__cell {
color: #ffffff !important;
}
.zdy_bkcz_table th.el-table__cell {
color: #ffffff !important;
font-size: 15px;
}
</style>

View File

@ -1,6 +1,6 @@
<template> <template>
<div class="comom-title"> <div class="comom-title">
<span class="title">情报上报统计</span> <span class="title">情报上报统计<span class="titleFz ml18" @click.stop="reversalPush">切换</span></span>
<div class="title titleFz" @click="visible = true"> <div class="title titleFz" @click="visible = true">
查看列表 查看列表
</div> </div>
@ -26,8 +26,9 @@
import { qcckPost } from "@/api/qcckApi.js"; import { qcckPost } from "@/api/qcckApi.js";
import LineEcharts from "../echarts/moreLineEcharts.vue"; import LineEcharts from "../echarts/moreLineEcharts.vue";
import Intelligence from "@/views/home/model/mesgSwitch/intelligence.vue"; import Intelligence from "@/views/home/model/mesgSwitch/intelligence.vue";
import { reactive, onMounted, ref, } from 'vue'; import { defineEmits, onMounted, ref, } from 'vue';
// import TimeData from '@/views/home/model/mesgSwitch/timeData.vue' // import TimeData from '@/views/home/model/mesgSwitch/timeData.vue'
const emit = defineEmits(['change'])
const dataList = ref({ const dataList = ref({
xData: [], xData: [],
@ -64,6 +65,10 @@ const changeTime = (val) => {
const close = () => { const close = () => {
visible.value = false visible.value = false
} }
const reversalPush = () => {
emit('change')
}
</script> </script>

View File

@ -1,6 +1,6 @@
<template> <template>
<div class="comom-cnt chart-container" @mouseenter="mouseEnter" @mouseleave="mouseLeave"> <div class="comom-cnt chart-container" @mouseenter="mouseEnter" @mouseleave="mouseLeave">
<span class="toggle-btn toggle-btn-back" @click="goback">返回</span>
<span class="toggle-btn" @click="addFn">切换</span> <span class="toggle-btn" @click="addFn">切换</span>
<transition name="flip" mode="out-in"> <transition name="flip" mode="out-in">
<div v-if="list[add]" class="flip-wrapper chart-content" :key="add"> <div v-if="list[add]" class="flip-wrapper chart-content" :key="add">
@ -14,9 +14,10 @@
</template> </template>
<script setup> <script setup>
import { ref, reactive, onMounted, onBeforeUnmount, onUnmounted } from 'vue'; import { ref, defineEmits, onMounted, onBeforeUnmount, onUnmounted } from 'vue';
import { tbGsxtXscjTjForSjbm } from '@/api/qbcj' import { tbGsxtXscjTjForSjbm } from '@/api/qbcj'
import BarHatEcharts from "@/views/home/echarts/barHatEcharts.vue"; import BarHatEcharts from "@/views/home/echarts/barHatEcharts.vue";
const emit = defineEmits(['change'])
const list = ref([]); const list = ref([]);
// 请求数据 // 请求数据
const getXscjTjForSjbm = () => { const getXscjTjForSjbm = () => {
@ -72,6 +73,11 @@ const addFn = () => {
add.value = (add.value + 1) % list.value.length add.value = (add.value + 1) % list.value.length
} }
} }
const goback = () => {
emit('change')
}
let times=ref() let times=ref()
onMounted(() => { onMounted(() => {
getXscjTjForSjbm() getXscjTjForSjbm()
@ -197,12 +203,15 @@ onUnmounted(() => {
.toggle-btn { .toggle-btn {
position: absolute; position: absolute;
z-index: 10; z-index: 10;
cursor: pointer; cursor: pointer;
font-size: 14px; font-size: 14px;
margin-left: 45%; margin-left: 45%;
color: rgb(255, 146, 4); color: rgb(255, 146, 4);
font-family: 'YSBTH'; font-family: 'YSBTH';
} }
.toggle-btn-back{
margin-left: 2%;
}
/* 图表内容区域样式 */ /* 图表内容区域样式 */
.chart-content { .chart-content {