1.更换系统主题颜色

2.增加历史报警记录模块
This commit is contained in:
15133876896-BGG25 2023-06-06 16:57:53 +08:00
parent 873baee839
commit 7f5777ab60
37 changed files with 707 additions and 276 deletions

View File

@ -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";
} }

View File

@ -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>
.el-popper.tooltip-class{
color: #fff !important;
}
</style> </style>

View 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>

View File

@ -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
// ctrltruefalse // ctrltruefalse
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) {
return;
if(props.typeFun.length==0){
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 {
data = JSON.parse(val);
} catch (e) {
console.log(e);
return;
}
if (
let data = null props.alarmType.some((e) => {
try{ return e == data.type;
data = JSON.parse(val); })
}catch(e){ ) {
console.log(e);
return
}
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>

View File

@ -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'

View File

@ -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){

View File

@ -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()
} }

View File

@ -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>

View File

@ -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>

View File

@ -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>

View File

@ -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>
.el-popper.tooltip-class{
color: #fff !important;
}
</style> </style>

View File

@ -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>
.el-popper.tooltip-class{
color: #fff !important;
}
</style> </style>

View File

@ -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>
.el-popper.tooltip-class{
color: #fff !important;
}
</style> </style>

View File

@ -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>

View File

@ -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>

View File

@ -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>

View File

@ -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>

View File

@ -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>

View File

@ -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>

View File

@ -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>

View File

@ -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>

View File

@ -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>

View File

@ -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>

View File

@ -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>

View File

@ -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>

View File

@ -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>

View File

@ -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>

View File

@ -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>

View File

@ -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>

View File

@ -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>
.el-popper.tooltip-class{
color: #fff !important;
}
</style> </style>

View File

@ -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>
.el-popper.tooltip-class{
color: #fff !important;
}
</style> </style>

View File

@ -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="'简体中文'"

View File

@ -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>

View File

@ -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>

View File

@ -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>

View File

@ -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>

View File

@ -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>