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
fd4f333a
Commit
fd4f333a
authored
Apr 14, 2021
by
xiexingan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
用电
parent
374a322b
Changes
5
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
237 additions
and
1032 deletions
+237
-1032
index.vue
src/pages/eq/view/index.vue
+22
-66
no-query-detail.vue
src/pages/eq/view/no-query-detail.vue
+0
-470
query-detail.vue
src/pages/eq/view/query-detail.vue
+142
-426
config.js
src/pages/kb/power/config.js
+38
-0
page.vue
src/pages/kb/power/page.vue
+35
-70
No files found.
src/pages/eq/view/index.vue
View file @
fd4f333a
...
...
@@ -65,15 +65,14 @@
</el-col>
</el-row>
</div>
<div class="map_right">
<div>
<iframe :src="src" ref="iframe"></iframe>
</div>
</div>
//-
<div class="map_right">
//-
<div>
//-
<iframe :src="src" ref="iframe"></iframe>
//-
</div>
//-
</div>
</el-card>
</el-main>
<query-detail v-if='queryDetailVisible' ref='queryDetail' @closeQ="closeQueryDetailVisible"></query-detail>
<no-query-detail v-if='noQueryDetailVisible' ref='noQueryDetail' @closeQ="closeNoQueryDetailVisible"></no-query-detail>
</el-container>
</div>
...
...
@@ -81,7 +80,6 @@
<
script
>
import
QueryDetail
from
'./query-detail'
import
NoQueryDetail
from
'./no-query-detail'
import
{
getUUID
}
from
'@/util'
import
Vue
from
'vue'
...
...
@@ -178,8 +176,7 @@ export default {
}
},
components
:
{
QueryDetail
,
NoQueryDetail
QueryDetail
},
watch
:
{
searchInput
(
val
)
{
...
...
@@ -570,59 +567,24 @@ export default {
})
},
pointListClick
(
item
)
{
console
.
log
(
item
.
type
)
//监视器列表点击
//关闭其他窗口
// this.closeNoQueryDetailVisible()
if
(
this
.
transformationSta
===
1
)
{
if
(
item
.
type
===
'b6af764f2a6e454490a6b1b3c9057e57'
||
item
.
type
===
'ece0b8b2db27411886254e81134988a3'
)
{
// console.log('1')
this
.
queryDetail
(
item
.
id
)
}
else
{
// console.log('2')
this
.
noQueryDetail
(
item
)
}
// console.log('subCode', item.subCode, typeof (item.subCode))
// switch (item.subCode) {
// case '01' :
// //视频监控
// this.queryDetail01Visible = true
// this.$nextTick(() => {
// this.$refs.queryDetail01.init(item.id, this.checkedData.sId)
// })
// break
// case '02' :
// //出入口控制
// this.queryDetail02Visible = true
// this.$nextTick(() => {
// this.$refs.queryDetail02.init(item.id, this.checkedData.sId)
// })
// break
// case '03' :
// //入侵报警
// this.queryDetail03Visible = true
// this.$nextTick(() => {
// this.$refs.queryDetail03.init(item.id, this.checkedData.sId)
// })
// break
// case '04' :
// //安全检查
// this.queryDetail04Visible = true
// this.$nextTick(() => {
// this.$refs.queryDetail04.init(item.id, this.checkedData.sId)
// })
// break
// case '05' :
// //电子巡更
// this.queryDetail05Visible = true
// this.$nextTick(() => {
// this.$refs.queryDetail05.init(item.id, this.checkedData.sId)
// })
// break
// }
}
this
.
queryDetail
(
item
)
// if (this.transformationSta === 1) {
// if (
// item.type === 'b6af764f2a6e454490a6b1b3c9057e57' ||
// item.type === 'ece0b8b2db27411886254e81134988a3'
// ) {
// // console.log('1')
// this.queryDetail(item.id)
// } else {
// // console.log('2')
// this.noQueryDetail(item)
// }
// }
this
.
activeChooseResourceBox
(
item
.
id
)
this
.
defaultExpandedKeys
=
[
item
.
id
]
// this.$refs.tree.setCurrentKey(item.id)
...
...
@@ -988,13 +950,7 @@ export default {
this
.
$refs
.
queryDetail
.
init
(
id
,
this
.
checkedData
.
sId
)
})
},
noQueryDetail
(
id
)
{
this
.
noQueryDetailVisible
=
true
this
.
queryDetailVisible
=
false
this
.
$nextTick
(()
=>
{
this
.
$refs
.
noQueryDetail
.
init
(
id
,
this
.
checkedData
.
sId
)
})
},
closeQueryDetailVisible
()
{
this
.
queryDetailVisible
=
false
},
...
...
src/pages/eq/view/no-query-detail.vue
deleted
100644 → 0
View file @
374a322b
<
template
lang=
"pug"
>
.animation
.info-title
//- |
{{
dataForm
.
name
}}
| 空调
el-button(
icon="el-icon-close",
style="float: right",
type="text",
@click="closeQueryDetailVisible"
)
.info-form(style="text-align: center; border-bottom: 1px solid #c0c0c0")
img(src="../../../assets/images/kt.jpg")
.info-form(style="border-bottom: 1px solid #c0c0c0")
.quDetailM
p.leftP 设备名称 : 室内机
.quDetailM
p.leftP 设备编号 : CDSLAKS-009
.quDetailM
p.leftP 设备品牌: : 格力
.quDetailM
p.leftP 设备型号: : 晶弘33-1
.quDetailM
p.leftP 安装日期: : 2020-01-04
p.leftP 维保日期: : 2020-01-15
.info-form
el-row
el-col(:span="8")
.switch-warp
div(:class="[state == 1 ? 'on' : '']", @click="handleSwitch(1)") 打开
div(:class="[state == 2 ? 'on' : '']", @click="handleSwitch(2)") 关闭
el-col.text-size(:span="16", flex, justify-content="start")
div(style="width: 60px") 频率设置:
el-input(size="mini", style="width: 60px", v-model="speed")
span 转
el-button(type="primary", size="mini", style="margin-left: 10px") 设定
el-row
el-col.text-size(:span="8") 当前已
span(v-if="state == 1") 打开
span(v-else) 关闭
el-col.text-size(:span="10") 当前频率:
span(style="color: blue") 2289
span 转/分
.info-state
span(style="font-weight: bold") 空调运行状态
div
span.type 电压:
span.value 220 V
div
span.type 电流:
span.value 4 A
div
span.type 功率因数:
span.value 0.8 kw
div
span.type 功率:
span.value 0.8 kw
div
span.type 电能:
span.value 12 kw.h
</
template
>
<
script
>
import
{
mapState
}
from
'vuex'
export
default
{
computed
:
{
...
mapState
(
'd2admin/user'
,
[
'info'
])
},
data
()
{
return
{
speed
:
''
,
state
:
1
,
video1
:
0
,
stationId
:
localStorage
.
getItem
(
'stationId'
),
imgUrl
:
''
,
clickFlag
:
false
,
cameraCur
:
{},
restaurants
:
[],
dataForm
:
{
id
:
0
,
name
:
''
,
type
:
1
,
lineId
:
''
,
lineName
:
''
,
stationId
:
''
,
stationName
:
''
,
tierId
:
''
,
subSystem
:
''
,
code
:
''
,
subCode
:
''
,
addressCode
:
''
,
port
:
''
,
username
:
''
,
password
:
''
,
remark
:
''
,
status
:
1
}
}
},
created
()
{},
methods
:
{
init
(
data
,
stationId
)
{
this
.
clickFlag
=
false
this
.
dataForm
=
data
// this.stationId = stationId
this
.
dataForm
.
operatorName
=
this
.
info
.
name
},
closeQueryDetailVisible
()
{
this
.
$emit
(
'closeQ'
)
},
handleSwitch
(
state
)
{
this
.
state
=
state
}
}
}
</
script
>
<
style
lang=
"scss"
scoped
>
.switch-warp
{
width
:
80px
;
height
:
26px
;
font-size
:
12px
;
line-height
:
25px
;
overflow
:
hidden
;
border-radius
:
13px
;
background
:
#d3d3d3
;
border
:
1px
solid
rgba
(
0
,
0
,
0
,
0
.03
);
box-shadow
:
0px
1px
0px
1px
rgba
(
255
,
255
,
255
,
0
.25
)
,
0px
2px
4px
0px
rgba
(
0
,
0
,
0
,
0
.1
);
div
{
width
:
39px
;
height
:
24px
;
line-height
:
24px
;
float
:
left
;
text-align
:
center
;
cursor
:
pointer
;
}
div
.on
{
background
:
#4cb527
;
color
:
#fff
;
border-radius
:
13px
;
border
:
1px
solid
rgba
(
23
,
41
,
71
,
0
.02
);
box-shadow
:
0px
1px
0px
0px
rgba
(
255
,
255
,
255
,
0
.3
)
,
0px
2px
0px
0px
rgba
(
255
,
255
,
255
,
0
.15
);
}
}
.text-size
{
font-size
:
12px
;
line-height
:
28px
;
}
.info-state
{
padding
:
0
10px
10px
;
.type
{
font-size
:
14px
;
margin
:
5px
0
0
10px
;
display
:
inline-block
;
width
:
85px
;
}
.value
{
color
:
#47b320
;
}
}
.el-table__header
{
width
:
100%
!
important
;
}
.el-table__body
{
width
:
100%
!
important
;
}
.info-title
{
line-height
:
40px
;
height
:
40px
;
padding
:
0
20px
;
background-color
:
#e1edf4
;
border-bottom
:
1px
solid
#cccccc
;
font-size
:
16px
;
font-family
:
Microsoft
YaHei
;
font-weight
:
bold
;
}
.info-video
{
padding
:
10px
;
height
:
160px
;
}
.info-form
{
padding
:
10px
;
}
.info-block
{
border
:
1px
solid
#cccccc
;
}
.el-select
{
width
:
100%
;
}
.video
{
width
:
100%
;
height
:
180px
;
}
.animation
{
animation
:
myfirst
1s
;
position
:
absolute
;
top
:
50px
;
right
:
0
;
width
:
330px
;
background-color
:
#f4f4f4
;
z-index
:
11
;
border
:
1px
solid
rgba
(
195
,
195
,
195
,
1
);
box-shadow
:
0
2px
8px
8px
rgba
(
0
,
0
,
0
,
0
.2
);
}
@keyframes
myfirst
{
from
{
right
:
-500px
;
}
to
{
right
:
0
;
}
}
.quDetailM
{
width
:
100%
;
}
.leftP
{
height
:
30px
;
line-height
:
30px
;
margin
:
0
;
width
:
100%
;
font-size
:
14px
;
span
{
color
:
#46b6f9
;
}
}
.operate
{
padding
:
5px
0
;
font-size
:
14px
;
font-family
:
Microsoft
YaHei
;
font-weight
:
400
;
color
:
rgba
(
0
,
0
,
0
,
1
);
border-image
:
linear-gradient
(
90deg
,
rgba
(
255
,
255
,
255
,
0
.5
)
,
rgba
(
213
,
213
,
213
,
0
.5
)
,
rgba
(
255
,
255
,
255
,
0
.5
)
,
rgba
(
218
,
218
,
218
,
0
.5
)
,
rgba
(
255
,
255
,
255
,
0
.5
)
)
2
2
;
border-radius
:
10px
;
overflow
:
hidden
;
display
:
flex
;
justify-content
:
flex-start
;
.btns
{
width
:
194px
;
height
:
194px
;
position
:
relative
;
img
{
width
:
100%
;
height
:
100%
;
}
div
{
cursor
:
pointer
;
padding
:
10px
;
}
.s
{
position
:
absolute
;
top
:
10px
;
left
:
75px
;
width
:
24px
;
height
:
24px
;
}
.x
{
position
:
absolute
;
bottom
:
10px
;
left
:
75px
;
width
:
24px
;
height
:
24px
;
}
.z
{
position
:
absolute
;
top
:
75px
;
left
:
10px
;
width
:
24px
;
height
:
24px
;
}
.y
{
position
:
absolute
;
top
:
75px
;
right
:
10px
;
width
:
24px
;
height
:
24px
;
}
.zs
{
position
:
absolute
;
top
:
32px
;
left
:
32px
;
width
:
24px
;
height
:
24px
;
}
.zx
{
position
:
absolute
;
bottom
:
32px
;
left
:
32px
;
width
:
24px
;
height
:
24px
;
}
.ys
{
position
:
absolute
;
top
:
32px
;
right
:
32px
;
width
:
24px
;
height
:
24px
;
}
.yx
{
position
:
absolute
;
bottom
:
32px
;
right
:
32px
;
width
:
24px
;
height
:
24px
;
}
.fx
{
position
:
absolute
;
padding
:
0
;
cursor
:
default
;
top
:
50%
;
left
:
50%
;
width
:
65px
;
height
:
65px
;
background
:
#ececec
;
border-radius
:
50%
;
line-height
:
65px
;
text-align
:
center
;
color
:
#969696
;
transform
:
translate
(
-50%
,
-50%
);
}
}
.ytBox
{
width
:
90px
;
font-size
:
16px
;
padding
:
10px
0
10px
0
;
box-sizing
:
border-box
;
display
:
flex
;
flex-direction
:
column
;
justify-content
:
space-around
;
align-items
:
center
;
.mllx
{
display
:
flex
;
justify-content
:
space-between
;
width
:
90%
;
span
{
line-height
:
40px
;
text-align
:
center
;
width
:
35%
;
}
}
.bbBtn
{
height
:
40px
;
display
:
flex
;
margin-left
:
10px
;
justify-content
:
flex-start
;
div
{
width
:
40px
;
height
:
40px
;
cursor
:
pointer
;
img
{
width
:
100%
;
height
:
100%
;
}
}
}
}
}
.el-icon-wq-r1
{
background
:
url(~@/assets/images/r1.png)
center
no-repeat
;
background-size
:
65%
;
}
.el-icon-wq-r1
:before
{
content
:
""
;
font-size
:
16px
;
}
.el-icon-wq-r2
{
background
:
url(~@/assets/images/r2.png)
center
no-repeat
;
background-size
:
65%
;
}
.el-icon-wq-r2
:before
{
content
:
""
;
font-size
:
16px
;
}
.el-icon-wq-r3
{
background
:
url(~@/assets/images/r3.png)
center
no-repeat
;
background-size
:
65%
;
}
.el-icon-wq-r3
:before
{
content
:
""
;
font-size
:
16px
;
}
.el-icon-wq-r5
{
background
:
url(~@/assets/images/r5.png)
center
no-repeat
;
background-size
:
65%
;
}
.el-icon-wq-r5
:before
{
content
:
""
;
font-size
:
16px
;
}
.el-icon-wq-r6
{
background
:
url(~@/assets/images/r6.png)
center
no-repeat
;
background-size
:
65%
;
}
.el-icon-wq-r6
:before
{
content
:
""
;
font-size
:
16px
;
}
.el-icon-wq-r1b
{
background
:
url(~@/assets/images/r1b.png)
center
no-repeat
;
height
:
35px
;
width
:
35px
;
background-size
:
65%
;
}
.el-icon-wq-r1b
:before
{
content
:
""
;
font-size
:
16px
;
}
.el-icon-wq-r2b
{
background
:
url(~@/assets/images/r2b.png)
center
no-repeat
;
height
:
35px
;
width
:
35px
;
background-size
:
65%
;
}
.el-icon-wq-r2b
:before
{
content
:
""
;
font-size
:
16px
;
}
.el-icon-wq-r3b
{
background
:
url(~@/assets/images/r3b.png)
center
no-repeat
;
height
:
35px
;
width
:
35px
;
background-size
:
65%
;
}
.el-icon-wq-r3b
:before
{
content
:
""
;
font-size
:
16px
;
}
.el-icon-wq-r5b
{
background
:
url(~@/assets/images/r5b.png)
center
no-repeat
;
height
:
35px
;
width
:
35px
;
background-size
:
65%
;
}
.el-icon-wq-r5b
:before
{
content
:
""
;
font-size
:
16px
;
}
.el-icon-wq-r6b
{
background
:
url(~@/assets/images/r6b.png)
center
no-repeat
;
height
:
35px
;
width
:
35px
;
background-size
:
65%
;
}
.el-icon-wq-r6b
:before
{
content
:
""
;
font-size
:
16px
;
}
</
style
>
<
style
lang=
"scss"
>
.instuctions_content
{
table
{
th
{
background
:
#eef8ff
!
important
;
color
:
#333333
!
important
;
}
}
}
</
style
>
src/pages/eq/view/query-detail.vue
View file @
fd4f333a
This diff is collapsed.
Click to expand it.
src/pages/kb/power/config.js
0 → 100644
View file @
fd4f333a
export
const
tableColums
=
[
{
align
:
'center'
,
prop
:
'A'
,
label
:
'设备名称'
,
width
:
162
},
{
align
:
'center'
,
prop
:
'B'
,
label
:
'设备位置'
// width: 182
},
{
align
:
'center'
,
prop
:
'C'
,
label
:
'当日功耗'
,
width
:
162
},
{
align
:
'center'
,
prop
:
'D'
,
label
:
'当月功耗'
,
width
:
162
},
{
align
:
'center'
,
prop
:
'E'
,
label
:
'设备状态'
,
width
:
152
},
{
align
:
'center'
,
prop
:
'F'
,
label
:
'设备编号'
,
width
:
152
}
]
src/pages/kb/power/page.vue
View file @
fd4f333a
...
...
@@ -20,7 +20,7 @@
</el-tabs>
</div>
<div>
<el-form
:inline=
"true"
:mode=
'formData'
>
<el-form
:inline=
"true"
:mode=
"formData"
>
<el-form-item
label=
"设备名称:"
>
<el-input
size=
"mini"
placeholder=
""
></el-input>
</el-form-item>
...
...
@@ -48,15 +48,19 @@
:tableColums=
"tableColums"
:tableData=
"tableData"
:isShowOp=
"true"
isShowPage=
"true"
>
<template
v-slot:operation=
"scope
"
>
<el-button
type=
"text"
@
click=
"openHistoryHandle"
<template
#
operation=
"data
"
>
<el-button
type=
"text"
@
click=
"openHistoryHandle
(data)
"
>
历史数据
</el-button
>
<el-button
type=
"text"
@
click=
"openPicTHandle"
>
统计图表
</el-button>
</
template
>
</enTable>
<tablePagination
:pageSize=
"pageSize"
:totalSize=
"totalSize"
@
parentMethod=
"getDataList"
></tablePagination>
</div>
</cardList>
<history-data-modal
...
...
@@ -75,62 +79,8 @@ import enTabs from '../../components/enTabs'
import
enTable
from
'../../components/enTable'
import
historyDataModal
from
'./components/historyDataModal'
import
statisticPicTableModal
from
'./components/statisticPicTableModal'
const
tableColums
=
[
{
align
:
'center'
,
prop
:
'A'
,
label
:
'设备名称'
,
width
:
162
},
{
align
:
'center'
,
prop
:
'B'
,
label
:
'设备位置'
// width: 182
},
{
align
:
'center'
,
prop
:
'C'
,
label
:
'当日功耗'
,
width
:
162
},
{
align
:
'center'
,
prop
:
'D'
,
label
:
'当月功耗'
,
width
:
162
},
{
align
:
'center'
,
prop
:
'E'
,
label
:
'设备状态'
,
width
:
152
},
{
align
:
'center'
,
prop
:
'F'
,
label
:
'设备编号'
,
width
:
152
}
]
const
tableData
=
[
{
A
:
'设备1'
,
B
:
'左侧办公房屋'
,
C
:
'11'
,
D
:
'1100'
,
E
:
'开启'
,
F
:
'QY0001'
},
{
A
:
'设备2'
,
B
:
'左侧办公房屋'
,
C
:
'11'
,
D
:
'1100'
,
E
:
'开启'
,
F
:
'QY0002'
}
]
import
tablePagination
from
'@/pages/components/tablePagination'
import
{
tableColums
}
from
'./config'
export
default
{
name
:
'useElectroData'
,
components
:
{
...
...
@@ -138,54 +88,69 @@ export default {
enTabs
,
enTable
,
historyDataModal
,
statisticPicTableModal
statisticPicTableModal
,
tablePagination
},
data
()
{
return
{
pageIndex
:
1
,
pageSize
:
10
,
totalSize
:
0
,
formData
:
{},
activeTab
:
'01'
,
historyDataModalVisible
:
false
,
statisticModalVisible
:
false
,
tableColums
,
tableData
,
tableData
:
[]
,
electroTabList
:
[
{
value
:
'01'
,
label
:
'全部'
},
{
value
:
'
02
'
,
value
:
'
b6af764f2a6e454490a6b1b3c9057e57
'
,
label
:
'排风机'
},
{
value
:
'
0
3'
,
value
:
'
ece0b8b2db27411886254e81134988a
3'
,
label
:
'机房空调(220V)'
},
{
value
:
'
04
'
,
value
:
'
b47661ca1d454f9792ba5369f3cb2bc5
'
,
label
:
'机房空调(380V)'
},
{
value
:
'
05
'
,
value
:
'
c788ce98c1f248f590434394da485ce4
'
,
label
:
'防火卷帘门'
},
{
value
:
'
06
'
,
value
:
'
b45827c068254695864ee3c1d42573cb
'
,
label
:
'风冷热泵机组'
},
{
value
:
'
07
'
,
value
:
'
303310efddb34a2e9bf269bdff8a7dc5
'
,
label
:
'室内机风柜'
},
{
value
:
'
08
'
,
value
:
'
173466a2cf9a42a6a17b2bdfbeae36d5
'
,
label
:
'多联室外机'
}
]
}
},
watch
:
{
activeTab
()
{
this
.
getDataList
()
}
},
mounted
()
{
this
.
getDataList
()
},
methods
:
{
// 获取数据
getDataList
(
page
,
size
)
{
console
.
log
(
'类型id'
,
this
.
activeTab
)
},
cancelhandle
()
{
this
.
$nextTick
(()
=>
{
this
.
historyDataModalVisible
=
false
...
...
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