联调数据清洗页面 绘制终端运行评价页面
This commit is contained in:
@@ -5,13 +5,13 @@
|
||||
<template v-slot:select>
|
||||
<el-form-item label="对象类型">
|
||||
<el-select
|
||||
v-model="tableStore.table.params.supvObjType"
|
||||
v-model="tableStore.table.params.objType"
|
||||
clearable
|
||||
style="width: 100%"
|
||||
placeholder="请选择对象类型"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in supvObjTypeList"
|
||||
v-for="item in objTypeList"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
@@ -24,7 +24,7 @@
|
||||
</TableHeader>
|
||||
<div class="card-list pt10">
|
||||
<div class="monitoringPoints">
|
||||
<el-card style="height: 390px">
|
||||
<el-card style="height: 200px">
|
||||
<template #header>
|
||||
<div class="card-header">
|
||||
<span>监测点统计</span>
|
||||
@@ -34,21 +34,28 @@
|
||||
<div class="statistics">
|
||||
<div class="divBox">
|
||||
<span class="iconfont icon-qiyezongshu" style="color: #57bc6e"></span>
|
||||
<span class="divBox_title">总数</span>
|
||||
<span class="divBox_num" style="color: #57bc6e">400</span>
|
||||
<span class="divBox_title">监测点总数</span>
|
||||
<span class="divBox_num" style="color: #57bc6e">{{ monitoringPoints.runNum }}</span>
|
||||
</div>
|
||||
<div class="divBox" style="width: 200px">
|
||||
<span class="iconfont icon-igw-f-warning-data" style="color: #fca955"></span>
|
||||
<span class="iconfont icon-yichang" style="color: #ff0000"></span>
|
||||
<span class="divBox_title">告警测点数</span>
|
||||
<span class="divBox_num" style="color: #fca955">200</span>
|
||||
<span class="divBox_num" style="color: #ff0000">
|
||||
{{ monitoringPoints.abnormalNum }}
|
||||
</span>
|
||||
</div>
|
||||
<!-- <div class="divBox">
|
||||
<span class="iconfont icon-shouruzhanbi" style="color: #06b6a9"></span>
|
||||
<span class="divBox_title">占比</span>
|
||||
<span class="divBox_num" style="color: #06b6a9">50%</span>
|
||||
</div> -->
|
||||
</div>
|
||||
<div class="mt10" style="height: 240px">
|
||||
<div class="echartTitle">
|
||||
<div>告警占比</div>
|
||||
<div>
|
||||
{{
|
||||
isNaN((monitoringPoints.abnormalNum / monitoringPoints.runNum) * 100)
|
||||
? 0
|
||||
: ((monitoringPoints.abnormalNum / monitoringPoints.runNum) * 100).toFixed(2)
|
||||
}}%
|
||||
</div>
|
||||
</div>
|
||||
<div style="height: 30px">
|
||||
<MyEchart :options="percentage"></MyEchart>
|
||||
</div>
|
||||
</div>
|
||||
@@ -59,29 +66,28 @@
|
||||
<span>告警指标统计</span>
|
||||
</div>
|
||||
</template>
|
||||
<div class="mb5" style="height: 40px">
|
||||
<el-segmented style="height: 100%" v-model="segmented" :options="segmentedList" block />
|
||||
</div>
|
||||
<div class="header">
|
||||
<span style="flex: 1; text-align: left">指标名称</span>
|
||||
|
||||
<span style="width: 100px">告警测点数</span>
|
||||
|
||||
<span style="width: 110px">告警测点数</span>
|
||||
</div>
|
||||
<div :style="indicatorHeight" style="overflow-y: auto">
|
||||
<div v-for="o in abnormal" class="abnormal mb10">
|
||||
<span style="flex: 1; height: 24px" class="iconDiv">
|
||||
<!-- <span
|
||||
class="iconFont iconfont icon-yichang"
|
||||
|
||||
></span> -->
|
||||
<div :style="{ backgroundColor: o.quantity > 0 ? '#ff9800' : '' }"></div>
|
||||
{{ o.name }}
|
||||
<div :style="{ backgroundColor: o.ids.length > 0 ? '#ff9800' : '' }"></div>
|
||||
{{ o.targetName }}
|
||||
</span>
|
||||
|
||||
<span style="width: 100px; text-align: center">
|
||||
|
||||
<span style="width: 110px; text-align: center">
|
||||
<span
|
||||
style="color: #ff9800; cursor: pointer; text-decoration: underline"
|
||||
class="text"
|
||||
@click="quantityClick(o)"
|
||||
>
|
||||
{{ o.quantity }}
|
||||
{{ o.ids.length }}
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
@@ -100,11 +106,16 @@
|
||||
<el-form :inline="true" class="form">
|
||||
<el-form-item label="告警持续天数"></el-form-item>
|
||||
<el-form-item label="告警阀值(天)">
|
||||
<el-input-number v-model="tableStore.table.params.alarm" :min="0" :step="1" step-strictly />
|
||||
<el-input-number
|
||||
v-model="tableStore.table.params.alarmDayLimit"
|
||||
:min="0"
|
||||
:step="1"
|
||||
step-strictly
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="预警阀值(天)">
|
||||
<el-input-number
|
||||
v-model="tableStore.table.params.earlyWarning"
|
||||
v-model="tableStore.table.params.warnDayLimit"
|
||||
:min="0"
|
||||
:step="1"
|
||||
step-strictly
|
||||
@@ -127,174 +138,59 @@
|
||||
import TableStore from '@/utils/tableStore'
|
||||
import Table from '@/components/table/index.vue'
|
||||
import TableHeader from '@/components/table/header/index.vue'
|
||||
import { deleteDeploy } from '@/api/process-boot/bpm'
|
||||
import { onMounted, provide, ref } from 'vue'
|
||||
import { useDictData } from '@/stores/dictData'
|
||||
import { ElMessage } from 'element-plus'
|
||||
import { CaretRight } from '@element-plus/icons-vue'
|
||||
import { mainHeight } from '@/utils/layout'
|
||||
import MyEchart from '@/components/echarts/MyEchart.vue'
|
||||
import alarmDetails from './alarmDetails.vue'
|
||||
import { useConfig } from '@/stores/config'
|
||||
const config = useConfig()
|
||||
import { queryFirstNode } from '@/api/auth'
|
||||
|
||||
const alarmDetailsRef = ref()
|
||||
const dictData = useDictData()
|
||||
//字典获取监督对象类型
|
||||
const supvObjTypeList = dictData.getBasicData('supv_obj_type')
|
||||
const objTypeList: any = ref([])
|
||||
const pageHeight = mainHeight(155)
|
||||
const indicatorHeight = mainHeight(652)
|
||||
const indicatorHeight = mainHeight(507)
|
||||
const tableRef = ref()
|
||||
const abnormal = ref([
|
||||
const monitoringPoints = ref({
|
||||
runNum: 0,
|
||||
abnormalNum: 0
|
||||
})
|
||||
|
||||
const percentage = ref({})
|
||||
const abnormal: any = ref([])
|
||||
const segmented = ref(1)
|
||||
const segmentedList = [
|
||||
{
|
||||
name: '频率',
|
||||
range: '42.5~57.5',
|
||||
unit: '',
|
||||
quantity: 11
|
||||
label: '基础数据',
|
||||
value: 1
|
||||
},
|
||||
{
|
||||
name: '频率偏差',
|
||||
range: '-7.5~7.5',
|
||||
unit: '',
|
||||
quantity: 0
|
||||
label: '稳态数据',
|
||||
value: 2
|
||||
},
|
||||
{
|
||||
name: '相(线)电压有效值',
|
||||
range: '0~150%U',
|
||||
unit: '',
|
||||
quantity: 0
|
||||
},
|
||||
{
|
||||
name: '电压偏差',
|
||||
range: '-20%~20%',
|
||||
unit: '',
|
||||
quantity: 0
|
||||
},
|
||||
{
|
||||
name: '电流有效值',
|
||||
range: '大于CT一次变比',
|
||||
unit: '',
|
||||
quantity: 0
|
||||
},
|
||||
{
|
||||
name: '单相功率因数',
|
||||
range: '-1~1',
|
||||
unit: '',
|
||||
quantity: 0
|
||||
},
|
||||
{
|
||||
name: '单相基波功率因数',
|
||||
range: '-1~1',
|
||||
unit: '',
|
||||
quantity: 0
|
||||
},
|
||||
{
|
||||
name: '三相功率因数',
|
||||
range: '-1~1',
|
||||
unit: '',
|
||||
quantity: 0
|
||||
},
|
||||
{
|
||||
name: '基波功率因数',
|
||||
range: '-1~1',
|
||||
unit: '',
|
||||
quantity: 0
|
||||
},
|
||||
{
|
||||
name: '电压总谐波畸变率',
|
||||
range: '0~30%',
|
||||
unit: '',
|
||||
quantity: 0
|
||||
},
|
||||
{
|
||||
name: '相(线)电压基波有效值',
|
||||
range: '0~150%U',
|
||||
unit: '',
|
||||
quantity: 0
|
||||
},
|
||||
{
|
||||
name: '相(线)电压基波相角',
|
||||
range: '-180~180',
|
||||
unit: '',
|
||||
quantity: 0
|
||||
},
|
||||
{
|
||||
name: '谐波电压含有率',
|
||||
range: '0~30%',
|
||||
unit: '',
|
||||
quantity: 0
|
||||
},
|
||||
{
|
||||
name: '谐波电压相角',
|
||||
range: '-180~180',
|
||||
unit: '',
|
||||
quantity: 0
|
||||
},
|
||||
{
|
||||
name: '间谐波电压含有率',
|
||||
range: '0~30%',
|
||||
unit: '',
|
||||
quantity: 0
|
||||
},
|
||||
{
|
||||
name: '正序、负序和零序电压',
|
||||
range: '0~150%U',
|
||||
unit: '',
|
||||
quantity: 0
|
||||
},
|
||||
{
|
||||
name: '负序电压不平衡度',
|
||||
range: '0~40%',
|
||||
unit: '',
|
||||
quantity: 0
|
||||
},
|
||||
{
|
||||
name: '零序电压不平衡度',
|
||||
range: '0~40%',
|
||||
unit: '',
|
||||
quantity: 0
|
||||
},
|
||||
{
|
||||
name: '电压波动',
|
||||
range: '0~40%',
|
||||
unit: '',
|
||||
quantity: 0
|
||||
},
|
||||
{
|
||||
name: '短时间闪变值',
|
||||
range: '0~20',
|
||||
unit: '',
|
||||
quantity: 0
|
||||
},
|
||||
{
|
||||
name: '长时间闪变值',
|
||||
range: '0~20',
|
||||
unit: '',
|
||||
quantity: 0
|
||||
},
|
||||
{
|
||||
name: '电压暂降特征幅值',
|
||||
range: '0~90%',
|
||||
unit: '',
|
||||
quantity: 0
|
||||
},
|
||||
{
|
||||
name: '电压暂升特征幅值',
|
||||
range: '110%~180%',
|
||||
unit: '',
|
||||
quantity: 0
|
||||
label: '暂态数据',
|
||||
value: 3
|
||||
}
|
||||
])
|
||||
]
|
||||
const tableStore = new TableStore({
|
||||
url: '/user-boot/user/getAllUserSimpleList',
|
||||
method: 'GET',
|
||||
isWebPaging: true,
|
||||
url: '/device-boot/dataVerify/getMonitorVerifyData',
|
||||
method: 'POST',
|
||||
showPage: false,
|
||||
publicHeight: 480,
|
||||
column: [
|
||||
{ title: '序号', width: 80 },
|
||||
{
|
||||
title: '序号',
|
||||
width: 80,
|
||||
formatter: (row: any) => {
|
||||
return (tableStore.table.params.pageNum - 1) * tableStore.table.params.pageSize + row.rowIndex + 1
|
||||
}
|
||||
},
|
||||
{
|
||||
title: '监测点名称',
|
||||
field: 'name',
|
||||
field: 'monitorName',
|
||||
type: 'html',
|
||||
formatter: (row, column) => {
|
||||
return `<div class="table_name">${row.cellValue}</div>`
|
||||
@@ -302,26 +198,39 @@ const tableStore = new TableStore({
|
||||
},
|
||||
{
|
||||
title: '所属终端名称',
|
||||
field: 'name1',
|
||||
field: 'devName',
|
||||
type: 'html',
|
||||
formatter: (row, column) => {
|
||||
return `<div class="table_name">${row.cellValue}</div>`
|
||||
return `<div class="table_name">测试终端</div>`
|
||||
// `<div class="table_name">${row.cellValue}</div>`
|
||||
}
|
||||
},
|
||||
{
|
||||
title: '所属电站',
|
||||
field: 'name2',
|
||||
field: 'stationName',
|
||||
type: 'html',
|
||||
formatter: (row, column) => {
|
||||
return `<div class="table_name">${row.cellValue}</div>`
|
||||
}
|
||||
},
|
||||
{ title: '监测对象类型', field: 'name3' },
|
||||
{ title: '监测对象名称', field: 'name4' },
|
||||
{ title: '电压等级', field: 'name5' },
|
||||
{
|
||||
title: '监测对象类型',
|
||||
field: 'objType',
|
||||
formatter: (row, column) => {
|
||||
return `测试光伏电站`
|
||||
}
|
||||
},
|
||||
{
|
||||
title: '监测对象名称',
|
||||
field: 'objName',
|
||||
formatter: (row, column) => {
|
||||
return `测试对象`
|
||||
}
|
||||
},
|
||||
{ title: '电压等级', field: 'voltageLevel' },
|
||||
{
|
||||
title: '告警天数',
|
||||
field: 'name6',
|
||||
field: 'abnormalDay',
|
||||
type: 'html',
|
||||
formatter: (row, column) => {
|
||||
return `<div class="table_name">${row.cellValue}</div>`
|
||||
@@ -329,7 +238,7 @@ const tableStore = new TableStore({
|
||||
},
|
||||
{
|
||||
title: '严重度',
|
||||
field: 'name7',
|
||||
field: 'severity',
|
||||
render: 'tag',
|
||||
custom: {
|
||||
0: 'warning',
|
||||
@@ -358,78 +267,12 @@ const tableStore = new TableStore({
|
||||
}
|
||||
],
|
||||
loadCallback: () => {
|
||||
tableStore.table.data = [
|
||||
{
|
||||
name: '测试监测点1',
|
||||
name1: '025875',
|
||||
name2: '测试变电站',
|
||||
name3: '测试光伏电站',
|
||||
name4: '测试光伏电站',
|
||||
name5: '110',
|
||||
name6: '1',
|
||||
name7: '0'
|
||||
},
|
||||
{
|
||||
name: '测试监测点1',
|
||||
name1: '025875',
|
||||
name2: '测试变电站',
|
||||
name3: '测试光伏电站',
|
||||
name4: '测试光伏电站',
|
||||
name5: '110',
|
||||
name6: '1',
|
||||
name7: '0'
|
||||
},
|
||||
{
|
||||
name: '测试监测点1',
|
||||
name1: '025875',
|
||||
name2: '测试变电站',
|
||||
name3: '测试光伏电站',
|
||||
name4: '测试光伏电站',
|
||||
name5: '110',
|
||||
name6: '1',
|
||||
name7: '0'
|
||||
},
|
||||
{
|
||||
name: '测试监测点1',
|
||||
name1: '025875',
|
||||
name2: '测试变电站',
|
||||
name3: '测试光伏电站',
|
||||
name4: '测试光伏电站',
|
||||
name5: '110',
|
||||
name6: '1',
|
||||
name7: '0'
|
||||
},
|
||||
{
|
||||
name: '测试监测点1',
|
||||
name1: '025875',
|
||||
name2: '测试变电站',
|
||||
name3: '测试光伏电站',
|
||||
name4: '测试光伏电站',
|
||||
name5: '110',
|
||||
name6: '1',
|
||||
name7: '0'
|
||||
},
|
||||
{
|
||||
name: '测试监测点1',
|
||||
name1: '025875',
|
||||
name2: '测试变电站',
|
||||
name3: '测试光伏电站',
|
||||
name4: '测试光伏电站',
|
||||
name5: '110',
|
||||
name6: '1',
|
||||
name7: '1'
|
||||
},
|
||||
{
|
||||
name: '测试监测点1',
|
||||
name1: '025875',
|
||||
name2: '测试变电站',
|
||||
name3: '测试光伏电站',
|
||||
name4: '测试光伏电站',
|
||||
name5: '110',
|
||||
name6: '1',
|
||||
name7: '1'
|
||||
}
|
||||
]
|
||||
console.log('🚀 ~ abnormal.value:', tableStore.table.data)
|
||||
monitoringPoints.value.runNum = tableStore.table.data.runNum //总数
|
||||
monitoringPoints.value.abnormalNum = tableStore.table.data.abnormalNum //告警测点数
|
||||
abnormal.value = tableStore.table.data.targetList
|
||||
tableStore.table.data = tableStore.table.data.monitorAlarmInfo
|
||||
echart()
|
||||
}
|
||||
})
|
||||
|
||||
@@ -465,231 +308,119 @@ const options = ref({
|
||||
]
|
||||
}
|
||||
})
|
||||
|
||||
const percentage = ref({
|
||||
// options: {
|
||||
// tooltip: {
|
||||
// show: false
|
||||
// },
|
||||
// grid: {
|
||||
// left: 50
|
||||
// },
|
||||
// toolbox: {
|
||||
// show: false
|
||||
// },
|
||||
// legend: {
|
||||
// show: false
|
||||
// },
|
||||
// dataZoom: null,
|
||||
// xAxis: {
|
||||
// max: 100,
|
||||
// splitLine: {
|
||||
// show: false
|
||||
// },
|
||||
// axisLine: {
|
||||
// show: false
|
||||
// },
|
||||
// axisLabel: {
|
||||
// show: false
|
||||
// },
|
||||
// axisTick: {
|
||||
// show: false
|
||||
// }
|
||||
// },
|
||||
|
||||
// yAxis: [
|
||||
// {
|
||||
// type: 'category',
|
||||
// inverse: false,
|
||||
// data: ['占比'],
|
||||
// axisLine: {
|
||||
// show: false
|
||||
// },
|
||||
// axisTick: {
|
||||
// show: false
|
||||
// },
|
||||
// axisLabel: {
|
||||
// show: false
|
||||
// }
|
||||
// }
|
||||
// ],
|
||||
// series: [
|
||||
// {
|
||||
// //内
|
||||
// type: 'bar',
|
||||
// barWidth: 18,
|
||||
|
||||
// legendHoverLink: false,
|
||||
// silent: true,
|
||||
// itemStyle: {
|
||||
// color: '#06b6a9'
|
||||
// },
|
||||
// label: {
|
||||
// normal: {
|
||||
// show: true,
|
||||
// position: 'left',
|
||||
// formatter: '{b}',
|
||||
// textStyle: {
|
||||
// color: '#000',
|
||||
// fontSize: 14,
|
||||
// fontWeight: 'bold'
|
||||
// }
|
||||
// }
|
||||
// },
|
||||
// data: [50],
|
||||
// z: 1,
|
||||
// animationEasing: 'elasticOut'
|
||||
// },
|
||||
// {
|
||||
// //分隔
|
||||
// type: 'pictorialBar',
|
||||
// itemStyle: {
|
||||
// color: '#e4e7ed'
|
||||
// },
|
||||
// symbolRepeat: 'fixed',
|
||||
// symbolMargin: 4,
|
||||
// symbol: 'rect',
|
||||
// symbolClip: true,
|
||||
// symbolSize: [2, 21],
|
||||
// symbolPosition: 'start',
|
||||
// symbolOffset: [0, 0],
|
||||
// symbolBoundingData: 100,
|
||||
// data: [50],
|
||||
// z: 2,
|
||||
// animationEasing: 'elasticOut'
|
||||
// },
|
||||
// {
|
||||
// //外边框
|
||||
// type: 'pictorialBar',
|
||||
// symbol: 'rect',
|
||||
// symbolBoundingData: 100,
|
||||
// itemStyle: {
|
||||
// normal: {
|
||||
// color: 'none'
|
||||
// }
|
||||
// },
|
||||
// label: {
|
||||
// normal: {
|
||||
// show: true,
|
||||
// formatter: '{c}%',
|
||||
// position: 'right',
|
||||
// offset: [0, 0], //设置右边数据位置
|
||||
// textStyle: {
|
||||
// color: '#06b6a9',
|
||||
// fontSize: 16,
|
||||
// fontWeight: 600
|
||||
// }
|
||||
// }
|
||||
// },
|
||||
// data: [50],
|
||||
// z: 0,
|
||||
// animationEasing: 'elasticOut'
|
||||
// },
|
||||
// {
|
||||
// name: '外框',
|
||||
// type: 'bar',
|
||||
// barGap: '-100%', //设置外框粗细
|
||||
// data: [100],
|
||||
// barWidth: 26,
|
||||
// itemStyle: {
|
||||
// normal: {
|
||||
// color: '#e4e7ed', //填充色
|
||||
// barBorderColor: '#e4e7ed', //边框色
|
||||
// barBorderWidth: 1, //边框宽度
|
||||
// // barBorderRadius: 0, //圆角半径
|
||||
// label: {
|
||||
// //标签显示位置
|
||||
// show: false,
|
||||
// position: 'top' //insideTop 或者横向的 insideLeft
|
||||
// }
|
||||
// }
|
||||
// },
|
||||
// z: 0
|
||||
// }
|
||||
// ]
|
||||
// }
|
||||
options: {
|
||||
toolbox: {
|
||||
show: false
|
||||
},
|
||||
legend: {
|
||||
show: false
|
||||
},
|
||||
dataZoom: null,
|
||||
title: {
|
||||
text: `{t|占比}
|
||||
{v|50%}`,
|
||||
x: 'center',
|
||||
y: 'center',
|
||||
textStyle: {
|
||||
color: config.layout.elementUiPrimary[0],
|
||||
|
||||
rich: {
|
||||
v: {
|
||||
fontSize: 28,
|
||||
fontWeight: '550',
|
||||
color: config.layout.elementUiPrimary[0]
|
||||
},
|
||||
|
||||
t: {
|
||||
lineHeight: 28,
|
||||
fontSize: 16
|
||||
}
|
||||
const echart = () => {
|
||||
percentage.value = {
|
||||
color: ['#ff9800'],
|
||||
options: {
|
||||
dataZoom: null,
|
||||
toolbox: {
|
||||
show: false
|
||||
},
|
||||
grid: {
|
||||
top: '0%',
|
||||
left: '2%',
|
||||
right: '2%',
|
||||
bottom: '0%'
|
||||
},
|
||||
tooltip: {
|
||||
show: false
|
||||
},
|
||||
legend: {
|
||||
show: false
|
||||
},
|
||||
yAxis: {
|
||||
show: false,
|
||||
data: ['']
|
||||
},
|
||||
xAxis: [
|
||||
{
|
||||
show: false,
|
||||
type: 'value'
|
||||
}
|
||||
}
|
||||
},
|
||||
color: ['#ccc'],
|
||||
series: [
|
||||
{
|
||||
name: 'Line 1',
|
||||
type: 'pie',
|
||||
clockWise: true,
|
||||
radius: ['63%', '80%'],
|
||||
itemStyle: {
|
||||
normal: {
|
||||
label: {
|
||||
show: false
|
||||
},
|
||||
labelLine: {
|
||||
show: false
|
||||
],
|
||||
|
||||
series: [
|
||||
{
|
||||
name: '告警占比',
|
||||
type: 'bar',
|
||||
barWidth: 12,
|
||||
data: [((monitoringPoints.value.abnormalNum / monitoringPoints.value.runNum) * 100).toFixed(2)],
|
||||
z: 0,
|
||||
zlevel: 0,
|
||||
|
||||
itemStyle: {
|
||||
normal: {
|
||||
color: {
|
||||
type: 'linear',
|
||||
x: 0,
|
||||
y: 0,
|
||||
x2: 1,
|
||||
y2: 0,
|
||||
colorStops: [
|
||||
{
|
||||
offset: 0,
|
||||
color: '#ff0007' // 0% 处的颜色
|
||||
},
|
||||
{
|
||||
offset: 1,
|
||||
color: '#E22331' // 100% 处的颜色
|
||||
}
|
||||
],
|
||||
global: false // 缺省为 false
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
hoverAnimation: false,
|
||||
data: [
|
||||
{
|
||||
value: 80,
|
||||
name: '01',
|
||||
itemStyle: {
|
||||
normal: {
|
||||
color: config.layout.elementUiPrimary[0],
|
||||
label: {
|
||||
show: false
|
||||
},
|
||||
labelLine: {
|
||||
show: false
|
||||
}
|
||||
}
|
||||
{
|
||||
type: 'pictorialBar',
|
||||
itemStyle: {
|
||||
normal: {
|
||||
color: '#fff'
|
||||
}
|
||||
},
|
||||
{
|
||||
name: '02',
|
||||
value: 20
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
})
|
||||
symbolRepeat: 50,
|
||||
// symbolMargin: 300,
|
||||
symbol: 'rect',
|
||||
symbolClip: true,
|
||||
symbolSize: [2, 15],
|
||||
symbolPosition: 'start',
|
||||
symbolOffset: [0, 0],
|
||||
data: [100],
|
||||
z: 1,
|
||||
zlevel: 0
|
||||
},
|
||||
{
|
||||
name: '机器故障率',
|
||||
type: 'bar',
|
||||
barGap: '-125%',
|
||||
data: [100],
|
||||
barWidth: 18,
|
||||
|
||||
tableStore.table.params.radio = '1'
|
||||
tableStore.table.params.alarm = 5
|
||||
tableStore.table.params.earlyWarning = 1
|
||||
itemStyle: {
|
||||
normal: {
|
||||
color: 'transparent',
|
||||
barBorderColor: 'rgb(148,217,249)',
|
||||
barBorderWidth: 1
|
||||
}
|
||||
},
|
||||
z: 2
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
tableStore.table.params.deptId = dictData.state.area[0].id
|
||||
tableStore.table.params.objType = ''
|
||||
tableStore.table.params.alarmDayLimit = 5
|
||||
tableStore.table.params.warnDayLimit = 1
|
||||
|
||||
const quantityClick = (e: any) => {
|
||||
alarmDetailsRef.value.open(e)
|
||||
}
|
||||
onMounted(() => {
|
||||
queryFirstNode({ type: 0 }).then(res => {
|
||||
objTypeList.value = res.data
|
||||
})
|
||||
// 加载数据
|
||||
tableStore.index()
|
||||
})
|
||||
@@ -733,7 +464,7 @@ provide('tableStore', tableStore)
|
||||
background-color: #eef8f0;
|
||||
}
|
||||
&:nth-child(2) {
|
||||
background-color: #fff6ed;
|
||||
background-color: #ffd7d7;
|
||||
}
|
||||
&:nth-child(3) {
|
||||
background-color: #e5f8f6;
|
||||
@@ -808,4 +539,24 @@ provide('tableStore', tableStore)
|
||||
text-decoration: underline;
|
||||
text-underline-offset: 4px;
|
||||
}
|
||||
.echartTitle {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
font-size: 14px;
|
||||
font-weight: 600;
|
||||
div:nth-child(2) {
|
||||
font-size: 16px;
|
||||
color: #ff0000;
|
||||
}
|
||||
}
|
||||
|
||||
:deep(.el-segmented__item-selected, ) {
|
||||
clip-path: polygon(10% 0, 100% 0, 90% 100%, 0 100%);
|
||||
}
|
||||
:deep(.el-segmented__item, ) {
|
||||
clip-path: polygon(10% 0, 100% 0, 90% 100%, 0 100%);
|
||||
}
|
||||
:deep(.el-segmented) {
|
||||
clip-path: polygon(4% 0, 100% 0, 96% 100%, 0 100%);
|
||||
}
|
||||
</style>
|
||||
|
||||
Reference in New Issue
Block a user