Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
R
rongtong-app
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-app
Commits
73570bae
Commit
73570bae
authored
Sep 01, 2023
by
p-wanping.song
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
8月29日工作清单
parent
e7e8d28a
Changes
14
Show whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
749 additions
and
447 deletions
+749
-447
src/components/header.vue
src/components/header.vue
+12
-8
src/service/table.js
src/service/table.js
+3
-2
src/store/index.js
src/store/index.js
+2
-1
src/store/mutations.js
src/store/mutations.js
+1
-2
src/store/state.js
src/store/state.js
+3
-4
src/utils/axios.js
src/utils/axios.js
+20
-21
src/views/drawCanvas/riskView.vue
src/views/drawCanvas/riskView.vue
+215
-58
src/views/my/sign.vue
src/views/my/sign.vue
+95
-16
src/views/my/signRecode.vue
src/views/my/signRecode.vue
+28
-4
src/views/riskProject/add/addCurrent.vue
src/views/riskProject/add/addCurrent.vue
+186
-157
src/views/riskProject/add/addInherent.vue
src/views/riskProject/add/addInherent.vue
+7
-1
src/views/riskProject/add/inherentRisks.vue
src/views/riskProject/add/inherentRisks.vue
+53
-51
src/views/riskProject/add/inherentTemplate/detail.vue
src/views/riskProject/add/inherentTemplate/detail.vue
+33
-62
src/views/riskProject/add/inherentTemplate/list.vue
src/views/riskProject/add/inherentTemplate/list.vue
+91
-60
No files found.
src/components/header.vue
View file @
73570bae
...
...
@@ -12,7 +12,9 @@
<div>
<van-sticky>
<header
class=
"header"
>
<van-icon
@
click=
"to"
name=
"arrow-left"
class=
"iconColorLeft"
/>
<div
class=
"iconColorLeft"
>
<van-icon
@
click=
"to"
name=
"arrow-left"
/>
</div>
<span>
{{
text
}}
</span>
<!--
<van-icon
name=
"bars"
class=
"iconColorRight"
/>
-->
<div
class=
"iconColorRight"
>
...
...
@@ -60,11 +62,13 @@ export default {
}
.iconColorLeft {
color: white;
transform: scale(2);
float: left;
position: relative;
top: 40%;
position: absolute;
top: 0%;
left: 5%;
.van-icon {
transform: scale(2);
vertical-align: middle;
}
}
.header span {
color: white;
...
...
@@ -74,10 +78,10 @@ export default {
}
.header .iconColorRight {
color: white;
float: right;
position: relative;
position: absolute;
right: 5%;
font-size: 13px;
top: 0;
font-size: 12px;
vertical-align: middle;
}
</
style
>
src/service/table.js
View file @
73570bae
...
...
@@ -9,11 +9,12 @@ export function getFun(url, params) {
});
}
/* post请求 */
export
function
postFun
(
url
,
data
)
{
export
function
postFun
(
url
,
data
,
rest
)
{
return
request
({
url
:
url
,
method
:
"
post
"
,
data
data
,
...
rest
});
}
/* delete请求 */
...
...
src/store/index.js
View file @
73570bae
...
...
@@ -12,6 +12,7 @@ export default new Vuex.Store({
actions
,
modules
:
{},
getters
:
{
present
:
state
=>
key
=>
state
.
present
[
key
]
present
:
state
=>
key
=>
state
.
present
[
key
],
inherentTemp
:
state
=>
state
.
inherentTemplate
,
}
});
src/store/mutations.js
View file @
73570bae
...
...
@@ -36,9 +36,8 @@ export default {
state
.
assessModel
.
result
=
data
;
},
// 固有风险模板
SET_INHERENT_TEMPLATE
(
state
,
data
)
{
state
.
inherentTemplate
.
id
=
data
;
state
.
inherentTemplate
=
data
;
}
};
src/store/state.js
View file @
73570bae
...
...
@@ -11,9 +11,8 @@ export default {
level
:
""
,
score
:
""
,
},
},
// 固有风险模板
inherentTemplate
:
{
id
:
''
}
},
};
src/utils/axios.js
View file @
73570bae
...
...
@@ -3,7 +3,7 @@ import router from '../router'
import
{
Toast
}
from
'
vant
'
;
import
{
Notify
}
from
'
vant
'
;
import
{
Dialog
}
from
'
vant
'
;
import
{
getToken
,
removeToken
}
from
'
@/utils/auth
'
// get token from cookie
import
{
getToken
,
removeToken
}
from
'
@/utils/auth
'
// get token from cookie
const
service
=
axios
.
create
({
// baseURL: '/aqpt/app-api', //前缀路径
baseURL
:
'
/app-api
'
,
//前缀路径
...
...
@@ -19,16 +19,16 @@ service.interceptors.request.use(config => {
config
.
headers
[
'
Authorization
'
]
=
getToken
()
}
return
config
},
error
=>
{
},
error
=>
{
return
Promise
.
reject
(
error
)
})
service
.
interceptors
.
response
.
use
(
response
=>
{
Toast
.
clear
();
// 关闭之前的弹出信息
const
code
=
response
.
status
//获取请求响应码
const
res
=
response
.
data
//获取请求返回数据
if
(
code
==
200
)
{
//请求响应码200 代表已经请求到接口
if
(
res
.
code
!==
0
&&
res
.
code
!==
200
&&
res
.
code
!==
402
&&
res
.
code
!==
403
&&
res
.
code
!==
undefined
)
{
if
(
res
.
code
===
500
&&
res
.
msg
==
"
运行时异常:token已过期,请重新登录
"
)
{
if
(
code
==
200
)
{
//请求响应码200 代表已经请求到接口
if
(
res
.
code
!==
0
&&
res
.
code
!==
200
&&
res
.
code
!==
402
&&
res
.
code
!==
403
&&
res
.
code
!==
undefined
)
{
if
(
res
.
code
===
500
&&
res
.
msg
==
"
运行时异常:token已过期,请重新登录
"
)
{
Dialog
.
alert
({
title
:
'
提示
'
,
message
:
res
.
msg
,
...
...
@@ -37,7 +37,7 @@ service.interceptors.response.use(response => {
removeToken
()
location
.
reload
()
});
}
else
if
(
res
.
code
===
401
&&
res
.
errorMessage
==
"
图片类型错误
"
)
{
}
else
if
(
res
.
code
===
401
&&
res
.
errorMessage
==
"
图片类型错误
"
)
{
Dialog
.
alert
({
title
:
'
提示
'
,
message
:
res
.
errorMessage
,
...
...
@@ -45,37 +45,36 @@ service.interceptors.response.use(response => {
}).
then
(()
=>
{
router
.
go
(
-
1
);
});
}
else
if
(
res
.
code
===
401
)
{
}
else
if
(
res
.
code
===
401
)
{
Dialog
.
alert
({
title
:
'
提示
'
,
message
:
'
登录过期,请重新登录!
'
,
theme
:
'
round-button
'
,
}).
then
(()
=>
{
removeToken
()
location
.
href
=
"
/login
"
location
.
href
=
"
/login
"
});
}
else
{
}
else
{
Toast
.
fail
({
title
:
'
提示
'
,
forbidClick
:
true
,
message
:
res
.
msg
||
'
数据异常请稍后再试
'
,
message
:
res
.
msg
||
'
数据异常请稍后再试
'
,
})
}
return
Promise
.
reject
(
res
);
}
else
{
return
res
;
}
}
else
{
}
else
{
Toast
.
fail
({
title
:
'
提示
'
,
forbidClick
:
true
,
message
:
'
接口请求失败
'
,
})
}
},
err
=>
{
},
err
=>
{
Toast
.
fail
(
'
接口请求失败
'
);
return
Promise
.
reject
(
err
)
})
export
default
service
})
export
default
service
src/views/drawCanvas/riskView.vue
View file @
73570bae
...
...
@@ -36,7 +36,7 @@
@
click.native=
"changeName(item)"
:style=
"
{
backgroundColor: item.c,
border: item.type == 'thorough' ? 'none !important' : ''
border: item.type == 'thorough' ? 'none !important' : ''
,
}"
>
<span
class=
"text"
:class=
"item.w > item.h * 5 ? '' : 'rowText'"
>
{{
...
...
@@ -58,6 +58,9 @@
<van-button
@
click=
"addBase"
type=
"info"
size=
"mini"
v-if=
"!isViews"
>
添加基础设施
</van-button
>
<van-button
@
click=
"toCopyRoom"
type=
"info"
size=
"mini"
v-if=
"!isViews"
>
复制房间
</van-button
>
<!--
<van-button
@
click=
"editItem"
type=
"info"
size=
"mini"
v-if=
"!isViews"
>
修改
</van-button>
-->
<van-grid
direction=
"horizontal"
...
...
@@ -104,18 +107,58 @@
@
click=
"showPicker = true"
/>
</van-cell-group>
<van-cell-group
v-else-if=
"copyRoom.isCopy"
>
<van-field
readonly
clickable
label=
"楼层"
:value=
"copyRoom.floor.name"
placeholder=
"选择楼层"
@
click=
"getFloor"
/>
<van-field
readonly
clickable
label=
"房间"
:value=
"copyRoom.room.name"
placeholder=
"选择房间"
@
click=
"seletRoom"
/>
<van-field
v-model=
"roomName"
label=
"房间名称"
placeholder=
"请输入房间名称"
/>
<van-field
readonly
clickable
label=
"房间类型"
:value=
"copyRoom.type.dictLabel"
placeholder=
"选择房间类型"
@
click=
"selectType"
/>
</van-cell-group>
<van-cell-group
v-else
>
<van-field
v-model=
"roomName"
label=
"名称"
placeholder=
"请输入名称"
/>
</van-cell-group>
</van-dialog>
<van-popup
v-model=
"showPicker"
round
position=
"bottom"
>
<van-picker
v-if=
"!copyRoom.isCopy"
show-toolbar
:columns=
"isRoom ? roomArr : baseArr"
@
cancel=
"showPicker = false"
@
confirm=
"onConfirm"
value-key=
"dictLabel"
/>
<van-picker
v-else
show-toolbar
:columns=
"copyRoom.copyArr"
@
cancel=
"showPicker = false"
@
confirm=
"onConfirm"
:value-key=
"copyRoom.type != 'type' ? 'name' : 'dictLabel'"
/>
</van-popup>
</div>
</
template
>
...
...
@@ -131,7 +174,7 @@ export default {
name
:
"
riskView
"
,
components
:
{
GridLayout
,
GridItem
GridItem
,
},
data
()
{
return
{
...
...
@@ -163,22 +206,33 @@ export default {
baseName
:
""
,
baseArr
:
[],
layoutData
:
[],
editItem
:
null
,
layoutDataStr
:
[]
editItem
:
null
,
layoutDataStr
:
[],
copyRoom
:
{
isCopy
:
false
,
floor
:
{},
room
:
{},
type
:
{},
floorData
:
[],
roomData
:
[],
typeData
:
[],
copyArr
:
[],
buildingId
:
""
,
},
};
},
props
:
{
isView
:
{
type
:
Boolean
,
default
:
false
}
default
:
false
,
}
,
},
mounted
()
{
// screenfull.toggle(this.$refs.mapbox);
// this.$nextTick(() => {
// this.rotateBox();
// });
console
.
log
(
"
floorId==>>
"
,
this
.
$route
.
params
.
floorId
)
;
this
.
copyRoom
.
buildingId
=
this
.
$route
.
params
.
buildingId
;
if
(
this
.
_props
.
isView
)
{
console
.
log
(
"
作为组件传值==>>
"
);
this
.
isViews
=
true
;
...
...
@@ -196,6 +250,60 @@ export default {
this
.
getRoomInfo
();
},
methods
:
{
// 选择楼层
getFloor
()
{
this
.
copyRoom
.
type
=
"
floor
"
;
this
.
showPicker
=
true
;
this
.
copyRoom
.
roomData
=
[];
if
(
this
.
copyRoom
.
floorData
.
length
)
{
this
.
copyRoom
.
copyArr
=
this
.
copyRoom
.
floorData
;
return
;
}
return
getFun
(
`/risk/plan/floor/list/
${
this
.
copyRoom
.
buildingId
}
`
)
.
then
((
res
)
=>
{
this
.
copyRoom
.
floorData
=
res
.
data
;
this
.
copyRoom
.
copyArr
=
this
.
copyRoom
.
floorData
;
})
.
catch
(()
=>
{
this
.
$toast
.
fail
(
"
加载失败,请稍后再试
"
);
});
},
// 选择房间
seletRoom
(
name
)
{
this
.
copyRoom
.
type
=
"
room
"
;
this
.
showPicker
=
true
;
if
(
!
this
.
copyRoom
.
floor
)
{
this
.
$toast
.
fail
(
"
先选择楼层
"
);
return
;
}
if
(
this
.
copyRoom
.
roomData
.
length
)
{
this
.
copyRoom
.
copyArr
=
this
.
copyRoom
.
roomData
;
return
;
}
getFun
(
`/risk/plan/room/list/
${
this
.
copyRoom
.
floor
.
id
}
`
)
.
then
((
res
)
=>
{
this
.
copyRoom
.
roomData
=
res
.
data
;
this
.
copyRoom
.
copyArr
=
this
.
copyRoom
.
roomData
;
})
.
catch
(()
=>
{
this
.
$toast
.
fail
(
"
加载失败,请稍后再试
"
);
});
},
selectType
()
{
// selectType
this
.
copyRoom
.
type
=
"
type
"
;
this
.
showPicker
=
true
;
if
(
this
.
copyRoom
.
typeData
.
length
)
{
this
.
copyRoom
.
copyArr
=
this
.
copyRoom
.
typeData
;
return
;
}
getFun
(
"
/risk/plan/dict/data/list
"
,
{
dictType
:
"
risk_plan_base_room
"
,
}).
then
((
res
)
=>
{
this
.
copyRoom
.
typeData
=
res
.
data
;
this
.
copyRoom
.
copyArr
=
this
.
copyRoom
.
typeData
;
});
},
orientationChange
()
{
if
(
window
.
orientation
===
180
||
window
.
orientation
===
0
)
{
console
.
log
(
"
竖屏状态!
"
);
...
...
@@ -265,15 +373,15 @@ export default {
},
getRoomInfo
()
{
let
data
=
{
floorId
:
this
.
$route
.
params
.
floorId
?
this
.
$route
.
params
.
floorId
:
"
18
"
floorId
:
this
.
$route
.
params
.
floorId
?
this
.
$route
.
params
.
floorId
:
"
18
"
,
};
getFun
(
"
/ledger/room/list
"
,
data
)
.
then
(
res
=>
{
.
then
(
(
res
)
=>
{
if
(
res
.
code
==
200
)
{
this
.
layout
=
[];
this
.
layoutData
=
res
.
data
;
this
.
layoutDataStr
=
JSON
.
stringify
(
this
.
layoutData
);
res
.
data
.
forEach
(
item
=>
{
res
.
data
.
forEach
(
(
item
)
=>
{
item
.
position
=
JSON
.
parse
(
item
.
position
);
item
.
position
.
i
=
item
.
id
;
item
.
position
.
id
=
item
.
id
;
...
...
@@ -292,49 +400,61 @@ export default {
// console.log('layout==>>',this.layout)
}
})
.
catch
(
err
=>
{
.
catch
(
(
err
)
=>
{
console
.
log
(
"
err==>>
"
,
err
);
});
getFun
(
"
/risk/plan/dict/data/list
"
,
{
dictType
:
"
risk_plan_room_type
"
}).
then
(
res
=>
{
dictType
:
"
risk_plan_room_type
"
,
}).
then
(
(
res
)
=>
{
this
.
roomArr
=
res
.
data
;
});
getFun
(
"
/risk/plan/dict/data/list
"
,
{
dictType
:
"
risk_plan_base_room
"
}).
then
(
res
=>
{
dictType
:
"
risk_plan_base_room
"
,
}).
then
(
(
res
)
=>
{
this
.
baseArr
=
res
.
data
;
});
},
// 增加
addItem
()
{
this
.
roomType
=
""
;
this
.
roomName
=
""
;
this
.
title
=
"
创建房间
"
;
this
.
roomName
=
""
;
this
.
title
=
"
创建房间
"
;
this
.
isRoom
=
true
;
this
.
show
=
true
;
this
.
isBase
=
false
;
this
.
copyRoom
.
isCopy
=
false
;
},
// 添加其他
addOther
()
{
this
.
isRoom
=
false
;
this
.
isBase
=
false
;
this
.
copyRoom
.
isCopy
=
false
;
this
.
roomType
=
""
;
this
.
roomName
=
""
;
this
.
title
=
"
创建其他
"
;
this
.
show
=
true
;
},
// 复制房间
toCopyRoom
()
{
this
.
roomType
=
""
;
this
.
roomName
=
""
;
this
.
title
=
"
复制房间
"
;
this
.
show
=
true
;
this
.
copyRoom
.
isCopy
=
true
;
this
.
isBase
=
false
;
this
.
isRoom
=
false
;
},
// 删除
removeItem
(
val
)
{
this
.
$dialog
.
confirm
({
title
:
"
提示
"
,
message
:
"
是否删除
"
message
:
"
是否删除
"
,
})
.
then
(()
=>
{
console
.
log
(
this
.
layout
,
val
);
const
index
=
this
.
layout
.
map
(
item
=>
item
.
i
).
indexOf
(
val
);
const
index
=
this
.
layout
.
map
(
(
item
)
=>
item
.
i
).
indexOf
(
val
);
this
.
layout
.
splice
(
index
,
1
);
this
.
layoutData
.
splice
(
index
,
1
);
// postFun("/ledger/room/delete/" + val)
...
...
@@ -352,21 +472,20 @@ export default {
});
},
// 修改名称
changeName
(
item
){
debugger
changeName
(
item
)
{
this
.
editItem
=
item
;
switch
(
item
.
type
)
{
case
'
基础设施
'
:
switch
(
item
.
type
)
{
case
"
基础设施
"
:
this
.
addBase
();
break
;
case
'
thorough
'
:
case
"
thorough
"
:
this
.
addOther
();
break
;
default
:
this
.
addItem
()
default
:
this
.
addItem
();
this
.
roomType
=
item
.
type
;
}
this
.
title
=
"
编辑
"
;
this
.
title
=
"
编辑
"
;
this
.
roomName
=
item
.
name
;
},
//添加基础设施
...
...
@@ -387,7 +506,7 @@ export default {
// console.log('this.layout==>>',this.layout)
},
// 调整大小后的事件
resizedEvent
:
function
(
i
,
newH
,
newW
)
{
resizedEvent
:
function
(
i
,
newH
,
newW
)
{
// console.log(this.layOutItem, "resizedEvent");
// this.layOutItem.w = newW;
// this.layOutItem.h = newH;
...
...
@@ -396,7 +515,7 @@ export default {
},
//关闭
async
close
()
{
this
.
layoutData
.
forEach
(
item
=>
{
this
.
layoutData
.
forEach
(
(
item
)
=>
{
if
(
typeof
item
.
position
==
"
object
"
&&
Object
.
prototype
.
toString
.
call
(
item
.
position
)
===
"
[object Object]
"
...
...
@@ -407,7 +526,7 @@ export default {
this
.
$dialog
.
confirm
({
title
:
"
提示
"
,
message
:
"
是否保存已修改内容?
"
message
:
"
是否保存已修改内容?
"
,
})
.
then
(()
=>
{
this
.
confim
();
...
...
@@ -422,12 +541,12 @@ export default {
});
},
// 确定 执行批量编辑保存
confim
:
debounce
(
function
()
{
confim
:
debounce
(
function
()
{
this
.
$toast
.
loading
({
message
:
"
处理中...
"
,
forbidClick
:
true
,
loadingType
:
"
spinner
"
,
duration
:
3
duration
:
3
,
});
//修改房间后返回清掉房间的值
...
...
@@ -439,7 +558,7 @@ export default {
}
//保存
let
data
=
this
.
layoutData
;
data
.
forEach
(
item
=>
{
data
.
forEach
(
(
item
)
=>
{
if
(
typeof
item
.
position
==
"
object
"
&&
Object
.
prototype
.
toString
.
call
(
item
.
position
)
===
"
[object Object]
"
...
...
@@ -452,38 +571,43 @@ export default {
"
/ledger/room/update/batch?floorId=
"
+
this
.
$route
.
params
.
floorId
,
data
)
.
then
(
res
=>
{
.
then
(
(
res
)
=>
{
if
(
res
.
code
==
200
)
{
Toast
.
success
(
"
保存成功
"
);
this
.
getRoomInfo
();
}
})
.
catch
(
err
=>
{
.
catch
(
(
err
)
=>
{
console
.
log
(
"
err==>>
"
,
err
);
});
}),
//保存房间名称
saveRoomName
()
{
// this.confim();
if
(
this
.
copyRoom
.
isCopy
)
{
// return;
this
.
saveCopy
();
}
if
(
this
.
roomName
==
""
)
{
Toast
.
fail
({
title
:
"
提示
"
,
forbidClick
:
true
,
message
:
"
请输入名称!
"
message
:
"
请输入名称!
"
,
});
return
;
}
if
(
this
.
editItem
){
const
editItem
=
this
.
layout
.
find
(
x
=>
x
.
i
==
this
.
editItem
.
i
);
const
layoutData
=
this
.
layoutData
.
find
(
x
=>
x
.
position
.
id
==
editItem
.
i
);
if
(
layoutData
){
layoutData
.
name
=
this
.
roomName
if
(
this
.
editItem
)
{
const
editItem
=
this
.
layout
.
find
((
x
)
=>
x
.
i
==
this
.
editItem
.
i
);
const
layoutData
=
this
.
layoutData
.
find
(
(
x
)
=>
x
.
position
.
id
==
editItem
.
i
);
if
(
layoutData
)
{
layoutData
.
name
=
this
.
roomName
;
}
if
(
editItem
)
{
if
(
editItem
)
{
editItem
.
name
=
this
.
roomName
;
editItem
.
type
=
this
.
roomType
;
this
.
editItem
=
{};
return
return
;
}
this
.
editItem
=
{};
}
...
...
@@ -491,7 +615,7 @@ export default {
this
.
layout
&&
this
.
layout
.
length
>
0
?
Math
.
max
.
apply
(
Math
,
this
.
layout
.
map
(
item
=>
{
this
.
layout
.
map
(
(
item
)
=>
{
return
item
.
id
;
})
)
+
1
...
...
@@ -511,7 +635,7 @@ export default {
?
"
基础设施
"
:
"
thorough
"
,
isDraggable
:
true
,
isResizable
:
true
isResizable
:
true
,
};
this
.
layout
.
push
(
this
.
layOutItem
);
...
...
@@ -523,7 +647,7 @@ export default {
?
this
.
roomType
:
this
.
isBase
?
"
基础设施
"
:
"
9999
"
:
"
9999
"
,
};
this
.
layoutData
.
push
(
data
);
// postFun("/ledger/room/save", data)
...
...
@@ -538,20 +662,53 @@ export default {
// .catch(err => {
// });
},
// saveCopy
saveCopy
()
{
const
planId
=
sessionStorage
.
getItem
(
"
planId
"
);
postFun
(
`/risk/plan/copy/room/
${
planId
}
`
,
{
id
:
this
.
copyRoom
.
room
.
id
,
floorId
:
this
.
$route
.
params
.
floorId
,
name
:
this
.
roomName
,
roomType
:
this
.
copyRoom
.
type
.
dictType
,
}).
then
((
res
)
=>
{
// this.copyRoom.isCopy = false;
this
.
copyRoom
=
{
isCopy
:
false
,
floor
:
{},
room
:
{},
type
:
{},
copyArr
:
[],
};
});
},
cancelDialog
()
{
this
.
roomType
=
""
;
this
.
roomName
=
""
;
this
.
editItem
=
null
this
.
editItem
=
null
;
},
onConfirm
(
value
)
{
if
(
this
.
isRoom
)
{
this
.
roomType
=
value
.
dictValue
;
}
else
if
(
this
.
copyRoom
.
isCopy
)
{
if
(
this
.
copyRoom
.
type
==
"
floor
"
)
{
this
.
copyRoom
.
floorData
.
forEach
((
val
)
=>
{
if
(
val
.
name
==
value
[
0
])
{
this
.
copyRoom
.
floor
=
val
.
children
.
find
(
(
x
)
=>
x
.
name
===
value
[
1
]
);
}
});
}
else
if
(
this
.
copyRoom
.
type
==
"
room
"
)
{
this
.
copyRoom
.
room
=
value
;
}
else
{
this
.
copyRoom
.
type
=
value
;
}
}
else
{
this
.
roomName
=
value
.
dictValue
;
}
this
.
showPicker
=
false
;
}
}
}
,
}
,
};
</
script
>
...
...
src/views/my/sign.vue
View file @
73570bae
...
...
@@ -7,23 +7,34 @@
</LHeader>
<van-form
ref=
"signForm"
label-width=
"4em"
label-width=
"4
.5
em"
validate-trigger=
"onSubmit"
:colon=
"true"
>
<van-field
readonly
name=
"
project
Name"
:value=
"
form.project
Name"
name=
"
user
Name"
:value=
"
user
Name"
label=
"用户名"
placeholder=
"请输入"
:rules=
"[
{ required: true, message: '用户名不能为空' }]"
/>
<van-field
readonly
name=
"userName"
label=
"签定时间"
placeholder=
"请输入"
key=
"nowTime"
:value=
"form.signTime"
>
<!--
<template
#input
>
<div>
{{
form
.
signTime
}}
</div>
</
template
>
-->
</van-field>
<van-field
required
name=
"remark"
:value
=
"form.remark"
v-model
=
"form.remark"
label=
"备注"
placeholder=
"请输入"
type=
"textarea"
...
...
@@ -33,22 +44,22 @@
<van-field
readonly
required
name=
"
photo
"
name=
"
file
"
label=
"照片"
:rules=
"[{ required: true, message: '照片不能为空' }]"
>
<
template
#input
>
<van-uploader
v-model=
"form.photo"
:after-read=
"afterRead"
:max-count=
"1"
>
<van-uploader
v-model=
"form.file"
:after-read=
"afterRead"
>
</van-uploader>
</
template
>
</van-field>
<div
class=
"submit-btns"
>
<van-button
round
block
type=
"info"
@
click=
"toSign(1)"
>
签到
</van-button>
<van-button
round
block
type=
"info"
@
click=
"toSign(0)"
>
签退
</van-button>
<van-button
round
block
type=
"info"
@
click=
"toSign(true)"
>
签到
</van-button
>
<van-button
round
block
type=
"warning"
@
click=
"toSign(false)"
>
签退
</van-button
>
</div>
</van-form>
</div>
...
...
@@ -56,23 +67,91 @@
<
script
>
import
LHeader
from
"
@/components/header.vue
"
;
import
{
getUserInfo
}
from
"
@/utils/userInfo
"
;
import
{
getFun
,
postFun
}
from
"
@/service/table.js
"
;
export
default
{
components
:
{
LHeader
,
},
data
()
{
return
{
timer
:
""
,
userName
:
"
用户名
"
,
form
:
{
photo
:
[],
signTime
:
this
.
getTime
(),
file
:
[],
remark
:
""
,
userId
:
""
,
},
};
},
mounted
()
{
this
.
getRealTime
();
this
.
toGetUserInfo
();
},
beforeDestroy
()
{
clearInterval
(
this
.
timer
);
},
methods
:
{
afterRead
(
file
)
{
this
.
form
.
photo
=
file
.
file
;
toGetUserInfo
()
{
this
.
userName
=
getUserInfo
().
userName
;
this
.
form
.
userId
=
getUserInfo
().
userId
;
},
// 获取当前时间
getTime
()
{
let
date
=
new
Date
();
let
year
=
date
.
getFullYear
();
let
month
=
date
.
getMonth
()
+
1
;
let
day
=
date
.
getDate
();
let
hours
=
date
.
getHours
();
let
minutes
=
date
.
getMinutes
();
let
seconds
=
date
.
getSeconds
();
let
time
=
year
+
"
-
"
+
this
.
formatTime
(
month
)
+
"
-
"
+
this
.
formatTime
(
day
)
+
"
"
+
this
.
formatTime
(
hours
)
+
"
:
"
+
this
.
formatTime
(
minutes
)
+
"
:
"
+
this
.
formatTime
(
seconds
);
return
time
;
},
// 时间小于10添加0
formatTime
(
time
)
{
if
(
time
<
10
)
{
return
"
0
"
+
time
;
}
return
time
;
},
// 获取实时时间并更新
getRealTime
()
{
this
.
timer
=
setInterval
(()
=>
{
this
.
form
.
signTime
=
this
.
getTime
();
},
1000
);
},
toSign
(
type
)
{
this
.
$refs
.
signForm
.
validate
();
this
.
$refs
.
signForm
.
validate
().
then
(()
=>
{
const
formData
=
new
FormData
();
this
.
form
.
file
.
forEach
((
item
)
=>
{
formData
.
append
(
"
file[]
"
,
item
.
file
);
});
formData
.
append
(
"
userId
"
,
this
.
form
.
userId
);
formData
.
append
(
"
type
"
,
type
);
formData
.
append
(
"
remark
"
,
this
.
form
.
remark
);
postFun
(
"
/risk/plan/sign
"
,
formData
).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
this
.
$message
({
message
:
"
签到成功
"
,
type
:
"
success
"
,
});
}
});
});
},
},
};
...
...
src/views/my/signRecode.vue
View file @
73570bae
...
...
@@ -2,20 +2,44 @@
<div>
<LHeader
text=
"签到记录"
>
</LHeader>
<div>
<van-cell
title=
"签到"
value=
"2023/08/30 "
>
<van-cell
v-for=
"item in list"
:key=
"item.id"
:title=
"item.type ? '签到' : '签退'"
:value=
"item.createTime"
>
<template
#label
>
<div>
备注:
123
</div>
<div>
备注:
{{
item
.
remark
}}
</div>
<div>
照片:
<img
src=
""
alt=
""
/></div>
</
template
>
</van-cell>
<van-cell
title=
"签退"
value=
"2023/08/30 "
/>
</div>
</div>
</template>
<
script
>
import
LHeader
from
"
@/components/header.vue
"
;
export
default
{
components
:
{
LHeader
}
};
import
{
getFun
}
from
"
@/service/table.js
"
;
export
default
{
components
:
{
LHeader
},
data
()
{
return
{
list
:
[],
};
},
mounted
()
{
this
.
getList
();
},
methods
:
{
getList
()
{
getFun
(
"
/risk/plan/sign/list
"
).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
this
.
list
=
res
.
rows
;
}
});
},
},
};
</
script
>
<
style
lang=
"scss"
scoped
></
style
>
src/views/riskProject/add/addCurrent.vue
View file @
73570bae
...
...
@@ -10,12 +10,17 @@
validate-trigger=
"onSubmit"
>
<div
style=
"height: 1rem;font-family: '微软雅黑 Bold', '微软雅黑 Regular', '微软雅黑';font-weight: 700;line-height: 1rem;"
style=
"
height: 1rem;
font-family: '微软雅黑 Bold', '微软雅黑 Regular', '微软雅黑';
font-weight: 700;
line-height: 1rem;
"
>
<img
src=
"@/assets/accidentIcon/bookmark.svg"
alt=
""
style=
"position: relative;
top: 32%;transform: translateY(-50%);
"
style=
"position: relative;
top: 32%; transform: translateY(-50%)
"
/>
固有风险信息
</div>
...
...
@@ -44,7 +49,7 @@
placeholder=
"请输入 "
/>
<div
style=
"display: flex
;
"
>
<div
style=
"display: flex"
>
<van-field
required
clickable
...
...
@@ -56,14 +61,14 @@
:rules=
"[
{ required: true, message: '所属楼层不能为空' }]"
/>
<van-button
style=
"color: #cccc;background-color: #f0f1f5;
"
style=
"color: #cccc; background-color: #f0f1f5
"
icon=
"plus"
type=
"info"
native-type=
"button"
@
click=
"createFloor"
/>
</div>
<div
style=
"display: flex
;
"
>
<div
style=
"display: flex"
>
<van-field
readonly
required
...
...
@@ -75,7 +80,7 @@
:rules=
"[
{ required: true, message: '所属房间不能为空' }]"
/>
<van-button
style=
"color: #cccc;
background-color: #f0f1f5;
"
style=
"color: #cccc;
background-color: #f0f1f5
"
icon=
"plus"
type=
"info"
native-type=
"button"
...
...
@@ -110,13 +115,13 @@
v-show=
"form.pointType == '设备设施类'"
>
<template
#input
>
<span
style=
"margin-right: 10px;
color: red;
"
>
否
</span>
<span
style=
"margin-right: 10px;
color: red
"
>
否
</span>
<van-switch
v-model=
"form.specialEquipment"
size=
"20"
name=
"specialEquipment"
/>
<span
style=
"margin-left: 10px;
color: green;
"
>
是
</span>
<span
style=
"margin-left: 10px;
color: green
"
>
是
</span>
</
template
>
</van-field>
<!-- 多选 -->
...
...
@@ -175,12 +180,17 @@
/>
<div
style=
"height: 1rem;font-family: '微软雅黑 Bold', '微软雅黑 Regular', '微软雅黑';font-weight: 700;line-height: 1rem;"
style=
"
height: 1rem;
font-family: '微软雅黑 Bold', '微软雅黑 Regular', '微软雅黑';
font-weight: 700;
line-height: 1rem;
"
>
<img
src=
"@/assets/accidentIcon/bookmark.svg"
alt=
""
style=
"position: relative;
top: 32%;transform: translateY(-50%);
"
style=
"position: relative;
top: 32%; transform: translateY(-50%)
"
/>
风险图片
</div>
...
...
@@ -218,12 +228,17 @@
</template>
</van-field>
<div
style=
"height: 1rem;font-family: '微软雅黑 Bold', '微软雅黑 Regular', '微软雅黑';font-weight: 700;line-height: 1rem;"
style=
"
height: 1rem;
font-family: '微软雅黑 Bold', '微软雅黑 Regular', '微软雅黑';
font-weight: 700;
line-height: 1rem;
"
>
<img
src=
"@/assets/accidentIcon/bookmark.svg"
alt=
""
style=
"position: relative;
top: 32%;transform: translateY(-50%);
"
style=
"position: relative;
top: 32%; transform: translateY(-50%)
"
/>
应采取的管控措施
</div>
...
...
@@ -237,7 +252,7 @@
rows=
"3"
autosize
placeholder=
"请输入"
style=
"padding-left: 0;
padding-top: 0;
"
style=
"padding-left: 0;
padding-top: 0
"
/>
</
template
>
</van-field>
...
...
@@ -284,7 +299,7 @@
rows=
"3"
autosize
placeholder=
"请输入"
style=
"padding-left: 0;
padding-top: 0;
"
style=
"padding-left: 0;
padding-top: 0
"
/>
</
template
>
</van-field>
...
...
@@ -331,7 +346,7 @@
rows=
"3"
autosize
placeholder=
"请输入"
style=
"padding-left: 0;
padding-top: 0;
"
style=
"padding-left: 0;
padding-top: 0
"
/>
</
template
>
</van-field>
...
...
@@ -418,21 +433,26 @@
/>
<div
style=
"height: 1rem;font-family: '微软雅黑 Bold', '微软雅黑 Regular', '微软雅黑';font-weight: 700;line-height: 1rem;"
style=
"
height: 1rem;
font-family: '微软雅黑 Bold', '微软雅黑 Regular', '微软雅黑';
font-weight: 700;
line-height: 1rem;
"
>
<img
src=
"@/assets/accidentIcon/bookmark.svg"
alt=
""
style=
"position: relative;
top: 32%;transform: translateY(-50%);
"
style=
"position: relative;
top: 32%; transform: translateY(-50%)
"
/>
重大危险源管理
</div>
<van-field
name=
"majorHazardSource"
label=
"是否为重大危险源"
>
<
template
#input
>
<span
style=
"margin-right: 10px;
color: red;
"
>
否
</span>
<span
style=
"margin-right: 10px;
color: red
"
>
否
</span>
<van-switch
v-model=
"form.majorHazardSource"
size=
"20"
/>
<span
style=
"margin-left: 10px;
color: green;
"
>
是
</span>
<span
style=
"margin-left: 10px;
color: green
"
>
是
</span>
</
template
>
</van-field>
<van-field
...
...
@@ -472,7 +492,7 @@
? [
{ required: true, message: '重大危险源描述不能为空' }]
: []
"
style="padding-left: 0;
padding-top: 0;
"
style="padding-left: 0;
padding-top: 0
"
/>
</
template
>
</van-field>
...
...
@@ -564,7 +584,7 @@
</van-popover>
</van-collapse-item>
</van-collapse>
<van-row
type=
"flex"
justify=
"center"
style=
"margin-top:10px"
>
<van-row
type=
"flex"
justify=
"center"
style=
"margin-top:
10px"
>
<van-col
span=
"6"
><van-button
size=
"small"
...
...
@@ -645,7 +665,7 @@
>
<div
class=
"van-picker__toolbar"
style=
"position: absolute;
width: 100%;top: 0;
"
style=
"position: absolute;
width: 100%; top: 0
"
>
<button
type=
"button"
...
...
@@ -666,7 +686,7 @@
确认
</button>
</div>
<div
style=
"display:
flex;margin-top: 44px;
"
>
<div
style=
"display:
flex; margin-top: 44px
"
>
<selectDept
v-if=
"measuresDept"
@
changeDept=
"changeDept"
...
...
@@ -688,7 +708,7 @@
round
block
type=
"info"
@
click=
"onSubmit('save',
$event)"
@
click=
"onSubmit('save',
$event)"
>
保存
</van-button
>
</div>
...
...
@@ -718,7 +738,7 @@
@
click=
"touchstart(index, item)"
:key=
"item.id"
>
<div
style=
"font-size: 0.45rem;
padding: 5px 0;
"
>
<div
style=
"font-size: 0.45rem;
padding: 5px 0
"
>
{{ item.name }}
</div>
<van-row
gutter=
""
>
...
...
@@ -771,7 +791,8 @@
<div
v-if=
"active != 0"
style=
"display: flex;
style=
"
display: flex;
justify-content: space-around;
background-color: #fff;
border-top: 1px solid #e3e3e3;
...
...
@@ -779,13 +800,14 @@
width: 100%;
text-align: center;
position: fixed;
bottom: 0;"
bottom: 0;
"
>
<div
@
click=
"performTasks"
style=
"color: #4bced0;
font-size: 14px;font-weight: 600;
"
style=
"color: #4bced0;
font-size: 14px; font-weight: 600
"
>
<div
style=
"font-size: 22px
;
"
><van-icon
name=
"plus"
/></div>
<div
style=
"font-size: 22px"
><van-icon
name=
"plus"
/></div>
<div>
新增现状风险
</div>
</div>
</div>
...
...
@@ -844,7 +866,7 @@
>
<div
class=
"van-picker__toolbar"
style=
"position: absolute;
width: 100%;top: 0;
"
style=
"position: absolute;
width: 100%; top: 0
"
>
<button
type=
"button"
...
...
@@ -861,12 +883,12 @@
确认
</button>
</div>
<div
style=
"display:
flex;margin-top: 44px;
"
>
<div
style=
"display:
flex; margin-top: 44px
"
>
<selectDept
@
changeDept=
"changeDept"
></selectDept>
</div>
</van-popup>
<div
v-if=
"isFloor"
>
<addFloor
@
close=
"closeFloor"
:buildingId=
"form.buildingId"
/>
<addFloor
@
close=
"closeFloor"
:buildingId=
"form.buildingId"
/>
</div>
<!-- 管控责任人 -->
<van-popup
v-model=
"showTrouble"
position=
"bottom"
>
...
...
@@ -890,7 +912,7 @@ import selectFloor from "@/components/selectFloor.vue";
import
{
getUserInfo
,
getLocalUserInfo
}
from
"
@/utils/userInfo
"
;
import
{
getFun
,
postFun
}
from
"
@/service/table.js
"
;
import
{
timestampToTime
,
generateId
}
from
"
@/utils/format
"
;
import
addFloor
from
'
./addFloor
'
import
addFloor
from
"
./addFloor
"
;
export
default
{
name
:
"
addCurrent
"
,
...
...
@@ -899,12 +921,12 @@ export default {
selectDept
,
SelectList
,
selectFloor
,
addFloor
addFloor
,
},
activated
()
{
this
.
showSetRank
=
false
;
// 再次关闭弹出层 以防万一
this
.
getList
();
this
.
$bus
.
$on
(
"
riskLevelBus
"
,
res
=>
{
this
.
$bus
.
$on
(
"
riskLevelBus
"
,
(
res
)
=>
{
this
.
showSetRank
=
false
;
// 再次关闭弹出层 以防万一
console
.
log
(
Boolean
(
res
));
if
(
res
)
{
...
...
@@ -931,7 +953,7 @@ export default {
},
data
()
{
return
{
isFloor
:
false
,
isFloor
:
false
,
loadingStatus
:
false
,
loadingText
:
"
提交...
"
,
measureNameList
:
[],
...
...
@@ -1018,7 +1040,7 @@ export default {
severityScore
:
0
,
messageList
:
[],
inherentId
:
0
,
buildingIds
:
""
buildingIds
:
""
,
};
},
created
()
{
...
...
@@ -1037,28 +1059,30 @@ export default {
}
},
methods
:
{
createFloor
(){
createFloor
()
{
this
.
isFloor
=
true
;
},
closeFloor
(
data
){
if
(
data
){
this
.
getFloor
().
then
(()
=>
{
const
floors
=
[].
concat
(
this
.
floorSource
.
map
(
x
=>
x
.
children
).
flat
());
const
currentFloor
=
floors
.
find
(
x
=>
x
.
id
===
data
)
console
.
log
(
floors
,
currentFloor
);
if
(
currentFloor
){
closeFloor
(
data
)
{
if
(
data
)
{
this
.
getFloor
().
then
(()
=>
{
const
floors
=
[].
concat
(
this
.
floorSource
.
map
((
x
)
=>
x
.
children
).
flat
()
);
const
currentFloor
=
floors
.
find
((
x
)
=>
x
.
id
===
data
);
console
.
log
(
floors
,
currentFloor
);
if
(
currentFloor
)
{
this
.
saveSlectfloor
(
currentFloor
);
}
})
});
}
this
.
isFloor
=
false
this
.
isFloor
=
false
;
},
measuresUserNameChange
(
e
)
{
getFun
(
`/risk/plan/inherent/getResponsibilityPersons?personName=
${
e
}
&projectId=
${
this
.
form
.
projectId
}
`
).
then
(
res
=>
{
).
then
(
(
res
)
=>
{
this
.
measureNameList
=
res
.
data
;
this
.
measureNameList
.
forEach
(
item
=>
{
this
.
measureNameList
.
forEach
(
(
item
)
=>
{
if
(
item
.
measuresUserName
==
e
)
this
.
form
.
measuresUserPhone
=
item
.
measuresUserPhone
;
});
...
...
@@ -1068,7 +1092,7 @@ export default {
measuresDeptNameChange
(
e
)
{
getFun
(
`/risk/plan/inherent/getResponsibilityUnits?unitName=
${
e
}
&projectId=
${
this
.
form
.
projectId
}
`
).
then
(
res
=>
{
).
then
(
(
res
)
=>
{
this
.
measureDeptList
=
res
.
data
;
});
},
...
...
@@ -1082,8 +1106,8 @@ export default {
params
:
{
inherentId
:
this
.
inherentId
,
existingId
:
data
.
id
,
isEdit
:
true
}
isEdit
:
true
,
}
,
});
this
.
showIndex
=
null
;
},
...
...
@@ -1091,11 +1115,11 @@ export default {
delInherent
(
item
)
{
Dialog
.
confirm
({
title
:
"
删除现有风险
"
,
message
:
"
是否确认删除?
"
message
:
"
是否确认删除?
"
,
})
.
then
(()
=>
{
// on confirm
getFun
(
`/risk/plan/existing/delete/
${
item
.
id
}
`
).
then
(
res
=>
{
getFun
(
`/risk/plan/existing/delete/
${
item
.
id
}
`
).
then
(
(
res
)
=>
{
this
.
$toast
.
success
(
res
.
msg
);
this
.
getList
();
// });
...
...
@@ -1134,7 +1158,7 @@ export default {
// 请求表单数据
getList
()
{
getFun
(
`/risk/plan/existing/list/
${
this
.
inherentId
}
`
)
.
then
(
res
=>
{
.
then
(
(
res
)
=>
{
console
.
log
(
"
%c [ res ]-670
"
,
"
font-size:13px; background:pink; color:#bf2c9f;
"
,
...
...
@@ -1152,40 +1176,40 @@ export default {
message
:
"
加载中...
"
,
forbidClick
:
true
,
loadingType
:
"
spinner
"
,
duration
:
0
duration
:
0
,
});
getFun
(
`/risk/plan/inherent/details/
${
this
.
inherentId
}
`
)
.
then
(
res
=>
{
.
then
(
(
res
)
=>
{
this
.
form
=
res
.
data
;
this
.
getFloor
();
this
.
uploaderImg
=
(
res
.
data
.
pictureFile
||
[]).
map
(
item
=>
{
this
.
uploaderImg
=
(
res
.
data
.
pictureFile
||
[]).
map
(
(
item
)
=>
{
return
{
...
item
,
url
:
item
.
filePath
url
:
item
.
filePath
,
};
});
this
.
measuresProjectFile
=
(
res
.
data
.
measuresProjectFile
||
[]).
map
(
item
=>
{
(
item
)
=>
{
return
{
...
item
,
url
:
item
.
filePath
url
:
item
.
filePath
,
};
}
);
this
.
measuresAdministrationFile
=
(
res
.
data
.
measuresAdministrationFile
||
[]
).
map
(
item
=>
{
).
map
(
(
item
)
=>
{
return
{
...
item
,
url
:
item
.
filePath
url
:
item
.
filePath
,
};
});
this
.
measuresEmergencyFile
=
(
res
.
data
.
measuresEmergencyFile
||
[]
).
map
(
item
=>
{
).
map
(
(
item
)
=>
{
return
{
...
item
,
url
:
item
.
filePath
url
:
item
.
filePath
,
};
});
})
...
...
@@ -1208,7 +1232,7 @@ export default {
if
(
!
this
.
form
.
measuresDeptId
)
{
this
.
$toast
({
title
:
"
提示
"
,
message
:
"
请选择管控责任单位!
"
message
:
"
请选择管控责任单位!
"
,
});
return
false
;
}
...
...
@@ -1216,9 +1240,9 @@ export default {
message
:
"
加载中...
"
,
forbidClick
:
true
,
loadingType
:
"
spinner
"
,
duration
:
0
duration
:
0
,
});
getFun
(
`/risk/plan/user/list/
${
this
.
form
.
measuresDeptId
}
`
).
then
(
res
=>
{
getFun
(
`/risk/plan/user/list/
${
this
.
form
.
measuresDeptId
}
`
).
then
(
(
res
)
=>
{
if
(
res
.
code
==
200
)
{
this
.
columnsTrouble
=
res
.
data
;
// 对数据进行赋值
...
...
@@ -1241,7 +1265,7 @@ export default {
getFun
(
`/risk/plan/dict/data/list?dictType=risk_plan_
${
dataName
.
toLowerCase
()}
`
)
.
then
(
res
=>
{
.
then
(
(
res
)
=>
{
if
(
isSinge
)
{
this
.
columnsData
=
res
.
data
;
this
.
showSelect
=
true
;
...
...
@@ -1264,7 +1288,7 @@ export default {
this
.
showCheckSelect
=
false
;
},
renameKeyInTree
(
data
,
oldKey
,
newKey
)
{
let
arr
=
data
.
map
(
item
=>
{
let
arr
=
data
.
map
(
(
item
)
=>
{
const
newItem
=
{
...
item
};
if
(
item
.
hasOwnProperty
(
oldKey
))
{
...
...
@@ -1286,7 +1310,7 @@ export default {
},
getFloor
()
{
return
getFun
(
`/risk/plan/floor/list/
${
this
.
form
.
buildingId
}
`
)
.
then
(
res
=>
{
.
then
(
(
res
)
=>
{
// this.$toast.clear();
// this.showSource = true;
...
...
@@ -1306,11 +1330,11 @@ export default {
message
:
"
加载中...
"
,
forbidClick
:
true
,
loadingType
:
"
spinner
"
,
duration
:
0
duration
:
0
,
});
this
.
userPrefix
=
name
;
getFun
(
`/risk/plan/room/list/
${
this
.
form
.
floorId
}
`
)
.
then
(
res
=>
{
.
then
(
(
res
)
=>
{
this
.
$toast
.
clear
();
this
.
showSource
=
true
;
this
.
columnsSource
=
res
.
data
;
...
...
@@ -1329,14 +1353,14 @@ export default {
//风险模型配置
getGradeList
(
type
)
{
// possibility 可能性 severity 严重性
getFun
(
`/risk/plan/matrix/
${
type
}
/list`
).
then
(
res
=>
{
getFun
(
`/risk/plan/matrix/
${
type
}
/list`
).
then
(
(
res
)
=>
{
let
arr
=
[];
res
.
data
.
forEach
(
item
=>
{
res
.
data
.
forEach
(
(
item
)
=>
{
arr
.
push
({
text
:
item
.
title
,
type
:
item
.
type
,
sort
:
item
.
sort
,
score
:
item
.
score
score
:
item
.
score
,
});
});
if
(
type
===
"
possibility
"
)
{
...
...
@@ -1351,8 +1375,8 @@ export default {
this
.
ShowfloorList
=
false
;
},
saveSlectfloor
(
data
)
{
if
(
this
.
form
.
floorId
!=
data
.
id
)
{
this
.
form
.
roomName
=
''
if
(
this
.
form
.
floorId
!=
data
.
id
)
{
this
.
form
.
roomName
=
""
;
}
this
.
form
.
floorId
=
data
.
id
;
this
.
form
.
floorName
=
data
.
text
;
...
...
@@ -1373,9 +1397,9 @@ export default {
name
:
"
resultPage
"
,
params
:
{
score
:
this
.
severityScore
*
this
.
possibleScore
,
possibleValue
:
this
.
possibleValue
,
severityValue
:
this
.
severityValue
,
}
possibleValue
:
this
.
possibleValue
,
severityValue
:
this
.
severityValue
,
}
,
});
},
performTasks
()
{
...
...
@@ -1384,8 +1408,8 @@ export default {
name
:
"
addPresent
"
,
params
:
{
inherentId
:
this
.
inherentId
,
isEdit
:
false
}
isEdit
:
false
,
}
,
});
},
// 点击预览图
...
...
@@ -1403,55 +1427,55 @@ export default {
let
formdata
=
new
FormData
();
formdata
.
append
(
"
key
"
,
val
[
"
fileId
"
]);
var
ids
=
this
.
form
[
key
+
"
Ids
"
].
split
(
"
,
"
);
const
ind
=
ids
.
findIndex
(
x
=>
x
==
val
.
fileId
);
const
ind
=
ids
.
findIndex
(
(
x
)
=>
x
==
val
.
fileId
);
ids
.
splice
(
ind
,
1
);
this
.
form
[
key
+
"
Ids
"
]
=
ids
.
join
(
"
,
"
);
this
.
form
[
key
].
splice
(
detail
.
index
,
1
);
console
.
log
(
ids
,
this
.
form
[
key
],
"
ddd
"
);
this
.
$toast
({
title
:
"
提示
"
,
message
:
"
删除成功!
"
message
:
"
删除成功!
"
,
});
}
},
jsonToFormData
(
config
)
{
const
formData
=
new
FormData
();
//循环传入的值转换formData
Object
.
keys
(
config
).
forEach
(
key
=>
{
Object
.
keys
(
config
).
forEach
(
(
key
)
=>
{
formData
.
append
(
key
,
config
[
key
]);
});
return
formData
;
},
onSubmit
(
values
,
event
)
{
if
(
values
==
'
save
'
)
{
onSubmit
(
values
,
event
)
{
if
(
values
==
"
save
"
)
{
event
.
preventDefault
();
}
// console.log('%c [ values ]-592', 'font-size:13px; background:pink; color:#bf2c9f;', values)
var
formDataJson
=
this
.
jsonToFormData
(
this
.
form
);
let
url
=
"
/risk/plan/inherent
"
;
this
.
loadingStatus
=
true
;
this
.
uploaderImg
.
forEach
(
item
=>
{
this
.
uploaderImg
.
forEach
(
(
item
)
=>
{
if
(
item
.
file
)
{
formDataJson
.
append
(
"
pictureFile[]
"
,
item
.
file
);
}
else
{
formDataJson
.
append
(
"
pictureFile[]
"
,
item
.
fileId
);
}
});
this
.
measuresAdministrationFile
.
forEach
(
item
=>
{
this
.
measuresAdministrationFile
.
forEach
(
(
item
)
=>
{
if
(
item
.
file
)
{
formDataJson
.
append
(
"
measuresProjectFile[]
"
,
item
.
file
);
}
else
{
formDataJson
.
append
(
"
measuresProjectFile[]
"
,
item
.
fileId
);
}
});
this
.
measuresEmergencyFile
.
forEach
(
item
=>
{
this
.
measuresEmergencyFile
.
forEach
(
(
item
)
=>
{
if
(
item
.
file
)
{
formDataJson
.
append
(
"
measuresEmergencyFile[]
"
,
item
.
file
);
}
else
{
formDataJson
.
append
(
"
measuresEmergencyFile[]
"
,
item
.
fileId
);
}
});
this
.
measuresAdministrationFile
.
forEach
(
item
=>
{
this
.
measuresAdministrationFile
.
forEach
(
(
item
)
=>
{
if
(
item
.
file
)
{
formDataJson
.
append
(
"
measuresAdministrationFile[]
"
,
item
.
file
);
}
else
{
...
...
@@ -1487,11 +1511,11 @@ export default {
// }
// });
postFun
(
url
,
formDataJson
)
.
then
(
res
=>
{
.
then
(
(
res
)
=>
{
this
.
$toast
.
clear
();
this
.
$toast
.
success
({
message
:
"
提交成功
"
,
duration
:
2000
duration
:
2000
,
});
this
.
loadingStatus
=
false
;
history
.
go
(
-
1
);
...
...
@@ -1526,7 +1550,7 @@ export default {
this
.
trouble
=
""
;
// 请求风险源
postHdSource
(
`/riskMain/showSourceName?factorType=
${
this
.
factor
}
`
).
then
(
res
=>
{
(
res
)
=>
{
this
.
columnsSource
=
res
.
data
;
}
);
...
...
@@ -1549,7 +1573,7 @@ export default {
if
(
this
.
setRank
==
"
矩阵式定级
"
)
{
this
.
showSetRank
=
false
;
this
.
$router
.
push
({
name
:
"
matrix-grad
"
name
:
"
matrix-grad
"
,
});
}
},
...
...
@@ -1581,7 +1605,7 @@ export default {
// 请求主责人员
let
formdata
=
new
FormData
();
formdata
.
append
(
"
organizationId
"
,
this
.
mainDutyDeptId
);
postHdPeople
(
`/riskMain/getUserList`
,
formdata
).
then
(
res
=>
{
postHdPeople
(
`/riskMain/getUserList`
,
formdata
).
then
(
(
res
)
=>
{
this
.
columnsMainDutyPeopLe
=
res
.
data
;
});
},
...
...
@@ -1593,12 +1617,17 @@ export default {
},
//添加房间
tjfjClcik
()
{
if
(
!
this
.
form
.
buildingId
)
{
this
.
$toast
(
"
请先选择所属建筑物
"
);
return
;
}
this
.
$router
.
push
({
name
:
"
riskView
"
,
params
:
{
floorId
:
this
.
form
.
floorId
,
isView
:
false
}
buildingId
:
this
.
form
.
buildingId
,
isView
:
false
,
},
});
},
...
...
@@ -1618,7 +1647,7 @@ export default {
this
.
projectDirector
=
e
[
0
].
loginName
;
this
.
projectDirectorName
=
e
[
0
].
userName
;
this
.
show
=
false
;
}
}
,
},
watch
:
{
"
form.pointType
"
(
val
,
old
)
{
...
...
@@ -1629,8 +1658,8 @@ export default {
this
.
form
.
specialEquipment
=
""
;
}
}
}
}
}
,
}
,
};
</
script
>
<
style
lang=
"less"
scoped
>
...
...
src/views/riskProject/add/addInherent.vue
View file @
73570bae
...
...
@@ -767,8 +767,11 @@ export default {
}
next
();
},
destroyed
()
{
this
.
$store
.
commit
(
"
SET_INHERENT_TEMPLATE
"
,
{});
},
beforeRouteLeave
(
to
,
from
,
next
)
{
if
(
to
.
name
!=
"
riskInherent
"
)
{
if
(
to
.
name
==
"
resultPage
"
)
{
sessionStorage
.
setItem
(
"
inherenForm
"
,
JSON
.
stringify
(
this
.
form
));
}
next
();
...
...
@@ -882,7 +885,10 @@ export default {
if
(
sessionStorage
.
getItem
(
"
inherenForm
"
)
!=
""
)
{
this
.
form
=
JSON
.
parse
(
sessionStorage
.
getItem
(
"
inherenForm
"
));
this
.
form
.
level
=
sessionStorage
.
getItem
(
"
level
"
);
}
else
if
(
this
.
$store
.
state
.
inherentTemplate
)
{
this
.
form
=
{
...
this
.
form
,
...
this
.
$store
.
state
.
inherentTemplate
};
}
this
.
getFloor
();
},
...
...
src/views/riskProject/add/inherentRisks.vue
View file @
73570bae
...
...
@@ -4,7 +4,7 @@
<van-sticky
offset-top=
"0"
>
<LHeader
:text=
"text"
></LHeader>
</van-sticky>
<div
style=
"margin-bottom: 1.5rem
;
"
>
<div
style=
"margin-bottom: 1.5rem"
>
<van-tabs
v-model=
"active"
@
change=
"tabList"
color=
"#2980f7"
animated
>
<van-tab
:title=
"buildingName"
>
<van-dropdown-menu
z-index=
"1000"
>
...
...
@@ -34,7 +34,7 @@
:key=
"index"
@
click=
"touchstart(index, item)"
>
<div
style=
"font-size: 0.45rem;
padding: 5px 0;
"
>
<div
style=
"font-size: 0.45rem;
padding: 5px 0
"
>
{{
item
.
name
}}
</div>
<van-row
gutter=
""
>
...
...
@@ -90,7 +90,8 @@
</van-tabs>
</div>
<div
style=
"display: flex;
style=
"
display: flex;
justify-content: space-around;
background-color: #fff;
border-top: 1px solid #e3e3e3;
...
...
@@ -98,27 +99,28 @@
width: 100%;
text-align: center;
position: fixed;
bottom: 0;"
bottom: 0;
"
>
<div
@
click=
"copyFloor"
style=
"color: #4bced0;
font-size: 14px;font-weight: 600;
"
style=
"color: #4bced0;
font-size: 14px; font-weight: 600
"
>
<div
style=
"font-size: 22px
;
"
><van-icon
name=
"coupon-o"
/></div>
<div
style=
"font-size: 22px"
><van-icon
name=
"coupon-o"
/></div>
<div>
复制楼层
</div>
</div>
<div
@
click=
"performTasks"
style=
"color: #4bced0;
font-size: 14px;font-weight: 600;
"
style=
"color: #4bced0;
font-size: 14px; font-weight: 600
"
>
<div
style=
"font-size: 22px
;
"
><van-icon
name=
"plus"
/></div>
<div
style=
"font-size: 22px"
><van-icon
name=
"plus"
/></div>
<div>
新增固有风险
</div>
</div>
<div
@
click=
"endTasks"
style=
"color: #
D9001B;font-size: 14px;font-weight: 600;
"
style=
"color: #
d9001b; font-size: 14px; font-weight: 600
"
>
<div
style=
"font-size: 22px
;
"
><van-icon
name=
"cross"
/></div>
<div
style=
"font-size: 22px"
><van-icon
name=
"cross"
/></div>
<div>
任务执行结束
</div>
</div>
</div>
...
...
@@ -133,7 +135,7 @@ import { timestampToTime, generateId } from "@/utils/format";
export
default
{
name
:
"
risk-confirme
"
,
components
:
{
LHeader
LHeader
,
},
data
()
{
return
{
...
...
@@ -156,7 +158,7 @@ export default {
active
:
1
,
form
:
{},
tabs
:
[],
floorListData
:
[]
floorListData
:
[]
,
};
},
created
()
{
...
...
@@ -172,11 +174,11 @@ export default {
delInherent
(
item
)
{
Dialog
.
confirm
({
title
:
"
删除固有风险
"
,
message
:
"
是否确认删除?
"
message
:
"
是否确认删除?
"
,
})
.
then
(()
=>
{
// on confirm
getFun
(
`/risk/plan/inherent/delete/
${
item
.
id
}
`
).
then
(
res
=>
{
getFun
(
`/risk/plan/inherent/delete/
${
item
.
id
}
`
).
then
(
(
res
)
=>
{
this
.
$toast
.
success
(
res
.
msg
);
this
.
riskList
(
this
.
planId
,
...
...
@@ -199,10 +201,10 @@ export default {
},
changeData
(
arr
)
{
var
arrList
=
[];
arr
.
forEach
(
item
=>
{
arr
.
forEach
(
(
item
)
=>
{
arrList
.
push
({
text
:
item
.
name
,
value
:
item
.
id
||
item
.
name
value
:
item
.
id
||
item
.
name
,
});
});
return
arrList
;
...
...
@@ -219,30 +221,30 @@ export default {
id
:
this
.
active
,
planId
:
this
.
planId
,
buildingId
:
this
.
buildingId
,
buildingName
:
this
.
buildingName
}
buildingName
:
this
.
buildingName
,
}
,
});
},
// 复制楼层
copyFloor
(){
copyFloor
()
{
this
.
$router
.
push
({
name
:
'
copyFloor
'
,
query
:{
planId
:
this
.
planId
,
buildingId
:
this
.
buildingId
}
})
name
:
"
copyFloor
"
,
query
:
{
planId
:
this
.
planId
,
buildingId
:
this
.
buildingId
,
}
,
})
;
},
//任务执行结束
endTasks
()
{
//toDo
Dialog
.
confirm
({
title
:
"
任务执行结束
"
,
message
:
"
是否任务执行结束
"
message
:
"
是否任务执行结束
"
,
})
.
then
(()
=>
{
postFun
(
`/risk/plan/submit/
${
this
.
planId
}
/
${
this
.
buildingId
}
`
).
then
(
res
=>
{
(
res
)
=>
{
// Dialog.alert({
// title: '任务执行结束',
// message: res.msg,
...
...
@@ -250,7 +252,7 @@ export default {
// resolve(res.data);
this
.
$toast
.
success
(
res
.
msg
);
this
.
$router
.
push
({
name
:
"
riskAssess
"
name
:
"
riskAssess
"
,
});
// });
}
...
...
@@ -264,16 +266,15 @@ export default {
this
.
$router
.
push
({
name
:
"
riskAdd
"
,
params
:
{
title
:
"
新增
"
}
title
:
"
新增
"
,
}
,
});
},
floorList
(
id
)
{
return
new
Promise
((
resolve
,
reject
)
=>
{
getFun
(
`/risk/plan/floor/list/
${
id
}
`
)
.
then
(
res
=>
{
console
.
log
(
res
.
data
);
.
then
((
res
)
=>
{
res
.
data
=
[{
name
:
"
全部
"
},
...
res
.
data
];
this
.
floorListData
=
res
.
data
;
this
.
changeBuild
(
res
.
data
[
0
].
name
);
...
...
@@ -289,7 +290,7 @@ export default {
roomList
(
id
)
{
return
new
Promise
((
resolve
,
reject
)
=>
{
getFun
(
`/risk/plan/room/list/
${
id
}
`
)
.
then
(
res
=>
{
.
then
(
(
res
)
=>
{
if
(
!
res
.
data
)
res
.
data
=
[];
res
.
data
=
[{
id
:
"
-1
"
,
name
:
"
全部
"
},
...
res
.
data
];
this
.
option2
=
this
.
changeData
(
res
.
data
);
...
...
@@ -313,13 +314,13 @@ export default {
if
(
floorId
||
roomId
)
{
paramsJson
=
{
floorId
:
floorId
==
-
1
?
null
:
floorId
,
roomId
:
roomId
==
-
1
?
null
:
roomId
roomId
:
roomId
==
-
1
?
null
:
roomId
,
};
}
else
{
paramsJson
=
{};
}
getFun
(
`/risk/plan/inherent/list/
${
planId
}
/
${
buildingId
}
`
,
paramsJson
)
.
then
(
res
=>
{
.
then
(
(
res
)
=>
{
this
.
messageList
=
res
.
data
;
resolve
(
res
.
data
);
})
...
...
@@ -333,7 +334,7 @@ export default {
message
:
"
加载中...
"
,
forbidClick
:
true
,
loadingType
:
"
spinner
"
,
duration
:
0
duration
:
0
,
});
let
floor
=
this
.
floorList
(
this
.
buildingId
);
let
risk
=
this
.
riskList
(
...
...
@@ -350,8 +351,9 @@ export default {
},
changeBuild
()
{
if
(
this
.
value0
)
{
let
arr
=
this
.
floorListData
.
filter
(
item
=>
item
.
name
==
this
.
value0
)[
0
]
.
children
;
let
arr
=
this
.
floorListData
.
filter
(
(
item
)
=>
item
.
name
==
this
.
value0
)[
0
].
children
;
console
.
log
(
arr
);
if
(
!
arr
)
arr
=
[];
arr
=
[{
id
:
"
-1
"
,
name
:
"
全部
"
},
...
arr
];
...
...
@@ -399,8 +401,8 @@ export default {
inherentId
:
data
.
businessId
||
data
.
id
,
planId
:
this
.
planId
,
buildingId
:
this
.
buildingId
,
buildingName
:
this
.
buildingName
}
buildingName
:
this
.
buildingName
,
}
,
});
this
.
showIndex
=
null
;
},
...
...
@@ -409,12 +411,12 @@ export default {
this
.
$router
.
push
({
name
:
"
risk-affirm
"
,
params
:
{
data
:
data
}
data
:
data
,
}
,
});
this
.
showIndex
=
null
;
}
}
}
,
}
,
};
</
script
>
<
style
lang=
"less"
scoped
>
...
...
src/views/riskProject/add/inherentTemplate/detail.vue
View file @
73570bae
...
...
@@ -4,8 +4,24 @@
<div>
<LHeader
text=
"固有风险信息"
></LHeader>
<van-form>
<div
style=
"
height: 1rem;
font-family: '微软雅黑 Bold', '微软雅黑 Regular', '微软雅黑';
font-weight: 700;
line-height: 1rem;
"
>
<img
src=
"@/assets/accidentIcon/bookmark.svg"
alt=
""
style=
"position: relative; top: 32%; transform: translateY(-50%)"
/>
固有风险信息
</div>
<van-field
required
readonly
clickable
name=
"name"
v-model=
"form.name"
...
...
@@ -32,6 +48,7 @@
<template
#input
>
<span
style=
"margin-right: 10px; color: red"
>
否
</span>
<van-switch
disabled
v-model=
"form.specialEquipment"
size=
"20"
name=
"specialEquipment"
...
...
@@ -68,24 +85,6 @@
placeholder=
"请选择"
:rules=
"[{ required: true, message: '准事故类型不能为空' }]"
/>
<van-field
readonly
v-model=
"form.level"
required
name=
"level"
label=
"风险等级"
placeholder=
"请选择"
:rules=
"[{ required: true, message: '风险等级不能为空' }]"
/>
<van-field
required
name=
"presenceLocation"
v-model=
"form.presenceLocation"
label=
"存在部位"
placeholder=
"请输入"
:rules=
"[{ required: true, message: '存在部位不能为空' }]"
/>
<div
style=
"
height: 1rem;
...
...
@@ -104,6 +103,7 @@
<van-field
label=
"技术措施"
>
<
template
#input
>
<van-field
readonly
v-model=
"form.measuresProject"
name=
"measuresProject"
label=
""
...
...
@@ -118,6 +118,7 @@
<van-field
label=
"管理措施"
>
<
template
#input
>
<van-field
readonly
v-model=
"form.measuresAdministration"
name=
"measuresAdministration"
label=
""
...
...
@@ -132,6 +133,7 @@
<van-field
label=
"应急措施"
>
<
template
#input
>
<van-field
readonly
v-model=
"form.measuresEmergency"
name=
"measuresEmergency"
label=
""
...
...
@@ -143,38 +145,6 @@
/>
</
template
>
</van-field>
<van-field
v-model=
"form.measuresDeptName"
name=
"measuresDeptName"
label=
"管控责任单位 "
type=
"input"
rows=
"1"
autosize
placeholder=
"请输入"
list=
"measure-deptname"
@
input=
"measuresDeptNameChange"
/>
<van-field
v-model=
"form.measuresUserName"
name=
"measuresUserName"
label=
"管控责任人 "
type=
"input"
rows=
"1"
autosize
placeholder=
"请输入"
list=
"measure-name"
@
input=
"measuresUserNameChange"
/>
<van-field
v-model=
"form.measuresUserPhone"
name=
"measuresUserPhone"
label=
"管控责任人联系方式"
type=
"input"
rows=
"1"
autosize
placeholder=
"请输入"
maxlength=
"11"
/>
<div
style=
"
...
...
@@ -195,16 +165,16 @@
<van-field
name=
"majorHazardSource"
label=
"是否为重大危险源"
>
<
template
#input
>
<span
style=
"margin-right: 10px; color: red"
>
否
</span>
<van-switch
v-model=
"form.majorHazardSource"
size=
"20"
/>
<van-switch
disabled
v-model=
"form.majorHazardSource"
size=
"20"
/>
<span
style=
"margin-left: 10px; color: green"
>
是
</span>
</
template
>
</van-field>
<van-field
:disabled=
"!form.majorHazardSource"
v-model=
"form.hazardSourceName"
:required=
"form.majorHazardSource"
name=
"hazardSourceName"
label=
"危险源名称 "
readonly
type=
"textarea"
rows=
"1"
autosize
...
...
@@ -216,14 +186,10 @@
: []
"
/>
<van-field
label=
"重大危险源描述"
:disabled=
"!form.majorHazardSource"
:required=
"form.majorHazardSource"
>
<van-field
label=
"重大危险源描述"
:required=
"form.majorHazardSource"
>
<
template
#input
>
<van-field
:disabled=
"!form.majorHazardSource"
readonly
v-model=
"form.majorHazardSourceDescription"
name=
"majorHazardSourceDescription"
type=
"textarea"
...
...
@@ -241,7 +207,6 @@
</
template
>
</van-field>
<van-field
:disabled=
"!form.majorHazardSource"
:required=
"form.majorHazardSource"
readonly
clickable
...
...
@@ -256,7 +221,9 @@
: []
"
/>
<div
class=
"import-btn"
>
<van-button
round
block
type=
"info"
@
click=
"toImport"
>
导入
</van-button>
</div>
</van-form>
</div>
</template>
...
...
@@ -272,7 +239,7 @@ export default {
};
},
mounted
()
{
this
.
postReturnEcho
()
;
this
.
form
=
this
.
$store
.
state
.
inherentTemplate
;
},
methods
:
{
// 请求详情数据
...
...
@@ -292,4 +259,8 @@ export default {
};
</
script
>
<
style
lang=
"scss"
scoped
></
style
>
<
style
lang=
"less"
scoped
>
.import-btn {
padding: 20px;
}
</
style
>
src/views/riskProject/add/inherentTemplate/list.vue
View file @
73570bae
...
...
@@ -2,7 +2,14 @@
<
template
>
<div
class=
"inherent-template"
>
<LHeader
text=
"固有风险模板"
></LHeader>
<div
class=
"con-list"
>
<van-pull-refresh
v-model=
"list.refreshing"
@
refresh=
"onRefresh"
>
<van-list
v-model=
"list.loading"
:finished=
"list.finished"
finished-text=
"没有更多了"
@
load=
"getList"
class=
"con-list"
>
<van-cell-group
inset
v-for=
"(item, index) in messageList"
...
...
@@ -15,23 +22,14 @@
<van-row
gutter=
""
>
<van-col
span=
"17"
>
<van-row
gutter=
""
>
<van-col
span=
"9"
>
发起时间:
</van-col>
<van-col
span=
"15"
>
{{
timestampToTimes
(
item
.
createTime
)
}}
</van-col>
</van-row>
<van-row
gutter=
""
>
<van-col
span=
"9"
>
楼层:
</van-col>
<van-col
span=
"15"
>
{{
item
.
floorName
}}
</van-col>
<van-col
span=
"10"
>
风险点类型:
</van-col>
<van-col
span=
"14"
>
{{
item
.
pointType
}}
</van-col>
</van-row>
<van-row
gutter=
""
>
<van-col
span=
"9"
>
房间
:
</van-col>
<van-col
span=
"15"
>
{{
item
.
roomName
}}
</van-col>
<van-col
span=
"9"
>
风险因素
:
</van-col>
<van-col
span=
"15"
>
{{
item
.
factor
}}
</van-col>
</van-row>
</van-col>
<!--
<van-col
span=
"7"
:style=
"
{ color: item.state == 1 ? '#0069e5' : '#03b615' }">
{{
"
●待审批
"
}}
</van-col>
-->
</van-row>
<van-overlay
:show=
"showIndex == index"
>
<div
class=
"wrapper"
@
click.stop=
"showIndex = null"
>
...
...
@@ -56,7 +54,8 @@
>
暂无数据
</div>
</div>
</van-list>
</van-pull-refresh>
</div>
</
template
>
...
...
@@ -71,13 +70,21 @@ export default {
messageList
:
[],
showIndex
:
null
,
item
:
null
,
};
list
:
{
refreshing
:
false
,
loading
:
false
,
finished
:
false
,
},
page
:
{
pageNum
:
0
,
total
:
0
,
},
mounted
()
{
this
.
getList
();
};
},
mounted
()
{},
methods
:
{
toDetail
(
item
)
{
this
.
$store
.
commit
(
"
SET_INHERENT_TEMPLATE
"
,
item
);
this
.
$router
.
push
({
path
:
"
/inherent/template/detail
"
,
query
:
{
...
...
@@ -85,22 +92,46 @@ export default {
},
});
},
toImport
()
{
toImport
(
item
)
{
this
.
$store
.
commit
(
"
SET_INHERENT_TEMPLATE
"
,
item
);
this
.
$router
.
go
(
-
1
);
},
touchstart
(
index
,
item
)
{
this
.
showIndex
=
index
;
this
.
item
=
item
;
},
getList
()
{
getFun
(
`/risk/plan/inherent/list/137/1`
)
getList
(
isFresh
=
false
)
{
if
(
isFresh
)
{
this
.
page
.
pageNum
=
0
;
this
.
page
.
total
=
0
;
this
.
messageList
=
[];
}
this
.
page
.
pageNum
++
;
getFun
(
`/risk/plan/inherent/template/list`
,
{
pageNum
:
this
.
page
.
pageNum
,
pageSize
:
10
,
})
.
then
((
res
)
=>
{
this
.
messageList
=
res
.
data
;
setTimeout
(()
=>
{
this
.
list
.
loading
=
false
;
this
.
list
.
refreshing
=
false
;
this
.
messageList
=
this
.
messageList
.
concat
(
res
.
rows
);
if
(
this
.
page
.
total
==
0
)
{
this
.
page
.
total
=
res
.
total
;
}
if
(
this
.
page
.
total
&&
this
.
messageList
>=
this
.
page
.
total
)
{
this
.
list
.
finished
=
true
;
return
;
}
},
300
);
})
.
catch
(()
=>
{
this
.
$toast
.
fail
(
"
加载失败,请稍后再试
"
);
});
},
onRefresh
()
{
this
.
getList
(
true
);
},
timestampToTimes
(
time
)
{
return
timestampToTime
(
new
Date
(
time
),
"
DT2
"
,
true
);
},
...
...
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