Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
D
DC-TOM
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
刘照晖
DC-TOM
Commits
a5e2a398
Commit
a5e2a398
authored
May 23, 2025
by
liuzhaoh
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
除尘器监控开发2
parent
2e7543e8
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
213 additions
and
27 deletions
+213
-27
index.vue
src/views/dustMonitoring/index.vue
+213
-27
No files found.
src/views/dustMonitoring/index.vue
View file @
a5e2a398
...
...
@@ -41,11 +41,47 @@
<div
class=
"part2"
>
<div
class=
"dust-title"
>
2号窑尾除尘器
</div>
<div
class=
"dust-info"
>
<div
class=
"info-item"
v-for=
"item in dustInfo"
:key=
"item.label"
>
<span
class=
"lable"
>
{{
item
.
label
}}
</span>
<span
class=
"value"
>
{{
item
.
value
}}
</span>
<span
class=
"unit"
>
{{
item
.
unit
}}
</span>
<div
class=
"info-item"
v-for=
"item in dustInfo"
:key=
"item.label"
>
<span
class=
"lable"
>
{{
item
.
label
}}
</span>
<span
class=
"value"
>
{{
item
.
value
}}
</span>
<span
class=
"unit"
>
{{
item
.
unit
}}
</span>
</div>
</div>
<div
class=
"indicator-box"
>
<div
class=
"indicator-item"
id=
"indicatorOne"
></div>
<div
class=
"indicator-item"
id=
"indicatorTwo"
></div>
</div>
<div
class=
"position-info"
>
<div
class=
"left"
>
<div
class=
"part"
>
<div
class=
"point warn"
v-for=
"item in 6"
:key=
"item"
></div>
</div>
<div
class=
"part"
>
<div
class=
"point warn"
v-for=
"item in 6"
:key=
"item"
></div>
</div>
</div>
<div
class=
"right"
>
<div
class=
"part"
>
<div
class=
"point warn"
v-for=
"item in 6"
:key=
"item"
></div>
</div>
<div
class=
"part"
>
<div
class=
"point warn"
v-for=
"item in 6"
:key=
"item"
></div>
</div>
</div>
</div>
<div
class=
"other-info"
>
<div>
<span>
反吹仓室:
</span>
<span>
3#仓-1排
</span>
</div>
<div>
<span>
泄露仓室:
</span>
<span>
5#仓、10#仓、13#仓
</span>
</div>
<div>
<span>
故障仓室:
</span>
<span>
5#仓、10#仓、13#仓
</span>
</div>
</div>
</div>
<div
class=
"warn-info"
></div>
...
...
@@ -85,19 +121,108 @@ const initChart = () => {
chartInstance
[
index
]
=
echarts
.
init
(
document
.
getElementById
(
"chart"
+
index
)
);
console
.
log
(
chartInstance
[
index
]);
chartInstance
[
index
].
setOption
(
option
);
});
};
const
dustInfo
=
reactive
([
{
label
:
'压差'
,
value
:
'0.0'
,
unit
:
'KPa'
},
{
label
:
'粉尘浓度'
,
value
:
'0.0'
,
unit
:
'KPa'
},
])
{
label
:
"压差"
,
value
:
"0.0"
,
unit
:
"KPa"
},
{
label
:
"粉尘浓度"
,
value
:
"0.0"
,
unit
:
"mg/m3"
},
{
label
:
"电磁阀数量"
,
value
:
"0.0"
,
unit
:
"KPa"
},
{
label
:
"仓室数量"
,
value
:
"0.0"
,
unit
:
"KPa"
},
{
label
:
"布袋检测仪数量"
,
value
:
"0.0"
,
unit
:
"KPa"
},
{
label
:
"脉冲检测仪数量"
,
value
:
"0.0"
,
unit
:
"KPa"
},
]);
const
option2
=
{
series
:
[
{
type
:
"gauge"
,
startAngle
:
260
,
endAngle
:
300
,
center
:
[
"50%"
,
"75%"
],
radius
:
"90%"
,
min
:
0
,
max
:
1
,
splitNumber
:
8
,
axisLine
:
{
lineStyle
:
{
width
:
3
,
color
:
[
[
0.25
,
"#FF6E76"
],
[
0.8
,
"#67c23a"
],
[
1
,
"#FF6E76"
],
],
},
},
pointer
:
{
icon
:
"path://M12.8,0.7l12,40.1H0.7L12.8,0.7z"
,
length
:
"12%"
,
width
:
20
,
offsetCenter
:
[
0
,
"-60%"
],
itemStyle
:
{
color
:
"auto"
,
},
},
axisTick
:
{
length
:
0
,
lineStyle
:
{
color
:
"auto"
,
width
:
2
,
},
},
splitLine
:
{
length
:
0
,
lineStyle
:
{
color
:
"auto"
,
width
:
5
,
},
},
axisLabel
:
{
color
:
"#464646"
,
fontSize
:
20
,
distance
:
-
60
,
rotate
:
"tangential"
,
show
:
false
,
},
title
:
{
offsetCenter
:
[
0
,
"50%"
],
fontSize
:
12
,
},
detail
:
{
fontSize
:
20
,
offsetCenter
:
[
0
,
0
],
valueAnimation
:
true
,
formatter
:
function
(
value
)
{
return
Math
.
round
(
value
*
100
)
+
""
;
},
color
:
"inherit"
,
},
data
:
[
{
value
:
0.7
,
name
:
"压差"
,
},
],
},
],
};
const
indicatorOneInstance
=
ref
();
const
indicatorTwoInstance
=
ref
();
const
indicatorFun
=
(
target
,
domId
,
option
)
=>
{
if
(
target
.
value
&&
target
.
dispose
)
{
target
.
value
.
dispose
();
}
target
.
value
=
echarts
.
init
(
document
.
getElementById
(
domId
));
target
.
value
.
setOption
(
option
);
};
onMounted
(()
=>
{
initChart
();
indicatorFun
(
indicatorOneInstance
,
"indicatorOne"
,
option2
);
indicatorFun
(
indicatorTwoInstance
,
"indicatorTwo"
,
option2
);
});
</
script
>
<
style
lang=
"scss"
scoped
>
$borderColor
:
#bbbdc3
;
.top-box
{
}
.left-box
{
...
...
@@ -132,30 +257,86 @@ onMounted(() => {
height
:
calc
(
60vh
-
20px
);
border-radius
:
15px
;
background-color
:
#fff
;
overflow
:
hidden
;
overflow-y
:
auto
;
padding
:
20px
0
;
box-sizing
:
border-box
;
.dust-title
{
text-align
:
center
;
font-size
:
20px
;
font-weight
:
600
;
padding
:
1
0px
;
border
:
1px
solid
#ebeef5
;
text-align
:
center
;
font-size
:
20px
;
font-weight
:
600
;
padding-bottom
:
2
0px
;
border-bottom
:
1px
solid
$borderColor
;
}
.dust-info
{
padding
:
0
20px
;
padding
:
20px
20px
;
border-bottom
:
1px
solid
$borderColor
;
}
.info-item
{
padding
:
3px
0
;
span
{
display
:
inline-block
;
}
.lable
{
width
:
40%
;
}
.value
{
width
:
50%
;
}
.unit
{
width
:
10%
;
}
padding
:
3px
0
;
span
{
display
:
inline-block
;
}
.lable
{
width
:
40%
;
}
.value
{
width
:
50%
;
}
.unit
{
width
:
10%
;
}
}
.indicator-box
{
display
:
flex
;
align-items
:
center
;
justify-content
:
space-between
;
.indicator-item
{
width
:
50%
;
height
:
200px
;
}
}
.position-info
{
display
:
flex
;
justify-content
:
space-between
;
align-items
:
center
;
padding
:
40px
20px
20px
20px
;
.left
,
.right
{
padding
:
5px
;
width
:
48%
;
flex-wrap
:
wrap
;
// box-shadow: 0 9px 20px 0 rgba(164, 162, 171, 0.842);
box-shadow
:
color
(
srgb
0
.360784
0
.788235
0
.654902
/
0
.5
)
0px
0px
20px
0px
;
// box-shadow: 0px 0px 10px 0px rgba(164, 162, 171, 0.842);
}
.part
{
display
:
flex
;
align-items
:
center
;
justify-content
:
space-around
;
}
.point
{
width
:
20px
;
margin
:
1%
3%
;
border-radius
:
50%
;
display
:
inline-block
;
cursor
:
pointer
;
}
.
point
:
:
after
{
content
:
""
;
display
:
block
;
padding-bottom
:
100%
;
/* 9/16 * 100% = 56.25% */
}
.warn
{
background-color
:
rgb
(
217
,
10
,
10
);
}
.health
{
background-color
:
#67c23a
;
}
}
.other-info
{
padding
:
20px
;
border-top
:
1px
solid
$borderColor
;
}
}
}
...
...
@@ -169,4 +350,9 @@ onMounted(() => {
display
:
flex
;
justify-content
:
space-between
;
}
.layout2
{
display
:
flex
;
justify-content
:
space-between
;
flex-direction
:
column
;
}
</
style
>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment