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
d1d37128
Commit
d1d37128
authored
Jul 26, 2023
by
陈晓晋
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'xjchen' into 'develop'
任务新增和任务详情20230726 See merge request
!4
parents
b7aed31b
1e43bf03
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
219 additions
and
29 deletions
+219
-29
src/api/risk/plan.js
src/api/risk/plan.js
+30
-2
src/views/risk/plan/index.vue
src/views/risk/plan/index.vue
+165
-15
src/views/risk/plan/ledgerdata.vue
src/views/risk/plan/ledgerdata.vue
+24
-12
No files found.
src/api/risk/plan.js
View file @
d1d37128
...
...
@@ -20,7 +20,7 @@ export function getPlan(id) {
// 新增风险计划
export
function
addPlan
(
data
)
{
return
request
({
url
:
'
/system
/risk/plan
'
,
url
:
'
app-api
/risk/plan
'
,
method
:
'
post
'
,
data
:
data
})
...
...
@@ -63,4 +63,32 @@ export function exportRiskList(inherentId) {
url
:
'
/system/risk/plan/exportWord/riskNotification/
'
+
inherentId
,
method
:
'
get
'
,
})
}
\ No newline at end of file
}
//项目列表
export
function
getProjectList
(
projectName
)
{
return
request
({
url
:
'
/system/ledger/project/listByQuery/
'
+
projectName
,
method
:
'
get
'
,
})
}
//楼栋列表
export
function
getBuildingList
(
projectId
)
{
return
request
({
url
:
'
/app-api/risk/plan/building/list/
'
+
projectId
,
method
:
'
get
'
,
})
}
//根据单位id查询用户列表
export
function
getUserListByDeptId
(
deptId
)
{
return
request
({
url
:
'
/app-api/risk/plan/user/list/
'
+
deptId
,
method
:
'
get
'
,
})
}
src/views/risk/plan/index.vue
View file @
d1d37128
...
...
@@ -110,8 +110,9 @@
<!--
添加或修改风险计划对话框
-->
<
el
-
dialog
:
title
=
"
title
"
:
visible
.
sync
=
"
open
"
width
=
"
500px
"
append
-
to
-
body
>
<
el
-
form
ref
=
"
form
"
:
model
=
"
form
"
:
rules
=
"
rules
"
label
-
width
=
"
120px
"
>
<
el
-
form
-
item
label
=
"
创建人员
"
prop
=
"
createUserId
"
>
<
el
-
input
v
-
model
=
"
user.
nickName
"
placeholder
=
"
请输入创建人员
"
/>
<
el
-
input
v
-
model
=
"
user.
userName
"
placeholder
=
"
请输入创建人员
"
required
=
"
true
"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
创建单位
"
prop
=
"
createDeptId
"
>
<
el
-
input
v
-
model
=
"
user.dept.deptName
"
placeholder
=
"
请输入创建单位
"
/>
...
...
@@ -120,20 +121,36 @@
<
el
-
input
v
-
model
=
"
form.name
"
placeholder
=
"
请输入任务名称
"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
关联项目
"
prop
=
"
projectId
"
>
<
el
-
input
v
-
model
=
"
form.projectId
"
placeholder
=
"
请输入关联项目
"
/>
<
el
-
select
v
-
model
=
"
form.projectId
"
@
change
=
"
getBuildingList(form.projectId)
"
filterable
remote
reserve
-
keyword
placeholder
=
"
请输入项目关键词
"
:
remote
-
method
=
"
remoteMethod
"
:
loading
=
"
loading
"
>
<
el
-
option
v
-
for
=
"
item in projectOptions
"
:
key
=
"
item.id
"
:
label
=
"
item.name
"
:
value
=
"
item.id
"
>
<
/el-option
>
<
/el-select
>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
评估楼栋
"
prop
=
"
buildingIds
"
>
<
el
-
input
v
-
model
=
"
form.buildingIds
"
placeholder
=
"
请输入评估楼栋
"
/>
<
el
-
select
v
-
model
=
"
form.buildingIds
"
multiple
medium
placeholder
=
"
请选择评估楼栋
"
>
<
el
-
option
v
-
for
=
"
item in buildingOption
"
:
key
=
"
item.id
"
:
label
=
"
item.name
"
:
value
=
"
item.id
"
>
<
/el-option
>
<
/el-select
>
<!--
<
el
-
input
v
-
model
=
"
form.buildingIds
"
placeholder
=
"
请输入评估楼栋
"
/>
-->
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
评估小组选择
"
prop
=
"
leaderUser
Id
"
>
<
treeselect
v
-
model
=
"
user.dept.dept
Name
"
:
options
=
"
deptOptions
"
:
show
-
count
=
"
true
"
placeholder
=
"
请选择归属部门
"
/>
<
el
-
form
-
item
label
=
"
评估小组选择
"
prop
=
"
dept
Id
"
>
<
treeselect
v
-
model
=
"
user.dept.dept
Id
"
:
options
=
"
deptOptions
"
:
show
-
count
=
"
true
"
placeholder
=
"
请选择归属部门
"
/>
<!--
<
el
-
input
v
-
model
=
"
user.dept.deptName
"
placeholder
=
"
请输评估小组选择
"
/>
-->
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
评估小组组长
"
prop
=
"
leaderUserId
"
>
<
el
-
input
v
-
model
=
"
form.leaderUserId
"
placeholder
=
"
请输入评估小组组长
"
/>
<!--
<
el
-
input
v
-
model
=
"
form.leaderUserId
"
placeholder
=
"
请输入评估小组组长
"
/>
-->
<
el
-
select
v
-
model
=
"
form.leaderUserId
"
placeholder
=
"
请选择评估小组组长
"
>
<
el
-
option
v
-
for
=
"
item in userOptions
"
:
key
=
"
item.userId
"
:
label
=
"
item.nickName
"
:
value
=
"
item.userId
"
>
<
/el-option
>
<
/el-select
>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
评估小组成员
"
prop
=
"
workUserIds
"
>
<
el
-
input
v
-
model
=
"
form.workUserIds
"
placeholder
=
"
请输入评估小组成员
"
/>
<!--
<
el
-
input
v
-
model
=
"
form.workUserIds
"
placeholder
=
"
请输入评估小组成员
"
/>
-->
<
el
-
select
v
-
model
=
"
form.workUserIds
"
multiple
placeholder
=
"
请选择评评估小组成员
"
>
<
el
-
option
v
-
for
=
"
item in userOptions
"
:
key
=
"
item.userId
"
:
label
=
"
item.nickName
"
:
value
=
"
item.userId
"
>
<
/el-option
>
<
/el-select
>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"
任务开始时间
"
prop
=
"
startTime
"
>
<
el
-
date
-
picker
clearable
v
-
model
=
"
form.startTime
"
type
=
"
date
"
value
-
format
=
"
yyyy-MM-dd
"
...
...
@@ -156,13 +173,25 @@
<
/template
>
<
script
>
import
{
listUser
,
getUser
,
delUser
,
addUser
,
updateUser
,
resetUserPwd
,
changeUserStatus
,
deptTreeSelect
}
from
"
@/api/system/user
"
;
import
{
listUser
,
getUser
,
delUser
,
addUser
,
updateUser
,
resetUserPwd
,
changeUserStatus
,
deptTreeSelect
}
from
"
@/api/system/user
"
;
import
{
listPlan
,
getPlan
,
delPlan
,
addPlan
,
updatePlan
updatePlan
,
getProjectList
,
getBuildingList
,
getUserListByDeptId
,
}
from
"
@/api/risk/plan
"
;
import
{
getUserProfile
...
...
@@ -172,10 +201,20 @@
export
default
{
name
:
"
Plan
"
,
components
:
{
Treeselect
}
,
components
:
{
Treeselect
}
,
data
()
{
return
{
user
:
{
}
,
userOptions
:
[],
//用户列表
projectOptions
:
[],
//项目列表
buildingOption
:
[],
//楼栋列表
user
:
{
dept
:{
deptName
:
''
,
deptId
:
''
,
}
}
,
// 遮罩层
loading
:
true
,
// 选中数组
...
...
@@ -213,9 +252,78 @@
status
:
null
,
}
,
// 表单参数
form
:
{
}
,
form
:
{
deptId
:
''
,
createUserId
:
''
,
createDeptId
:
''
,
}
,
// 表单校验
rules
:
{
}
rules
:
{
// createUserId: [
{
// required: true,
// message: '请输入创建人姓名',
// trigger: 'blur'
//
}
,
// ],
// createDeptId: [
{
// required: true,
// message: '请输入创建单位',
// trigger: 'blur'
//
}
,
// ],
name
:
[{
required
:
true
,
message
:
'
请输入任务名称
'
,
trigger
:
'
blur
'
}
,
{
min
:
1
,
max
:
50
,
message
:
'
长度在 1 到 50个字符
'
,
trigger
:
'
blur
'
}
],
projectId
:
[{
required
:
true
,
message
:
'
请输入任务名称
'
,
trigger
:
'
blur
'
}
,
],
buildingIds
:
[{
required
:
true
,
message
:
'
请输入任务名称
'
,
trigger
:
'
blur
'
}
,
],
leaderUserId
:
[{
required
:
true
,
message
:
'
请选择小组负责人
'
,
trigger
:
'
change
'
}
],
workUserIds
:
[{
required
:
true
,
message
:
'
请选择小组成员
'
,
trigger
:
'
change
'
}
],
startTime
:
[{
type
:
'
string
'
,
required
:
true
,
message
:
'
请选择开始时间
'
,
trigger
:
'
change
'
}
],
endTime
:
[{
type
:
'
string
'
,
required
:
true
,
message
:
'
请选择结束时间
'
,
trigger
:
'
change
'
}
],
}
}
;
}
,
watch
:
{
...
...
@@ -223,17 +331,54 @@
deptName
(
val
)
{
this
.
$refs
.
tree
.
filter
(
val
);
}
}
,
}
,
created
()
{
this
.
getUser
();
this
.
getDeptTree
();
this
.
getDeptTree
();
this
.
getList
();
}
,
mounted
()
{
}
,
methods
:
{
getUserListByDeptId
(
deptId
)
{
getUserListByDeptId
(
deptId
).
then
(
response
=>
{
this
.
userOptions
=
response
.
data
;
}
);
}
,
remoteMethod
(
query
)
{
if
(
query
!==
''
)
{
this
.
loading
=
true
;
getProjectList
(
query
).
then
(
response
=>
{
this
.
loading
=
false
;
this
.
projectOptions
=
response
.
data
;
}
);
}
else
{
this
.
projectOptions
=
[];
}
}
,
getUser
()
{
getUserProfile
().
then
(
response
=>
{
this
.
user
=
response
.
data
;
this
.
form
.
deptId
=
this
.
user
.
deptId
;
this
.
getUserListByDeptId
(
this
.
user
.
dept
.
deptId
);
}
);
}
,
getBuildingList
(
projectId
)
{
getBuildingList
(
projectId
).
then
(
response
=>
{
this
.
buildingOption
=
response
.
data
;
}
);
}
,
/** 查询风险计划列表 */
getList
()
{
...
...
@@ -252,13 +397,16 @@
}
,
// 筛选节点
filterNode
(
value
,
data
)
{
console
.
log
(
"
filterNode
"
);
if
(
!
value
)
return
true
;
return
data
.
label
.
indexOf
(
value
)
!==
-
1
;
}
,
// 节点单击事件
handleNodeClick
(
data
)
{
console
.
log
(
"
handleNodeClick
"
);
this
.
queryParams
.
deptId
=
data
.
id
;
this
.
handleQuery
();
// this.form.deptId=data.id;
}
,
// 取消按钮
cancel
()
{
...
...
@@ -324,6 +472,8 @@
submitForm
()
{
this
.
$refs
[
"
form
"
].
validate
(
valid
=>
{
if
(
valid
)
{
this
.
form
.
buildingIds
=
this
.
form
.
buildingIds
.
join
();
this
.
form
.
workUserIds
=
this
.
form
.
workUserIds
.
join
();
if
(
this
.
form
.
id
!=
null
)
{
updatePlan
(
this
.
form
).
then
(
response
=>
{
this
.
$modal
.
msgSuccess
(
"
修改成功
"
);
...
...
src/views/risk/plan/ledgerdata.vue
View file @
d1d37128
...
...
@@ -5,7 +5,7 @@
<el-descriptions-item
label=
"所属项目"
>
{{
InfoList
.
detailsDto
.
projectName
}}
</el-descriptions-item>
<el-descriptions-item
label=
"所属楼栋"
>
{{
InfoList
.
detailsDto
.
buildingNames
}}
</el-descriptions-item>
<el-descriptions-item
label=
"所属单位"
>
{{
InfoList
.
detailsDto
.
deptName
}}
</el-descriptions-item>
<el-descriptions-item
label=
"所属省市"
>
苏州市
</el-descriptions-item>
<el-descriptions-item
label=
"所属省市"
>
{{
InfoList
.
detailsDto
.
city
}}
</el-descriptions-item>
<el-descriptions-item
label=
"项目负责人"
>
{{
InfoList
.
detailsDto
.
leaderUserName
}}
</el-descriptions-item>
<el-descriptions-item
label=
"评估组成员"
>
{{
InfoList
.
detailsDto
.
workUserNames
}}
</el-descriptions-item>
<el-descriptions-item
label=
"开始时间"
>
{{
InfoList
.
startTime
}}
</el-descriptions-item>
...
...
@@ -16,8 +16,10 @@
<el-descriptions-item
label=
"创建时间"
>
{{
InfoList
.
detailsDto
.
createTime
}}
</el-descriptions-item>
</el-descriptions>
<el-tabs
v-model=
"activeName"
type=
"border-card"
style=
"margin-top: 10px;"
@
tab-click=
"handleClick"
>
<el-tabs
v-model=
"activeName"
type=
"border-card"
style=
"margin-top: 10px;"
>
<el-tab-pane
label=
"风险评估清单"
name=
"first"
>
<div
class=
"approveResult"
>
<div
class=
"approveL"
>
<!--
<el-form
:model=
"queryParams"
ref=
"queryForm"
size=
"small"
:inline=
"true"
v-show=
"showSearch"
label-width=
"82px"
>
<el-form-item
label=
"风险源名称"
prop=
"name"
>
...
...
@@ -43,7 +45,7 @@
</el-form>
-->
<el-button
type=
"warning"
plain
icon=
"el-icon-download"
size=
"mini"
@
click=
"downList(InfoList.detailsDto.id)"
style=
"float: right;margin-bottom: 8px;"
>
导出风险清单
</el-button>
<el-table
v-loading=
"loading"
:data=
"listList"
@
selection-change=
"handleSelectionChange"
>
<el-table
v-loading=
"loading"
:data=
"listList"
>
<el-table-column
label=
"序号"
align=
"center"
>
<template
slot-scope=
"scope"
>
<span>
{{
scope
.
$index
+
1
}}
</span>
...
...
@@ -71,6 +73,8 @@
<pagination
v-show=
"total > 0"
:total=
"total"
:page.sync=
"queryParams.pageNum"
:limit.sync=
"queryParams.pageSize"
@
pagination=
"getRiskList"
/>
</div>
</div>
</el-tab-pane>
<el-tab-pane
label=
"评估结果审核"
name=
"second"
>
<div
class=
"approveResult"
>
...
...
@@ -170,6 +174,7 @@
measuresEmergency
:
null
,
measuresEmergencyFileIds
:
null
,
referenceBasis
:
null
,
planId
:
null
,
},
// 表单参数
form
:
{},
...
...
@@ -179,10 +184,18 @@
InfoList
:
{},
}
},
created
()
{
if
(
this
.
$route
.
params
.
id
){
this
.
queryParams
.
planId
=
this
.
$route
.
params
.
id
this
.
getRiskList
(
this
.
queryParams
)
}
},
mounted
()
{
// console.log(this.$route.params, 'lll')
this
.
getInfo
(
this
.
$route
.
params
.
id
)
this
.
getRiskList
(
this
.
$route
.
params
.
id
)
},
methods
:
{
downList
(
planId
)
{
...
...
@@ -202,11 +215,12 @@
})
},
getRiskList
(
id
)
{
riskList
({
planId
:
id
}).
then
(
res
=>
{
this
.
loading
=
false
this
.
listList
=
res
.
rows
this
.
loading
=
true
;
riskList
(
this
.
queryParams
).
then
(
res
=>
{
this
.
listList
=
res
.
rows
;
this
.
total
=
res
.
total
;
this
.
loading
=
false
;
})
},
exportList
(
id
)
{
...
...
@@ -214,9 +228,7 @@
this
.
download
(
'
system/risk/plan/exportWord/riskNotification/
'
+
id
,
{},
`风险告知卡.docx`
)
}
},
handleClick
()
{
},
// 表单重置
reset
()
{
this
.
form
=
{
...
...
@@ -314,4 +326,4 @@
}
}
</
style
>
\ No newline at end of file
</
style
>
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