From 1b9fea7d4af68d8f933b2dc42bf6084b9646f64c Mon Sep 17 00:00:00 2001 From: 马宇豪 <978517621@qq.com> Date: 星期二, 04 三月 2025 08:39:55 +0800 Subject: [PATCH] 修改作业等级名称 --- src/views/riskWarningSys/warningBigScreen/components/message.vue | 100 +++++++++++++++++++++++++++++++++++++------------- 1 files changed, 74 insertions(+), 26 deletions(-) diff --git a/src/views/riskWarningSys/warningBigScreen/components/message.vue b/src/views/riskWarningSys/warningBigScreen/components/message.vue index d075b5d..f15d59f 100644 --- a/src/views/riskWarningSys/warningBigScreen/components/message.vue +++ b/src/views/riskWarningSys/warningBigScreen/components/message.vue @@ -1,80 +1,128 @@ <template> <div class="charts-cont"> <div class="message"> - <dv-scroll-board ref="scrollBoard" :config="config" style="width:100%;height:100%" @mouseover="mouseoverHandler" @click="clickHandler" /> + <dv-scroll-board ref="scrollBoard" :config="config" style="width:100%;height:100%;cursor: pointer" @mouseover="mouseoverHandler" @click="clickHandler" /> </div> </div> </template> <script lang="ts"> - import {toRefs, reactive, defineComponent, ref, defineAsyncComponent, onMounted} from 'vue'; + import {toRefs, reactive, defineComponent, ref, defineAsyncComponent, onMounted, watchEffect} from 'vue'; import { storeToRefs } from 'pinia'; import { initBackEndControlRoutes } from '/@/router/backEnd'; import {useUserInfo} from "/@/stores/userInfo"; import { Session } from '/@/utils/storage'; import { Search } from '@element-plus/icons-vue' import { ElMessage } from 'element-plus' + import { useRouter } from 'vue-router' import type { FormInstance, FormRules } from 'element-plus' import { workApplyApi } from '/@/api/specialWorkSystem/workApply'; import * as echarts from 'echarts'; import '/@/theme/bigScreen.css' - + import {useScreenTheme} from "/@/stores/screenTheme" + import {riskWarningApi} from "/@/api/riskWarning"; interface stateType { + reportData: [] + config: object } export default defineComponent({ - name: 'profession', + name: 'message', components: {}, props:{ - size: Number + size: Number, + theme: Boolean }, - setup(props) { + setup(props,context) { + const screenThemes = useScreenTheme() + const { screenTheme } = storeToRefs(screenThemes); const userInfo = useUserInfo() const { userInfos } = storeToRefs(userInfo); + const router = useRouter(); const pro = ref("eChartPro" + Date.now() + Math.random()) const state = reactive<stateType>({ + reportData: [], config:{ - header: ['消息列表', '同比'], - data: [ - ['一月预警消息SPI报告', '↑ 94%'], - ['二月预警消息SPI报告', '↑ 94%'], - ['三月预警消息SPI报告', '↑ 94%'], - ['四月预警消息SPI报告', '↑ 94%'], - ['五月预警消息SPI报告', '↑ 94%'], - ['六月预警消息SPI报告', '↑ 94%'], - ['七月预警消息SPI报告', '↑ 94%'], - ['八月预警消息SPI报告', '↑ 94%'], - ['九月预警消息SPI报告', '↑ 94%'], - ['十月预警消息SPI报告', '↑ 94%'], - ['十一月预警消息SPI报告', '↑ 94%'], - ['十二月预警消息SPI报告', '↑ 94%'] - ], - index: true, - columnWidth: [60, 220], - align: ['center','center','center'], + header: ['消息列表','同比'], + data: [], + align: ['left'], headerBGC: '#0049af', oddRowBGC: 'none', + index: true, + columnWidth: [55,250], evenRowBGC: 'rgba(57,122,206,.1)', indexHeader: '序号', rowNum: fontSize(5) } }) + const getReport = async () => { + let res = await riskWarningApi().getAllReport(); + if (res.data.code === '200') { + state.reportData = res.data.data + state.config.data = state.reportData.map(i=> { + if(i.yoy >= 0){ + return [i.spiName,'<span style="color:#11feee">' + i.yoy + '%</span>'] + }else{ + return [i.spiName,'<span style="color:red">' + i.yoy + '%</span>'] + } + + }) + } else { + ElMessage({ + type: 'warning', + message: res.data.msg + }); + } + } + const mouseoverHandler = (e: any) => { - console.log(e) + } const clickHandler = (e: any) => { - console.log(e) + router.push({ + path: 'screenPage', + query: { + num: 8, + rowIndex: e.rowIndex + } + }) + context.emit('getData',e.rowIndex) } function fontSize(val){ let nowClientWidth = document.documentElement.clientWidth; return val * (nowClientWidth/1920) * Number(props.size); } + watchEffect(() => { + if(props.theme){ + state.config.headerBGC = '#0049af' + state.config.oddRowBGC = 'none' + state.config.evenRowBGC = 'rgba(57,122,206,.1)' + }else{ + state.config.headerBGC = '#333' + state.config.oddRowBGC = '#888' + state.config.evenRowBGC = '#999' + } + }) + + const getTheme =()=>{ + if(screenTheme.value.isDark){ + state.config.headerBGC = '#0049af' + state.config.oddRowBGC = 'none' + state.config.evenRowBGC = 'rgba(57,122,206,.1)' + }else{ + state.config.headerBGC = '#333' + state.config.oddRowBGC = '#888' + state.config.evenRowBGC = '#999' + } + } // 页面载入时执行方法 onMounted(() => { + getReport() + getTheme() }); return { -- Gitblit v1.9.2