Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
R
rongtong-pc
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
融通安全管理系统
rongtong-pc
Commits
dca2b982
Commit
dca2b982
authored
Dec 18, 2023
by
kaitly205422@163.com
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
巡察+大屏
parent
b01edaf0
Changes
11
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
583 additions
and
1065 deletions
+583
-1065
dist.zip
dist.zip
+0
-0
src/api/risk/existing.js
src/api/risk/existing.js
+9
-0
src/router/index.js
src/router/index.js
+6
-4
src/views/map/components/index.js
src/views/map/components/index.js
+0
-1
src/views/map/components/map-item-pie.vue
src/views/map/components/map-item-pie.vue
+0
-413
src/views/map/map-detail.vue
src/views/map/map-detail.vue
+6
-6
src/views/map/map-index.vue
src/views/map/map-index.vue
+271
-156
src/views/map/map-layout.vue
src/views/map/map-layout.vue
+16
-8
src/views/riskLedger/component/table.vue
src/views/riskLedger/component/table.vue
+155
-0
src/views/riskLedger/detail.vue
src/views/riskLedger/detail.vue
+95
-368
src/views/riskLedger/list.vue
src/views/riskLedger/list.vue
+25
-109
No files found.
dist.zip
0 → 100644
View file @
dca2b982
File added
src/api/risk/existing.js
View file @
dca2b982
...
...
@@ -18,3 +18,12 @@ export function inherentListList(query) {
params
:
query
})
}
// 查询固有风险台账列表
export
function
existingList
(
query
)
{
return
request
({
url
:
'
/system/risk/plan/existingList
'
,
method
:
'
get
'
,
params
:
query
})
}
src/router/index.js
View file @
dca2b982
...
...
@@ -182,16 +182,18 @@ export const dynamicRoutes = [
],
},
{
path
:
"
/riskLedger
/detail
"
,
path
:
"
/riskLedger
"
,
component
:
Layout
,
hidden
:
true
,
permissions
:
[
"
system:dict:list
"
],
permissions
:
[
"
*:*:*
"
],
children
:
[
{
path
:
"
riskDetail
"
,
path
:
"
detail/:projectId(
\\
d+)
"
,
component
:
()
=>
import
(
"
@/views/riskLedger/detail
"
),
name
:
"
riskDetail
"
,
meta
:
{
title
:
"
风险台账
"
,
activeMenu
:
"
/riskLedger/detail
"
},
meta
:
{
title
:
'
风险台账
'
,
}
},
],
},
...
...
src/views/map/components/index.js
View file @
dca2b982
export
{
default
as
mapItemContainer
}
from
'
./map-item-container.vue
'
;
export
{
default
as
mapTable
}
from
'
./map-table.vue
'
;
export
{
default
as
echartMap
}
from
'
./map-item-pie.vue
'
;
export
{
default
as
mapDetailTab
}
from
'
./map-detail-tab.vue
'
;
\ No newline at end of file
src/views/map/components/map-item-pie.vue
deleted
100644 → 0
View file @
b01edaf0
This diff is collapsed.
Click to expand it.
src/views/map/map-detail.vue
View file @
dca2b982
...
...
@@ -143,37 +143,37 @@ export default {
tabs
:
[
{
title
:
"
评估时间(最新)
"
,
icon
:
"
el-icon-
basketball
"
,
icon
:
"
el-icon-
alarm-clock
"
,
name
:
"
tab1
"
,
value
:
{}
},
{
title
:
"
评估数据
"
,
icon
:
"
el-icon-
basketball
"
,
icon
:
"
el-icon-
office-building
"
,
name
:
"
tab2
"
,
value
:
{}
},
{
title
:
"
风险总数量
"
,
icon
:
"
el-icon-
basketball
"
,
icon
:
"
el-icon-
monitor
"
,
name
:
"
tab3
"
,
value
:
{}
},
{
title
:
""
,
icon
:
"
el-icon-
basketball
"
,
icon
:
"
el-icon-
coin
"
,
name
:
"
tab4
"
,
value
:
{}
},
{
title
:
"
风险等级(固有)
"
,
icon
:
"
el-icon-
basketball
"
,
icon
:
"
el-icon-
pie-chart
"
,
name
:
"
tab5
"
,
value
:
{}
},
{
title
:
"
风险等级(现状)
"
,
icon
:
"
el-icon-
basketball
"
,
icon
:
"
el-icon-
s-data
"
,
name
:
"
tab6
"
,
value
:
{}
},
...
...
src/views/map/map-index.vue
View file @
dca2b982
This diff is collapsed.
Click to expand it.
src/views/map/map-layout.vue
View file @
dca2b982
...
...
@@ -22,8 +22,8 @@
</div>
-->
</div>
<div
class=
"map-header-right"
>
<
span
@
click=
"toBack"
><i
class=
"el-icon-back"
></i>
返回
</span
>
<
span><i
class=
"el-icon-s-home"
></i>
管理端
</span
>
<
div
@
click=
"toBack"
><i
class=
"el-icon-back"
></i><span>
返回
</span>
</div
>
<
div><i
class=
"el-icon-s-home"
></i><span>
管理端
</span>
</div
>
<!--
<span><i
class=
"el-icon-switch-button"
></i>
退出
</span>
-->
</div>
</div>
...
...
@@ -161,6 +161,7 @@ export default {
background
:
#000
;
background
:
url("../../assets/map/bg.png")
no-repeat
;
background-size
:
100%
100%
;
overflow
:
hidden
;
.map-header
{
height
:
83px
;
...
...
@@ -175,14 +176,16 @@ export default {
.map-header-search
{
width
:
20%
;
position
:
relative
;
margin-top
:
3px
;
height
:
35px
;
display
:
flex
;
align-items
:
center
;
.el-input
{
::v-deep
input
{
height
:
30
px
;
height
:
26
px
;
background
:
transparent
;
border-color
:
#005495
;
border-radius
:
30
px
;
border-radius
:
26
px
;
color
:
#fff
;
&
:
:
placeholder
{
...
...
@@ -215,14 +218,19 @@ export default {
.map-header-right
{
width
:
20%
;
font-size
:
12px
;
vertical-align
:
middle
;
margin-top
:
8px
;
color
:
#2391FF
;
display
:
flex
;
justify-content
:
flex-end
;
align-items
:
center
;
height
:
36px
;
cursor
:
pointer
;
span
{
>
div
{
margin-left
:
20px
;
span
{
margin-top
:
-5px
;
}
}
i
{
...
...
src/views/riskLedger/component/table.vue
0 → 100644
View file @
dca2b982
<
template
>
<div>
<el-table
v-loading=
"loading"
:data=
"list"
@
selection-change=
"handleSelectionChange"
>
<el-table-column
label=
"项目信息"
align=
"center"
fixed
width=
"500"
>
<el-table-column
label=
"区域公司"
align=
"center"
prop=
"deptName"
width=
"100"
/>
<el-table-column
label=
"项目名称"
align=
"center"
prop=
"projectName"
width=
"100"
>
<template
slot-scope=
"scope"
>
<el-popover
placement=
"top-start"
title=
"项目名称"
width=
"200"
trigger=
"hover"
:content=
"scope.row.projectName"
>
<span
slot=
"reference"
>
{{
scope
.
row
.
projectName
.
length
>
10
?
scope
.
row
.
projectName
.
substring
(
0
,
10
)
+
"
...
"
:
scope
.
row
.
projectName
}}
</span>
</el-popover>
</
template
>
</el-table-column>
<el-table-column
label=
"所属城市"
align=
"center"
prop=
"city"
width=
"100"
/>
<el-table-column
label=
"项目业态"
align=
"center"
prop=
"businessFormat"
width=
"100"
/>
<el-table-column
label=
"项目类型"
align=
"center"
prop=
"type"
width=
"100"
/>
</el-table-column>
<el-table-column
label=
"项目风险清单"
align=
"center"
>
<el-table-column
label=
"固有风险"
align=
"center"
>
<el-table-column
label=
"危险源名称"
align=
"center"
prop=
"inherentName"
width=
"100"
/>
<el-table-column
label=
"风险等级"
align=
"center"
prop=
"inherentLevel"
width=
"100"
/>
</el-table-column>
<el-table-column
label=
"现有风险"
align=
"center"
>
<el-table-column
label=
"危险源名称"
align=
"center"
prop=
"existingName"
width=
"100"
/>
<el-table-column
label=
"风险等级"
align=
"center"
prop=
"existingLevel"
width=
"100"
/>
</el-table-column>
<el-table-column
label=
"风险点位置"
align=
"center"
prop=
"presenceLocation"
width=
"100"
/>
<el-table-column
label=
"可能导致的事故后果"
align=
"center"
prop=
"listType"
width=
"100"
>
<
template
slot-scope=
"scope"
>
<el-popover
placement=
"top-start"
title=
"项目名称"
width=
"200"
trigger=
"hover"
:content=
"scope.row.listType"
>
<span
slot=
"reference"
>
{{
scope
.
row
.
listType
.
length
>
10
?
scope
.
row
.
listType
.
substring
(
0
,
10
)
+
"
...
"
:
scope
.
row
.
listType
}}
</span>
</el-popover>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"项目整体风险等级"
align=
"center"
>
<el-table-column
label=
"固有风险"
align=
"center"
prop=
"inherentProjectLevel"
width=
"100"
/>
<el-table-column
label=
"现状风险"
align=
"center"
prop=
"existingProjectLevel"
width=
"100"
/>
</el-table-column>
<el-table-column
label=
"风险管控"
align=
"center"
>
<el-table-column
label=
"应采取的管控措施"
align=
"center"
prop=
"inherentMeasuresAdministration"
width=
"100"
>
<
template
slot-scope=
"scope"
>
<el-popover
placement=
"top-start"
title=
"应采取的管控措施"
width=
"200"
trigger=
"hover"
:content=
"scope.row.inherentMeasuresAdministration"
>
<span
slot=
"reference"
>
{{
scope
.
row
.
inherentMeasuresAdministration
&&
scope
.
row
.
inherentMeasuresAdministration
.
length
>
10
?
scope
.
row
.
inherentMeasuresAdministration
.
substring
(
0
,
10
)
+
"
...
"
:
scope
.
row
.
inherentMeasuresAdministration
}}
</span>
</el-popover>
</
template
>
</el-table-column>
<el-table-column
label=
"已采取的管控措施"
align=
"center"
prop=
"existingMeasuresAdministration"
width=
"100"
>
<
template
slot-scope=
"scope"
>
<el-popover
placement=
"top-start"
title=
"已采取的管控措施"
width=
"200"
trigger=
"hover"
:content=
"scope.row.existingMeasuresAdministration"
>
<span
slot=
"reference"
>
{{
scope
.
row
.
existingMeasuresAdministration
&&
scope
.
row
.
existingMeasuresAdministration
.
length
>
10
?
scope
.
row
.
existingMeasuresAdministration
.
substring
(
0
,
10
)
+
"
...
"
:
scope
.
row
.
existingMeasuresAdministration
}}
</span>
</el-popover>
</
template
>
</el-table-column>
<el-table-column
label=
"分级管控"
align=
"center"
>
<el-table-column
label=
"管控责任单位"
align=
"center"
prop=
"measuresDeptName"
width=
"100"
/>
<el-table-column
label=
"管控责任人"
align=
"center"
prop=
"measuresUserName"
width=
"100"
/>
<el-table-column
label=
"人员联系方式"
align=
"center"
prop=
"measuresUserPhone"
width=
"100"
/>
</el-table-column>
</el-table-column>
<el-table-column
label=
"重大危险源管理"
align=
"center"
>
<el-table-column
label=
"是否存在重大危险源"
align=
"center"
prop=
"majorHazardSource"
width=
"100"
/>
<el-table-column
label=
"重大危险源名称"
align=
"center"
prop=
"hazardSourceName"
width=
"100"
/>
<el-table-column
label=
"重大危险源描述"
align=
"center"
prop=
"majorHazardDescription"
width=
"100"
/>
</el-table-column>
<el-table-column
label=
"判定依据"
align=
"center"
prop=
"referenceBasis"
width=
"100"
/>
<el-table-column
label=
"操作"
align=
"center"
prop=
"describe"
>
<
template
slot-scope=
"scope"
>
<div>
<router-link
:to=
"'/risk/plan/inherentdata/index/' + scope.row.id"
class=
"link-type"
>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-view"
>
详情
</el-button>
</router-link>
</div>
</
template
>
</el-table-column>
</el-table>
<el-pagination
v-show=
"page.total > 0"
:total=
"page.total"
:current-page=
"page.pageNum"
:page-size=
"page.pageSize"
@
current-change=
"changePage"
/>
</div>
</template>
<
script
>
export
default
{
props
:
{
list
:
{
type
:
Array
,
default
:
()
=>
[]
},
loading
:
{
type
:
Boolean
,
default
:
false
},
page
:
{
type
:
Object
,
default
:
()
=>
{
return
{
total
:
0
,
pageNum
:
1
,
pageSize
:
10
}
}
},
},
data
()
{
return
{
// 选中数组
ids
:
[],
}
},
methods
:
{
// 多选框选中数据
handleSelectionChange
(
selection
)
{
this
.
ids
=
selection
.
map
((
item
)
=>
item
.
id
);
this
.
single
=
selection
.
length
!==
1
;
this
.
multiple
=
!
selection
.
length
;
},
changePage
(
page
)
{
this
.
$emit
(
'
changePage
'
,
page
)
}
}
}
</
script
>
<
style
lang=
"scss"
scoped
></
style
>
\ No newline at end of file
src/views/riskLedger/detail.vue
View file @
dca2b982
This diff is collapsed.
Click to expand it.
src/views/riskLedger/list.vue
View file @
dca2b982
<
template
>
<div
class=
"app-container"
>
<el-form
:model=
"queryParams"
ref=
"queryForm"
size=
"small"
:inline=
"true"
v-show=
"showSearch"
label-width=
"68px"
>
<el-form
:model=
"queryParams"
ref=
"queryForm"
size=
"small"
:inline=
"true"
v-show=
"showSearch"
label-width=
"68px"
>
<el-form-item
label=
"项目名称"
prop=
"name"
>
<el-input
v-model=
"queryParams.name"
placeholder=
"请输入项目名称"
clearable
@
keyup.enter.native=
"handleQuery"
/>
<el-input
v-model=
"queryParams.name"
placeholder=
"请输入项目名称"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"经营状态"
prop=
"businessStatus"
>
<el-input
v-model=
"queryParams.businessStatus"
placeholder=
"请输入经营状态"
clearable
@
keyup.enter.native=
"handleQuery"
/>
<el-input
v-model=
"queryParams.businessStatus"
placeholder=
"请输入经营状态"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"项目业态"
prop=
"business"
>
<el-select
v-model=
"queryParams.business"
placeholder=
"请选择项目业态"
clearable
>
<el-option
v-for=
"dict in dict.type.risk_project_business"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
<el-select
v-model=
"queryParams.business"
placeholder=
"请选择项目业态"
clearable
>
<el-option
v-for=
"dict in dict.type.risk_project_business"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
<el-form-item
label=
"所属区域"
prop=
"deptId"
>
<treeselect
v-model=
"queryParams.deptId"
:options=
"deptOptions"
:show-count=
"true"
placeholder=
"请选择所属区域"
style=
"width: 250px"
/>
<treeselect
v-model=
"queryParams.deptId"
:options=
"deptOptions"
:show-count=
"true"
placeholder=
"请选择所属区域"
style=
"width: 250px"
/>
</el-form-item>
<el-form-item
label=
"所在城市"
prop=
"city"
>
<el-input
v-model=
"queryParams.city"
placeholder=
"请输入所在城市"
clearable
@
keyup.enter.native=
"handleQuery"
/>
<el-input
v-model=
"queryParams.city"
placeholder=
"请输入所在城市"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"详细地址"
prop=
"address"
>
<el-input
v-model=
"queryParams.address"
placeholder=
"请输入详细地址"
clearable
@
keyup.enter.native=
"handleQuery"
/>
<el-input
v-model=
"queryParams.address"
placeholder=
"请输入详细地址"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"物业"
prop=
"propertyManagement"
>
<el-select
v-model=
"queryParams.propertyManagement"
placeholder=
"请选择是否为物业"
clearable
>
<el-select
v-model=
"queryParams.propertyManagement"
placeholder=
"请选择是否为物业"
clearable
>
<el-option
key=
"1"
label=
"是"
value=
"true"
/>
<el-option
key=
"0"
label=
"否"
value=
"false"
/>
</el-select>
</el-form-item>
<el-form-item
label=
"状态"
prop=
"status"
>
<el-select
v-model=
"queryParams.status"
placeholder=
"请选择状态"
clearable
>
<el-option
v-for=
"dict in dict.type.sys_normal_disable"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
<el-select
v-model=
"queryParams.status"
placeholder=
"请选择状态"
clearable
>
<el-option
v-for=
"dict in dict.type.sys_normal_disable"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
<el-form-item>
<el-button
type=
"primary"
icon=
"el-icon-search"
size=
"mini"
@
click=
"handleQuery"
>
搜索
</el-button
>
<el-button
icon=
"el-icon-refresh"
size=
"mini"
@
click=
"resetQuery"
>
重置
</el-button
>
<el-button
type=
"primary"
icon=
"el-icon-search"
size=
"mini"
@
click=
"handleQuery"
>
搜索
</el-button>
<el-button
icon=
"el-icon-refresh"
size=
"mini"
@
click=
"resetQuery"
>
重置
</el-button>
</el-form-item>
</el-form>
<el-row>
<right-toolbar
:showSearch.sync=
"showSearch"
@
queryTable=
"getList"
></right-toolbar>
<right-toolbar
:showSearch.sync=
"showSearch"
@
queryTable=
"getList"
></right-toolbar>
</el-row>
<el-table
v-loading=
"loading"
:data=
"projectList"
@
selection-change=
"handleSelectionChange"
>
<el-table
v-loading=
"loading"
:data=
"projectList"
@
selection-change=
"handleSelectionChange"
>
<el-table-column
type=
"selection"
width=
"55"
align=
"center"
/>
<el-table-column
label=
"序号"
align=
"center"
>
<template
slot-scope=
"scope"
>
...
...
@@ -129,36 +63,18 @@
<el-table-column
label=
"详细地址"
align=
"center"
prop=
"address"
/>
<el-table-column
label=
"状态"
align=
"center"
prop=
"status"
>
<
template
slot-scope=
"scope"
>
<dict-tag
:options=
"dict.type.sys_normal_disable"
:value=
"scope.row.status"
/>
<dict-tag
:options=
"dict.type.sys_normal_disable"
:value=
"scope.row.status"
/>
</
template
>
</el-table-column>
<el-table-column
label=
"操作"
align=
"center"
class-name=
"small-padding fixed-width"
>
<el-table-column
label=
"操作"
align=
"center"
class-name=
"small-padding fixed-width"
>
<
template
slot-scope=
"scope"
>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-edit"
@
click=
"showDetail(scope.row)"
>
查看风险台账
</el-button
>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-edit"
@
click=
"showDetail(scope.row)"
>
查看风险台账
</el-button>
</
template
>
</el-table-column>
</el-table>
<pagination
v-show=
"total > 0"
:total=
"total"
:page.sync=
"queryParams.pageNum"
:limit.sync=
"queryParams.pageSize"
@
pagination=
"getList"
/>
<pagination
v-show=
"total > 0"
:total=
"total"
:page.sync=
"queryParams.pageNum"
:limit.sync=
"queryParams.pageSize"
@
pagination=
"getList"
/>
</div>
</template>
...
...
@@ -280,7 +196,7 @@ export default {
},
showDetail
(
obj
)
{
this
.
$router
.
push
({
name
:
"
/riskLe
"
,
name
:
"
riskDetail
"
,
params
:
{
projectId
:
obj
.
id
,
},
...
...
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