1.更换系统主题颜色
2.增加历史报警记录模块
This commit is contained in:
parent
873baee839
commit
7f5777ab60
@ -1,8 +1,8 @@
|
|||||||
@font-face {
|
@font-face {
|
||||||
font-family: "iconfont"; /* Project id 3879194 */
|
font-family: "iconfont"; /* Project id 3879194 */
|
||||||
src: url('//at.alicdn.com/t/c/font_3879194_0vtcz1yxgvk.woff2?t=1683879014134') format('woff2'),
|
src: url('//at.alicdn.com/t/c/font_3879194_xfchth53vyb.woff2?t=1686011466607') format('woff2'),
|
||||||
url('//at.alicdn.com/t/c/font_3879194_0vtcz1yxgvk.woff?t=1683879014134') format('woff'),
|
url('//at.alicdn.com/t/c/font_3879194_xfchth53vyb.woff?t=1686011466607') format('woff'),
|
||||||
url('//at.alicdn.com/t/c/font_3879194_0vtcz1yxgvk.ttf?t=1683879014134') format('truetype');
|
url('//at.alicdn.com/t/c/font_3879194_xfchth53vyb.ttf?t=1686011466607') format('truetype');
|
||||||
}
|
}
|
||||||
|
|
||||||
.iconfont {
|
.iconfont {
|
||||||
@ -13,6 +13,10 @@
|
|||||||
-moz-osx-font-smoothing: grayscale;
|
-moz-osx-font-smoothing: grayscale;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.icon-lishijilu:before {
|
||||||
|
content: "\eaf7";
|
||||||
|
}
|
||||||
|
|
||||||
.icon-zhongyingwen:before {
|
.icon-zhongyingwen:before {
|
||||||
content: "\e607";
|
content: "\e607";
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<!--
|
<!--
|
||||||
* @FilePath: \screenFront\src\components\assembly\RotationTable.vue
|
* @FilePath: \code\gitscreenFront\src\components\assembly\RotationTable.vue
|
||||||
* @Author: 王路平
|
* @Author: 王路平
|
||||||
* @文件版本: V1.0.0
|
* @文件版本: V1.0.0
|
||||||
* @Date: 2023-02-16 15:09:06
|
* @Date: 2023-02-16 15:09:06
|
||||||
@ -38,7 +38,8 @@
|
|||||||
v-model:visible="visible"
|
v-model:visible="visible"
|
||||||
:content="tipcontent"
|
:content="tipcontent"
|
||||||
placement="top"
|
placement="top"
|
||||||
effect="dark"
|
effect="light"
|
||||||
|
popper-class="tooltip-class"
|
||||||
trigger="click"
|
trigger="click"
|
||||||
virtual-triggering
|
virtual-triggering
|
||||||
:virtual-ref="triggerRef"
|
:virtual-ref="triggerRef"
|
||||||
@ -171,4 +172,12 @@ h2 {
|
|||||||
color: #fff;
|
color: #fff;
|
||||||
font-size: 20px;
|
font-size: 20px;
|
||||||
}
|
}
|
||||||
|
.el-popper{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
<style>
|
||||||
|
.el-popper.tooltip-class{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
</style>
|
97
src/components/headerBox/dialog/headerDialog.vue
Normal file
97
src/components/headerBox/dialog/headerDialog.vue
Normal file
@ -0,0 +1,97 @@
|
|||||||
|
<!--
|
||||||
|
* @FilePath: \code\gitscreenFront\src\components\headerBox\dialog\headerDialog.vue
|
||||||
|
* @Author: 王路平
|
||||||
|
* @文件版本: V1.0.0
|
||||||
|
* @Date: 2023-06-06 09:23:12
|
||||||
|
* @Description:
|
||||||
|
*
|
||||||
|
* 版权信息 : 2023 by ${再登软件}, All Rights Reserved.
|
||||||
|
-->
|
||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<el-dialog v-model="is_Show" title="历史报警记录" ref="" destroy-on-close>
|
||||||
|
<el-table :data="tableData" v-loading="dialogLoading" size="large" max-height="600px" stripe>
|
||||||
|
<el-table-column type="index" :index="indexMethod" label="序号" min-width="10px" header-align="center" align="center"/>
|
||||||
|
<el-table-column property="context" label="报警详情" header-align="center"/>
|
||||||
|
</el-table>
|
||||||
|
<div class=" pagination-class">
|
||||||
|
<el-pagination
|
||||||
|
v-model:current-page="searchConfig.pageNum"
|
||||||
|
v-model:page-size="searchConfig.pageSize"
|
||||||
|
:page-sizes="[5, 10, 50, 100]"
|
||||||
|
:small="small"
|
||||||
|
:disabled="disabled"
|
||||||
|
:background="background"
|
||||||
|
layout=" prev, pager, next, jumper,sizes"
|
||||||
|
:total="searchConfig.total"
|
||||||
|
@size-change="handleSizeChange"
|
||||||
|
@current-change="handleCurrentChange"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</el-dialog>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup lang="ts">
|
||||||
|
import { computed, onMounted, reactive, ref } from "vue";
|
||||||
|
const props = defineProps({
|
||||||
|
tableData: {
|
||||||
|
type: Array,
|
||||||
|
default: () => [],
|
||||||
|
},
|
||||||
|
dialogTableVisible:{
|
||||||
|
type: Boolean,
|
||||||
|
default: false,
|
||||||
|
},
|
||||||
|
dialogLoading:{
|
||||||
|
type: Boolean,
|
||||||
|
default: true,
|
||||||
|
},
|
||||||
|
type:{
|
||||||
|
type: String,
|
||||||
|
default: '',
|
||||||
|
},
|
||||||
|
total:{
|
||||||
|
type: Number,
|
||||||
|
default: 0,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
//总页数、每页数量、当前页
|
||||||
|
const searchConfig = reactive({
|
||||||
|
type:props.type,
|
||||||
|
total:props.total,
|
||||||
|
pageSize:10,
|
||||||
|
pageNum:1
|
||||||
|
})
|
||||||
|
let small=ref(false)
|
||||||
|
let disabled=ref(false)
|
||||||
|
let background=ref(false)
|
||||||
|
const emits = defineEmits(["update:dialogTableVisible",'getDialogdatafun']);
|
||||||
|
const indexMethod = (index: number) => {
|
||||||
|
return index + 1
|
||||||
|
}
|
||||||
|
const is_Show = computed({
|
||||||
|
get: () => props.dialogTableVisible,
|
||||||
|
set: (val) => {
|
||||||
|
emits("update:dialogTableVisible", val);
|
||||||
|
},
|
||||||
|
})
|
||||||
|
const handleSizeChange = (val: number) => {
|
||||||
|
searchConfig.pageSize=val
|
||||||
|
emits("getDialogdatafun", searchConfig);
|
||||||
|
}
|
||||||
|
const handleCurrentChange = (val: number) => {
|
||||||
|
searchConfig.pageNum=val
|
||||||
|
emits("getDialogdatafun", searchConfig);
|
||||||
|
}
|
||||||
|
onMounted(() => {
|
||||||
|
|
||||||
|
|
||||||
|
})
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
.pagination-class{
|
||||||
|
margin-top: 10px;
|
||||||
|
}</style>
|
@ -1,5 +1,5 @@
|
|||||||
<!--
|
<!--
|
||||||
* @FilePath: \screenFront\src\components\headerBox\header2.vue
|
* @FilePath: \code\gitscreenFront\src\components\headerBox\header2.vue
|
||||||
* @Author: 王路平
|
* @Author: 王路平
|
||||||
* @文件版本: V1.0.0
|
* @文件版本: V1.0.0
|
||||||
* @Date: 2023-02-16 11:04:06
|
* @Date: 2023-02-16 11:04:06
|
||||||
@ -9,206 +9,286 @@
|
|||||||
-->
|
-->
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="header2" :style="{ width: props.width, height: props.height }" >
|
<div class="header2" :style="{ width: props.width, height: props.height }">
|
||||||
<h1 :class="langJudge()=='简体中文'?'zh-title':'en-title'">{{ props.title }}</h1>
|
<h1 :class="langJudge() == '简体中文' ? 'zh-title' : 'en-title'">
|
||||||
<div class="slot" >
|
{{ props.title }}
|
||||||
|
</h1>
|
||||||
|
<div class="slot">
|
||||||
<div class="tip" style="display: flex">
|
<div class="tip" style="display: flex">
|
||||||
<span class="tipspan" v-for="item in props.titleTip">
|
<span class="tipspan" v-for="item in props.titleTip">
|
||||||
<div class="colortip" :style="{backgroundColor: item.color}"></div>
|
<div class="colortip" :style="{ backgroundColor: item.color }"></div>
|
||||||
<span class="tipstring">{{item.name}}</span></span>
|
<span class="tipstring">{{ item.name }}</span></span
|
||||||
|
>
|
||||||
<slot></slot>
|
<slot></slot>
|
||||||
</div>
|
</div>
|
||||||
<div v-show="typeObj.comback" class="comeBack" @click="comeBackFun" >
|
<div v-show="typeObj.comback" class="comeBack" @click="comeBackFun">
|
||||||
<i class="iconfont icon-back"></i>
|
<i class="iconfont icon-back"></i>
|
||||||
</div>
|
</div>
|
||||||
<div v-show="typeObj.AbnormalData" ref="AbnormalDataRef" class="AbnormalData" @click="AbnormalDataFun" >
|
<div
|
||||||
<dv-scroll-board class="dv-scroll-boardclass" ref="tipList" :config="listdata" style="width:30rem;height:50px" />
|
v-show="typeObj.AbnormalData"
|
||||||
<el-badge :value="AbnormalNum" class="i-badge" :hidden="AbnormalNum==0">
|
ref="AbnormalDataRef"
|
||||||
<i :class="AbnormalNum>0?'iconfont icon-baojingxinxi Abnormal-icon-yellow':'iconfont icon-baojingxinxi'"></i>
|
class="AbnormalData"
|
||||||
</el-badge>
|
@click="AbnormalDataFun"
|
||||||
</div>
|
>
|
||||||
<div v-show="typeObj.time" class="time">
|
<dv-scroll-board
|
||||||
<p ref="Timedom">{{ timeHtml }}</p>
|
class="dv-scroll-boardclass"
|
||||||
</div>
|
ref="tipList"
|
||||||
|
:config="listdata"
|
||||||
|
style="width: 30rem; height: 50px"
|
||||||
|
/>
|
||||||
|
<el-badge
|
||||||
|
:value="AbnormalNum"
|
||||||
|
class="i-badge"
|
||||||
|
:hidden="AbnormalNum == 0"
|
||||||
|
>
|
||||||
|
<i
|
||||||
|
:class="
|
||||||
|
AbnormalNum > 0
|
||||||
|
? 'iconfont icon-baojingxinxi Abnormal-icon-yellow'
|
||||||
|
: 'iconfont icon-baojingxinxi'
|
||||||
|
"
|
||||||
|
></i>
|
||||||
|
</el-badge>
|
||||||
|
</div>
|
||||||
|
<div v-show="typeObj.time" class="time">
|
||||||
|
<p ref="Timedom">{{ timeHtml }}</p>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<el-popover
|
<el-popover
|
||||||
ref="popoverRef"
|
ref="popoverRef"
|
||||||
:virtual-ref="AbnormalDataRef"
|
:virtual-ref="AbnormalDataRef"
|
||||||
:visible="Abnormalpopovervisible"
|
:visible="Abnormalpopovervisible"
|
||||||
effect="dark"
|
trigger="click"
|
||||||
trigger="click"
|
width="600px"
|
||||||
width="600px"
|
placement="bottom-start"
|
||||||
placement="bottom-start"
|
virtual-triggering
|
||||||
virtual-triggering
|
>
|
||||||
|
<ul
|
||||||
>
|
class="popoverBOX"
|
||||||
<ul class="popoverBOX" ref="popoverliDom" v-click-outside="noClickAbnormalDataFun">
|
ref="popoverliDom"
|
||||||
<li v-for="item in powerlist" :key="item.deviceId" >{{item.context}}</li>
|
v-click-outside="noClickAbnormalDataFun"
|
||||||
<li class="lookdown" v-show="onloadlist">
|
>
|
||||||
<span @click="clickNextPageAlarmList">{{ t('messages.加载更多') }}</span>
|
<li class="popoverHeader">
|
||||||
</li>
|
<!-- <span><i class="iconfont icon-lishijilu lishijilu"></i>历史记录</span> -->
|
||||||
</ul>
|
<el-button type="primary" :icon="Clock" text @click="showDialog"
|
||||||
|
>历史记录</el-button
|
||||||
</el-popover>
|
>
|
||||||
|
</li>
|
||||||
|
<li v-for="item in powerlist" :key="item.deviceId">
|
||||||
|
{{ item.context }}
|
||||||
|
</li>
|
||||||
|
<li class="lookdown" v-show="onloadlist">
|
||||||
|
<span @click="clickNextPageAlarmList">{{
|
||||||
|
t("messages.加载更多")
|
||||||
|
}}</span>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</el-popover>
|
||||||
|
<HDialog
|
||||||
|
:tableData="dialogdata"
|
||||||
|
v-model:dialogTableVisible="dialogTableVisible"
|
||||||
|
:dialogLoading="dialogLoading"
|
||||||
|
@getDialogdatafun="getDialogdatafun"
|
||||||
|
:type="AbnormalType.type"
|
||||||
|
:total="dialogtotal"
|
||||||
|
></HDialog>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import useNowTime from "@/hook/nowTime";
|
import useNowTime from "@/hook/nowTime";
|
||||||
import { ClickOutside as vClickOutside } from 'element-plus'
|
import { ClickOutside as vClickOutside } from "element-plus";
|
||||||
import { useRoute,useRouter } from "vue-router";
|
import { useRoute, useRouter } from "vue-router";
|
||||||
import { devListType } from "@/type/InPlantProducts";
|
import { devListType } from "@/type/InPlantProducts";
|
||||||
import { getAlarmListData} from "@/http/index";
|
import { getAlarmListData } from "@/http/index";
|
||||||
import { onMounted, onUnmounted, reactive, ref ,unref, watch,computed } from "vue";
|
import {
|
||||||
|
onMounted,
|
||||||
|
onUnmounted,
|
||||||
|
reactive,
|
||||||
|
ref,
|
||||||
|
unref,
|
||||||
|
watch,
|
||||||
|
computed,
|
||||||
|
} from "vue";
|
||||||
import { connectWebsocket, closeWebsocket } from "@/utils/websocket";
|
import { connectWebsocket, closeWebsocket } from "@/utils/websocket";
|
||||||
import { useHeaderStore } from "@/store/components/header";
|
import { useHeaderStore } from "@/store/components/header";
|
||||||
import { getStoredLanguage } from "@/utils/languageStorage"
|
import { getStoredLanguage } from "@/utils/languageStorage";
|
||||||
import { useI18n } from 'vue-i18n'
|
import { useI18n } from "vue-i18n";
|
||||||
let {t} = useI18n();
|
import { Clock } from "@element-plus/icons-vue";
|
||||||
|
import HDialog from "./dialog/headerDialog.vue";
|
||||||
|
let { t } = useI18n();
|
||||||
const storeheader = useHeaderStore();
|
const storeheader = useHeaderStore();
|
||||||
let { timeHtml } = useNowTime();
|
let { timeHtml } = useNowTime();
|
||||||
const router=useRouter()
|
const router = useRouter();
|
||||||
//刷新数据
|
//刷新数据
|
||||||
let numkey=ref(0)
|
let numkey = ref(0);
|
||||||
let popoverkey=ref(0)
|
let popoverkey = ref(0);
|
||||||
//历史数据dom
|
//历史数据dom
|
||||||
let AbnormalDataRef=ref()
|
let AbnormalDataRef = ref();
|
||||||
let popoverRef=ref()
|
let popoverRef = ref();
|
||||||
let tipList=ref()
|
let tipList = ref();
|
||||||
let popoverliDom=ref()
|
let popoverliDom = ref();
|
||||||
//历史报警数据弹窗显示
|
//历史报警数据弹窗显示
|
||||||
let Abnormalpopovervisible=ref(false)
|
let Abnormalpopovervisible = ref(false);
|
||||||
let AbnormalpopovervisibleCtrl=ref(false)//解决点击历史报警数据弹窗外部关闭再打开问题
|
let AbnormalpopovervisibleCtrl = ref(false); //解决点击历史报警数据弹窗外部关闭再打开问题
|
||||||
let onloadlist= computed(()=>{
|
//dialog
|
||||||
return storeheader.num>powerlist.length
|
let dialogdata = reactive([]);
|
||||||
})
|
let dialogTableVisible = ref(false);
|
||||||
const listdata = reactive<devListType>({data: [],
|
let dialogLoading = ref(true);
|
||||||
rowNum:2,
|
let dialogtotal=ref(0)
|
||||||
oddRowBGC:'#100C2A',
|
let onloadlist = computed(() => {
|
||||||
evenRowBGC:'#100C2A',
|
return storeheader.num > powerlist.length;
|
||||||
|
});
|
||||||
|
const listdata = reactive<devListType>({
|
||||||
|
data: [],
|
||||||
|
rowNum: 2,
|
||||||
|
oddRowBGC: "#100C2A",
|
||||||
|
evenRowBGC: "#100C2A",
|
||||||
hoverPause: true,
|
hoverPause: true,
|
||||||
carousel:'page',
|
carousel: "page",
|
||||||
waitTime: 3000,
|
waitTime: 3000,
|
||||||
align:['left']});
|
align: ["left"],
|
||||||
let AbnormalNum=ref(0)
|
});
|
||||||
//弹窗历史数据
|
let AbnormalNum = ref(0);
|
||||||
let powerlist=reactive([])
|
//弹窗历史数据
|
||||||
|
let powerlist = reactive([]);
|
||||||
let props = defineProps<{
|
let props = defineProps<{
|
||||||
width: string;
|
width: string;
|
||||||
height: string;
|
height: string;
|
||||||
title: string;
|
title: string;
|
||||||
titleTip:any;
|
titleTip: any;
|
||||||
typeFun:any[];
|
typeFun: any[];
|
||||||
alarmType:any[]
|
alarmType: any[];
|
||||||
}>();
|
}>();
|
||||||
const typeObj=reactive({
|
const typeObj = reactive({
|
||||||
comback:false,
|
comback: false,
|
||||||
AbnormalData:false,
|
AbnormalData: false,
|
||||||
time:false,
|
time: false,
|
||||||
})
|
});
|
||||||
const AbnormalType=reactive({
|
const AbnormalType = reactive({
|
||||||
pageSize:5,
|
pageSize: 5,
|
||||||
pageNum:1,
|
pageNum: 1,
|
||||||
type:''
|
type: "",
|
||||||
})
|
});
|
||||||
let comeBackFun=()=>{
|
let comeBackFun = () => {
|
||||||
router.go(-1)
|
router.go(-1);
|
||||||
}
|
};
|
||||||
const changeAbnormalData = (val: any) => {
|
const changeAbnormalData = (val: any) => {
|
||||||
tipList.value.updateRows(val.data, { ...val });
|
tipList.value.updateRows(val.data, { ...val });
|
||||||
};
|
};
|
||||||
let AbnormalDataFun=()=>{
|
let AbnormalDataFun = () => {
|
||||||
//该函数执行优先级低于noClickAbnormalDataFun
|
//该函数执行优先级低于noClickAbnormalDataFun
|
||||||
//Abnormalpopovervisibled代表弹窗是否已经显示
|
//Abnormalpopovervisibled代表弹窗是否已经显示
|
||||||
// 判断弹窗是否打开如果打开就关闭 关闭就打开
|
// 判断弹窗是否打开如果打开就关闭 关闭就打开
|
||||||
if(Abnormalpopovervisible.value){
|
if (Abnormalpopovervisible.value) {
|
||||||
Abnormalpopovervisible.value=false
|
Abnormalpopovervisible.value = false;
|
||||||
}else{
|
} else {
|
||||||
//关闭情况下判断是否点击了非弹窗位置如果是则仍然关闭 否则打开
|
//关闭情况下判断是否点击了非弹窗位置如果是则仍然关闭 否则打开
|
||||||
if(AbnormalpopovervisibleCtrl.value){
|
if (AbnormalpopovervisibleCtrl.value) {
|
||||||
Abnormalpopovervisible.value=false
|
Abnormalpopovervisible.value = false;
|
||||||
}else{
|
} else {
|
||||||
Abnormalpopovervisible.value=true
|
Abnormalpopovervisible.value = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
};
|
||||||
|
let noClickAbnormalDataFun = () => {
|
||||||
}
|
|
||||||
let noClickAbnormalDataFun=()=>{
|
|
||||||
//该函数执行优先级高于AbnormalDataFun
|
//该函数执行优先级高于AbnormalDataFun
|
||||||
// 判断弹窗是否打开如果打开并且我点击了非弹窗位置则ctrl为true否则为false
|
// 判断弹窗是否打开如果打开并且我点击了非弹窗位置则ctrl为true否则为false
|
||||||
if(Abnormalpopovervisible.value){
|
if (Abnormalpopovervisible.value) {
|
||||||
AbnormalpopovervisibleCtrl.value=true
|
AbnormalpopovervisibleCtrl.value = true;
|
||||||
}else{
|
} else {
|
||||||
AbnormalpopovervisibleCtrl.value=false
|
AbnormalpopovervisibleCtrl.value = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
Abnormalpopovervisible.value?Abnormalpopovervisible.value=false:''
|
|
||||||
|
|
||||||
}
|
Abnormalpopovervisible.value ? (Abnormalpopovervisible.value = false) : "";
|
||||||
function typeStatus(){
|
};
|
||||||
|
function typeStatus() {
|
||||||
|
if (props.typeFun.length == 0) {
|
||||||
if(props.typeFun.length==0){
|
return;
|
||||||
return
|
|
||||||
}
|
}
|
||||||
props.typeFun.forEach(res=>{
|
props.typeFun.forEach((res) => {
|
||||||
for(let key in typeObj){
|
for (let key in typeObj) {
|
||||||
if(res==key){
|
if (res == key) {
|
||||||
typeObj[key]=true
|
typeObj[key] = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
});
|
||||||
}
|
}
|
||||||
function langJudge(){
|
function langJudge() {
|
||||||
let lang = getStoredLanguage()
|
let lang = getStoredLanguage();
|
||||||
if(lang){
|
if (lang) {
|
||||||
return lang
|
return lang;
|
||||||
}else{
|
} else {
|
||||||
return "简体中文"
|
return "简体中文";
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
function showDialog() {
|
||||||
|
if (dialogTableVisible.value == false) {
|
||||||
|
dialogdata.length = 0;
|
||||||
|
getDialogdatafun({
|
||||||
|
type: AbnormalType.type,
|
||||||
|
pageSize: 10,
|
||||||
|
pageNum: 1,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
Abnormalpopovervisible.value = false;
|
||||||
|
dialogTableVisible.value = true;
|
||||||
|
}
|
||||||
|
async function getDialogdatafun(config) {
|
||||||
|
dialogLoading.value = true;
|
||||||
|
let result: any = await getAlarmListData(config);
|
||||||
|
|
||||||
|
if (result.code == 200) {
|
||||||
|
dialogtotal.value=result.total
|
||||||
|
dialogdata.push(...result.rows)
|
||||||
|
dialogLoading.value = false;
|
||||||
|
}else{
|
||||||
|
setTimeout(() => {
|
||||||
|
if(dialogLoading.value){
|
||||||
|
dialogLoading.value = false;
|
||||||
|
}
|
||||||
|
}, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
//判断是否显示对应组件后所做操作
|
//判断是否显示对应组件后所做操作
|
||||||
watch(
|
watch(
|
||||||
() => typeObj,
|
() => typeObj,
|
||||||
(newVal, oldVal) => {
|
(newVal, oldVal) => {
|
||||||
if( newVal.AbnormalData){
|
if (newVal.AbnormalData) {
|
||||||
AbnormalType.type=props.alarmType.join(',')
|
AbnormalType.type = props.alarmType.join(",");
|
||||||
getAlarmListDatafun()
|
getAlarmListDatafun();
|
||||||
// connectWebsocket(null, null, getWebsocket, errWebsocket);
|
// connectWebsocket(null, null, getWebsocket, errWebsocket);
|
||||||
setAlarmscrollBoardList()
|
setAlarmscrollBoardList();
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{ deep: true, flush: "post" }
|
{ deep: true, flush: "post" }
|
||||||
);
|
);
|
||||||
//获取异常信息接口数据
|
//获取异常信息接口数据
|
||||||
async function getAlarmListDatafun(){
|
async function getAlarmListDatafun() {
|
||||||
let result: any = await getAlarmListData(AbnormalType);
|
let result: any = await getAlarmListData(AbnormalType);
|
||||||
|
|
||||||
if (result.code == 200) {
|
if (result.code == 200) {
|
||||||
storeheader.setDataList(result);
|
storeheader.setDataList(result);
|
||||||
|
}
|
||||||
}
|
|
||||||
}
|
}
|
||||||
//单机显示更多历史报警数据
|
//单机显示更多历史报警数据
|
||||||
function clickNextPageAlarmList(){
|
function clickNextPageAlarmList() {
|
||||||
|
|
||||||
|
|
||||||
// if(storeheader.num<=powerlist.length){
|
// if(storeheader.num<=powerlist.length){
|
||||||
// onloadlist.value=false
|
// onloadlist.value=false
|
||||||
// return
|
// return
|
||||||
// }
|
// }
|
||||||
AbnormalType.pageNum++
|
AbnormalType.pageNum++;
|
||||||
getAlarmListDatafun()
|
getAlarmListDatafun();
|
||||||
}
|
}
|
||||||
//接受历史报警数据
|
//接受历史报警数据
|
||||||
watch(
|
watch(
|
||||||
() => storeheader.AlarmpopoverList,
|
() => storeheader.AlarmpopoverList,
|
||||||
(newVal, oldVal) => {
|
(newVal, oldVal) => {
|
||||||
newVal.forEach(res=>{
|
newVal.forEach((res) => {
|
||||||
powerlist.push(res)
|
powerlist.push(res);
|
||||||
})
|
});
|
||||||
},
|
},
|
||||||
{ deep: true, flush: "post" }
|
{ deep: true, flush: "post" }
|
||||||
);
|
);
|
||||||
@ -226,96 +306,99 @@ watch(
|
|||||||
},
|
},
|
||||||
{ deep: true, flush: "post" }
|
{ deep: true, flush: "post" }
|
||||||
);
|
);
|
||||||
let AlarmscrollTime = null
|
let AlarmscrollTime = null;
|
||||||
//每隔15秒钟替换一次组件数据进行轮播
|
//每隔15秒钟替换一次组件数据进行轮播
|
||||||
function setAlarmscrollBoardList(){
|
function setAlarmscrollBoardList() {
|
||||||
let start=0
|
let start = 0;
|
||||||
let end=4
|
let end = 4;
|
||||||
|
|
||||||
let i = 0;
|
let i = 0;
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
storeheader.AlarmscrollBoardList.slice(0, 5).forEach(element => {
|
storeheader.AlarmscrollBoardList.slice(0, 5).forEach((element) => {
|
||||||
let e = element.context.split(",");
|
let e = element.context.split(",");
|
||||||
listdata.data.push(...[[e[0]], [e[1]]])
|
listdata.data.push(...[[e[0]], [e[1]]]);
|
||||||
i++
|
i++;
|
||||||
});
|
});
|
||||||
|
|
||||||
end = end + 5
|
end = end + 5;
|
||||||
start = i >= 5 ? 5 : storeheader.AlarmscrollBoardList.length - 1
|
start = i >= 5 ? 5 : storeheader.AlarmscrollBoardList.length - 1;
|
||||||
start<=0?start=0:''
|
start <= 0 ? (start = 0) : "";
|
||||||
}, 1000)
|
}, 1000);
|
||||||
|
|
||||||
AlarmscrollTime=setInterval(()=>{
|
AlarmscrollTime = setInterval(() => {
|
||||||
|
if (i == 0) {
|
||||||
|
listdata.data = [];
|
||||||
if (i==0) {
|
|
||||||
listdata.data=[]
|
|
||||||
}
|
}
|
||||||
i=0
|
i = 0;
|
||||||
if(storeheader.AlarmscrollBoardList.length==0){
|
if (storeheader.AlarmscrollBoardList.length == 0) {
|
||||||
return
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(storeheader.AlarmscrollBoardList.length-1<end){
|
if (storeheader.AlarmscrollBoardList.length - 1 < end) {
|
||||||
end=storeheader.AlarmscrollBoardList.length-1
|
end = storeheader.AlarmscrollBoardList.length - 1;
|
||||||
}
|
}
|
||||||
for(start;start<=end;start++){
|
for (start; start <= end; start++) {
|
||||||
// console.log(storeheader.AlarmscrollBoardList[start],start,end);
|
// console.log(storeheader.AlarmscrollBoardList[start],start,end);
|
||||||
// console.log(storeheader.AlarmscrollBoardList.length-1);
|
// console.log(storeheader.AlarmscrollBoardList.length-1);
|
||||||
let listcontent = storeheader.AlarmscrollBoardList[start]?.context.split(',')
|
let listcontent =
|
||||||
|
storeheader.AlarmscrollBoardList[start]?.context.split(",");
|
||||||
|
|
||||||
listdata.data.push(...[[listcontent[0]],[listcontent[1]]])
|
listdata.data.push(...[[listcontent[0]], [listcontent[1]]]);
|
||||||
}
|
}
|
||||||
changeAbnormalData(listdata)
|
changeAbnormalData(listdata);
|
||||||
numkey.value++
|
numkey.value++;
|
||||||
end=end+5
|
end = end + 5;
|
||||||
//如果下次数据剩一个则只拿一条数据
|
//如果下次数据剩一个则只拿一条数据
|
||||||
if(start==storeheader.AlarmscrollBoardList.length-1){
|
if (start == storeheader.AlarmscrollBoardList.length - 1) {
|
||||||
// console.log('进入了2');
|
// console.log('进入了2');
|
||||||
start=storeheader.AlarmscrollBoardList.length-1
|
start = storeheader.AlarmscrollBoardList.length - 1;
|
||||||
end=storeheader.AlarmscrollBoardList.length-1
|
end = storeheader.AlarmscrollBoardList.length - 1;
|
||||||
}
|
}
|
||||||
//如果剩余数据不足5个则拿出剩余数据
|
//如果剩余数据不足5个则拿出剩余数据
|
||||||
if(end>storeheader.AlarmscrollBoardList.length-1&&start<=storeheader.AlarmscrollBoardList.length-1){
|
if (
|
||||||
|
end > storeheader.AlarmscrollBoardList.length - 1 &&
|
||||||
|
start <= storeheader.AlarmscrollBoardList.length - 1
|
||||||
|
) {
|
||||||
// console.log('进入了3');
|
// console.log('进入了3');
|
||||||
end=storeheader.AlarmscrollBoardList.length-1
|
end = storeheader.AlarmscrollBoardList.length - 1;
|
||||||
}
|
}
|
||||||
// 如果全部超出则从头拿
|
// 如果全部超出则从头拿
|
||||||
if(start>storeheader.AlarmscrollBoardList.length-1&&end>storeheader.AlarmscrollBoardList.length-1){
|
if (
|
||||||
|
start > storeheader.AlarmscrollBoardList.length - 1 &&
|
||||||
|
end > storeheader.AlarmscrollBoardList.length - 1
|
||||||
|
) {
|
||||||
// console.log('进入了4',start,end,storeheader.AlarmscrollBoardList.length-1,storeheader.AlarmscrollBoardList);
|
// console.log('进入了4',start,end,storeheader.AlarmscrollBoardList.length-1,storeheader.AlarmscrollBoardList);
|
||||||
start=0
|
start = 0;
|
||||||
end=4
|
end = 4;
|
||||||
}
|
}
|
||||||
|
}, 15000);
|
||||||
|
|
||||||
|
|
||||||
},15000)
|
|
||||||
}
|
}
|
||||||
//接受历史报警数据量
|
//接受历史报警数据量
|
||||||
watch(
|
watch(
|
||||||
() => storeheader.num,
|
() => storeheader.num,
|
||||||
(newVal, oldVal) => {
|
(newVal, oldVal) => {
|
||||||
AbnormalNum.value=newVal
|
AbnormalNum.value = newVal;
|
||||||
numkey.value++
|
numkey.value++;
|
||||||
},
|
},
|
||||||
{ deep: true, flush: "post" }
|
{ deep: true, flush: "post" }
|
||||||
);
|
);
|
||||||
function HeadergetWebsocket(val) {
|
function HeadergetWebsocket(val) {
|
||||||
|
let data = null;
|
||||||
|
try {
|
||||||
let data = null
|
data = JSON.parse(val);
|
||||||
try{
|
} catch (e) {
|
||||||
data = JSON.parse(val);
|
console.log(e);
|
||||||
}catch(e){
|
return;
|
||||||
console.log(e);
|
}
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
if (props.alarmType.some(e=>{return e==data.type})) {
|
if (
|
||||||
|
props.alarmType.some((e) => {
|
||||||
|
return e == data.type;
|
||||||
|
})
|
||||||
|
) {
|
||||||
// console.log(props.alarmType);
|
// console.log(props.alarmType);
|
||||||
// console.log(props.alarmType.some(e=>{return e==data.type}));
|
// console.log(props.alarmType.some(e=>{return e==data.type}));
|
||||||
storeheader.changeDataList(data)
|
storeheader.changeDataList(data);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
function HeadererrWebsocket(val) {
|
function HeadererrWebsocket(val) {
|
||||||
@ -323,19 +406,17 @@ function HeadererrWebsocket(val) {
|
|||||||
}
|
}
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
//判断需要显示出来的数据
|
//判断需要显示出来的数据
|
||||||
typeStatus()
|
typeStatus();
|
||||||
|
});
|
||||||
})
|
|
||||||
onUnmounted(() => {
|
onUnmounted(() => {
|
||||||
// closeWebsocket();
|
// closeWebsocket();
|
||||||
storeheader.resetData()
|
storeheader.resetData();
|
||||||
AlarmscrollTime?clearInterval(AlarmscrollTime):''
|
AlarmscrollTime ? clearInterval(AlarmscrollTime) : "";
|
||||||
|
});
|
||||||
})
|
|
||||||
defineExpose({
|
defineExpose({
|
||||||
changeAbnormalData,
|
changeAbnormalData,
|
||||||
HeadergetWebsocket,
|
HeadergetWebsocket,
|
||||||
HeadererrWebsocket
|
HeadererrWebsocket,
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
@ -359,16 +440,14 @@ defineExpose({
|
|||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
h1 {
|
h1 {
|
||||||
|
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 10px;
|
top: 10px;
|
||||||
|
|
||||||
}
|
}
|
||||||
.zh-title{
|
.zh-title {
|
||||||
margin-top: 6px;
|
margin-top: 6px;
|
||||||
font-size: 2.5rem;
|
font-size: 2.5rem;
|
||||||
}
|
}
|
||||||
.en-title{
|
.en-title {
|
||||||
font-size: 2rem;
|
font-size: 2rem;
|
||||||
max-width: 600px;
|
max-width: 600px;
|
||||||
height: 80px;
|
height: 80px;
|
||||||
@ -376,7 +455,6 @@ h1 {
|
|||||||
align-items: center;
|
align-items: center;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
/* line-height: 80px; */
|
/* line-height: 80px; */
|
||||||
|
|
||||||
}
|
}
|
||||||
/* .header2 p {
|
/* .header2 p {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
@ -406,7 +484,7 @@ h1 {
|
|||||||
font-size: 20px;
|
font-size: 20px;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
}
|
}
|
||||||
.tip{
|
.tip {
|
||||||
margin-top: 15px;
|
margin-top: 15px;
|
||||||
}
|
}
|
||||||
.tipspan {
|
.tipspan {
|
||||||
@ -414,7 +492,7 @@ h1 {
|
|||||||
margin-left: 10px;
|
margin-left: 10px;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
}
|
}
|
||||||
.comeBack{
|
.comeBack {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
/* width: 2rem;
|
/* width: 2rem;
|
||||||
height: 2rem; */
|
height: 2rem; */
|
||||||
@ -423,10 +501,10 @@ h1 {
|
|||||||
font-size: 3rem;
|
font-size: 3rem;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
}
|
}
|
||||||
.comeBack>i{
|
.comeBack > i {
|
||||||
font-size: 3rem;
|
font-size: 3rem;
|
||||||
}
|
}
|
||||||
.AbnormalData{
|
.AbnormalData {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
@ -437,30 +515,30 @@ h1 {
|
|||||||
font-size: 3rem;
|
font-size: 3rem;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
}
|
}
|
||||||
.AbnormalData:hover{
|
.AbnormalData:hover {
|
||||||
cursor:pointer;
|
cursor: pointer;
|
||||||
}
|
}
|
||||||
.AbnormalData>span{
|
.AbnormalData > span {
|
||||||
font-size: 1rem;
|
font-size: 1rem;
|
||||||
}
|
}
|
||||||
.popoverBOX{
|
.popoverBOX {
|
||||||
max-height: 15rem;
|
max-height: 15rem;
|
||||||
font-size: 18px;
|
font-size: 18px;
|
||||||
overflow-y: auto;
|
overflow-y: auto;
|
||||||
}
|
}
|
||||||
.popoverBOX li{
|
.popoverBOX li {
|
||||||
padding: 10px 0 10px 0;
|
padding: 10px 0 10px 0;
|
||||||
}
|
}
|
||||||
.lookdown{
|
.lookdown {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
color: #1C78C2;
|
color: #1c78c2;
|
||||||
}
|
}
|
||||||
.lookdown:hover{
|
.lookdown:hover {
|
||||||
cursor:pointer;
|
cursor: pointer;
|
||||||
}
|
}
|
||||||
.time {
|
.time {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
@ -470,29 +548,48 @@ padding: 10px 0 10px 0;
|
|||||||
left: 4.2rem;
|
left: 4.2rem;
|
||||||
font-size: 25px;
|
font-size: 25px;
|
||||||
}
|
}
|
||||||
.i-badge{
|
.i-badge {
|
||||||
width: 3rem;
|
width: 3rem;
|
||||||
height: 3rem;
|
height: 3rem;
|
||||||
}
|
}
|
||||||
.i-badge>i{
|
.i-badge > i {
|
||||||
font-size: 3rem;
|
font-size: 3rem;
|
||||||
position: relative;
|
position: relative;
|
||||||
top: -5px;
|
top: -5px;
|
||||||
}
|
}
|
||||||
/* .dv-scroll-board /deep/ .ceil {
|
/* .dv-scroll-board /deep/ .ceil {
|
||||||
font-size: 1.2rem;
|
font-size: 1.2rem;
|
||||||
} */
|
} */
|
||||||
.dv-scroll-boardclass :deep(.ceil) {
|
.dv-scroll-boardclass :deep(.ceil) {
|
||||||
font-size: 20px;
|
font-size: 20px;
|
||||||
}
|
}
|
||||||
.el-popper.is-dark:deep(){
|
.el-popper.is-dark:deep() {
|
||||||
background: #14274b !important;
|
background: #14274b !important;
|
||||||
}
|
}
|
||||||
.el-popover.el-popper:deep(){
|
.el-popover.el-popper:deep() {
|
||||||
background: #14274b !important;
|
background: #14274b !important;
|
||||||
}
|
}
|
||||||
.Abnormal-icon-yellow{
|
.Abnormal-icon-yellow {
|
||||||
color: #DDB14F;
|
color: #ddb14f;
|
||||||
|
}
|
||||||
|
.lishijilu {
|
||||||
|
font-size: 2rem;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
.popoverHeader {
|
||||||
|
padding: 0 !important;
|
||||||
|
display: flex;
|
||||||
|
justify-content: flex-end;
|
||||||
|
align-items: center;
|
||||||
|
line-height: 1.5rem;
|
||||||
|
}
|
||||||
|
.popoverHeader span {
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
padding: 5px;
|
||||||
|
/* border-radius: 50px;
|
||||||
|
background: linear-gradient(315deg, #404040, #4c4c4c); */
|
||||||
|
/* box-shadow: -20px -20px 60px #3c3c3c, 20px 20px 60px #525252; */
|
||||||
}
|
}
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* @FilePath: \screenFront\src\main.ts
|
* @FilePath: \code\gitscreenFront\src\main.ts
|
||||||
* @Author: 王路平
|
* @Author: 王路平
|
||||||
* @文件版本: V1.0.0
|
* @文件版本: V1.0.0
|
||||||
* @Date: 2023-01-29 15:16:36
|
* @Date: 2023-01-29 15:16:36
|
||||||
@ -11,7 +11,7 @@ import { createApp } from 'vue'
|
|||||||
import App from './App.vue'
|
import App from './App.vue'
|
||||||
import ElementPlus from 'element-plus'
|
import ElementPlus from 'element-plus'
|
||||||
import 'element-plus/dist/index.css'
|
import 'element-plus/dist/index.css'
|
||||||
|
import 'element-plus/theme-chalk/dark/css-vars.css'
|
||||||
// import echarts from '@/utils/echarts.js'
|
// import echarts from '@/utils/echarts.js'
|
||||||
import echarts from '@/utils/echarts'
|
import echarts from '@/utils/echarts'
|
||||||
import {createPinia} from 'pinia'
|
import {createPinia} from 'pinia'
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* @FilePath: \screenFront\src\utils\devSever.ts
|
* @FilePath: \gitscreenFront\src\utils\devSever.ts
|
||||||
* @Author: 王路平
|
* @Author: 王路平
|
||||||
* @文件版本: V1.0.0
|
* @文件版本: V1.0.0
|
||||||
* @Date: 2023-03-03 08:59:37
|
* @Date: 2023-03-03 08:59:37
|
||||||
@ -9,7 +9,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
// export const development={xhr:process.env.VUE_APP_BASE_API,ws:"ws://192.168.3.97:9018/",imgxhr:process.env.VUE_APP_BASE_API+"/image/"}
|
// export const development={xhr:process.env.VUE_APP_BASE_API,ws:"ws://192.168.3.97:9018/",imgxhr:process.env.VUE_APP_BASE_API+"/image/"}
|
||||||
export const development={xhr:process.env.VUE_APP_BASE_API,ws:"ws://8.130.165.100:9018/",imgxhr:process.env.VUE_APP_BASE_API+"/image/"}
|
export const development={xhr:process.env.VUE_APP_BASE_API,ws:"ws://192.168.110.238:9018/",imgxhr:process.env.VUE_APP_BASE_API+"/image/"}
|
||||||
export const production={xhr:process.env.VUE_APP_BASE_API,ws:"ws://8.130.165.100:9018/",imgxhr:process.env.VUE_APP_BASE_API+"/image/"}
|
export const production={xhr:process.env.VUE_APP_BASE_API,ws:"ws://8.130.165.100:9018/",imgxhr:process.env.VUE_APP_BASE_API+"/image/"}
|
||||||
//拼接图片url路径
|
//拼接图片url路径
|
||||||
export function imgurlAddXhr(img){
|
export function imgurlAddXhr(img){
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* @FilePath: \daping\src\utils\websocket.ts
|
* @FilePath: \gitscreenFront\src\utils\websocket.ts
|
||||||
* @Author: 王路平
|
* @Author: 王路平
|
||||||
* @文件版本: V1.0.0
|
* @文件版本: V1.0.0
|
||||||
* @Date: 2023-02-24 13:14:26
|
* @Date: 2023-02-24 13:14:26
|
||||||
@ -58,7 +58,7 @@ export const closeWebsocket = () => {
|
|||||||
if (wsObj) {
|
if (wsObj) {
|
||||||
writeToScreen('手动关闭websocket')
|
writeToScreen('手动关闭websocket')
|
||||||
wsObj.close() // 关闭websocket
|
wsObj.close() // 关闭websocket
|
||||||
// wsObj.onclose() // 关闭websocket(如果上面的关闭不生效就加上这一条)
|
wsObj.onclose() // 关闭websocket(如果上面的关闭不生效就加上这一条)
|
||||||
// 关闭重连
|
// 关闭重连
|
||||||
lockReconnect = true
|
lockReconnect = true
|
||||||
wsCreateHandler && clearTimeout(wsCreateHandler)
|
wsCreateHandler && clearTimeout(wsCreateHandler)
|
||||||
@ -153,6 +153,8 @@ const onWsClose = (event) => {
|
|||||||
}
|
}
|
||||||
const onWsError = (event) => {
|
const onWsError = (event) => {
|
||||||
// writeToScreen('onWsError: ', event.data)
|
// writeToScreen('onWsError: ', event.data)
|
||||||
|
console.log(event);
|
||||||
|
|
||||||
errorCallback()
|
errorCallback()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -11,9 +11,10 @@
|
|||||||
<div class="tip-box-logo" :key="keynum">
|
<div class="tip-box-logo" :key="keynum">
|
||||||
<el-tooltip
|
<el-tooltip
|
||||||
class="box-item"
|
class="box-item"
|
||||||
|
popper-class="tooltip-class"
|
||||||
:content="content"
|
:content="content"
|
||||||
raw-content
|
raw-content
|
||||||
effect="dark"
|
effect="light"
|
||||||
placement="top-start"
|
placement="top-start"
|
||||||
>
|
>
|
||||||
<!-- <template #content> {{ props.val.tiptext}} </template> -->
|
<!-- <template #content> {{ props.val.tiptext}} </template> -->
|
||||||
@ -88,6 +89,9 @@ onMounted(() => {
|
|||||||
/* position: relative; */
|
/* position: relative; */
|
||||||
/* top: -15px; */
|
/* top: -15px; */
|
||||||
}
|
}
|
||||||
|
.el-popper{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
@keyframes redstart {
|
@keyframes redstart {
|
||||||
0% {
|
0% {
|
||||||
|
|
||||||
@ -113,3 +117,8 @@ onMounted(() => {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
<style>
|
||||||
|
.el-popper.tooltip-class{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
</style>
|
@ -16,8 +16,9 @@
|
|||||||
<el-tooltip
|
<el-tooltip
|
||||||
class="box-item"
|
class="box-item"
|
||||||
:content="`${item.name}:${JSON.parse(item.status) ? t('messages.onLine') : t('messages.offline')}`"
|
:content="`${item.name}:${JSON.parse(item.status) ? t('messages.onLine') : t('messages.offline')}`"
|
||||||
|
popper-class="tooltip-class"
|
||||||
raw-content
|
raw-content
|
||||||
effect="dark"
|
effect="light"
|
||||||
placement="top-start"
|
placement="top-start"
|
||||||
>
|
>
|
||||||
<i
|
<i
|
||||||
@ -95,6 +96,9 @@ onMounted(() => {});
|
|||||||
/* position: relative; */
|
/* position: relative; */
|
||||||
/* top: -15px; */
|
/* top: -15px; */
|
||||||
}
|
}
|
||||||
|
.el-popper{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
@keyframes redstart {
|
@keyframes redstart {
|
||||||
0% {
|
0% {
|
||||||
}
|
}
|
||||||
@ -116,3 +120,8 @@ onMounted(() => {});
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
<style>
|
||||||
|
.el-popper.tooltip-class{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
</style>
|
@ -1,5 +1,5 @@
|
|||||||
<!--
|
<!--
|
||||||
* @FilePath: \wwwd:\code\screenFront\src\views\InPlantProducts\child\component\Details.vue
|
* @FilePath: \code\gitscreenFront\src\views\InPlantProducts\child\component\Details.vue
|
||||||
* @Author: 王路平
|
* @Author: 王路平
|
||||||
* @文件版本: V1.0.0
|
* @文件版本: V1.0.0
|
||||||
* @Date: 2023-02-16 11:51:32
|
* @Date: 2023-02-16 11:51:32
|
||||||
@ -37,7 +37,8 @@
|
|||||||
v-model:visible="visible"
|
v-model:visible="visible"
|
||||||
:content="tipcontent"
|
:content="tipcontent"
|
||||||
placement="top"
|
placement="top"
|
||||||
effect="dark"
|
effect="light"
|
||||||
|
popper-class="tooltip-class"
|
||||||
trigger="click"
|
trigger="click"
|
||||||
virtual-triggering
|
virtual-triggering
|
||||||
:virtual-ref="triggerRef"
|
:virtual-ref="triggerRef"
|
||||||
@ -186,6 +187,9 @@ p {
|
|||||||
justify-content: center;
|
justify-content: center;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
}
|
}
|
||||||
|
.el-popper{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
/* .dv-scroll-board :deep(.row-item) {
|
/* .dv-scroll-board :deep(.row-item) {
|
||||||
line-height: normal !important;
|
line-height: normal !important;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
@ -194,3 +198,8 @@ p {
|
|||||||
margin:0px 50px 0px 50px
|
margin:0px 50px 0px 50px
|
||||||
} */
|
} */
|
||||||
</style>
|
</style>
|
||||||
|
<style>
|
||||||
|
.el-popper.tooltip-class{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
</style>
|
@ -1,5 +1,5 @@
|
|||||||
<!--
|
<!--
|
||||||
* @FilePath: \wwwd:\code\screenFront\src\views\InPlantProducts\child\component\RotationTable.vue
|
* @FilePath: \code\gitscreenFront\src\views\InPlantProducts\child\component\RotationTable.vue
|
||||||
* @Author: 王路平
|
* @Author: 王路平
|
||||||
* @文件版本: V1.0.0
|
* @文件版本: V1.0.0
|
||||||
* @Date: 2023-02-16 15:09:06
|
* @Date: 2023-02-16 15:09:06
|
||||||
@ -38,7 +38,8 @@
|
|||||||
v-model:visible="visible"
|
v-model:visible="visible"
|
||||||
:content="tipcontent"
|
:content="tipcontent"
|
||||||
placement="top"
|
placement="top"
|
||||||
effect="dark"
|
effect="light"
|
||||||
|
popper-class="tooltip-class"
|
||||||
trigger="click"
|
trigger="click"
|
||||||
virtual-triggering
|
virtual-triggering
|
||||||
:virtual-ref="triggerRef"
|
:virtual-ref="triggerRef"
|
||||||
@ -168,4 +169,12 @@ defineExpose({
|
|||||||
h2 {
|
h2 {
|
||||||
color: #fff;
|
color: #fff;
|
||||||
}
|
}
|
||||||
|
.el-popper{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
<style>
|
||||||
|
.el-popper.tooltip-class{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
</style>
|
@ -31,7 +31,8 @@
|
|||||||
v-model:visible="visible"
|
v-model:visible="visible"
|
||||||
:content="tipcontent"
|
:content="tipcontent"
|
||||||
placement="top"
|
placement="top"
|
||||||
effect="dark"
|
effect="light"
|
||||||
|
popper-class="tooltip-class"
|
||||||
trigger="click"
|
trigger="click"
|
||||||
virtual-triggering
|
virtual-triggering
|
||||||
:virtual-ref="triggerRef"
|
:virtual-ref="triggerRef"
|
||||||
@ -219,4 +220,12 @@ p {
|
|||||||
justify-content: center;
|
justify-content: center;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
}
|
}
|
||||||
|
.el-popper{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
<style>
|
||||||
|
.el-popper.tooltip-class{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
</style>
|
@ -1,5 +1,5 @@
|
|||||||
<!--
|
<!--
|
||||||
* @FilePath: \screenFront\src\views\InPlantProducts\content\chart\deviceslist.vue
|
* @FilePath: \code\gitscreenFront\src\views\InPlantProducts\content\chart\deviceslist.vue
|
||||||
* @Author: 王路平
|
* @Author: 王路平
|
||||||
* @文件版本: V1.0.0
|
* @文件版本: V1.0.0
|
||||||
* @Date: 2023-02-16 15:09:06
|
* @Date: 2023-02-16 15:09:06
|
||||||
@ -30,7 +30,8 @@
|
|||||||
v-model:visible="visible"
|
v-model:visible="visible"
|
||||||
:content="tipcontent"
|
:content="tipcontent"
|
||||||
placement="top"
|
placement="top"
|
||||||
effect="dark"
|
effect="light"
|
||||||
|
popper-class="tooltip-class"
|
||||||
trigger="click"
|
trigger="click"
|
||||||
virtual-triggering
|
virtual-triggering
|
||||||
:virtual-ref="triggerRef"
|
:virtual-ref="triggerRef"
|
||||||
@ -200,10 +201,19 @@ defineExpose({
|
|||||||
h2 {
|
h2 {
|
||||||
color: #fff;
|
color: #fff;
|
||||||
}
|
}
|
||||||
|
.el-popper{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
.dv-scroll-board :deep(.ceil) {
|
.dv-scroll-board :deep(.ceil) {
|
||||||
font-size: 1.2rem;
|
font-size: 1.2rem;
|
||||||
}
|
}
|
||||||
.dv-scroll-board :deep(.header-item) {
|
.dv-scroll-board :deep(.header-item) {
|
||||||
font-size: 1.2rem;
|
font-size: 1.2rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
|
<style>
|
||||||
|
.el-popper.tooltip-class{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
</style>
|
@ -1,5 +1,5 @@
|
|||||||
<!--
|
<!--
|
||||||
* @FilePath: \wwwd:\code\screenFront\src\views\AerialView\content\tip.vue
|
* @FilePath: \code\gitscreenFront\src\views\MechanicalView\content\tip.vue
|
||||||
* @Author: 王路平
|
* @Author: 王路平
|
||||||
* @文件版本: V1.0.0
|
* @文件版本: V1.0.0
|
||||||
* @Date: 2023-03-20 09:12:05
|
* @Date: 2023-03-20 09:12:05
|
||||||
@ -13,7 +13,8 @@
|
|||||||
class="box-item"
|
class="box-item"
|
||||||
:content="content"
|
:content="content"
|
||||||
raw-content
|
raw-content
|
||||||
effect="dark"
|
effect="light"
|
||||||
|
popper-class="tooltip-class"
|
||||||
placement="top-start"
|
placement="top-start"
|
||||||
>
|
>
|
||||||
<!-- <template #content> {{ props.val.tiptext}} </template> -->
|
<!-- <template #content> {{ props.val.tiptext}} </template> -->
|
||||||
@ -88,6 +89,9 @@ onMounted(() => {
|
|||||||
/* position: relative; */
|
/* position: relative; */
|
||||||
/* top: -15px; */
|
/* top: -15px; */
|
||||||
}
|
}
|
||||||
|
.el-popper{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
@keyframes redstart {
|
@keyframes redstart {
|
||||||
0% {
|
0% {
|
||||||
|
|
||||||
@ -113,3 +117,8 @@ onMounted(() => {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
<style>
|
||||||
|
.el-popper.tooltip-class{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
</style>
|
@ -17,7 +17,8 @@
|
|||||||
class="box-item"
|
class="box-item"
|
||||||
:content="`${item.name}:${JSON.parse(item.status) ? t('messages.onLine') : t('messages.offline')}`"
|
:content="`${item.name}:${JSON.parse(item.status) ? t('messages.onLine') : t('messages.offline')}`"
|
||||||
raw-content
|
raw-content
|
||||||
effect="dark"
|
effect="light"
|
||||||
|
popper-class="tooltip-class"
|
||||||
placement="top-start"
|
placement="top-start"
|
||||||
>
|
>
|
||||||
<i
|
<i
|
||||||
@ -95,6 +96,9 @@ onMounted(() => {});
|
|||||||
/* position: relative; */
|
/* position: relative; */
|
||||||
/* top: -15px; */
|
/* top: -15px; */
|
||||||
}
|
}
|
||||||
|
.el-popper{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
@keyframes redstart {
|
@keyframes redstart {
|
||||||
0% {
|
0% {
|
||||||
}
|
}
|
||||||
@ -116,3 +120,8 @@ onMounted(() => {});
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
<style>
|
||||||
|
.el-popper.tooltip-class{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
</style>
|
@ -13,7 +13,8 @@
|
|||||||
class="box-item"
|
class="box-item"
|
||||||
:content="content"
|
:content="content"
|
||||||
raw-content
|
raw-content
|
||||||
effect="dark"
|
effect="light"
|
||||||
|
popper-class="tooltip-class"
|
||||||
placement="top-start"
|
placement="top-start"
|
||||||
>
|
>
|
||||||
<!-- <template #content> {{ props.val.tiptext}} </template> -->
|
<!-- <template #content> {{ props.val.tiptext}} </template> -->
|
||||||
@ -88,6 +89,9 @@ onMounted(() => {
|
|||||||
/* position: relative; */
|
/* position: relative; */
|
||||||
/* top: -15px; */
|
/* top: -15px; */
|
||||||
}
|
}
|
||||||
|
.el-popper{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
@keyframes redstart {
|
@keyframes redstart {
|
||||||
0% {
|
0% {
|
||||||
|
|
||||||
@ -113,3 +117,8 @@ onMounted(() => {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
<style>
|
||||||
|
.el-popper.tooltip-class{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
</style>
|
@ -17,7 +17,8 @@
|
|||||||
class="box-item"
|
class="box-item"
|
||||||
:content="`${item.name}:${JSON.parse(item.status) ? t('messages.onLine') : t('messages.offline')}`"
|
:content="`${item.name}:${JSON.parse(item.status) ? t('messages.onLine') : t('messages.offline')}`"
|
||||||
raw-content
|
raw-content
|
||||||
effect="dark"
|
effect="light"
|
||||||
|
popper-class="tooltip-class"
|
||||||
placement="top-start"
|
placement="top-start"
|
||||||
>
|
>
|
||||||
<i
|
<i
|
||||||
@ -94,6 +95,9 @@ onMounted(() => {});
|
|||||||
/* position: relative; */
|
/* position: relative; */
|
||||||
/* top: -15px; */
|
/* top: -15px; */
|
||||||
}
|
}
|
||||||
|
.el-popper{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
@keyframes redstart {
|
@keyframes redstart {
|
||||||
0% {
|
0% {
|
||||||
}
|
}
|
||||||
@ -115,3 +119,8 @@ onMounted(() => {});
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
<style>
|
||||||
|
.el-popper.tooltip-class{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
</style>
|
@ -13,7 +13,8 @@
|
|||||||
class="box-item"
|
class="box-item"
|
||||||
:content="content"
|
:content="content"
|
||||||
raw-content
|
raw-content
|
||||||
effect="dark"
|
effect="light"
|
||||||
|
popper-class="tooltip-class"
|
||||||
placement="top-start"
|
placement="top-start"
|
||||||
>
|
>
|
||||||
<!-- <template #content> {{ props.val.tiptext}} </template> -->
|
<!-- <template #content> {{ props.val.tiptext}} </template> -->
|
||||||
@ -88,6 +89,9 @@ onMounted(() => {
|
|||||||
/* position: relative; */
|
/* position: relative; */
|
||||||
/* top: -15px; */
|
/* top: -15px; */
|
||||||
}
|
}
|
||||||
|
.el-popper{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
@keyframes redstart {
|
@keyframes redstart {
|
||||||
0% {
|
0% {
|
||||||
|
|
||||||
@ -113,3 +117,8 @@ onMounted(() => {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
<style>
|
||||||
|
.el-popper.tooltip-class{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
</style>
|
@ -17,7 +17,8 @@
|
|||||||
class="box-item"
|
class="box-item"
|
||||||
:content="`${item.name}:${JSON.parse(item.status) ? t('messages.onLine') : t('messages.offline')}`"
|
:content="`${item.name}:${JSON.parse(item.status) ? t('messages.onLine') : t('messages.offline')}`"
|
||||||
raw-content
|
raw-content
|
||||||
effect="dark"
|
effect="light"
|
||||||
|
popper-class="tooltip-class"
|
||||||
placement="top-start"
|
placement="top-start"
|
||||||
>
|
>
|
||||||
<i
|
<i
|
||||||
@ -95,6 +96,9 @@ onMounted(() => {});
|
|||||||
/* position: relative; */
|
/* position: relative; */
|
||||||
/* top: -15px; */
|
/* top: -15px; */
|
||||||
}
|
}
|
||||||
|
.el-popper{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
@keyframes redstart {
|
@keyframes redstart {
|
||||||
0% {
|
0% {
|
||||||
}
|
}
|
||||||
@ -116,3 +120,8 @@ onMounted(() => {});
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
<style>
|
||||||
|
.el-popper.tooltip-class{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
</style>
|
@ -13,7 +13,8 @@
|
|||||||
class="box-item"
|
class="box-item"
|
||||||
:content="content"
|
:content="content"
|
||||||
raw-content
|
raw-content
|
||||||
effect="dark"
|
effect="light"
|
||||||
|
popper-class="tooltip-class"
|
||||||
placement="top-start"
|
placement="top-start"
|
||||||
>
|
>
|
||||||
<!-- <template #content> {{ props.val.tiptext}} </template> -->
|
<!-- <template #content> {{ props.val.tiptext}} </template> -->
|
||||||
@ -88,6 +89,9 @@ onMounted(() => {
|
|||||||
/* position: relative; */
|
/* position: relative; */
|
||||||
/* top: -15px; */
|
/* top: -15px; */
|
||||||
}
|
}
|
||||||
|
.el-popper{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
@keyframes redstart {
|
@keyframes redstart {
|
||||||
0% {
|
0% {
|
||||||
|
|
||||||
@ -113,3 +117,8 @@ onMounted(() => {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
<style>
|
||||||
|
.el-popper.tooltip-class{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
</style>
|
@ -17,7 +17,8 @@
|
|||||||
class="box-item"
|
class="box-item"
|
||||||
:content="`${item.name}:${JSON.parse(item.status) ? t('messages.onLine') : t('messages.offline')}`"
|
:content="`${item.name}:${JSON.parse(item.status) ? t('messages.onLine') : t('messages.offline')}`"
|
||||||
raw-content
|
raw-content
|
||||||
effect="dark"
|
effect="light"
|
||||||
|
popper-class="tooltip-class"
|
||||||
placement="top-start"
|
placement="top-start"
|
||||||
>
|
>
|
||||||
<i
|
<i
|
||||||
@ -95,6 +96,9 @@ onMounted(() => {});
|
|||||||
/* position: relative; */
|
/* position: relative; */
|
||||||
/* top: -15px; */
|
/* top: -15px; */
|
||||||
}
|
}
|
||||||
|
.el-popper{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
@keyframes redstart {
|
@keyframes redstart {
|
||||||
0% {
|
0% {
|
||||||
}
|
}
|
||||||
@ -116,3 +120,8 @@ onMounted(() => {});
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
<style>
|
||||||
|
.el-popper.tooltip-class{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
</style>
|
@ -13,7 +13,8 @@
|
|||||||
class="box-item"
|
class="box-item"
|
||||||
:content="content"
|
:content="content"
|
||||||
raw-content
|
raw-content
|
||||||
effect="dark"
|
effect="light"
|
||||||
|
popper-class="tooltip-class"
|
||||||
placement="top-start"
|
placement="top-start"
|
||||||
>
|
>
|
||||||
<!-- <template #content> {{ props.val.tiptext}} </template> -->
|
<!-- <template #content> {{ props.val.tiptext}} </template> -->
|
||||||
@ -90,6 +91,9 @@ onMounted(() => {
|
|||||||
/* position: relative; */
|
/* position: relative; */
|
||||||
/* top: -15px; */
|
/* top: -15px; */
|
||||||
}
|
}
|
||||||
|
.el-popper{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
@keyframes redstart {
|
@keyframes redstart {
|
||||||
0% {
|
0% {
|
||||||
|
|
||||||
@ -115,3 +119,8 @@ onMounted(() => {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
<style>
|
||||||
|
.el-popper.tooltip-class{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
</style>
|
@ -17,7 +17,8 @@
|
|||||||
class="box-item"
|
class="box-item"
|
||||||
:content="`${item.name}:${JSON.parse(item.status) ? t('messages.onLine') : t('messages.offline')}`"
|
:content="`${item.name}:${JSON.parse(item.status) ? t('messages.onLine') : t('messages.offline')}`"
|
||||||
raw-content
|
raw-content
|
||||||
effect="dark"
|
effect="light"
|
||||||
|
popper-class="tooltip-class"
|
||||||
placement="top-start"
|
placement="top-start"
|
||||||
>
|
>
|
||||||
<i
|
<i
|
||||||
@ -95,6 +96,9 @@ onMounted(() => {});
|
|||||||
/* position: relative; */
|
/* position: relative; */
|
||||||
/* top: -15px; */
|
/* top: -15px; */
|
||||||
}
|
}
|
||||||
|
.el-popper{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
@keyframes redstart {
|
@keyframes redstart {
|
||||||
0% {
|
0% {
|
||||||
}
|
}
|
||||||
@ -116,3 +120,8 @@ onMounted(() => {});
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
<style>
|
||||||
|
.el-popper.tooltip-class{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
</style>
|
@ -13,7 +13,8 @@
|
|||||||
class="box-item"
|
class="box-item"
|
||||||
:content="content"
|
:content="content"
|
||||||
raw-content
|
raw-content
|
||||||
effect="dark"
|
effect="light"
|
||||||
|
popper-class="tooltip-class"
|
||||||
placement="top-start"
|
placement="top-start"
|
||||||
>
|
>
|
||||||
<!-- <template #content> {{ props.val.tiptext}} </template> -->
|
<!-- <template #content> {{ props.val.tiptext}} </template> -->
|
||||||
@ -88,6 +89,9 @@ onMounted(() => {
|
|||||||
/* position: relative; */
|
/* position: relative; */
|
||||||
/* top: -15px; */
|
/* top: -15px; */
|
||||||
}
|
}
|
||||||
|
.el-popper{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
@keyframes redstart {
|
@keyframes redstart {
|
||||||
0% {
|
0% {
|
||||||
|
|
||||||
@ -113,3 +117,8 @@ onMounted(() => {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
<style>
|
||||||
|
.el-popper.tooltip-class{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
</style>
|
@ -17,7 +17,8 @@
|
|||||||
class="box-item"
|
class="box-item"
|
||||||
:content="`${item.name}:${JSON.parse(item.status) ? t('messages.onLine') : t('messages.offline')}`"
|
:content="`${item.name}:${JSON.parse(item.status) ? t('messages.onLine') : t('messages.offline')}`"
|
||||||
raw-content
|
raw-content
|
||||||
effect="dark"
|
effect="light"
|
||||||
|
popper-class="tooltip-class"
|
||||||
placement="top-start"
|
placement="top-start"
|
||||||
>
|
>
|
||||||
<i
|
<i
|
||||||
@ -94,6 +95,9 @@ onMounted(() => {});
|
|||||||
/* position: relative; */
|
/* position: relative; */
|
||||||
/* top: -15px; */
|
/* top: -15px; */
|
||||||
}
|
}
|
||||||
|
.el-popper{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
@keyframes redstart {
|
@keyframes redstart {
|
||||||
0% {
|
0% {
|
||||||
}
|
}
|
||||||
@ -115,3 +119,8 @@ onMounted(() => {});
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
<style>
|
||||||
|
.el-popper.tooltip-class{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
</style>
|
@ -13,7 +13,8 @@
|
|||||||
class="box-item"
|
class="box-item"
|
||||||
:content="content"
|
:content="content"
|
||||||
raw-content
|
raw-content
|
||||||
effect="dark"
|
effect="light"
|
||||||
|
popper-class="tooltip-class"
|
||||||
placement="top-start"
|
placement="top-start"
|
||||||
>
|
>
|
||||||
<!-- <template #content> {{ props.val.tiptext}} </template> -->
|
<!-- <template #content> {{ props.val.tiptext}} </template> -->
|
||||||
@ -88,6 +89,9 @@ onMounted(() => {
|
|||||||
/* position: relative; */
|
/* position: relative; */
|
||||||
/* top: -15px; */
|
/* top: -15px; */
|
||||||
}
|
}
|
||||||
|
.el-popper{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
@keyframes redstart {
|
@keyframes redstart {
|
||||||
0% {
|
0% {
|
||||||
|
|
||||||
@ -113,3 +117,8 @@ onMounted(() => {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
<style>
|
||||||
|
.el-popper.tooltip-class{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
</style>
|
@ -17,7 +17,8 @@
|
|||||||
class="box-item"
|
class="box-item"
|
||||||
:content="`${item.name}:${JSON.parse(item.status) ? t('messages.onLine') : t('messages.offline')}`"
|
:content="`${item.name}:${JSON.parse(item.status) ? t('messages.onLine') : t('messages.offline')}`"
|
||||||
raw-content
|
raw-content
|
||||||
effect="dark"
|
effect="light"
|
||||||
|
popper-class="tooltip-class"
|
||||||
placement="top-start"
|
placement="top-start"
|
||||||
>
|
>
|
||||||
<i
|
<i
|
||||||
@ -94,6 +95,9 @@ onMounted(() => {});
|
|||||||
/* position: relative; */
|
/* position: relative; */
|
||||||
/* top: -15px; */
|
/* top: -15px; */
|
||||||
}
|
}
|
||||||
|
.el-popper{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
@keyframes redstart {
|
@keyframes redstart {
|
||||||
0% {
|
0% {
|
||||||
}
|
}
|
||||||
@ -115,3 +119,8 @@ onMounted(() => {});
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
<style>
|
||||||
|
.el-popper.tooltip-class{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
</style>
|
@ -32,7 +32,8 @@
|
|||||||
v-model:visible="visible"
|
v-model:visible="visible"
|
||||||
:content="tipcontent"
|
:content="tipcontent"
|
||||||
placement="top"
|
placement="top"
|
||||||
effect="dark"
|
effect="light"
|
||||||
|
popper-class="tooltip-class"
|
||||||
trigger="click"
|
trigger="click"
|
||||||
virtual-triggering
|
virtual-triggering
|
||||||
:virtual-ref="triggerRef"
|
:virtual-ref="triggerRef"
|
||||||
@ -229,6 +230,9 @@ h2 {
|
|||||||
color: #fff;
|
color: #fff;
|
||||||
font-size: 20px;
|
font-size: 20px;
|
||||||
}
|
}
|
||||||
|
.el-popper{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
.dv-scroll-board :deep(.ceil) {
|
.dv-scroll-board :deep(.ceil) {
|
||||||
font-size: 1rem;
|
font-size: 1rem;
|
||||||
}
|
}
|
||||||
@ -236,3 +240,8 @@ h2 {
|
|||||||
font-size: 1rem;
|
font-size: 1rem;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
<style>
|
||||||
|
.el-popper.tooltip-class{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
</style>
|
@ -38,8 +38,9 @@
|
|||||||
v-model:visible="visible"
|
v-model:visible="visible"
|
||||||
:content="tipcontent"
|
:content="tipcontent"
|
||||||
placement="top"
|
placement="top"
|
||||||
effect="dark"
|
effect="light"
|
||||||
trigger="click"
|
trigger="click"
|
||||||
|
popper-class="tooltip-class"
|
||||||
virtual-triggering
|
virtual-triggering
|
||||||
:virtual-ref="triggerRef"
|
:virtual-ref="triggerRef"
|
||||||
/>
|
/>
|
||||||
@ -187,6 +188,9 @@ p {
|
|||||||
justify-content: center;
|
justify-content: center;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
}
|
}
|
||||||
|
.el-popper{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
/* .dv-scroll-board :deep(.row-item) {
|
/* .dv-scroll-board :deep(.row-item) {
|
||||||
line-height: normal !important;
|
line-height: normal !important;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
@ -195,3 +199,8 @@ p {
|
|||||||
margin:0px 50px 0px 50px
|
margin:0px 50px 0px 50px
|
||||||
} */
|
} */
|
||||||
</style>
|
</style>
|
||||||
|
<style>
|
||||||
|
.el-popper.tooltip-class{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
</style>
|
@ -1,5 +1,5 @@
|
|||||||
<!--
|
<!--
|
||||||
* @FilePath: \wwwd:\code\screenFront\src\views\InPlantProducts\child\component\RotationTable.vue
|
* @FilePath: \code\gitscreenFront\src\views\Temp\Large_Format\component\RotationTable.vue
|
||||||
* @Author: 王路平
|
* @Author: 王路平
|
||||||
* @文件版本: V1.0.0
|
* @文件版本: V1.0.0
|
||||||
* @Date: 2023-02-16 15:09:06
|
* @Date: 2023-02-16 15:09:06
|
||||||
@ -38,7 +38,8 @@
|
|||||||
v-model:visible="visible"
|
v-model:visible="visible"
|
||||||
:content="tipcontent"
|
:content="tipcontent"
|
||||||
placement="top"
|
placement="top"
|
||||||
effect="dark"
|
effect="light"
|
||||||
|
popper-class="tooltip-class"
|
||||||
trigger="click"
|
trigger="click"
|
||||||
virtual-triggering
|
virtual-triggering
|
||||||
:virtual-ref="triggerRef"
|
:virtual-ref="triggerRef"
|
||||||
@ -168,4 +169,12 @@ defineExpose({
|
|||||||
h2 {
|
h2 {
|
||||||
color: #fff;
|
color: #fff;
|
||||||
}
|
}
|
||||||
|
.el-popper{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
<style>
|
||||||
|
.el-popper.tooltip-class{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
</style>
|
@ -32,8 +32,9 @@
|
|||||||
v-model:visible="visible"
|
v-model:visible="visible"
|
||||||
:content="tipcontent"
|
:content="tipcontent"
|
||||||
placement="top"
|
placement="top"
|
||||||
effect="dark"
|
effect="light"
|
||||||
trigger="click"
|
trigger="click"
|
||||||
|
popper-class="tooltip-class"
|
||||||
virtual-triggering
|
virtual-triggering
|
||||||
:virtual-ref="triggerRef"
|
:virtual-ref="triggerRef"
|
||||||
/>
|
/>
|
||||||
@ -221,4 +222,12 @@ p {
|
|||||||
justify-content: center;
|
justify-content: center;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
}
|
}
|
||||||
|
.el-popper{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
<style>
|
||||||
|
.el-popper.tooltip-class{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
</style>
|
@ -1,5 +1,5 @@
|
|||||||
<!--
|
<!--
|
||||||
* @FilePath: \wwwd:\code\screenFront\src\views\index.vue
|
* @FilePath: \code\gitscreenFront\src\views\index.vue
|
||||||
* @Author: 王路平
|
* @Author: 王路平
|
||||||
* @文件版本: V1.0.0
|
* @文件版本: V1.0.0
|
||||||
* @Date: 2023-01-29 15:34:48
|
* @Date: 2023-01-29 15:34:48
|
||||||
@ -11,7 +11,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div :class="$style['container']" ref="appRef">
|
<div :class="$style['container']" ref="appRef">
|
||||||
<div class="navbar">
|
<div class="navbar">
|
||||||
<el-dropdown effect="dark" @command="changelang" >
|
<el-dropdown @command="changelang" >
|
||||||
<span class="el-dropdown-link">
|
<span class="el-dropdown-link">
|
||||||
<!-- <img src="../assets/svg/gateway.svg" alt="" class="langimg" height="20px" width="20px"> -->
|
<!-- <img src="../assets/svg/gateway.svg" alt="" class="langimg" height="20px" width="20px"> -->
|
||||||
<i class="iconfont icon-zhongyingwen langimg"></i>
|
<i class="iconfont icon-zhongyingwen langimg"></i>
|
||||||
@ -23,7 +23,7 @@
|
|||||||
</el-dropdown-menu>
|
</el-dropdown-menu>
|
||||||
</template>
|
</template>
|
||||||
</el-dropdown>
|
</el-dropdown>
|
||||||
<!-- <el-select class="m-2" v-model="lang" effect="dark" placeholder="Select" size="large" @change="changelang">
|
<!-- <el-select class="m-2" v-model="lang" placeholder="Select" size="large" @change="changelang">
|
||||||
<el-option
|
<el-option
|
||||||
:label="'简体中文'"
|
:label="'简体中文'"
|
||||||
:value="'简体中文'"
|
:value="'简体中文'"
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
width: '100%',
|
width: '100%',
|
||||||
height: '100%',
|
height: '100%',
|
||||||
}" />
|
}" />
|
||||||
<el-tooltip v-model:visible="visible" :content="tipcontent" placement="top" effect="dark" trigger="click"
|
<el-tooltip v-model:visible="visible" :content="tipcontent" placement="top" effect="light" trigger="click" popper-class="tooltip-class"
|
||||||
virtual-triggering :virtual-ref="triggerRef" />
|
virtual-triggering :virtual-ref="triggerRef" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -107,3 +107,8 @@ const dvClick = (value) => {
|
|||||||
text-overflow: none
|
text-overflow: none
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
<style>
|
||||||
|
.el-popper.tooltip-class{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
</style>
|
@ -1,5 +1,5 @@
|
|||||||
<!--
|
<!--
|
||||||
* @FilePath: \gitscreenFront\src\views\realtimeSecurity\content\chart\verticalNum.vue
|
* @FilePath: \code\gitscreenFront\src\views\realtimeSecurity\content\chart\verticalNum.vue
|
||||||
* @Author: 王路平
|
* @Author: 王路平
|
||||||
* @文件版本: V1.0.0
|
* @文件版本: V1.0.0
|
||||||
* @Date: 2023-02-13 08:22:35
|
* @Date: 2023-02-13 08:22:35
|
||||||
@ -15,7 +15,7 @@
|
|||||||
<!-- <div class="contentbox"> -->
|
<!-- <div class="contentbox"> -->
|
||||||
<div class="icontip">
|
<div class="icontip">
|
||||||
<div v-for="item in value" style="margin: auto 5px;">
|
<div v-for="item in value" style="margin: auto 5px;">
|
||||||
<el-popover placement="bottom" :width="220" trigger="hover" effect="dark"
|
<el-popover placement="bottom" :width="220" trigger="hover"
|
||||||
:popper-style="{ 'background-color': 'rgba(0,0,0,.8)' }">
|
:popper-style="{ 'background-color': 'rgba(0,0,0,.8)' }">
|
||||||
<ul class="icontipBox">
|
<ul class="icontipBox">
|
||||||
<li>
|
<li>
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
<div class="box" ref="classBox1">
|
<div class="box" ref="classBox1">
|
||||||
<div class="icontip">
|
<div class="icontip">
|
||||||
<div v-for="items in value" style="margin: auto 5px;" v-show="(+items.val > +limit)&&items.status">
|
<div v-for="items in value" style="margin: auto 5px;" v-show="(+items.val > +limit)&&items.status">
|
||||||
<el-popover placement="bottom" :width="250" trigger="hover" effect="dark"
|
<el-popover placement="bottom" :width="250" trigger="hover"
|
||||||
:popper-style="{ 'background-color': 'rgba(0,0,0,.8)' }">
|
:popper-style="{ 'background-color': 'rgba(0,0,0,.8)' }">
|
||||||
<ul class="icontipBox">
|
<ul class="icontipBox">
|
||||||
<li>
|
<li>
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
<div class="box" ref="classBox1">
|
<div class="box" ref="classBox1">
|
||||||
<div class="icontip">
|
<div class="icontip">
|
||||||
<div v-for="items in value.data" style="margin: auto 5px;" v-show="(+items.val > +value.quota)&&items.status">
|
<div v-for="items in value.data" style="margin: auto 5px;" v-show="(+items.val > +value.quota)&&items.status">
|
||||||
<el-popover placement="bottom" :width="250" trigger="hover" effect="dark"
|
<el-popover placement="bottom" :width="250" trigger="hover"
|
||||||
:popper-style="{ 'background-color': 'rgba(0,0,0,.8)' }">
|
:popper-style="{ 'background-color': 'rgba(0,0,0,.8)' }">
|
||||||
<ul class="icontipBox">
|
<ul class="icontipBox">
|
||||||
<li>
|
<li>
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
<div class="box" ref="classBox1">
|
<div class="box" ref="classBox1">
|
||||||
<div class="icontip">
|
<div class="icontip">
|
||||||
<div v-for="items in value" style="margin: auto 5px;" v-show="+items.val > +limit">
|
<div v-for="items in value" style="margin: auto 5px;" v-show="+items.val > +limit">
|
||||||
<el-popover placement="bottom" :width="250" trigger="hover" effect="dark"
|
<el-popover placement="bottom" :width="250" trigger="hover"
|
||||||
:popper-style="{ 'background-color': 'rgba(0,0,0,.8)' }">
|
:popper-style="{ 'background-color': 'rgba(0,0,0,.8)' }">
|
||||||
<ul class="icontipBox">
|
<ul class="icontipBox">
|
||||||
<li>
|
<li>
|
||||||
|
Loading…
Reference in New Issue
Block a user