Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
K
kd_control
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
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
zhanglw
kd_control
Commits
9ffcb9c1
Commit
9ffcb9c1
authored
Apr 04, 2023
by
zhanglw
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
边坡设备报警,人员定位
parent
c7a64edb
Changes
12
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
2151 additions
and
83 deletions
+2151
-83
.env.development
.env.development
+5
-3
common.js
src/assets/js/common.js
+93
-0
index.vue
src/views/driverManagement/index.vue
+1
-1
index.vue
src/views/personnelPositioning/beacon/index.vue
+300
-0
index.vue
src/views/personnelPositioning/peopleAlarm/index.vue
+300
-0
index.vue
src/views/personnelPositioning/peopleLocation/index.vue
+488
-0
index.vue
src/views/personnelPositioning/peopleLogData/index.vue
+436
-0
index.vue
src/views/personnelPositioning/visitPeople/index.vue
+436
-0
index.vue
src/views/slopeMonitoring/alarmManagement/index.vue
+64
-36
index.vue
src/views/slopeMonitoring/environmentalMonitoring/index.vue
+20
-39
index.vue
src/views/slopeMonitoring/precipitationLog/index.vue
+4
-2
index.vue
src/views/slopeMonitoring/surfaceDisplacementLog/index.vue
+4
-2
No files found.
.env.development
View file @
9ffcb9c1
ENV = 'development'
# 接口地址
#VUE_APP_BASE_API = 'http://localhost:8000'
VUE_APP_BASE_API = 'http://192.168.3.23:9092'
#VUE_APP_BASE_API = 'http://8.143.203.103:9091'
VUE_APP_WS_API = 'ws://8.143.203.103:9092/webSocket'
#VUE_APP_BASE_API = 'http://192.168.3.216:9092'
#VUE_APP_LOCAL_API = 'http://192.168.3.216:9092'
VUE_APP_BASE_API = 'http://192.168.3.23:9092'
VUE_APP_LOCAL_API = 'http://192.168.3.23:9092'
VUE_APP_LOCAL_API2 = 'http://8.143.203.103:9091/'
VUE_APP_WS_API = 'ws://8.143.203.103:9092/webSocket'
# 是否启用 babel-plugin-dynamic-import-node插件
VUE_CLI_BABEL_TRANSPILE_MODULES = true
src/assets/js/common.js
View file @
9ffcb9c1
...
...
@@ -2901,6 +2901,99 @@ var HttpReq = function(){
params
:
param
,
})
},
slopeGetEquipmentAlarm
:
function
(
param
){
return
request
({
url
:
'
/api/equipmentAlarm
'
,
method
:
'
get
'
,
params
:
param
,
})
},
slopeEquipmentAlarmRemove
:
function
(
data
){
return
request
({
url
:
'
/api/equipmentAlarm/remove
'
,
method
:
'
PUT
'
,
data
:
data
,
})
},
slopeGetEquipmentData
:
function
(
param
){
return
request
({
url
:
'
/api/HengYuanEquipmentData
'
,
method
:
'
get
'
,
params
:
param
,
})
},
propleGetPerbeacon
:
function
(
param
){
return
request
({
url
:
'
/tab/perbeacon
'
,
method
:
'
get
'
,
params
:
param
,
})
},
proplePostPerbeacon
:
function
(
data
){
return
request
({
url
:
'
/tab/perbeacon
'
,
method
:
'
POST
'
,
data
:
data
,
})
},
proplePutPerbeacon
:
function
(
data
){
return
request
({
url
:
'
/tab/perbeacon
'
,
method
:
'
PUT
'
,
data
:
data
,
})
},
propleDeletePerbeacon
:
function
(
data
){
return
request
({
url
:
'
/tab/perbeacon
'
,
method
:
'
Delete
'
,
data
:
data
,
})
},
propleGetPerequipment
:
function
(
param
){
return
request
({
url
:
'
/tab/perequipment
'
,
method
:
'
get
'
,
params
:
param
,
})
},
proplePostPerequipment
:
function
(
data
){
return
request
({
url
:
'
/tab/perequipment
'
,
method
:
'
POST
'
,
data
:
data
,
})
},
proplePutPerequipment
:
function
(
data
){
return
request
({
url
:
'
/tab/perequipment
'
,
method
:
'
PUT
'
,
data
:
data
,
})
},
propleDeletePerequipment
:
function
(
data
){
return
request
({
url
:
'
/tab/perequipment
'
,
method
:
'
Delete
'
,
data
:
data
,
})
},
proplePostPerequipmentUpload
:
function
(
data
){
return
request
({
url
:
'
/tab/perequipment/upload
'
,
method
:
'
POST
'
,
data
:
data
,
})
},
propleGetPerequipmentOut
:
function
(
param
){
return
request
({
url
:
'
/tab/perequipment/out
'
,
method
:
'
get
'
,
params
:
param
,
})
},
},
...
...
src/views/driverManagement/index.vue
View file @
9ffcb9c1
...
...
@@ -21,7 +21,7 @@
<!-- 表格 -->
<div
class=
"panel-bottom page-row"
>
<h3>
人员
管理
</h3>
<h3>
用户
管理
</h3>
<div
class=
"ctin-box"
>
<div
class=
"content-within"
>
<div
class=
"content-fix"
>
...
...
src/views/personnelPositioning/beacon/index.vue
0 → 100644
View file @
9ffcb9c1
<
template
>
<div
class=
"common-page device-manage"
>
<div
class=
"option page-row"
>
<!--工具栏-->
<div
class=
"head-container"
>
<!-- 搜索 -->
<label
class=
"el-form-item-label"
style=
"font-weight: 500;"
>
设备号
</label>
<el-input
v-model=
"query.beaconame"
clearable
size=
"small"
placeholder=
"请输入设备号"
style=
"width:180px;"
/>
<el-button
size=
"mini"
type=
"success"
icon=
"el-icon-search"
@
click=
"toSearch"
>
搜索
</el-button>
<el-button
size=
"mini"
icon=
"el-icon-refresh"
@
click=
"clearLimit"
>
重置
</el-button>
</div>
</div>
<!-- 表格 -->
<div
class=
"panel-bottom page-row"
>
<div
class=
"ctin-box"
>
<div
class=
"content-within"
>
<div
class=
"content-fix"
>
<div
class=
"toolbar"
>
<el-button
size=
"mini"
type=
"primary"
icon=
"el-icon-plus"
@
click=
"toAdd"
>
新增
</el-button>
</div>
<div
class=
"content"
>
<el-table
:data=
"tableData"
v-loading=
"loading"
border
style=
"width:auto"
:row-class-name=
"tableRowClassName"
>
<el-table-column
prop=
"beaconame"
label=
"信标名称"
align=
"center"
></el-table-column>
<el-table-column
prop=
"beaconumber"
label=
"信标编号"
align=
"center"
></el-table-column>
<el-table-column
prop=
"xcoordinate"
label=
"X坐标"
align=
"center"
></el-table-column>
<el-table-column
prop=
"ycoordinate"
label=
"Y坐标"
align=
"center"
></el-table-column>
<el-table-column
prop=
"time"
label=
"时间"
align=
"center"
></el-table-column>
<el-table-column
label=
"操作"
align=
"center"
fixed=
"right"
>
<template
slot-scope=
"scope"
>
<el-button
size=
"mini"
type=
"primary"
icon=
"el-icon-edit"
@
click=
"toEdit(scope.row)"
></el-button>
<el-button
size=
"mini"
type=
"danger"
icon=
"el-icon-delete"
@
click=
"toDelete(scope.row)"
></el-button>
</
template
>
</el-table-column>
</el-table>
<!--分页组件-->
<el-pagination
:total=
"total"
:current-page=
"page"
style=
"margin-top: 8px;"
layout=
"total, prev, pager, next, sizes"
@
size-change=
"sizeChange"
@
current-change=
"pageChange"
/>
</div>
</div>
</div>
</div>
</div>
<!-- 表单渲染 -->
<el-dialog
append-to-body
:close-on-click-modal=
"false"
:before-close=
"cancelForm"
:visible.sync=
"visible"
:title=
"title"
width=
"800px"
>
<el-form
:model=
"formData"
:rules=
"rules"
ref=
"formViewRef"
:inline=
"true"
:status-icon=
"true"
size=
"mini"
>
<el-row>
<el-col
:span=
"12"
>
<div
class=
"grid-content"
>
<el-form-item
label=
"信标名称:"
prop=
"beaconame"
class=
"form-cell"
>
<div
class=
"cell-box"
>
<el-input
v-model=
"formData.beaconame"
class=
"cell-input"
></el-input>
</div>
</el-form-item>
</div>
</el-col>
<el-col
:span=
"12"
>
<div
class=
"grid-content"
>
<el-form-item
label=
"信标编号:"
class=
"form-cell"
prop=
"beaconumber"
>
<div
class=
"cell-box"
>
<el-input
v-model=
"formData.beaconumber"
class=
"cell-input"
></el-input>
</div>
</el-form-item>
</div>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"12"
>
<div
class=
"grid-content"
>
<el-form-item
label=
"X坐标:"
class=
"form-cell"
prop=
"xcoordinate"
>
<div
class=
"cell-box"
>
<el-input
v-model=
"formData.xcoordinate"
class=
"cell-input"
></el-input>
</div>
</el-form-item>
</div>
</el-col>
<el-col
:span=
"12"
>
<div
class=
"grid-content"
>
<el-form-item
label=
"Y坐标:"
class=
"form-cell"
prop=
"ycoordinate"
>
<div
class=
"cell-box"
>
<el-input
v-model=
"formData.ycoordinate"
class=
"cell-input"
></el-input>
</div>
</el-form-item>
</div>
</el-col>
</el-row>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
type=
"text"
@
click=
"cancelForm"
>
取消
</el-button>
<el-button
type=
"primary"
@
click=
"submitForm('formViewRef', formData)"
>
确认
</el-button>
</div>
</el-dialog>
</div>
</template>
<
script
>
import
{
Tools
,
HttpReq
,
Dates
}
from
'
@/assets/js/common.js
'
;
export
default
{
name
:
'
beacon
'
,
data
()
{
const
basePathUrl
=
window
.
basePathUrl
||
''
return
{
configUrl
:
basePathUrl
+
'
config/config.json
'
,
title
:
'
新增
'
,
visible
:
false
,
loading
:
false
,
page
:
1
,
size
:
10
,
total
:
0
,
query
:
{},
map
:
null
,
graphicLayer
:
null
,
stuOpts
:
[
{
label
:
'
全部
'
,
value
:
undefined
},
{
label
:
'
离线
'
,
value
:
'
离线
'
},
{
label
:
'
在线
'
,
value
:
'
在线
'
},
],
tableData
:
[],
formData
:
{
beaconame
:
''
,
beaconumber
:
''
,
xcoordinate
:
''
,
ycoordinate
:
''
,
},
rules
:
{
beaconame
:
{
required
:
true
,
message
:
'
'
,
trigger
:
'
blur
'
},
beaconumber
:
{
required
:
true
,
message
:
'
'
,
trigger
:
'
blur
'
},
xcoordinate
:
{
required
:
true
,
message
:
'
'
,
trigger
:
'
blur
'
},
ycoordinate
:
{
required
:
true
,
message
:
'
'
,
trigger
:
'
blur
'
},
},
}
},
mounted
()
{
this
.
$nextTick
(()
=>
{
this
.
loadData
();
})
},
methods
:
{
formatOpt
(
arr
,
val
){
let
str
=
''
;
arr
.
forEach
((
item
)
=>
{
if
(
item
.
value
==
val
){
str
=
item
.
label
;
}
});
return
str
;
},
loadData
()
{
var
param
=
this
.
query
;
param
.
page
=
this
.
page
-
1
;
param
.
size
=
this
.
size
;
this
.
$nextTick
(()
=>
{
//获取安检信息
HttpReq
.
truckDispatching
.
propleGetPerbeacon
(
param
).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
this
.
loading
=
false
;
this
.
tableData
=
res
.
body
.
list
;
this
.
total
=
res
.
body
.
total
;
}
})
})
},
toAdd
()
{
this
.
title
=
'
新增
'
;
this
.
visible
=
true
;
},
toEdit
(
item
)
{
this
.
title
=
'
编辑
'
;
this
.
visible
=
true
;
this
.
formData
=
item
;
},
toDelete
(
item
)
{
var
id
=
item
.
id
;
this
.
$confirm
(
'
确认删除该条数据吗?
'
,
'
提示
'
,
{
confirmButtonText
:
'
确定
'
,
cancelButtonText
:
'
取消
'
,
type
:
'
warning
'
}).
then
((
e
)
=>
{
HttpReq
.
truckDispatching
.
propleDeletePerbeacon
({
id
}).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
this
.
$message
({
message
:
res
.
msg
,
type
:
'
success
'
});
this
.
loadData
();
}
})
})
},
cancelForm
()
{
this
.
visible
=
false
;
this
.
$refs
.
formViewRef
.
resetFields
();
},
tableRowClassName
({
row
,
rowIndex
})
{
},
// 点击搜索
toSearch
()
{
this
.
page
=
1
;
this
.
loadData
();
},
// 重置搜索
clearLimit
()
{
this
.
query
=
{};
this
.
loadData
()
},
pageChange
(
e
)
{
this
.
page
=
e
this
.
loadData
()
},
sizeChange
(
e
)
{
this
.
page
=
1
this
.
size
=
e
this
.
loadData
()
},
submitForm
(
validateName
,
item
)
{
this
.
$refs
[
validateName
].
validate
(
valid
=>
{
if
(
valid
)
{
if
(
this
.
title
===
'
新增
'
)
{
HttpReq
.
truckDispatching
.
proplePostPerbeacon
(
item
).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
this
.
$message
({
message
:
res
.
msg
,
type
:
'
success
'
});
this
.
cancelForm
();
this
.
loadData
()
}
})
}
else
{
HttpReq
.
truckDispatching
.
proplePutPerbeacon
(
item
).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
this
.
$message
({
message
:
res
.
msg
,
type
:
'
success
'
});
this
.
cancelForm
();
this
.
loadData
()
}
})
}
}
});
},
},
}
</
script
>
<
style
rel=
"stylesheet/scss"
lang=
"scss"
scope
>
.el-table
.warning-row
{
background
:
oldlace
;
}
.el-table
.success-row
{
background
:
#f0f9eb
;
}
.cell-input
{
//min-width: 220px;
}
.form-cell
{
margin
:
0
!
important
;
width
:
100%
;
}
.grid-content
{
//border: 1px solid rgba(100, 100, 100, 0.1);
padding
:
5px
30px
;
}
.cell-box
{
min-width
:
120px
;
}
.cell-box
.el-input__inner
{
border
:
1px
solid
rgba
(
100
,
100
,
100
,
0
.1
);
}
.cell-box
.el-input.is-disabled
.el-input__inner
{
border
:
1px
solid
rgba
(
100
,
100
,
100
,
0
.1
);
background
:
white
;
cursor
:
text
;
}
.cell-box
.el-input.is-disabled
.el-input__icon
{
cursor
:
text
;
}
.cell-box
.el-icon-arrow-up
:before
{
content
:
''
;
}
.mapcontainer
{
height
:
30vh
;
width
:
680px
;
overflow
:
hidden
;
}
</
style
>
src/views/personnelPositioning/peopleAlarm/index.vue
0 → 100644
View file @
9ffcb9c1
<
template
>
<div
class=
"common-page device-manage"
>
<div
class=
"option page-row"
>
<!--工具栏-->
<div
class=
"head-container"
>
<!-- 搜索 -->
<label
class=
"el-form-item-label"
style=
"font-weight: 500;"
>
设备号
</label>
<el-input
v-model=
"query.beaconame"
clearable
size=
"small"
placeholder=
"请输入设备号"
style=
"width:180px;"
/>
<el-button
size=
"mini"
type=
"success"
icon=
"el-icon-search"
@
click=
"toSearch"
>
搜索
</el-button>
<el-button
size=
"mini"
icon=
"el-icon-refresh"
@
click=
"clearLimit"
>
重置
</el-button>
</div>
</div>
<!-- 表格 -->
<div
class=
"panel-bottom page-row"
>
<div
class=
"ctin-box"
>
<div
class=
"content-within"
>
<div
class=
"content-fix"
>
<div
class=
"toolbar"
>
<el-button
size=
"mini"
type=
"primary"
icon=
"el-icon-plus"
@
click=
"toAdd"
>
新增
</el-button>
</div>
<div
class=
"content"
>
<el-table
:data=
"tableData"
v-loading=
"loading"
border
style=
"width:auto"
:row-class-name=
"tableRowClassName"
>
<el-table-column
prop=
"beaconame"
label=
"信标名称"
align=
"center"
></el-table-column>
<el-table-column
prop=
"beaconumber"
label=
"信标编号"
align=
"center"
></el-table-column>
<el-table-column
prop=
"xcoordinate"
label=
"X坐标"
align=
"center"
></el-table-column>
<el-table-column
prop=
"ycoordinate"
label=
"Y坐标"
align=
"center"
></el-table-column>
<el-table-column
prop=
"time"
label=
"时间"
align=
"center"
></el-table-column>
<el-table-column
label=
"操作"
align=
"center"
fixed=
"right"
>
<template
slot-scope=
"scope"
>
<el-button
size=
"mini"
type=
"primary"
icon=
"el-icon-edit"
@
click=
"toEdit(scope.row)"
></el-button>
<el-button
size=
"mini"
type=
"danger"
icon=
"el-icon-delete"
@
click=
"toDelete(scope.row)"
></el-button>
</
template
>
</el-table-column>
</el-table>
<!--分页组件-->
<el-pagination
:total=
"total"
:current-page=
"page"
style=
"margin-top: 8px;"
layout=
"total, prev, pager, next, sizes"
@
size-change=
"sizeChange"
@
current-change=
"pageChange"
/>
</div>
</div>
</div>
</div>
</div>
<!-- 表单渲染 -->
<el-dialog
append-to-body
:close-on-click-modal=
"false"
:before-close=
"cancelForm"
:visible.sync=
"visible"
:title=
"title"
width=
"800px"
>
<el-form
:model=
"formData"
:rules=
"rules"
ref=
"formViewRef"
:inline=
"true"
:status-icon=
"true"
size=
"mini"
>
<el-row>
<el-col
:span=
"12"
>
<div
class=
"grid-content"
>
<el-form-item
label=
"信标名称:"
prop=
"beaconame"
class=
"form-cell"
>
<div
class=
"cell-box"
>
<el-input
v-model=
"formData.beaconame"
class=
"cell-input"
></el-input>
</div>
</el-form-item>
</div>
</el-col>
<el-col
:span=
"12"
>
<div
class=
"grid-content"
>
<el-form-item
label=
"信标编号:"
class=
"form-cell"
prop=
"beaconumber"
>
<div
class=
"cell-box"
>
<el-input
v-model=
"formData.beaconumber"
class=
"cell-input"
></el-input>
</div>
</el-form-item>
</div>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"12"
>
<div
class=
"grid-content"
>
<el-form-item
label=
"X坐标:"
class=
"form-cell"
prop=
"xcoordinate"
>
<div
class=
"cell-box"
>
<el-input
v-model=
"formData.xcoordinate"
class=
"cell-input"
></el-input>
</div>
</el-form-item>
</div>
</el-col>
<el-col
:span=
"12"
>
<div
class=
"grid-content"
>
<el-form-item
label=
"Y坐标:"
class=
"form-cell"
prop=
"ycoordinate"
>
<div
class=
"cell-box"
>
<el-input
v-model=
"formData.ycoordinate"
class=
"cell-input"
></el-input>
</div>
</el-form-item>
</div>
</el-col>
</el-row>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
type=
"text"
@
click=
"cancelForm"
>
取消
</el-button>
<el-button
type=
"primary"
@
click=
"submitForm('formViewRef', formData)"
>
确认
</el-button>
</div>
</el-dialog>
</div>
</template>
<
script
>
import
{
Tools
,
HttpReq
,
Dates
}
from
'
@/assets/js/common.js
'
;
export
default
{
name
:
'
peopleAlarm
'
,
data
()
{
const
basePathUrl
=
window
.
basePathUrl
||
''
return
{
configUrl
:
basePathUrl
+
'
config/config.json
'
,
title
:
'
新增
'
,
visible
:
false
,
loading
:
false
,
page
:
1
,
size
:
10
,
total
:
0
,
query
:
{},
map
:
null
,
graphicLayer
:
null
,
stuOpts
:
[
{
label
:
'
全部
'
,
value
:
undefined
},
{
label
:
'
离线
'
,
value
:
'
离线
'
},
{
label
:
'
在线
'
,
value
:
'
在线
'
},
],
tableData
:
[],
formData
:
{
beaconame
:
''
,
beaconumber
:
''
,
xcoordinate
:
''
,
ycoordinate
:
''
,
},
rules
:
{
beaconame
:
{
required
:
true
,
message
:
'
'
,
trigger
:
'
blur
'
},
beaconumber
:
{
required
:
true
,
message
:
'
'
,
trigger
:
'
blur
'
},
xcoordinate
:
{
required
:
true
,
message
:
'
'
,
trigger
:
'
blur
'
},
ycoordinate
:
{
required
:
true
,
message
:
'
'
,
trigger
:
'
blur
'
},
},
}
},
mounted
()
{
this
.
$nextTick
(()
=>
{
this
.
loadData
();
})
},
methods
:
{
formatOpt
(
arr
,
val
){
let
str
=
''
;
arr
.
forEach
((
item
)
=>
{
if
(
item
.
value
==
val
){
str
=
item
.
label
;
}
});
return
str
;
},
loadData
()
{
var
param
=
this
.
query
;
param
.
page
=
this
.
page
-
1
;
param
.
size
=
this
.
size
;
this
.
$nextTick
(()
=>
{
//获取安检信息
HttpReq
.
truckDispatching
.
propleGetPerbeacon
(
param
).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
this
.
loading
=
false
;
this
.
tableData
=
res
.
body
.
list
;
this
.
total
=
res
.
body
.
total
;
}
})
})
},
toAdd
()
{
this
.
title
=
'
新增
'
;
this
.
visible
=
true
;
},
toEdit
(
item
)
{
this
.
title
=
'
编辑
'
;
this
.
visible
=
true
;
this
.
formData
=
item
;
},
toDelete
(
item
)
{
var
id
=
item
.
id
;
this
.
$confirm
(
'
确认删除该条数据吗?
'
,
'
提示
'
,
{
confirmButtonText
:
'
确定
'
,
cancelButtonText
:
'
取消
'
,
type
:
'
warning
'
}).
then
((
e
)
=>
{
HttpReq
.
truckDispatching
.
propleDeletePerbeacon
({
id
}).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
this
.
$message
({
message
:
res
.
msg
,
type
:
'
success
'
});
this
.
loadData
();
}
})
})
},
cancelForm
()
{
this
.
visible
=
false
;
this
.
$refs
.
formViewRef
.
resetFields
();
},
tableRowClassName
({
row
,
rowIndex
})
{
},
// 点击搜索
toSearch
()
{
this
.
page
=
1
;
this
.
loadData
();
},
// 重置搜索
clearLimit
()
{
this
.
query
=
{};
this
.
loadData
()
},
pageChange
(
e
)
{
this
.
page
=
e
this
.
loadData
()
},
sizeChange
(
e
)
{
this
.
page
=
1
this
.
size
=
e
this
.
loadData
()
},
submitForm
(
validateName
,
item
)
{
this
.
$refs
[
validateName
].
validate
(
valid
=>
{
if
(
valid
)
{
if
(
this
.
title
===
'
新增
'
)
{
HttpReq
.
truckDispatching
.
proplePostPerbeacon
(
item
).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
this
.
$message
({
message
:
res
.
msg
,
type
:
'
success
'
});
this
.
cancelForm
();
this
.
loadData
()
}
})
}
else
{
HttpReq
.
truckDispatching
.
proplePutPerbeacon
(
item
).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
this
.
$message
({
message
:
res
.
msg
,
type
:
'
success
'
});
this
.
cancelForm
();
this
.
loadData
()
}
})
}
}
});
},
},
}
</
script
>
<
style
rel=
"stylesheet/scss"
lang=
"scss"
scope
>
.el-table
.warning-row
{
background
:
oldlace
;
}
.el-table
.success-row
{
background
:
#f0f9eb
;
}
.cell-input
{
//min-width: 220px;
}
.form-cell
{
margin
:
0
!
important
;
width
:
100%
;
}
.grid-content
{
//border: 1px solid rgba(100, 100, 100, 0.1);
padding
:
5px
30px
;
}
.cell-box
{
min-width
:
120px
;
}
.cell-box
.el-input__inner
{
border
:
1px
solid
rgba
(
100
,
100
,
100
,
0
.1
);
}
.cell-box
.el-input.is-disabled
.el-input__inner
{
border
:
1px
solid
rgba
(
100
,
100
,
100
,
0
.1
);
background
:
white
;
cursor
:
text
;
}
.cell-box
.el-input.is-disabled
.el-input__icon
{
cursor
:
text
;
}
.cell-box
.el-icon-arrow-up
:before
{
content
:
''
;
}
.mapcontainer
{
height
:
30vh
;
width
:
680px
;
overflow
:
hidden
;
}
</
style
>
src/views/personnelPositioning/peopleLocation/index.vue
0 → 100644
View file @
9ffcb9c1
This diff is collapsed.
Click to expand it.
src/views/personnelPositioning/peopleLogData/index.vue
0 → 100644
View file @
9ffcb9c1
This diff is collapsed.
Click to expand it.
src/views/personnelPositioning/visitPeople/index.vue
0 → 100644
View file @
9ffcb9c1
This diff is collapsed.
Click to expand it.
src/views/slopeMonitoring/alarmManagement/index.vue
View file @
9ffcb9c1
...
...
@@ -6,9 +6,9 @@
<div
class=
"head-container"
>
<!-- 搜索 -->
<label
class=
"el-form-item-label"
style=
"font-weight: 500;"
>
设备号
</label>
<el-input
v-model=
"query.
sensorId
"
clearable
size=
"small"
placeholder=
"请输入设备号"
style=
"width:180px;"
/>
<el-input
v-model=
"query.
equipno
"
clearable
size=
"small"
placeholder=
"请输入设备号"
style=
"width:180px;"
/>
<label
class=
"el-form-item-label"
style=
"font-weight: 500;"
>
报警状态
</label>
<el-select
v-model=
"query.
alarmStatus
"
placeholder=
"请选择"
>
<el-select
v-model=
"query.
state
"
placeholder=
"请选择"
>
<el-option
v-for=
"item in stuOpts"
:key=
"item.value"
:label=
"item.label"
:value=
"item.value"
></el-option>
</el-select>
<label
class=
"el-form-item-label"
style=
"font-weight: 500;"
>
日期范围
</label>
...
...
@@ -32,23 +32,35 @@
<div
class=
"content-fix"
>
<div
class=
"toolbar"
style=
"text-align:right"
>
<el-button
size=
"mini"
type=
"primary"
icon=
"el-icon-refresh"
@
click=
"loadData"
>
刷新
</el-button>
<el-button
size=
"mini"
type=
"warning"
icon=
"el-icon-document"
@
click=
"
toAdd
"
>
导出
</el-button>
<el-button
size=
"mini"
type=
"warning"
icon=
"el-icon-document"
@
click=
"
downloadFile
"
>
导出
</el-button>
<el-button
size=
"mini"
icon=
"el-icon-printer"
v-print=
"printObj"
@
click=
"printeTable"
>
打印
</el-button>
</div>
<div
class=
"content"
>
<el-table
id=
"printContainer"
:data=
"tableData"
v-loading=
"loading"
border
style=
"width:auto"
:row-class-name=
"tableRowClassName"
>
<el-table-column
prop=
"formId"
label=
"设备名称"
align=
"center"
></el-table-column>
<el-table-column
prop=
"username"
label=
"设备编号"
align=
"center"
></el-table-column>
<el-table-column
prop=
"carNo"
label=
"状态"
align=
"center"
></el-table-column>
<el-table-column
prop=
"carClass"
label=
"报警等级"
align=
"center"
></el-table-column>
<el-table-column
prop=
"carNo"
label=
"报警值"
align=
"center"
></el-table-column>
<el-table-column
prop=
"carNo"
label=
"报警原因"
align=
"center"
></el-table-column>
<el-table-column
prop=
"createTime"
label=
"报警时间"
align=
"center"
></el-table-column>
<el-table-column
prop=
"carNo"
label=
"解除报警原因"
align=
"center"
></el-table-column>
<el-table-column
prop=
"createTime"
label=
"解除报警时间"
align=
"center"
></el-table-column>
<el-table-column
prop=
"equipname"
label=
"设备名称"
align=
"center"
></el-table-column>
<el-table-column
prop=
"equipno"
label=
"设备编号"
align=
"center"
></el-table-column>
<el-table-column
prop=
"state"
label=
"状态"
align=
"center"
>
<template
slot-scope=
"scope"
>
<span>
{{
scope
.
row
.
state
===
1
?
'
报警
'
:
'
解除报警
'
}}
</span>
</
template
>
</el-table-column>
<el-table-column
prop=
"alarmlevel"
label=
"报警等级"
align=
"center"
>
<
template
slot-scope=
"scope"
>
<i
v-if=
"scope.row.alarmlevel===1"
class=
"el-icon-message-solid"
style=
"color: red"
></i>
<i
v-if=
"scope.row.alarmlevel===2"
class=
"el-icon-message-solid"
style=
"color: orange"
></i>
<i
v-if=
"scope.row.alarmlevel===3"
class=
"el-icon-message-solid"
style=
"color: gold"
></i>
<i
v-if=
"scope.row.alarmlevel===4"
class=
"el-icon-message-solid"
style=
"color: dodgerblue"
></i>
</
template
>
</el-table-column>
<el-table-column
prop=
"evalue"
label=
"报警值"
align=
"center"
></el-table-column>
<el-table-column
prop=
"reason"
label=
"报警原因"
align=
"center"
></el-table-column>
<el-table-column
prop=
"time"
label=
"报警时间"
align=
"center"
></el-table-column>
<el-table-column
prop=
"jcreason"
label=
"解除报警原因"
align=
"center"
></el-table-column>
<el-table-column
prop=
"jcbjtime"
label=
"解除报警时间"
align=
"center"
></el-table-column>
<el-table-column
label=
"操作"
align=
"center"
v-if=
"!isPrint"
>
<
template
slot-scope=
"scope"
>
<el-button
size=
"mini"
type=
"primary"
icon=
"el-icon-close-notification"
@
click=
"toEdit(scope.row)"
></el-button>
<el-button
v-show=
"scope.row.state===1"
size=
"mini"
style=
"margin:0"
type=
"primary"
icon=
"el-icon-close-notification"
@
click=
"toEdit(scope.row)"
></el-button>
<el-button
v-show=
"scope.row.state!==1"
size=
"mini"
style=
"margin:0"
type=
"primary"
icon=
"el-icon-close-notification"
@
click=
"toEdit(scope.row)"
disabled
></el-button>
</
template
>
</el-table-column>
</el-table>
...
...
@@ -64,19 +76,19 @@
<!-- 表单渲染 -->
<el-dialog
append-to-body
:close-on-click-modal=
"false"
:before-close=
"cancelForm"
:visible.sync=
"editVisible"
title=
"解除报警"
width=
"500px"
>
<el-form
:model=
"formData"
:rules=
"rules"
ref=
"formViewRef"
:inline=
"true"
label-width=
"180px"
>
<el-form-item
label=
"解除时长:"
class=
"form-cell"
prop=
"
name
"
style=
"width:100%"
>
<el-form-item
label=
"解除时长:"
class=
"form-cell"
prop=
"
jcHours
"
style=
"width:100%"
>
<div
class=
"cell-box"
>
<el-input
v-model=
"formData.
name"
class=
"cell-input
"
></el-input>
<el-input
v-model=
"formData.
jcHours"
class=
"cell-input"
type=
"number
"
></el-input>
</div>
</el-form-item>
<el-form-item
label=
"报警原因:"
class=
"form-cell"
prop=
"
devType
"
>
<el-form-item
label=
"报警原因:"
class=
"form-cell"
prop=
"
bjReason
"
>
<div
class=
"cell-box"
>
<el-input
v-model=
"formData.
devType
"
class=
"cell-input"
></el-input>
<el-input
v-model=
"formData.
bjReason
"
class=
"cell-input"
></el-input>
</div>
</el-form-item>
<el-form-item
label=
"解除报警原因:"
class=
"form-cell"
prop=
"
devNo
"
>
<el-form-item
label=
"解除报警原因:"
class=
"form-cell"
prop=
"
jcbjReason
"
>
<div
class=
"cell-box"
>
<el-input
v-model=
"formData.
devNo
"
class=
"cell-input"
></el-input>
<el-input
v-model=
"formData.
jcbjReason
"
class=
"cell-input"
></el-input>
</div>
</el-form-item>
</el-form>
...
...
@@ -110,17 +122,16 @@ export default {
stuOpts
:
[
{
label
:
'
全部
'
,
value
:
undefined
},
{
label
:
'
报警
'
,
value
:
1
},
{
label
:
'
正常
'
,
value
:
0
},
{
label
:
'
解除报警
'
,
value
:
2
},
],
tableData
:
[],
formData
:
{
name
:
''
,
devType
:
''
,
devNo
:
''
,
},
rules
:
{
devNo
:
{
required
:
true
,
message
:
'
请填写解除报警原因
'
,
trigger
:
'
blur
'
},
equipmentNo
:
null
,
jcHours
:
12
,
bjReason
:
''
,
jcbjReason
:
''
,
},
rules
:
{},
printObj
:
{
id
:
"
printContainer
"
,
popTitle
:
'
打印
'
,
...
...
@@ -137,14 +148,18 @@ export default {
},
methods
:
{
loadData
()
{
var
sort
=
'
id,desc
'
;
var
param
=
this
.
query
;
param
.
page
=
this
.
page
-
1
;
param
.
pageSize
=
this
.
size
;
param
.
sort
=
sort
;
param
.
startTime
=
undefined
;
param
.
endTime
=
undefined
;
if
(
param
.
timeList
&&
param
.
timeList
.
length
){
param
.
startTime
=
param
.
timeList
[
0
];
param
.
endTime
=
param
.
timeList
[
1
];
}
this
.
$nextTick
(()
=>
{
//获取安检信息
HttpReq
.
truckDispatching
.
ajReportListFind
(
param
).
then
((
res
)
=>
{
HttpReq
.
truckDispatching
.
slopeGetEquipmentAlarm
(
param
).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
this
.
loading
=
false
;
this
.
tableData
=
res
.
data
.
records
;
...
...
@@ -153,8 +168,17 @@ export default {
})
})
},
toEdit
()
{
downloadFile
()
{
},
toEdit
(
item
)
{
this
.
editVisible
=
true
;
this
.
formData
=
{
equipmentNo
:
item
.
equipno
,
jcHours
:
12
,
bjReason
:
''
,
jcbjReason
:
''
,
}
},
printeTable
()
{
this
.
isPrint
=
true
;
...
...
@@ -187,12 +211,16 @@ export default {
submitForm
(
validateName
,
item
)
{
this
.
$refs
[
validateName
].
validate
(
valid
=>
{
if
(
valid
)
{
// if (this.title === '新增') {
// this.reqAddItem(this.form, item)
// } else {
// this.reqUpdateItem(this.form, item)
// }
alert
(
9999
);
HttpReq
.
truckDispatching
.
slopeEquipmentAlarmRemove
(
item
).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
this
.
$message
({
message
:
res
.
msg
,
type
:
'
success
'
});
this
.
cancelForm
();
this
.
loadData
()
}
})
}
});
},
...
...
src/views/slopeMonitoring/environmentalMonitoring/index.vue
View file @
9ffcb9c1
...
...
@@ -6,11 +6,7 @@
<div
class=
"head-container"
>
<!-- 搜索 -->
<label
class=
"el-form-item-label"
style=
"font-weight: 500;"
>
设备号
</label>
<el-input
v-model=
"query.sensorId"
clearable
size=
"small"
placeholder=
"请输入设备号"
style=
"width:180px;"
/>
<label
class=
"el-form-item-label"
style=
"font-weight: 500;"
>
报警状态
</label>
<el-select
v-model=
"query.alarmStatus"
placeholder=
"请选择"
>
<el-option
v-for=
"item in stuOpts"
:key=
"item.value"
:label=
"item.label"
:value=
"item.value"
></el-option>
</el-select>
<el-input
v-model=
"query.equipno"
clearable
size=
"small"
placeholder=
"请输入设备号"
style=
"width:180px;"
/>
<label
class=
"el-form-item-label"
style=
"font-weight: 500;"
>
日期范围
</label>
<el-date-picker
v-model=
"query.timeList"
...
...
@@ -37,18 +33,18 @@
</div>
<div
class=
"content"
>
<el-table
:data=
"tableData"
v-loading=
"loading"
border
style=
"width:auto"
:row-class-name=
"tableRowClassName"
>
<el-table-column
prop=
"
formId
"
label=
"设备名称"
align=
"center"
></el-table-column>
<el-table-column
prop=
"
username
"
label=
"设备编号"
align=
"center"
></el-table-column>
<el-table-column
prop=
"
carNo
"
label=
"连接状态"
align=
"center"
></el-table-column>
<el-table-column
prop=
"
createT
ime"
label=
"监测时间"
align=
"center"
></el-table-column>
<el-table-column
prop=
"
carClas
s"
label=
"风速"
align=
"center"
></el-table-column>
<el-table-column
prop=
"
carClass
"
label=
"温度"
align=
"center"
></el-table-column>
<el-table-column
prop=
"
carClass
"
label=
"大气压"
align=
"center"
></el-table-column>
<el-table-column
prop=
"
carClass
"
label=
"LPM2.5"
align=
"center"
></el-table-column>
<el-table-column
prop=
"
carClass
"
label=
"LTSP"
align=
"center"
></el-table-column>
<el-table-column
prop=
"
carClass
"
label=
"LPM10"
align=
"center"
></el-table-column>
<el-table-column
prop=
"
carClass
"
label=
"湿度"
align=
"center"
></el-table-column>
<el-table-column
prop=
"
carClass
"
label=
"风向"
align=
"center"
></el-table-column>
<el-table-column
prop=
"
deviceName
"
label=
"设备名称"
align=
"center"
></el-table-column>
<el-table-column
prop=
"
mn
"
label=
"设备编号"
align=
"center"
></el-table-column>
<el-table-column
prop=
"
statusDev
"
label=
"连接状态"
align=
"center"
></el-table-column>
<el-table-column
prop=
"
t
ime"
label=
"监测时间"
align=
"center"
></el-table-column>
<el-table-column
prop=
"
w
s"
label=
"风速"
align=
"center"
></el-table-column>
<el-table-column
prop=
"
ta
"
label=
"温度"
align=
"center"
></el-table-column>
<el-table-column
prop=
"
pa
"
label=
"大气压"
align=
"center"
></el-table-column>
<el-table-column
prop=
"
lpm25
"
label=
"LPM2.5"
align=
"center"
></el-table-column>
<el-table-column
prop=
"
ltsp
"
label=
"LTSP"
align=
"center"
></el-table-column>
<el-table-column
prop=
"
lpm10
"
label=
"LPM10"
align=
"center"
></el-table-column>
<el-table-column
prop=
"
ua
"
label=
"湿度"
align=
"center"
></el-table-column>
<el-table-column
prop=
"
wd
"
label=
"风向"
align=
"center"
></el-table-column>
</el-table>
<!--分页组件-->
<el-pagination
:total=
"total"
:current-page=
"page"
style=
"margin-top: 8px;"
...
...
@@ -101,14 +97,18 @@ export default {
},
methods
:
{
loadData
()
{
var
sort
=
'
id,desc
'
;
var
param
=
this
.
query
;
param
.
page
=
this
.
page
-
1
;
param
.
pageSize
=
this
.
size
;
param
.
sort
=
sort
;
param
.
startTime
=
undefined
;
param
.
endTime
=
undefined
;
if
(
param
.
timeList
&&
param
.
timeList
.
length
){
param
.
startTime
=
param
.
timeList
[
0
];
param
.
endTime
=
param
.
timeList
[
1
];
}
this
.
$nextTick
(()
=>
{
//获取安检信息
HttpReq
.
truckDispatching
.
ajReportListFind
(
param
).
then
((
res
)
=>
{
HttpReq
.
truckDispatching
.
slopeGetEquipmentData
(
param
).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
this
.
loading
=
false
;
this
.
tableData
=
res
.
data
.
records
;
...
...
@@ -117,25 +117,6 @@ export default {
})
})
},
toAdd
()
{
this
.
title
=
'
新增
'
;
this
.
visible
=
true
;
},
toEdit
()
{
},
toDelete
(
item
)
{
var
id
=
item
.
id
;
this
.
$confirm
(
'
确认删除该条数据吗?
'
,
'
提示
'
,
{
confirmButtonText
:
'
确定
'
,
cancelButtonText
:
'
取消
'
,
type
:
'
warning
'
}).
then
((
e
)
=>
{
}).
catch
((
e
)
=>
{
})
},
cancelForm
()
{
this
.
visible
=
false
;
},
...
...
src/views/slopeMonitoring/precipitationLog/index.vue
View file @
9ffcb9c1
...
...
@@ -127,11 +127,11 @@ export default {
},
methods
:
{
loadData
()
{
var
sort
=
'
id,desc
'
;
var
param
=
this
.
query
;
param
.
page
=
this
.
page
-
1
;
param
.
pageSize
=
this
.
size
;
param
.
sort
=
sort
;
param
.
startTime
=
undefined
;
param
.
endTime
=
undefined
;
if
(
param
.
timeList
&&
param
.
timeList
.
length
){
param
.
startTime
=
param
.
timeList
[
0
];
param
.
endTime
=
param
.
timeList
[
1
];
...
...
@@ -165,6 +165,8 @@ export default {
},
toSearchDev
(){
var
param
=
this
.
search
;
param
.
startTime
=
undefined
;
param
.
endTime
=
undefined
;
if
(
param
.
timeList
&&
param
.
timeList
.
length
){
param
.
startTime
=
param
.
timeList
[
0
];
param
.
endTime
=
param
.
timeList
[
1
];
...
...
src/views/slopeMonitoring/surfaceDisplacementLog/index.vue
View file @
9ffcb9c1
...
...
@@ -124,11 +124,11 @@ export default {
},
methods
:
{
loadData
()
{
var
sort
=
'
id,desc
'
;
var
param
=
this
.
query
;
param
.
page
=
this
.
page
-
1
;
param
.
pageSize
=
this
.
size
;
param
.
sort
=
sort
;
param
.
startTime
=
undefined
;
param
.
endTime
=
undefined
;
if
(
param
.
timeList
&&
param
.
timeList
.
length
){
param
.
startTime
=
param
.
timeList
[
0
];
param
.
endTime
=
param
.
timeList
[
1
];
...
...
@@ -165,6 +165,8 @@ export default {
},
toSearchDev
(){
var
param
=
this
.
search
;
param
.
startTime
=
undefined
;
param
.
endTime
=
undefined
;
if
(
param
.
timeList
&&
param
.
timeList
.
length
){
param
.
startTime
=
param
.
timeList
[
0
];
param
.
endTime
=
param
.
timeList
[
1
];
...
...
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