Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Sign in / Register
Toggle navigation
E
energyai_vue
Project
Project
Details
Activity
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
葛齐林
energyai_vue
Commits
5ca129c3
Commit
5ca129c3
authored
Apr 02, 2021
by
caojm
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
样式微调
parent
36d0ac57
Changes
17
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
17 changed files
with
936 additions
and
357 deletions
+936
-357
public.scss
src/assets/style/public.scss
+39
-1
energy_text.png
src/layout/header-aside/imgs/energy_text.png
+0
-0
train.png
src/layout/header-aside/imgs/train.png
+0
-0
layout.vue
src/layout/header-aside/layout.vue
+323
-254
page.vue
src/pages/analysis/energy/page.vue
+65
-34
cardList.vue
src/pages/components/cardList.vue
+8
-1
enTable.vue
src/pages/components/enTable.vue
+37
-6
enTabs.vue
src/pages/components/enTabs.vue
+84
-0
energyTotalCharts.vue
src/pages/components/energyTotalCharts.vue
+0
-0
myPies.vue
src/pages/components/myPies.vue
+1
-0
hallModal.vue
src/pages/eq/hall/components/hallModal.vue
+33
-0
page.vue
src/pages/eq/hall/page.vue
+58
-22
page.vue
src/pages/eq/office/page.vue
+22
-8
page.vue
src/pages/home/page.vue
+12
-9
historyDataModal.vue
src/pages/kb/power/components/historyDataModal.vue
+78
-0
statisticPicTableModal.vue
src/pages/kb/power/components/statisticPicTableModal.vue
+92
-0
page.vue
src/pages/kb/power/page.vue
+84
-22
No files found.
src/assets/style/public.scss
View file @
5ca129c3
...
...
@@ -145,4 +145,42 @@ $el-bg-color-4: #F2F6FC;
.color-green
{
color
:
#4ECB74
;
}
\ No newline at end of file
}
.en-tabs
{
.el-tabs__header
{
margin
:
0
;
}
.el-tabs__active-bar
{
bottom
:
-1px
;
}
.
el-tabs__nav-wrap
:
:
after
{
height
:
0
;
}
.el-tabs__nav-wrap
{
background
:
#f2f4f5
;
.el-tabs__nav
{
border-bottom
:
1px
solid
#e5e9ec
;
}
}
.el-tabs__header
{
border
:
1px
solid
#e5e9ec
;
}
.el-tabs__item
:nth-child
(
2
)
{
padding
:
0
30px
!
important
;
}
.el-tabs__item
:last-child
{
padding
:
0
30px
!
important
;
}
.el-tabs__item.is-active
{
background
:
#fff
;
}
}
src/layout/header-aside/imgs/energy_text.png
0 → 100644
View file @
5ca129c3
8.89 KB
src/layout/header-aside/imgs/train.png
0 → 100644
View file @
5ca129c3
4.54 KB
src/layout/header-aside/layout.vue
View file @
5ca129c3
This diff is collapsed.
Click to expand it.
src/pages/analysis/energy/page.vue
View file @
5ca129c3
...
...
@@ -2,27 +2,53 @@
<div
class=
"energy-page"
>
<cardList
cardListTitle=
"能耗数据分析"
>
<div
slot=
"right"
>
<span
<
!--
<
span
:class=
"activeIndex === index ? 'active-hight-linght' : ''"
class=
"date-text"
@
click=
"activehandle(item, index)"
v-for=
"(item, index) in dateList"
:key=
"item.value"
>
{{
item
.
label
}}
</span
>
<el-date-picker
>
-->
<!--
<el-date-picker
size=
"mini"
type=
"daterange"
range-separator=
"~"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
>
-->
<!--
</el-date-picker>
-->
<!--
<i
style=
" padding-left:20px;padding-right: 20px;color:#21acfc"
class=
"el-icon-s-unfold"
></i>
-->
<!--
<i
class=
"el-icon-printer"
style=
"color:#21acfc"
></i>
-->
<el-button
size=
"mini"
type=
"primary"
@
click=
"toPowerPage"
>
图形/列表
</el-button>
</div>
<div
slot=
"content"
>
<div
>
<!--
<enTabs
:tabList=
"energyTabList"
></enTabs>
-->
<el-tabs
class=
"en-tabs"
v-model=
"activetap"
>
<el-row
style=
"padding-top:15px"
>
<el-col
:span=
"10"
>
<span>
时间范围:
</span>
<el-date-picker
size=
"mini"
type=
"daterange"
range-separator=
"~"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
>
</el-date-picker>
<i
style=
" padding-left:20px;padding-right: 20px;color:#21acfc"
class=
"el-icon-s-unfold"
></i>
<i
class=
"el-icon-printer"
style=
"color:#21acfc"
></i>
</div>
<div
slot=
"content"
style=
"padding: 24px 28px 20px 23px"
>
<div
style=
"margin-bottom: 20px"
>
<enTabs
:tabList=
"energyTabList"
></enTabs>
</el-col>
<el-col
:span=
"4"
>
<el-button
type=
"primary"
size=
"mini"
icon=
"el-icon-search"
>
查询
</el-button>
</el-col>
</el-row>
<el-tab-pane
:label=
"item.label"
:name=
"item.value"
v-for=
"(item, index) in energyTabList"
:key=
"index"
></el-tab-pane>
</el-tabs>
</div>
<el-row>
<el-col
:span=
"24"
>
...
...
@@ -35,21 +61,22 @@
</
template
>
<
script
>
import
cardList
from
"../../
home/compont
ents/cardList"
;
import
enTabs
from
'../../eq/hall/components/enTabs'
import
cardList
from
"../../
compon
ents/cardList"
;
import
enTabs
from
"../../components/enTabs"
;
// import enTable from '../../eq/hall/components/enTable'
import
energyChart
from
'../../home/compontents/energyTotalCharts'
import
energyChart
from
"../../components/energyTotalCharts"
;
export
default
{
name
:
"energypage"
,
components
:
{
cardList
,
enTabs
,
energyChart
energyChart
,
},
data
()
{
return
{
activeIndex
:
1
,
dateList
:
[
activeIndex
:
1
,
activetap
:
"01"
,
dateList
:
[
// {
// value: "01",
// label: "时段",
...
...
@@ -71,8 +98,8 @@ export default {
label
:
"全年"
,
},
],
energyTabList
:[
{
energyTabList
:
[
{
value
:
"01"
,
label
:
"全部"
,
},
...
...
@@ -88,33 +115,37 @@ export default {
value
:
"04"
,
label
:
" 多联新风"
,
},
]
]
,
};
},
methods
:
{
methods
:
{
activehandle
(
item
,
index
)
{
this
.
activeIndex
=
index
;
},
toPowerPage
(){
this
.
$router
.
push
({
path
:
'/kb/power'
})
},
},
};
</
script
>
<
style
lang=
"scss"
>
.energy-page
{
padding
:
10px
10px
40px
10px
;
.el-input__inner
{
// height: 30px;
.energy-page
{
height
:
100%
;
padding
:
0px
0px
40px
0px
;
.date-text
{
padding-right
:
20px
;
font-size
:
14px
;
font-family
:
Microsoft
YaHei
;
font-weight
:
400
;
color
:
#1d1d1d
;
cursor
:
pointer
;
}
.date-text
{
padding-right
:
20px
;
font-size
:
14px
;
font-family
:
Microsoft
YaHei
;
font-weight
:
400
;
color
:
#1d1d1d
;
cursor
:
pointer
;
}
.active-hight-linght
{
color
:
#21acfc
;
}
.active-hight-linght
{
color
:
#21acfc
;
}
}
</
style
>
src/pages/
home/compont
ents/cardList.vue
→
src/pages/
compon
ents/cardList.vue
View file @
5ca129c3
...
...
@@ -6,8 +6,10 @@
<slot
name=
"right"
/>
</div>
</div>
<div
class=
"card-list-content"
>
<slot
name=
"content"
/>
</div>
</div>
</
template
>
...
...
@@ -30,6 +32,7 @@ export default {
width
:
100%
;
height
:
100%
;
background
:
#fff
;
box-shadow
:
0px
0px
10px
0px
rgba
(
0
,
0
,
0
,
0
.1
);
&
-line
{
display
:
flex
;
justify-content
:
space-between
;
...
...
@@ -60,5 +63,9 @@ export default {
// height: 16px;
// background: #1890ff;
// }
.card-list-content
{
padding
:
20px
;
height
:
calc
(
155
-
40px
);
}
}
</
style
>
src/pages/
eq/hall/
components/enTable.vue
→
src/pages/components/enTable.vue
View file @
5ca129c3
...
...
@@ -26,13 +26,14 @@
</el-table-column>
</
template
>
<el-table-column
align=
"center"
label=
"操作"
width=
"1
00"
v-if=
"isShowOp"
>
<
template
slot-scope=
"scope"
>
<el-button
type=
"text"
size=
"small"
>
编辑
</el-button
>
<el-table-column
align=
"center"
label=
"操作"
width=
"1
50"
>
<
template
slot-scope=
"scope"
>
<slot
name=
'operation'
:scope=
'scope'
></slot
>
</
template
>
</el-table-column>
</el-table>
<div
v-if=
"isShowPage"
style=
"
display: flex;
justify-content: flex-end;
...
...
@@ -40,10 +41,11 @@
line-height: 3;
"
>
<div
style=
" ;"
class=
"record-color marg_r_18"
>
共34860条记录
</div>
<div
class=
"record-color marg_r_18"
>
共34860条记录
</div>
<div
class=
"record-color marg_r_8"
>
共20页
</div>
<div
class=
"record-color"
>
每页显示
</div>
<el-pagination
layout=
"sizes, prev, pager, next"
background
:total=
"1000"
>
<!-- background -->
<el-pagination
layout=
"sizes, prev, pager, next"
:total=
"1000"
>
</el-pagination>
</div>
</div>
...
...
@@ -52,10 +54,35 @@
<
script
>
export
default
{
name
:
"enTable"
,
props
:
[
"tableData"
,
"tableColums"
,
'isShowOp'
],
props
:
{
// ["", "tableColums",'isShowOp'.toString
tableData
:{
type
:
Array
,
},
tableColums
:{
type
:
Array
,
},
isShowOp
:{
type
:
Boolean
,
defaul
:
false
,
},
isShowPage
:{
defaul
:
true
,
},
isEdit
:{
defaul
:
true
,
}
},
data
()
{
return
{};
},
methods
:{
handleClick
(){
this
.
$emit
(
'handleBtnClick'
)
}
}
};
</
script
>
<
style
lang=
"scss"
>
...
...
@@ -72,5 +99,9 @@ export default {
.el-pagination.is-background
.btn-next
,
.el-pagination.is-background
.btn-prev
,
.el-pagination.is-background
.el-pager
li
{
margin
:
0
!
important
;
}
/
deep
/
.el-pagination.is-background
.el-pager
li
:not
(
.disabled
)
.active
{
color
:
#32a5ea
!
important
;
background-color
:
red
!
important
;
}
}
</
style
>
src/pages/
eq/hall/
components/enTabs.vue
→
src/pages/components/enTabs.vue
View file @
5ca129c3
<
template
>
<
template
>
<div
class=
"en-tabs"
>
<ul
class=
"ul-wrap"
>
<li
...
...
@@ -11,24 +11,35 @@
{{
item
.
label
}}
</p>
</li>
</ul>
</div>
</
template
>
<
script
lang=
"ts"
>
<
script
>
import
{
Tabs
}
from
'element-ui'
;
export
default
{
name
:
"elTabs"
,
props
:
[
'tabList'
],
props
:
[
"tabList"
],
data
()
{
return
{
isActiveIndex
:
0
,
isActiveIndex
:
0
,
activeName
:
'second'
,
};
},
methods
:
{
methods
:
{
tabHandle
(
item
,
index
)
{
this
.
isActiveIndex
=
index
;
this
.
$emit
(
'tabHandle'
)
// this.$emit("tabHandle");
},
},
};
...
...
@@ -36,40 +47,37 @@ export default {
<
style
scoped
lang=
"scss"
>
.en-tabs
{
.show-bar-border
{
border-bottom
:
2px
solid
#0097ff
;
}
.ul-wrap
{
list-style
:
none
;
margin
:
0
;
padding
:
0
;
display
:
flex
;
color
:
#666
;
background
:
rgba
(
229
,
233
,
236
,
0
.5
);
border
:
1px
solid
#e5e9ec
;
font-size
:
14px
;
li
{
position
:
relative
;
padding
:
0
71px
;
cursor
:
pointer
;
p
{
margin
:
0
;
padding
:
0
;
padding-bottom
:
14px
;
padding-top
:
15px
;
box-sizing
:
border-box
;
}
}
.isActive
{
background
:
#fff
;
color
:
#0097ff
;
.en-tabs
{
.show-bar-border
{
border-bottom
:
2px
solid
#0097ff
;
}
}
// .ul-wrap {
// list-style: none;
// margin: 0;
// padding: 0;
// display: flex;
// color: #666;
// background: rgba(229, 233, 236, 0.5);
// border: 1px solid #e5e9ec;
// font-size: 14px;
// li {
// position: relative;
// padding: 0 71px;
// cursor: pointer;
// p {
// margin: 0;
// padding: 0;
// padding-bottom: 14px;
// padding-top: 15px;
// box-sizing: border-box;
// }
// }
// .isActive {
// background: #fff;
// color: #0097ff;
// }
// }
}
...
...
src/pages/
home/compont
ents/energyTotalCharts.vue
→
src/pages/
compon
ents/energyTotalCharts.vue
View file @
5ca129c3
File moved
src/pages/
home/compont
ents/myPies.vue
→
src/pages/
compon
ents/myPies.vue
View file @
5ca129c3
...
...
@@ -13,6 +13,7 @@ export default {
};
},
mounted
()
{
this
.
initPie
();
},
...
...
src/pages/eq/hall/components/hallModal.vue
0 → 100644
View file @
5ca129c3
<
template
>
<el-dialog
title=
"编辑"
:visible
.
sync=
"hallModalVisible"
:append-to-body=
"true"
>
<el-form
>
<el-form-item
label=
"设定频率:"
:label-width=
"formLabelWidth"
>
<el-input
size=
"mini"
autocomplete=
"off"
></el-input>
</el-form-item>
<el-form-item
label=
"启动控制:"
:label-width=
"formLabelWidth"
>
<el-switch
></el-switch>
</el-form-item>
</el-form>
<div
slot=
"footer"
>
<el-button
@
click=
"cancelhandle"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"cancelhandle"
>
确 定
</el-button>
</div>
</el-dialog>
</
template
>
<
script
lang=
"ts"
>
export
default
{
name
:
"hallModal"
,
props
:
[
"hallModalVisible"
],
data
()
{
return
{
formLabelWidth
:
'120px'
,
};
},
methods
:{
cancelhandle
(){
this
.
$emit
(
'cancelhandle'
)
}
}
};
</
script
>
src/pages/eq/hall/page.vue
View file @
5ca129c3
<
template
>
<div
class=
"hall full-height"
>
<cardList
cardListTitle=
"候车大厅控制"
>
<div
slot=
"content"
style=
"padding: 24px 28px 20px 23px"
>
<div
slot=
"content"
>
<div>
<el-row>
<el-form
:inline=
"true"
:model=
"formData"
label-width=
"100"
>
<el-col
:md=
"14"
:lg=
"13"
>
<el-row>
<el-col
:span=
"12"
>
<el-form-item
label=
"定时功能启止时间:"
>
<el-date-picker
size=
"mini"
style=
"width: 200px"
type=
"date"
placeholder=
""
...
...
@@ -15,6 +17,7 @@
</el-date-picker>
<span
style=
"padding: 0 10px"
>
至
</span>
<el-date-picker
size=
"mini"
style=
"width: 200px"
type=
"date"
placeholder=
""
...
...
@@ -22,14 +25,13 @@
</el-date-picker>
</el-form-item>
</el-col>
<el-col
:
md=
"12"
:lg
=
"4"
>
<el-col
:
span
=
"4"
>
<el-form-item
label=
"定时设定按钮:"
>
<el-switch
active-color=
"#0097FF"
inactive-color=
"#ff4949"
>
</el-switch>
</el-form-item>
</el-col>
<el-col
:md=
"12"
:lg=
"5"
>
<el-col
:span=
"5"
>
<el-form-item
label=
"温度设定:"
>
<el-input
style=
"width: 124px"
...
...
@@ -40,7 +42,10 @@
<!--
<el-button
type=
"primary"
>
查询
</el-button>
-->
</el-form-item>
</el-col>
<el-col
:md=
"12"
:lg=
"4"
>
</el-row>
<el-row>
<el-col
:md=
"12"
:lg=
"4"
>
<el-form-item
label=
"节能模式:"
>
<el-switch
active-color=
"#13ce66"
...
...
@@ -51,29 +56,48 @@
<el-col
:md=
"12"
:lg=
"10"
>
<el-form-item
label=
""
>
<el-button
type=
"
"
size=
"small
"
>
编辑
</el-button>
<el-button
type=
"
"
size=
"small
"
>
自然通风
</el-button>
<el-button
type=
"
"
size=
"small
"
>
机械通风
</el-button>
<el-button
type=
"
"
size=
"small
"
>
供暖
</el-button>
<el-button
type=
"
primary"
size=
"mini
"
>
编辑
</el-button>
<el-button
type=
"
primary"
size=
"mini
"
>
自然通风
</el-button>
<el-button
type=
"
primary"
size=
"mini
"
>
机械通风
</el-button>
<el-button
type=
"
primary"
size=
"mini
"
>
供暖
</el-button>
</el-form-item>
</el-col>
</el-row>
</el-form>
</el-row>
</div>
<!-- tabs -->
<div
style=
"margin-bottom: 20px"
>
<en-tabs
:tabList=
"tabList"
></en-tabs>
<!--
<en-tabs
:tabList=
"tabList"
></en-tabs>
-->
<div>
<el-tabs
class=
"en-tabs"
v-model=
"activeTab"
>
<el-tab-pane
:label=
"item.label"
:name=
"item.value"
v-for=
"(item, index) in tabList"
:key=
"index"
></el-tab-pane>
</el-tabs>
</div>
</div>
<!-- table -->
<enTable
:tableData=
"tableData"
:tableColums=
"tableColums"
isShowOp=
"true"
></enTable>
<enTable
v-on:handleBtnClick=
"handleBtnClick"
:tableData=
"tableData"
:tableColums=
"tableColums"
:isShowOp=
"true"
isShowPage=
"true"
>
<template
v-slot:operation=
'scope'
>
<el-button
type=
"text"
@
click=
"hallModalVisible=true"
>
编辑
</el-button>
</
template
>
</enTable>
</div>
</cardList>
<hall-modal
v-on:cancelhandle=
"cancelhandle"
:hallModalVisible=
"hallModalVisible"
></hall-modal>
hallModalVisible
</div>
</template>
<
script
>
import
cardList
from
"../../home/compontents/cardList"
;
import
enTable
from
"./components/enTable"
;
import
enTabs
from
'./components/enTabs'
import
cardList
from
"../../components/cardList"
;
import
enTable
from
"../../components/enTable"
;
import
enTabs
from
'../../components/enTabs'
import
hallModal
from
'./components/hallModal'
const
tableColums
=
[
{
align
:
"center"
,
...
...
@@ -85,7 +109,7 @@ const tableColums = [
align
:
"center"
,
prop
:
"B"
,
label
:
"设备描述"
,
width
:
112
,
//
width: 112,
},
{
align
:
"center"
,
...
...
@@ -224,12 +248,13 @@ export default {
cardList
,
enTable
,
enTabs
,
hallModal
,
},
data
()
{
return
{
tableColums
,
tableData
,
activeTab
:
'01'
,
formData
:
{},
tabList
:
[
{
...
...
@@ -249,21 +274,32 @@ export default {
label
:
" 水泵"
,
},
],
hallModalVisible
:
false
,
};
},
methods
:
{
cancelhandle
(){
this
.
$nextTick
(()
=>
{
this
.
hallModalVisible
=
false
})
},
handleBtnClick
(){
this
.
hallModalVisible
=
true
}
},
};
</
script
>
<
style
lang=
"scss"
>
.hall
{
height
:
100%
;
padding
:
10px
10px
40px
1
0px
;
padding
:
10px
0
40px
0px
;
.el-input__inner
{
height
:
30px
;
}
.el-form-item
{
margin-bottom
:
10px
;
}
.el-form-item__label
{
padding
:
0
;
}
...
...
src/pages/eq/office/page.vue
View file @
5ca129c3
<
template
>
<div
class=
"office-area-control"
style=
"
padding:10px 10px 40px 10px;
"
>
<div
class=
"office-area-control"
style=
"
padding:0 0 40px 0
"
>
<cardList
cardListTitle=
"办公区域控制"
>
<div
slot=
"content"
style=
"padding: 24px 28px 20px 23px"
>
<enTabs
:tabList=
"officeTabList"
></enTabs>
<div
slot=
"content"
>
<!--
<enTabs
:tabList=
"officeTabList"
></enTabs>
-->
<el-tabs
class=
"en-tabs"
v-model=
"activeName"
>
<el-tab-pane
:label=
"item.label"
:name=
"item.value"
v-for=
"(item, index) in officeTabList"
:key=
"index"
></el-tab-pane>
</el-tabs>
<div
style=
"margin-top: 20px"
></div>
<en-table
:tableData=
"tableData"
:tableColums=
"tableColums"
isShowOp=
"true"
>
</en-table>
<en-table
:tableData=
"tableData"
:tableColums=
"tableColums"
:isShowOp=
"true"
isShowPage=
"true"
>
<template
v-slot:operation=
'scope'
>
<el-button
type=
"text"
>
编辑
</el-button>
</
template
>
</en-table>
</div>
</cardList>
</div>
...
...
@@ -21,7 +33,7 @@ const tableColums = [
align
:
"center"
,
prop
:
"B"
,
label
:
"设备描述"
,
width
:
112
,
//
width: 112,
},
{
align
:
"center"
,
...
...
@@ -155,9 +167,9 @@ const tableData = [
G
:
"QY0001"
,
},
];
import
cardList
from
"../../
home/compont
ents/cardList"
;
import
enTabs
from
"../
hall
/components/enTabs"
;
import
enTable
from
"../
hall
/components/enTable"
;
import
cardList
from
"../../
compon
ents/cardList"
;
import
enTabs
from
"../
..
/components/enTabs"
;
import
enTable
from
"../
..
/components/enTable"
;
export
default
{
name
:
"officeAreaControl"
,
components
:
{
...
...
@@ -167,6 +179,7 @@ export default {
},
data
()
{
return
{
activeName
:
'01'
,
tableData
,
tableColums
,
officeTabList
:
[
...
...
@@ -186,6 +199,7 @@ export default {
value
:
"04"
,
label
:
"排风机"
,
},
],
};
},
...
...
src/pages/home/page.vue
View file @
5ca129c3
...
...
@@ -22,7 +22,7 @@
</div>
</div>
<div
class=
"home-page-content"
>
<el-row
:gutter=
"1
4
"
>
<el-row
:gutter=
"1
2
"
>
<el-col
:span=
"16"
>
<card-list
:cardListTitle=
"cardListLeftTitle"
>
<div
slot=
"right"
>
...
...
@@ -107,7 +107,7 @@
</div>
</card-list>
</el-col>
<el-col
:span=
"8"
>
<el-col
:span=
"8"
style=
"padding-left:0"
>
<card-list
:cardListTitle=
"cardListRightTitle"
>
<div
slot=
"content"
>
<my-pies></my-pies>
...
...
@@ -120,9 +120,9 @@
</
template
>
<
script
>
import
cardList
from
".
/compont
ents/cardList"
;
import
energyTotalCharts
from
".
/compont
ents/energyTotalCharts"
;
import
myPies
from
".
/compont
ents/myPies"
;
import
cardList
from
".
./compon
ents/cardList"
;
import
energyTotalCharts
from
".
./compon
ents/energyTotalCharts"
;
import
myPies
from
".
./compon
ents/myPies"
;
// import CardList from './compontents/cardList.vue';
export
default
{
name
:
"home"
,
...
...
@@ -194,29 +194,30 @@ export default {
},
};
</
script
>
<
style
lang=
"scss"
scoped
>
@import
"~@/assets/style/public.scss"
;
.home-page
{
height
:
100%
;
width
:
100%
;
padding
:
10px
10px
40px
1
0px
;
padding
:
0px
0px
40px
0px
;
// overflow: auto;
&
-top
{
margin
:
20px
;
margin-bottom
:
24px
;
.f-group
{
width
:
100%
;
display
:
flex
;
.f-item
{
box-sizing
:
border-box
;
width
:
calc
(
20%
-
1
9
px
);
width
:
calc
(
20%
-
1
8
px
);
height
:
216px
;
margin-right
:
24px
;
padding-top
:
40px
;
background-color
:
#fff
;
text-align
:
center
;
box-shadow
:
4px
0px
4px
0px
rgba
(
0
,
0
,
0
,
0
.05
);
// box-shadow: 4px 0px 4px 0px rgba(0, 0, 0, 0.05);
box-shadow
:
0px
0px
10px
0px
rgba
(
0
,
0
,
0
,
0
.1
);
img
{
width
:
50px
;
height
:
50px
;
...
...
@@ -246,6 +247,7 @@ export default {
}
.home-page-content
{
margin
:
20px
;
.date-text
{
padding-right
:
20px
;
font-size
:
14px
;
...
...
@@ -259,6 +261,7 @@ export default {
}
.content-wrap
{
// margin: 20px;
.energy-save-mode-wrap
{
// width: ;
box-sizing
:
border-box
;
...
...
src/pages/kb/power/components/historyDataModal.vue
0 → 100644
View file @
5ca129c3
<
template
>
<el-dialog
title=
"历史数据"
:visible
.
sync=
"historyDataModalVisible"
:append-to-body=
"true"
>
<el-form
:inline=
"true"
>
<el-form-item
label=
"设备名称:"
:label-width=
"formLabelWidth"
>
<el-input
size=
"mini"
autocomplete=
"off"
></el-input>
</el-form-item>
<el-form-item
label=
"设备编号:"
:label-width=
"formLabelWidth"
>
<el-input
size=
"mini"
autocomplete=
"off"
></el-input>
</el-form-item>
<el-form-item
label=
"数据起止阶段:"
:label-width=
"formLabelWidth"
>
<el-date-picker
style=
"width:157px"
size=
"mini"
type=
"date"
placeholder=
""
>
</el-date-picker>
<span
style=
"padding:0 10px"
>
至
</span>
<el-date-picker
style=
"width:157px"
size=
"mini"
type=
"date"
placeholder=
""
>
</el-date-picker>
</el-form-item>
<el-form-item
>
<el-button
size=
'mini'
type=
"primary"
icon=
"el-icon-search"
>
查询
</el-button>
<el-button
size=
'mini'
type=
"primary"
icon=
"el-icon-download"
>
导出
</el-button>
</el-form-item>
</el-form>
<enTable
:tableData=
"historyData"
:tableColums=
"tableColums"
></enTable>
<div
slot=
"footer"
>
<el-button
@
click=
"cancelhandle"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"cancelhandle"
>
确 定
</el-button>
</div>
</el-dialog>
</
template
>
<
script
>
import
enTable
from
'../../../components/enTable'
const
historyData
=
[
]
const
tableColums
=
[
{
label
:
'功率'
,
prop
:
'qq'
,
width
:
200
,
align
:
'center'
},
{
label
:
'设备状态'
,
prop
:
'ww'
,
width
:
200
,
align
:
'center'
},
{
label
:
'采集时间'
,
prop
:
'ee'
,
// width:200,
align
:
'center'
}
]
export
default
{
name
:
"historyDataModal"
,
props
:
[
"historyDataModalVisible"
],
components
:{
enTable
},
data
()
{
return
{
formLabelWidth
:
"110px"
,
historyData
,
tableColums
,
};
},
methods
:
{
cancelhandle
()
{
this
.
$emit
(
"cancelhandle"
);
},
},
};
</
script
>
src/pages/kb/power/components/statisticPicTableModal.vue
0 → 100644
View file @
5ca129c3
<
template
>
<el-dialog
title=
"统计图表"
:visible
.
sync=
"statisticModalVisible"
:append-to-body=
"true"
>
<el-form
:inline=
"true"
>
<el-form-item
label=
"设备名称:"
label-width=
"formLabelWidth"
>
<el-input
size=
"mini"
autocomplete=
"off"
></el-input>
</el-form-item>
<el-form-item
label=
"设备编号:"
label-width=
"formLabelWidth"
>
<el-input
size=
"mini"
autocomplete=
"off"
></el-input>
</el-form-item>
<el-form-item
label=
"数据起止阶段:"
label-width=
"formLabelWidth"
>
<el-date-picker
style=
"width: 157px"
size=
"mini"
type=
"date"
placeholder=
""
>
</el-date-picker>
<span
style=
"padding: 0 10px"
>
至
</span>
<el-date-picker
style=
"width: 157px"
size=
"mini"
type=
"date"
placeholder=
""
>
</el-date-picker>
</el-form-item>
<el-form-item>
<el-button
size=
"mini"
type=
"primary"
icon=
"el-icon-search"
>
查询
</el-button
>
</el-form-item>
</el-form>
<div
id=
"categoryId"
style=
"height: 200px"
></div>
<div
slot=
"footer"
>
<el-button
@
click=
"cancelhandlePic"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click
.
stop=
"cancelhandlePic"
>
确 定
</el-button>
</div>
</el-dialog>
</
template
>
<
script
lang=
"ts"
>
export
default
{
name
:
"statisticPicTableModal"
,
props
:
[
"statisticModalVisible"
],
data
()
{
return
{
formLabelWidth
:
"120px"
,
category
:
null
,
};
},
// watch: {
// statisticModalVisible(value) {
// if (value) {
// }
// },
// },
mounted
()
{
setTimeout
(()
=>
{
this
.
initCategory
();
},
3000
);
},
methods
:
{
cancelhandlePic
()
{
this
.
$emit
(
"cancelhandlePic"
);
},
initCategory
()
{
let
gId
=
document
.
getElementById
(
"categoryId"
);
this
.
category
=
this
.
$echarts
.
init
(
gId
);
const
option
=
{
xAxis
:
{
type
:
"category"
,
data
:
[
"Mon"
,
"Tue"
,
"Wed"
,
"Thu"
,
"Fri"
,
"Sat"
,
"Sun"
],
},
yAxis
:
{
type
:
"value"
,
},
series
:
[
{
data
:
[
150
,
230
,
224
,
218
,
135
,
147
,
260
],
type
:
"line"
,
},
],
};
this
.
category
.
setOption
(
option
);
},
},
};
</
script
>
src/pages/kb/power/page.vue
View file @
5ca129c3
...
...
@@ -2,26 +2,37 @@
<div
class=
"use-electro-data"
>
<cardList
cardListTitle=
"用电数据"
>
<div
slot=
"right"
>
<i
class=
"el-icon-menu"
></i>
<!--
<i
class=
"el-icon-menu"
></i>
-->
<el-button
size=
"mini"
@
click=
"toEnergyPage"
type=
"primary"
>
综合图形
</el-button>
</div>
<div
slot=
"content"
style=
"padding: 24px 28px 20px 23px"
>
<enTabs
:tabList=
"electroTabList"
></enTabs>
<div
style=
"margin-top:15px"
>
<el-form
:inline=
"true"
:model=
"formInline"
style=
"text-align:center"
>
<div
slot=
"content"
>
<!--
<enTabs
></enTabs>
-->
<div>
<el-tabs
class=
"en-tabs"
v-model=
"activeTab"
>
<el-tab-pane
:label=
"item.label"
:name=
"item.value"
v-for=
"(item, index) in electroTabList"
:key=
"index"
></el-tab-pane>
</el-tabs>
</div>
<div>
<el-form
:inline=
"true"
>
<el-row>
<el-col
:span=
"7"
>
<el-form-item
label=
"设备名称:"
>
<el-input
size=
"mini"
placeholder=
""
></el-input>
<el-input
size=
"mini"
placeholder=
""
></el-input>
</el-form-item>
</el-col>
<el-col
:span=
"7"
>
<el-form-item
label=
"设备编号:"
>
<el-input
size=
"mini"
placeholder=
""
></el-input>
<el-input
size=
"mini"
placeholder=
""
></el-input>
</el-form-item>
</el-col>
<el-col
:span=
"7"
>
<el-form-item
label=
"运行状态:"
>
<el-select
size=
"mini"
placeholder=
""
>
<el-select
size=
"mini"
placeholder=
""
>
<el-option
label=
"正常"
value=
"shanghai"
></el-option>
<el-option
label=
"不正常"
value=
"beijing"
></el-option>
</el-select>
...
...
@@ -29,23 +40,44 @@
</el-col>
<el-col
:span=
"3"
>
<el-form-item>
<el-button
icon=
"el-icon-search"
size=
"mini"
type=
"primary"
@
click=
"onSubmit"
>
查询
</el-button>
<el-button
icon=
"el-icon-search"
size=
"mini"
type=
"primary"
>
查询
</el-button
>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
<enTable
:tableColums=
"tableColums"
:tableData=
"tableData"
isShowOp=
"true"
></enTable>
<enTable
:tableColums=
"tableColums"
:tableData=
"tableData"
:isShowOp=
"true"
isShowPage=
"true"
>
<template
v-slot:operation=
'scope'
>
<el-button
type=
"text"
@
click=
"openHistoryHandle"
>
历史数据
</el-button>
<el-button
type=
"text"
@
click=
"openPicTHandle"
>
统计图表
</el-button>
</
template
>
</enTable>
</div>
</cardList>
<history-data-modal
:historyDataModalVisible=
"historyDataModalVisible"
v-on:cancelhandle=
"cancelhandle"
></history-data-modal>
<statistic-pic-table-modal
:statisticModalVisible=
"statisticModalVisible"
v-on:cancelhandlePic=
"cancelhandlePic"
></statistic-pic-table-modal>
</div>
</template>
<
script
>
import
cardList
from
"../../home/compontents/cardList"
;
import
enTabs
from
"../../eq/hall/components/enTabs"
;
import
enTable
from
"../../eq/hall/components/enTable"
;
import
cardList
from
"../../components/cardList"
;
import
enTabs
from
"../../components/enTabs"
;
import
enTable
from
"../../components/enTable"
;
import
historyDataModal
from
"./components/historyDataModal"
;
import
statisticPicTableModal
from
"./components/statisticPicTableModal"
;
const
tableColums
=
[
{
align
:
"center"
,
...
...
@@ -82,9 +114,6 @@ const tableColums = [
prop
:
"E"
,
label
:
"设备状态"
,
},
];
const
tableData
=
[
{
...
...
@@ -193,9 +222,14 @@ export default {
cardList
,
enTabs
,
enTable
,
historyDataModal
,
statisticPicTableModal
,
},
data
()
{
return
{
activeTab
:
"01"
,
historyDataModalVisible
:
false
,
statisticModalVisible
:
false
,
tableColums
,
tableData
,
electroTabList
:
[
...
...
@@ -218,15 +252,43 @@ export default {
],
};
},
methods
:
{
cancelhandle
()
{
this
.
$nextTick
(()
=>
{
this
.
historyDataModalVisible
=
false
;
});
},
cancelhandlePic
()
{
this
.
$nextTick
(()
=>
{
this
.
statisticModalVisible
=
false
;
});
},
openHistoryHandle
(){
this
.
historyDataModalVisible
=
true
;
},
openPicTHandle
(){
this
.
$nextTick
(()
=>
{
this
.
statisticModalVisible
=
true
;
})
},
toEnergyPage
(){
this
.
$router
.
push
({
path
:
'/analysis/energy'
})
},
},
};
</
script
>
<
style
lang=
"scss"
>
.use-electro-data
{
padding
:
10px
10px
40px
1
0px
;
.el-form-item
{
margin-bottom
:
15px
;
.use-electro-data
{
padding
:
10px
0
40px
0px
;
.el-form-item
{
margin-bottom
:
15px
;
margin-top
:
15px
;
}
}
}
</
style
>
\ No newline at end of file
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