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
b15a0cfc
Commit
b15a0cfc
authored
Jul 12, 2023
by
wei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
问题修改
parent
bed8349e
Changes
8
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
890 additions
and
780 deletions
+890
-780
src/components/selectFloor.vue
src/components/selectFloor.vue
+191
-0
src/components/selectList.vue
src/components/selectList.vue
+223
-0
src/main.js
src/main.js
+2
-2
src/views/riskProject/add/addInherent.vue
src/views/riskProject/add/addInherent.vue
+198
-389
src/views/riskProject/add/addPresent.vue
src/views/riskProject/add/addPresent.vue
+250
-376
src/views/riskProject/add/inherentRisks.vue
src/views/riskProject/add/inherentRisks.vue
+19
-5
src/views/riskProject/add/taskList.vue
src/views/riskProject/add/taskList.vue
+5
-6
vue.config.js
vue.config.js
+2
-2
No files found.
src/components/selectFloor.vue
0 → 100644
View file @
b15a0cfc
<
template
>
<div>
<!-- 搜索 -->
<!--
<van-sticky
offset-top=
"0"
>
<div
class=
"content-wrap"
>
<div
class=
"search-wrap"
>
<van-search
v-model=
"searchVal"
placeholder=
"搜索"
@
input=
"onInput"
/>
</div>
</div>
</van-sticky>
-->
<div
style=
"margin-bottom: 1.4rem;"
>
<van-tree-select
:items=
"listdata"
:active-id.sync=
"activeId"
:main-active-index.sync=
"activeIndex"
@
click-item=
"clickItem"
>
</van-tree-select>
</div>
<!-- 底部信息 -->
<footer
class=
"footer"
>
<van-cell-group>
<div
class=
"operate"
>
<van-button
size=
"small"
ttype=
"info"
plain
native-type=
"button"
style=
"border-radius: 5px; background-color: #f0f1f5;"
@
click.native=
"cancel"
>
取消
</van-button>
<van-button
size=
"small"
type=
"info"
native-type=
"button"
style=
"margin:0 10px 0 20px;border-radius: 5px;"
@
click.native=
"save"
>
保存
</van-button>
</div>
</van-cell-group>
</footer>
</div>
</
template
>
<
script
>
import
{
debounce
}
from
"
@/utils/common.js
"
;
export
default
{
props
:
{
listdata
:
{
type
:
Array
,
default
:
()
=>
[],
}
},
components
:
{
// LHeader
},
created
()
{
},
data
()
{
return
{
text
:
"
选择人员
"
,
activeId
:
1
,
activeIndex
:
0
,
seletedItem
:{}
};
},
methods
:
{
// 待搜索框内容发生变化
onInput
:
debounce
(
function
()
{
},
800
),
selData
(
e
)
{
this
.
itemSel
=
e
},
clickItem
(
data
)
{
console
.
log
(
data
,
'
llll
'
)
this
.
seletedItem
=
data
},
save
()
{
this
.
$emit
(
'
saveSlect
'
,
this
.
seletedItem
)
},
cancel
()
{
this
.
$emit
(
'
closeSlect
'
)
}
}
};
</
script
>
<
style
lang=
"less"
scoped
>
/* @import url(); 引入css类 */
// 搜索
.content-wrap {
padding: 10px;
background-color: #f0f1f5;
}
.search-wrap {
margin: 0.26667rem;
.van-search {
border-radius: 5px;
padding: 5px 12px;
}
.van-search__content {
background-color: #ffffff;
}
}
.upStep {
.van-cell-group {
display: flex;
height: 1.2rem;
align-items: center;
.upStep-btn {
width: 25%;
text-align: center;
display: flex;
span {
width: 1.866667rem;
background-color: #1989fa;
text-align: center;
display: inline-block;
color: white;
height: 0.8rem;
line-height: 0.8rem;
font-size: 0.346667rem;
border-radius: 0.08rem;
}
}
.upStep-content {
width: 75%;
height: 0.8rem;
line-height: 0.8rem;
padding-left: 0.42667rem;
box-sizing: border-box;
font-size: 14px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
}
}
.dept-list-wrap {
margin-top: 0.266667rem;
}
.people-wrap {
margin-top: 0.266667rem;
/deep/ .van-radio__label {
display: flex;
align-items: center;
}
}
.footer {
width: 100%;
height: 1.4rem;
z-index: 9;
position: fixed;
bottom: 0px;
box-shadow: 0px 8px 15px #000;
.van-cell-group {
height: 100%;
.selected {
height: 1.066667rem;
display: flex;
align-items: center;
padding-left: 10px;
border-bottom: 1px solid #cacbcb;
.selected-title {
color: #4187f7;
}
.selected-content {
width: 80%;
padding-left: 10px;
box-sizing: border-box;
}
}
.operate {
height: 1.333333rem;
display: flex;
justify-content: flex-end;
align-items: center;
.van-button {
width: 1.6rem;
}
}
}
}
</
style
>
\ No newline at end of file
src/components/selectList.vue
0 → 100644
View file @
b15a0cfc
<
template
>
<div>
<!-- 搜索 -->
<van-sticky
offset-top=
"0"
>
<div
class=
"content-wrap"
>
<div
class=
"search-wrap"
>
<van-search
v-model=
"searchVal"
placeholder=
"搜索"
@
input=
"onInput"
/>
</div>
</div>
</van-sticky>
<div
style=
"margin-bottom: 1.4rem;"
>
<van-checkbox-group
v-model=
"checkbox"
>
<!--
<van-list
v-model=
"loading"
:finished=
"finished"
finished-text=
"没有更多了"
@
load=
"getInsideUser()"
>
-->
<van-checkbox
style=
"margin: 0px 10px;"
v-for=
"(item,index) in listdata"
:name=
"item.dictLabel"
:key=
"index"
@
click=
"selData(item)"
>
<van-cell
:title=
"item.dictValue"
/>
</van-checkbox>
<!--
</van-list>
-->
</van-checkbox-group>
</div>
<!-- 底部信息 -->
<footer
class=
"footer"
>
<van-cell-group>
<div
class=
"operate"
>
<van-button
size=
"small"
ttype=
"info"
plain
native-type=
"button"
style=
"border-radius: 5px; background-color: #f0f1f5;"
@
click.native=
"cancel"
>
取消
</van-button
>
<van-button
size=
"small"
type=
"info"
native-type=
"button"
style=
"margin:0 10px 0 20px;border-radius: 5px;"
@
click.native=
"save"
>
保存
</van-button
>
</div>
</van-cell-group>
</footer>
</div>
</
template
>
<
script
>
import
{
debounce
}
from
"
@/utils/common.js
"
;
export
default
{
props
:{
listdata
:{
type
:
Array
,
default
:()
=>
[],
}
},
components
:
{
// LHeader
},
created
()
{
},
data
()
{
return
{
text
:
"
选择人员
"
,
personName
:
""
,
searchVal
:
""
,
checkbox
:[],
pageSize
:
20
,
pageNum
:
1
,
loading
:
false
,
finished
:
false
,
projectList
:[],
itemSel
:{
}
};
},
methods
:
{
// 待搜索框内容发生变化
onInput
:
debounce
(
function
()
{
this
.
projectList
=
[]
this
.
pageNum
=
1
this
.
finished
=
false
this
.
loading
=
true
this
.
getInsideUser
();
},
800
),
selData
(
e
){
this
.
itemSel
=
e
},
save
()
{
this
.
$emit
(
'
saveSlect
'
,
this
.
checkbox
)
},
cancel
()
{
this
.
$emit
(
'
closeSlect
'
)
}
}
};
</
script
>
<
style
lang=
"less"
scoped
>
/* @import url(); 引入css类 */
// 搜索
.content-wrap {
padding: 10px;
background-color: #f0f1f5;
}
.search-wrap {
margin: 0.26667rem;
.van-search {
border-radius: 5px;
padding: 5px 12px;
}
.van-search__content {
background-color: #ffffff;
}
}
.upStep {
.van-cell-group {
display: flex;
height: 1.2rem;
align-items: center;
.upStep-btn {
width: 25%;
text-align: center;
display: flex;
span {
width: 1.866667rem;
background-color: #1989fa;
text-align: center;
display: inline-block;
color: white;
height: 0.8rem;
line-height: 0.8rem;
font-size: 0.346667rem;
border-radius: 0.08rem;
}
}
.upStep-content {
width: 75%;
height: 0.8rem;
line-height: 0.8rem;
padding-left: 0.42667rem;
box-sizing: border-box;
font-size: 14px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
}
}
.dept-list-wrap {
margin-top: 0.266667rem;
}
.people-wrap {
margin-top: 0.266667rem;
/deep/ .van-radio__label {
display: flex;
align-items: center;
}
}
.footer {
width: 100%;
height: 1.4rem;
z-index: 9;
position: fixed;
bottom: 0px;
box-shadow: 0px 8px 15px #000;
.van-cell-group {
height: 100%;
.selected {
height: 1.066667rem;
display: flex;
align-items: center;
padding-left: 10px;
border-bottom: 1px solid #cacbcb;
.selected-title {
color: #4187f7;
}
.selected-content {
width: 80%;
padding-left: 10px;
box-sizing: border-box;
}
}
.operate {
height: 1.333333rem;
display: flex;
justify-content: flex-end;
align-items: center;
.van-button {
width: 1.6rem;
}
}
}
}
</
style
>
\ No newline at end of file
src/main.js
View file @
b15a0cfc
...
...
@@ -9,14 +9,14 @@ import './permission'
import
Cookies
from
'
js-cookie
'
import
util
from
'
./api/util.js
'
import
{
DropdownMenu
,
DropdownItem
,
Divider
,
Popup
,
Overlay
,
Loading
,
Dialog
,
ContactCard
,
Form
,
AddressEdit
,
AddressList
,
Field
,
CellGroup
,
Cell
,
SwipeCell
,
Icon
,
Stepper
,
Card
,
Checkbox
,
CheckboxGroup
,
Button
,
Swipe
,
SwipeItem
,
PullRefresh
,
List
,
Tab
,
Tabs
,
GoodsAction
,
GoodsActionIcon
,
GoodsActionButton
,
SubmitBar
,
Toast
,
Search
,
Picker
,
Uploader
,
Notify
,
ContactList
,
Calendar
,
Radio
,
RadioGroup
,
Tag
,
Tabbar
,
TabbarItem
,
Sticky
,
Grid
,
GridItem
,
Skeleton
,
Col
,
Row
,
Image
as
VanImage
,
Badge
,
NoticeBar
,
DatetimePicker
,
Step
,
Steps
,
Lazyload
,
Popover
,
Collapse
,
CollapseItem
}
from
'
vant
'
Step
,
Steps
,
Lazyload
,
Popover
,
Collapse
,
CollapseItem
,
TreeSelect
}
from
'
vant
'
import
'
lib-flexible/flexible
'
import
vueEsign
from
'
vue-esign
'
Vue
.
use
(
vueEsign
)
Vue
.
prototype
.
util
=
util
Vue
.
use
(
Divider
).
use
(
Popup
).
use
(
Overlay
).
use
(
Loading
).
use
(
Dialog
).
use
(
Toast
).
use
(
ContactCard
).
use
(
Form
).
use
(
AddressEdit
).
use
(
AddressList
).
use
(
Field
).
use
(
CellGroup
).
use
(
Cell
).
use
(
SwipeCell
).
use
(
Icon
).
use
(
Stepper
).
use
(
Card
).
use
(
Button
).
use
(
Swipe
).
use
(
SwipeItem
).
use
(
PullRefresh
).
use
(
List
).
use
(
Tab
).
use
(
Tabs
).
use
(
GoodsAction
).
use
(
GoodsActionIcon
).
use
(
GoodsActionButton
).
use
(
SubmitBar
).
use
(
Checkbox
).
use
(
CheckboxGroup
).
use
(
Search
).
use
(
Picker
).
use
(
Uploader
).
use
(
Notify
)
.
use
(
ContactList
).
use
(
Calendar
).
use
(
Radio
).
use
(
RadioGroup
).
use
(
Tag
).
use
(
Tabbar
).
use
(
TabbarItem
).
use
(
Sticky
)
.
use
(
Grid
).
use
(
GridItem
).
use
(
Skeleton
).
use
(
Col
).
use
(
Row
).
use
(
VanImage
).
use
(
Badge
).
use
(
NoticeBar
).
use
(
DatetimePicker
).
use
(
Step
).
use
(
Steps
).
use
(
Popover
).
use
(
Lazyload
).
use
(
Collapse
).
use
(
CollapseItem
)
.
use
(
Grid
).
use
(
GridItem
).
use
(
Skeleton
).
use
(
Col
).
use
(
Row
).
use
(
VanImage
).
use
(
Badge
).
use
(
NoticeBar
).
use
(
DatetimePicker
).
use
(
Step
).
use
(
Steps
).
use
(
Popover
).
use
(
Lazyload
).
use
(
Collapse
).
use
(
CollapseItem
)
.
use
(
TreeSelect
)
Vue
.
use
(
DropdownMenu
);
Vue
.
use
(
DropdownItem
);
// 引用高德地图组件 main.js
...
...
src/views/riskProject/add/addInherent.vue
View file @
b15a0cfc
This diff is collapsed.
Click to expand it.
src/views/riskProject/add/addPresent.vue
View file @
b15a0cfc
This diff is collapsed.
Click to expand it.
src/views/riskProject/add/inherentRisks.vue
View file @
b15a0cfc
...
...
@@ -8,6 +8,7 @@
<van-tabs
v-model=
"active"
@
change=
"tabList"
color=
"#2980f7"
animated
>
<van-tab
:title=
"buildingName"
>
<van-dropdown-menu
z-index=
"1000"
>
<van-dropdown-item
v-model=
"value0"
@
change=
"changeBuild"
:options=
"option0"
get-container=
"body"
/>
<van-dropdown-item
v-model=
"value1"
@
change=
"changeFloor"
:options=
"option1"
get-container=
"body"
/>
<van-dropdown-item
v-model=
"value2"
@
change=
"changeRoom"
:options=
"option2"
get-container=
"body"
/>
</van-dropdown-menu>
...
...
@@ -97,8 +98,10 @@ export default {
planId
:
0
,
buildingId
:
0
,
buildingName
:
""
,
value0
:
''
,
value1
:
0
,
value2
:
0
,
option0
:[],
option1
:
[],
option2
:
[],
isHaveNews
:
false
,
...
...
@@ -108,7 +111,8 @@ export default {
showIndex
:
null
,
// 是否显示遮罩层,
active
:
1
,
form
:
{},
tabs
:
[]
tabs
:
[],
floorListData
:[]
};
},
created
()
{
...
...
@@ -127,7 +131,7 @@ export default {
arr
.
forEach
(
item
=>
{
arrList
.
push
({
text
:
item
.
name
,
value
:
item
.
id
value
:
item
.
id
||
item
.
name
});
});
return
arrList
;
...
...
@@ -189,9 +193,10 @@ export default {
return
new
Promise
((
resolve
,
reject
)
=>
{
getFun
(
`/risk/plan/floor/list/
${
id
}
`
)
.
then
(
res
=>
{
this
.
option1
=
this
.
changeData
(
res
.
data
);
this
.
value1
=
res
.
data
[
0
].
id
||
0
;
resolve
(
res
.
data
);
this
.
floorListData
=
res
.
data
this
.
option0
=
this
.
changeData
(
res
.
data
)
this
.
value0
=
res
.
data
[
0
].
name
||
''
this
.
changeBuild
(
res
.
data
[
0
].
name
)
})
.
catch
(()
=>
{
this
.
$toast
.
fail
(
"
加载失败,请稍后再试
"
);
...
...
@@ -249,6 +254,15 @@ export default {
let
room
=
await
this
.
roomList
(
floor
[
0
].
id
);
let
risk
=
await
this
.
riskList
(
this
.
planId
,
value
);
},
changeBuild
(
name
){
let
arr
=
this
.
floorListData
.
map
((
item
)
=>
{
if
(
item
.
name
==
name
){
return
item
.
children
}
});
this
.
option1
=
this
.
changeData
(
arr
[
0
])
this
.
value1
=
this
.
changeData
(
arr
[
0
]).
id
},
async
changeFloor
()
{
let
room
=
await
this
.
roomList
(
this
.
value1
);
let
risk
=
await
this
.
riskList
(
this
.
planId
,
this
.
buildingId
,
this
.
value1
,
this
.
value2
);
...
...
src/views/riskProject/add/taskList.vue
View file @
b15a0cfc
...
...
@@ -228,15 +228,15 @@
<van-col
span=
"7"
><span
class=
"field-title"
>
任务节点:
</span></van-col
>
<van-col
span=
"17"
>
{{
item
.
taskName
}}
</van-col>
<van-col
span=
"17"
>
{{
item
.
taskName
}}{{
item
.
taskResult
&&
item
.
taskResult
==
1
?
"
(审批通过)
"
:
"
(审批否决)
"
}}
</van-col>
</van-row>
<van-row
v-show=
"item.taskResult"
>
<van-col
span=
"7"
><span
class=
"field-title"
>
审批
结果
:
</span></van-col
><span
class=
"field-title"
>
审批
意见
:
</span></van-col
>
<van-col
span=
"17"
>
{{
item
.
taskResult
==
1
?
"
审批通过
"
:
"
审批否决
"
}}
</van-col>
<van-col
span=
"17"
>
{{
item
.
taskOpinion
}}
</van-col>
</van-row>
<!--
<van-row>
<van-col
span=
"7"
...
...
@@ -566,7 +566,6 @@ export default {
},
//执行任务
performTasks
()
{
console
.
log
(
this
.
messageList
,
"
LLLL
"
);
sessionStorage
.
setItem
(
"
buildingId
"
,
this
.
messageList
.
riskBuildingListDtos
[
0
].
buildingId
...
...
vue.config.js
View file @
b15a0cfc
...
...
@@ -8,9 +8,9 @@ module.exports = {
//以上的ip和端口是我们本机的;下面为需要跨域的
proxy
:
{
//配置跨域
'
/app-api
'
:
{
target
:
'
http://192.168.4.232:8080/
'
,
//这里是后台的地址
//
target: 'http://192.168.4.232:8080/', //这里是后台的地址
// target: 'http://192.168.15.124:8080/', //这里是杨帆的地址
//
target: 'http://192.168.10.137:8080/', //这里是昊哥的地址
target
:
'
http://192.168.10.137:8080/
'
,
//这里是昊哥的地址
// target: 'http://192.168.10.36:8080/', //这里是昊哥的地址
// target: 'http://localhost:8080/', //这里是后台的地址
ws
:
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