Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
Z
zh-baseversion-project
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
王浩
zh-baseversion-project
Commits
3b52e54e
Commit
3b52e54e
authored
Oct 28, 2024
by
纪泽龙
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'jzl'
parents
8b6d12db
041d563a
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
987 additions
and
8 deletions
+987
-8
getDevice.js
zh-baseversion-web/src/api/bigWindow/getDevice.js
+14
-1
UserCenter.vue
zh-baseversion-web/src/components/bigWindow/UserCenter.vue
+26
-4
UserCenterQiping.vue
...version-web/src/components/bigWindow/UserCenterQiping.vue
+353
-0
BottleInfo.vue
...version-web/src/views/bigWindow/components/BottleInfo.vue
+364
-0
Processes.vue
...eversion-web/src/views/bigWindow/components/Processes.vue
+64
-0
Top.vue
zh-baseversion-web/src/views/bigWindow/components/Top.vue
+1
-1
ViewBottleTrackInfo.vue
...eb/src/views/bigWindow/components/ViewBottleTrackInfo.vue
+163
-0
vue.config.js
zh-baseversion-web/vue.config.js
+2
-2
No files found.
zh-baseversion-web/src/api/bigWindow/getDevice.js
View file @
3b52e54e
/*
* @Author: your name
* @Date: 2022-02-23 15:28:07
* @LastEditTime: 2024-
07-18 15:13:55
* @LastEditTime: 2024-
10-28 11:14:31
* @LastEditors: 纪泽龙 jizelong@qq.com
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /newDev/gassafety-progress/gassafetyprogress-web/src/api/bigWindow/getdevice.js
...
...
@@ -118,6 +118,19 @@ export function deviceUserList(query) {
params
:
query
,
});
}
// 气瓶详情
export
function
getqpDetail
(
query
)
{
return
request
({
url
:
'/supervise/user/getLpgGasBottleFilesBackToByCode'
,
method
:
"get"
,
params
:
query
,
})
}
// 监控
export
function
getVideo
(
query
)
{
return
request
({
...
...
zh-baseversion-web/src/components/bigWindow/UserCenter.vue
View file @
3b52e54e
...
...
@@ -47,7 +47,12 @@
@
click
.
stop=
"deviceShow(scope.row.safetyDeviceList)"
>
设备
</el-button
>
<el-button
disabled
type=
"text"
>
气瓶
</el-button>
<el-button
:disabled=
"scope.row.gasBottleTitleList.length == 0"
@
click
.
stop=
"qipingShow(scope.row.gasBottleTitleList)"
type=
"text"
>
气瓶
</el-button
>
</div>
</
template
>
</el-table-column>
...
...
@@ -99,7 +104,9 @@
>
<div
class=
"table-wrapper"
>
<div
class=
"list-top"
>
<div
class=
"title"
>
设备列表
</div>
<div
class=
"title"
>
{{ safetyDeviceList.length > 0 ? "设备列表" : "气瓶列表" }}
</div>
<div
class=
"close"
@
click=
"close"
>
<i
...
...
@@ -114,6 +121,12 @@
:detcetorList=
"safetyDeviceList"
v-if=
"safetyDeviceList.length > 0"
/>
<UserCenterQiping
ref=
"yhqpingrCenter"
:show=
"true"
:detcetorList=
"qipingList"
v-if=
"qipingList.length > 0"
/>
</div>
</div>
</div>
...
...
@@ -125,6 +138,7 @@
// import { listDeviceAlarm } from "@/api/dataMonitoring/deviceAlarm";
import
{
listDetectorInfo
,
getUserList
}
from
"@/api/detector/detectorInfo"
;
import
UserCenterDevice
from
"@/components/bigWindow/UserCenterDevice.vue"
;
import
UserCenterQiping
from
"@/components/bigWindow/UserCenterQiping.vue"
;
export
default
{
props
:
{
...
...
@@ -150,6 +164,7 @@ export default {
},
components
:
{
UserCenterDevice
,
UserCenterQiping
,
},
data
()
{
return
{
...
...
@@ -165,6 +180,7 @@ export default {
// },
],
safetyDeviceList
:
[],
qipingList
:
[],
yhquserCenterShow
:
false
,
};
},
...
...
@@ -206,6 +222,10 @@ export default {
this
.
yhquserCenterShow
=
true
;
this
.
safetyDeviceList
=
list
;
},
qipingShow
(
list
)
{
this
.
yhquserCenterShow
=
true
;
this
.
qipingList
=
list
;
},
handleSizeChange
(
val
)
{
console
.
log
(
val
);
},
...
...
@@ -223,6 +243,7 @@ export default {
close
()
{
// this.fade = "fade";
this
.
safetyDeviceList
=
[];
this
.
qipingList
=
[];
this
.
yhquserCenterShow
=
false
;
},
},
...
...
@@ -243,6 +264,7 @@ export default {
// justify-content: space-between;
margin-top
:
2px
;
z-index
:
9999
;
overflow
:
hidden
;
&
>
div
{
}
...
...
@@ -382,8 +404,8 @@ export default {
right
:
0
;
top
:
0
;
bottom
:
0
;
background
:
rgba
(
0
,
0
,
0
,
.
5
);
z-index
:
999999999
;
background
:
rgba
(
0
,
0
,
0
,
0
.5
);
z-index
:
2001
;
}
.table-wrapper
{
position
:
fixed
;
...
...
zh-baseversion-web/src/components/bigWindow/UserCenterQiping.vue
0 → 100644
View file @
3b52e54e
<
template
>
<transition>
<div
v-show=
"show"
class=
"wrapper myCenter "
>
<div
class=
"left"
>
<!--
<div
class=
"title-wrapper"
>
<div
class=
"title"
>
{{
title
}}
报警器列表
</div>
<div
class=
"close"
@
click=
"close"
>
<img
src=
"@/assets/mapImages/closeBtn.png"
alt=
""
/>
</div>
</div>
-->
<div
class=
"bottom right-bottom-data-left"
>
<el-table
size=
"mini"
:data=
"detcetorList"
style=
"width: 720px"
class=
"el-bottom"
height=
"460"
:key=
"Math.random()"
>
<!-- :height="tableHeight" -->
<el-table-column
prop=
"detectorCode"
label=
"气瓶编号"
width=
"180"
>
<template
slot-scope=
"scope"
>
<div
:title=
"scope.row.detectorCode"
class=
"zzz"
v-unValue
>
{{
scope
.
row
.
code
}}
</div>
</
template
>
</el-table-column>
<el-table-column
prop=
"detectorName"
label=
"报警器名称"
width=
"100"
>
<
template
slot-scope=
"scope"
>
<div
:title=
"scope.row.detectorName"
class=
"zzz"
v-unValue
>
{{
scope
.
row
.
deviceName
}}
</div>
</
template
>
</el-table-column>
<el-table-column
prop=
"medium"
label=
"监测介质"
width=
"100"
>
<
template
slot-scope=
"scope"
>
<div
v-unValue
>
{{
scope
.
row
.
detctionMedium
}}
</div>
</
template
>
</el-table-column>
<!-- <el-table-column prop="detectorAddr" label="设备地址" width="100">
<template slot-scope="scope">
<div v-unValue style="overflow: hidden;text-overflow: ellipsis;white-space: nowrap;" :title="scope.row.address">
{{ scope.row.address }}
</div>
</template>
</el-table-column> -->
<!-- <el-table-column prop="linkman" label="联系人" width="80">
<template slot-scope="scope">
<div v-unValue style="overflow: hidden;text-overflow: ellipsis;white-space: nowrap;">{{ scope.row.linkman }}</div>
</template>
</el-table-column>
<el-table-column prop="phone" label="联系电话" width="100">
</el-table-column> -->
<el-table-column
prop=
"detectorStatus"
label=
"状态"
width=
"100"
>
<
template
slot-scope=
"scope"
>
<div
class=
"detail"
v-if=
"scope.row.status == 0"
>
在线
</div>
<div
class=
"detail"
v-else-if=
"scope.row.status == 1"
>
离线
</div>
<div
class=
"detail"
v-else
>
-
</div>
<!--
<div
v-unValue
:style=
"
{color:scope.row.detectorStatus==1?'red':''}">
{{
scope
.
row
.
detectorStatus
}}
</div>
-->
</
template
>
</el-table-column>
<el-table-column
prop=
"alarmTime"
label=
"报警记录"
width=
"140"
>
<
template
slot-scope=
"scope"
>
<div
class=
"zzz"
v-unValue
>
{{
scope
.
row
.
alarmTime
}}
</div>
</
template
>
</el-table-column>
<el-table-column
prop=
"alarmTime"
label=
"操作"
width=
"140"
>
<
template
v-slot=
"scope"
>
<!--
<div
class=
"zzz"
v-unValue
>
{{
scope
.
row
.
deviceInstallTime
}}
</div>
-->
<div
class=
"detail"
>
<el-button
type=
"text"
@
click=
"goDetail(scope.row.code)"
>
详情
</el-button
>
</div>
</
template
>
</el-table-column>
</el-table>
<div>
<!-- <el-pagination
@current-change="handleCurrentChangvale"
:page-size="pageSize"
layout="prev, pager, next, jumper"
:total="total"
:hide-on-single-page="total <= pageSize"
:key="total + '' + pageSize"
>
</el-pagination> -->
</div>
</div>
</div>
<ViewBottleTrackInfo
ref=
"view"
/>
</div>
</transition>
</template>
<
script
>
// import Velocity from "velocity-animate";
// import { listDeviceAlarm } from "@/api/dataMonitoring/deviceAlarm";
import
{
yhqlistDetectorInfo
}
from
"@/api/detector/detectorInfo"
;
import
{
deviceUserList
}
from
"@/api/bigWindow/getDevice"
;
import
ViewBottleTrackInfo
from
"@/views/bigWindow/components/ViewBottleTrackInfo.vue"
;
export
default
{
props
:
{
detcetorList
:
{
type
:
Array
,
default
:
()
=>
[],
},
show
:
{
type
:
Boolean
,
},
title
:
{
type
:
String
,
},
userId
:
{
type
:
[
Number
,
String
],
},
total
:
{
type
:
Number
,
},
pageSize
:
{
type
:
Number
,
},
},
components
:
{
ViewBottleTrackInfo
,
},
data
()
{
return
{
// 动画效果的切换
// tableHeight: 600,
tableData
:
[
// {
// deviceCode: "2016-05-05",
// name: "王小虎",
// province: "上海",
// city: "普陀区",
// address: "上海市普陀区金沙江路",
// },
],
// detectorStatusList: {
// 0: "在线",
// 1: "离线",
// },
};
},
created
()
{
console
.
log
(
"2222222============"
,
this
.
detcetorList
);
// this.getList();
},
watch
:
{
// 当组件显示的时候
detcetorList
(
newData
)
{
// console.log(bol);
// if (bol) {
console
.
log
(
"222222222222222222222222222222222222222222"
,
newData
);
this
.
tableData
=
[...
newData
];
console
.
log
(
this
.
tableData
);
// }
},
},
mounted
()
{},
methods
:
{
handleSizeChange
(
val
)
{
console
.
log
(
val
);
},
handleCurrentChangvale
(
val
)
{
this
.
$parent
.
getDetectorInfoList
(
deviceUserList
,
{
userId
:
this
.
userId
,
pageNum
:
val
,
pageSize
:
this
.
pageSize
,
},
this
.
title
);
},
goDetail
(
code
)
{
this
.
$refs
.
view
.
bottleId
=
code
;
this
.
$refs
.
view
.
detailOpen
=
true
;
},
// close() {
// // this.fade = "fade";
// this.$parent.otherCenterShow = false;
// },
},
};
</
script
>
<
style
lang=
"scss"
scoped
>
.wrapper
{
// width: 978px;
// max-height: 600px;
// position: fixed;
// top: 50%;
// left: 50%;
// margin-top: -300px;
// margin-left: -500px;
// // background-color: #fff;
// display: flex;
// justify-content: space-between;
// margin-top: 10px;
z-index
:
2001
;
&
>
div
{
}
.left
{
// width: 100px;
max-height
:
598px
;
margin-right
:
12px
;
// box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.16);
// background-color: #fff;
// color: #fff;
font-size
:
14px
;
font-weight
:
400
;
.title-wrapper
{
width
:
100%
;
height
:
30px
;
display
:
flex
;
justify-content
:
space-between
;
background
:
#1890ff
;
padding
:
5px
;
.title
{
width
:
100%
;
color
:
#fff
;
text-align
:
center
;
}
.close
{
box-sizing
:
border-box
;
padding-top
:
2px
;
padding-right
:
5px
;
cursor
:
pointer
;
}
}
.el-table__body-wrappe
{
height
:
140px
!
important
;
}
.top
{
height
:
19px
;
// background-color: #053b6a;
color
:
#fff
;
// line-height: 32px;
// padding-left: 12px;
position
:
relative
;
.title
{
position
:
absolute
;
left
:
50%
;
margin-left
:
-92px
;
top
:
-5px
;
}
.repeat
{
position
:
absolute
;
top
:
-5px
;
right
:
160px
;
color
:
#fff
;
cursor
:
pointer
;
&
:hover
{
color
:
#2788ea
;
}
}
.repeat2
{
position
:
absolute
;
right
:
206px
;
color
:
#67c23a
;
}
.more
{
position
:
absolute
;
right
:
38px
;
top
:
-5px
;
color
:
#fff
;
float
:
right
;
margin-right
:
20px
;
cursor
:
pointer
;
&
:hover
{
color
:
#2788ea
;
}
}
}
.bottom
{
width
:
1000px
;
margin
:
0
auto
;
position
:
relative
;
}
}
.right
{
width
:
740px
;
display
:
flex
;
flex-wrap
:
wrap
;
// justify-content: space-between;
align-content
:
flex-start
;
// margin-top: 7px;
&
>
.right-content
{
background-color
:
#fff
;
width
:
238px
;
height
:
82px
;
margin-bottom
:
29px
;
box-shadow
:
2px
2px
5px
rgba
(
0
,
0
,
0
,
0
.16
);
margin-right
:
10px
;
display
:
flex
;
&
.three
{
margin-right
:
0px
;
}
// align-items: center;
.text-icon
{
line-height
:
82px
;
padding-left
:
22px
;
margin-right
:
22px
;
i
{
color
:
#053b6a
;
font-size
:
60px
;
}
}
.text
{
font-size
:
14px
;
padding-top
:
16px
;
.top
{
color
:
#000
;
margin-bottom
:
10px
;
font-weight
:
600
;
}
.bottom
{
color
:
#2788ea
;
}
}
}
}
.iconfont
{
cursor
:
pointer
;
}
// 单独调整下最后一个icon的大小
.iconFontSize
{
font-size
:
50px
!
important
;
}
}
.detail
{
text-align
:
left
;
}
</
style
>
<
style
lang=
"scss"
>
.myCenter
{
.left
.el-table__body-wrapper
{
overflow-y
:
auto
!
important
;
}
}
</
style
>
zh-baseversion-web/src/views/bigWindow/components/BottleInfo.vue
0 → 100644
View file @
3b52e54e
This diff is collapsed.
Click to expand it.
zh-baseversion-web/src/views/bigWindow/components/Processes.vue
0 → 100644
View file @
3b52e54e
<!--
* @Author: 纪泽龙 jizelong@qq.com
* @Date: 2024-10-25 15:11:18
* @LastEditors: 纪泽龙 jizelong@qq.com
* @LastEditTime: 2024-10-28 11:25:48
* @FilePath: /zh-baseversion-web/src/views/bigWindow/components/Processes.vue
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
-->
<
template
>
<el-timeline>
<el-timeline-item
v-for=
"(record, index) in trackRecordList"
:key=
"index"
:timestamp=
"record.time"
>
<!--
<div
v-if=
"record.processesName == '0'"
>
-->
<div>
{{
record
.
title
}}
</div>
<div
style=
"margin: 15px 0px"
>
{{
record
.
message
}}
</div>
<!--
</div>
<div
v-if=
"record.processesName == '1'"
>
<div>
气瓶配送
</div>
<div
style=
"margin: 15px 0px"
>
{{
record
.
message
}}
</div>
</div>
<div
v-if=
"record.processesName == '2'"
>
<div>
气瓶回收
</div>
<div
style=
"margin: 15px 0px"
>
{{
record
.
message
}}
</div>
</div>
-->
</el-timeline-item>
</el-timeline>
</
template
>
<
script
>
// import { bottleTrackRecordList } from "@/api/gasBottleTrack/bottleTrackRecord";
export
default
{
name
:
"processes"
,
props
:
{
trackRecordList
:
{
type
:
Array
,
default
:
()
=>
{
return
[];
},
},
},
data
()
{
return
{
// trackRecordList: [],
};
},
created
()
{
// this.getTrackRecordInfo();
},
methods
:
{
// getTrackRecordInfo() {
// bottleTrackRecordList({ bottleId: this.bottleId }).then((res) => {
// if (res.code == 200) {
// this.trackRecordList = res.data;
// }
// });
// },
},
};
</
script
>
<
style
scoped
></
style
>
zh-baseversion-web/src/views/bigWindow/components/Top.vue
View file @
3b52e54e
...
...
@@ -228,7 +228,7 @@ export default {
width
:
840px
;
// height: 96px;
// height: 56px;
z-index
:
9999
;
z-index
:
2000
;
position
:
fixed
;
top
:
90px
;
margin-left
:
calc
((
100%
-
840px
)
/
2
);
...
...
zh-baseversion-web/src/views/bigWindow/components/ViewBottleTrackInfo.vue
0 → 100644
View file @
3b52e54e
<!--
* @Author: 纪泽龙 jizelong@qq.com
* @Date: 2024-10-25 15:11:18
* @LastEditors: 纪泽龙 jizelong@qq.com
* @LastEditTime: 2024-10-28 11:21:52
* @FilePath: /zh-baseversion-web/src/views/bigWindow/components/ViewBottleTrackInfo.vue
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
-->
<
template
>
<el-dialog
title=
"气瓶追溯查看"
:visible
.
sync=
"detailOpen"
width=
"900px"
append-to-body
class=
"big-window-dlg"
>
<el-tabs
v-model=
"activeName"
>
<el-tab-pane
label=
"气瓶信息"
name=
"first"
>
<BottleInfo
:detailInfo=
"itemData"
/>
</el-tab-pane>
<el-tab-pane
label=
"流转过程"
name=
"second"
>
<Processes
:trackRecordList=
"itemData.backToMessage"
/>
</el-tab-pane>
</el-tabs>
</el-dialog>
</
template
>
<
script
>
import
BottleInfo
from
"./BottleInfo"
;
import
Processes
from
"./Processes"
;
import
{
getqpDetail
}
from
"@/api/bigWindow/getDevice.js"
;
export
default
{
name
:
"view-bottle-track-info"
,
components
:
{
BottleInfo
,
Processes
,
},
data
()
{
return
{
detailOpen
:
false
,
activeName
:
"first"
,
bottleId
:
null
,
itemData
:{
backToMessage
:[],
},
};
},
watch
:
{
bottleId
(
newData
)
{
console
.
log
(
newData
);
this
.
getqpDetail
(
newData
);
},
},
methods
:
{
getqpDetail
(
code
)
{
getqpDetail
({
code
}).
then
((
res
)
=>
{
console
.
log
(
"气瓶详情"
,
res
);
this
.
itemData
=
res
.
data
;
});
},
handleClick
(
tab
,
event
)
{
console
.
log
(
tab
,
event
);
this
.
activeName
=
tab
;
},
},
};
</
script
>
<
style
lang=
"scss"
>
.big-window-dlg
{
.el-dialog
{
background
:
rgba
(
2
,
26
,
51
,
0
.9
);
border
:
1px
solid
#127bd1
;
.el-dialog__header
{
border-bottom
:
1px
solid
#127bd1
;
}
.el-dialog__body
{
padding-top
:
10px
;
}
.el-dialog__headerbtn
.el-dialog__close
{
color
:
#1890ff
;
font-size
:
22px
;
}
.el-dialog__title
{
color
:
#1890ff
;
}
}
// background-color: #dfe4ed;
.
el-tabs__nav-wrap
:
:
after
{
// background-color: #127bd1;
// background-color: #606266;
opacity
:
0
;
}
.el-tabs__active-bar
{
// background-color:#49d8ff;
// background-color:#49d8ff;
}
.el-tabs__item
{
// 标签的字
color
:
#fff
;
&
.el-tabs__item.is-active
{
// 选中的字的颜色
color
:
#1890ff
;
}
}
// 文本内容的字的颜色
.el-form-item__label
{
color
:
#fff
;
}
// 右边的颜色
.el-form-item__content
span
{
color
:
#fff
;
}
// 圆圈
.el-timeline-item__node
{
// background: #1890ff;
}
// 左边框
.el-timeline-item__tail
{
// border: 1px solid #1890ff;
}
// 字
.el-timeline-item__content
{
color
:
#fff
;
}
// .el-dialog__title{
// }
}
</
style
>
<
style
scoped
lang=
"scss"
>
.el-tab-pane
{
margin-top
:
20px
;
height
:
350px
;
overflow-y
:
auto
;
&
:
:-
webkit-scrollbar
{
/* 设置滚动条宽度 */
width
:
4px
;
/* 设置滚动条背景色 */
//background: black;
}
//滚动条轨道
&
:
:-
webkit-scrollbar-track
{
background-color
:
transparent
;
-webkit-border-radius
:
2em
;
-moz-border-radius
:
2em
;
border-radius
:
2em
;
}
//滚动条滑块
&
:
:-
webkit-scrollbar-thumb
{
background-color
:
rgb
(
147
,
147
,
153
,
0
.5
);
-webkit-border-radius
:
2em
;
-moz-border-radius
:
2em
;
border-radius
:
2em
;
}
}
</
style
>
zh-baseversion-web/vue.config.js
View file @
3b52e54e
...
...
@@ -34,8 +34,8 @@ module.exports = {
proxy
:
{
// detail: https://cli.vuejs.org/config/#devserver-proxy
[
process
.
env
.
VUE_APP_BASE_API
]:
{
target
:
`http://localhost:8905/gassafety`
,
// target: `http://27.128.233.145
:8905/gassafety`,
//
target: `http://localhost:8905/gassafety`,
target
:
`http://36.138.180.82
:8905/gassafety`
,
// target: `http://36.138.180.82:8905/gassafety`,
// 服务器
// target: `http://36.138.180.82:8079//gassafety`,
...
...
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