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
f35384ea
Commit
f35384ea
authored
Jul 18, 2023
by
wei
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'develop' into dev-lv
parents
4e4a62a8
33d8b0f0
Changes
10
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
2258 additions
and
1246 deletions
+2258
-1246
src/assets/imgs/north.png
src/assets/imgs/north.png
+0
-0
src/components/selectList.vue
src/components/selectList.vue
+190
-191
src/main.js
src/main.js
+11
-8
src/views/drawCanvas/riskView.vue
src/views/drawCanvas/riskView.vue
+87
-35
src/views/riskProject/add/addCurrent.vue
src/views/riskProject/add/addCurrent.vue
+1382
-791
src/views/riskProject/add/addInherent.vue
src/views/riskProject/add/addInherent.vue
+581
-203
src/views/riskProject/add/index.vue
src/views/riskProject/add/index.vue
+0
-15
src/views/riskProject/add/taskList.vue
src/views/riskProject/add/taskList.vue
+4
-0
src/views/riskProject/assess/index.vue
src/views/riskProject/assess/index.vue
+1
-1
vue.config.js
vue.config.js
+2
-2
No files found.
src/assets/imgs/north.png
0 → 100644
View file @
f35384ea
3.19 KB
src/components/selectList.vue
View file @
f35384ea
...
...
@@ -4,7 +4,7 @@
<van-sticky
offset-top=
"0"
>
<div
class=
"content-wrap"
>
<div
class=
"search-wrap"
>
<van-search
v-model=
"searchVal"
placeholder=
"搜索"
@
input=
"onInput"
/>
<van-search
v-model=
"searchVal"
placeholder=
"搜索"
@
input=
"onInput"
/>
</div>
</div>
</van-sticky>
...
...
@@ -16,12 +16,17 @@
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-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"
>
...
...
@@ -35,8 +40,7 @@
style=
"border-radius: 5px; background-color: #f0f1f5;"
@
click.native=
"cancel"
>
取消
</van-button
>
</van-button>
<van-button
size=
"small"
type=
"info"
...
...
@@ -44,77 +48,73 @@
style=
"margin:0 10px 0 20px;border-radius: 5px;"
@
click.native=
"save"
>
保存
</van-button
>
</van-button>
</div>
</van-cell-group>
</footer>
</div>
</
template
>
</
template
>
<
script
>
<
script
>
import
{
debounce
}
from
"
@/utils/common.js
"
;
import
{
debounce
}
from
"
@/utils/common.js
"
;
export
default
{
props
:{
listdata
:{
type
:
Array
,
default
:()
=>
[],
export
default
{
props
:
{
listdata
:
{
type
:
Array
,
default
:
()
=>
[]
}
},
components
:
{
// LHeader
},
created
()
{
},
created
()
{},
data
()
{
return
{
text
:
"
选择人员
"
,
personName
:
""
,
searchVal
:
""
,
checkbox
:
[],
checkbox
:
[],
pageSize
:
20
,
pageNum
:
1
,
loading
:
false
,
finished
:
false
,
projectList
:[],
itemSel
:{
}
projectList
:
[],
itemSel
:
{}
};
},
methods
:
{
// 待搜索框内容发生变化
onInput
:
debounce
(
function
()
{
this
.
projectList
=
[]
this
.
pageNum
=
1
this
.
finished
=
false
this
.
loading
=
true
onInput
:
debounce
(
function
()
{
this
.
projectList
=
[];
this
.
pageNum
=
1
;
this
.
finished
=
false
;
this
.
loading
=
true
;
this
.
getInsideUser
();
},
800
),
selData
(
e
)
{
this
.
itemSel
=
e
selData
(
e
)
{
this
.
itemSel
=
e
;
},
save
()
{
this
.
$emit
(
'
saveSlect
'
,
this
.
checkbox
)
this
.
$emit
(
"
saveSlect
"
,
this
.
checkbox
);
this
.
checkbox
=
[];
},
cancel
()
{
this
.
$emit
(
'
closeSlect
'
)
this
.
$emit
(
"
closeSlect
"
);
}
}
};
</
script
>
<
style
lang=
"less"
scoped
>
/* @import url(); 引入css类 */
// 搜索
.content-wrap {
};
</
script
>
<
style
lang=
"less"
scoped
>
/* @import url(); 引入css类 */
// 搜索
.content-wrap {
padding: 10px;
background-color: #f0f1f5;
}
}
.search-wrap {
.search-wrap {
margin: 0.26667rem;
.van-search {
...
...
@@ -125,9 +125,9 @@
.van-search__content {
background-color: #ffffff;
}
}
}
.upStep {
.upStep {
.van-cell-group {
display: flex;
height: 1.2rem;
...
...
@@ -163,22 +163,22 @@
white-space: nowrap;
}
}
}
}
.dept-list-wrap {
.dept-list-wrap {
margin-top: 0.266667rem;
}
}
.people-wrap {
.people-wrap {
margin-top: 0.266667rem;
/deep/ .van-radio__label {
display: flex;
align-items: center;
}
}
}
.footer {
.footer {
width: 100%;
height: 1.4rem;
z-index: 9;
...
...
@@ -218,6 +218,5 @@
}
}
}
}
</
style
>
\ No newline at end of file
}
</
style
>
src/main.js
View file @
f35384ea
...
...
@@ -8,16 +8,19 @@ import qs from 'qs';
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
,
TreeSelect
}
from
'
vant
'
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
,
TreeSelect
,
Switch
}
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
(
TreeSelect
)
.
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
(
TreeSelect
)
Vue
.
use
(
DropdownMenu
);
Vue
.
use
(
Switch
);
Vue
.
use
(
DropdownItem
);
// 引用高德地图组件 main.js
import
VueAMap
from
'
vue-amap
'
...
...
@@ -65,7 +68,7 @@ Vue.prototype.$md5 = md5;
Vue
.
prototype
.
qs
=
qs
;
Array
.
prototype
.
remove
=
function
(
val
)
{
Array
.
prototype
.
remove
=
function
(
val
)
{
var
index
=
this
.
indexOf
(
val
);
if
(
index
>
-
1
)
{
this
.
splice
(
index
,
1
);
...
...
src/views/drawCanvas/riskView.vue
View file @
f35384ea
...
...
@@ -8,6 +8,9 @@
<span
class=
"iconRight"
v-show=
"isViews"
></span>
</header>
</van-sticky>
<div
class=
"north"
>
<img
src=
"../../assets/imgs/north.png"
alt=
""
>
</div>
<grid-layout
:layout.sync=
"layout"
:col-num=
"colNum"
:row-height=
"30"
...
...
@@ -16,7 +19,7 @@
:prevent-collision=
"false"
:preventCollision=
"true"
>
<grid-item
v-for=
"
item
in layout"
<grid-item
v-for=
"
(item)
in layout"
:static=
"item.static"
:x=
"item.x"
:y=
"item.y"
...
...
@@ -31,12 +34,15 @@
:style=
"
{'backgroundColor':item.c,'border':(item.type == 'thorough'? 'none !important':'')}"
>
<span
class=
"text"
:class=
"item.w>(item.h*5) ? '': 'rowText'"
>
{{
item
.
name
}}
</span>
<span
class=
"remove"
@
click=
"removeItem(item.i)"
v-if=
"!item.i"
>
x
</span>
<span
class=
"remove"
@
click=
"removeItem(item.i)"
v-if=
"showHeader"
>
x
</span>
<!--
<span
class=
"remove"
@
click=
"removeItem(item.i)"
v-if=
"item.i && isEdit"
>
x
</span>
-->
</grid-item>
</grid-layout>
<div
class=
"setBtns"
>
<van-button
@
click=
"addItem"
type=
"info"
size=
"mini"
v-if=
"!isViews"
>
添加房间
</van-button>
<van-button
@
click=
"addOther"
type=
"info"
size=
"mini"
v-if=
"!isViews"
>
添加其他
</van-button>
<van-button
@
click=
"addBase"
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"
:column-num=
"2"
class=
"footer"
v-if=
"isViews"
>
风险等级图例:
<span
class=
"riskTab type1"
></span>
重大风险
...
...
@@ -110,6 +116,7 @@ export default {
isViews
:
false
,
// true:查看页面; false: 添加页面
showHeader
:
true
,
isRoom
:
true
,
//是否为添加房间
layoutData
:[]
}
},
props
:{
...
...
@@ -123,6 +130,7 @@ export default {
// this.$nextTick(() => {
// this.rotateBox();
// });
console
.
log
(
'
floorId==>>
'
,
this
.
$route
.
params
.
floorId
)
if
(
this
.
_props
.
isView
)
{
console
.
log
(
'
作为组件传值==>>
'
,)
this
.
isViews
=
true
...
...
@@ -210,11 +218,15 @@ export default {
getFun
(
'
/ledger/room/list
'
,
data
).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
this
.
layout
=
[]
res
.
rows
.
forEach
((
item
)
=>
{
this
.
layoutData
=
res
.
data
res
.
data
.
forEach
((
item
)
=>
{
item
.
position
=
JSON
.
parse
(
item
.
position
)
item
.
position
.
i
=
item
.
id
item
.
position
.
id
=
item
.
id
if
(
!
this
.
showHeader
)
{
item
.
position
.
isDraggable
=
false
item
.
position
.
isResizable
=
false
}
if
(
!
this
.
isViews
||
item
.
position
.
type
==
'
thorough
'
)
{
//添加页面不显示颜色
item
.
position
.
c
=
'
#e6e5e5
'
}
else
{
...
...
@@ -281,6 +293,11 @@ export default {
this
.
layout
.
splice
(
index
,
1
);
return
}
this
.
$dialog
.
confirm
({
title
:
'
提示
'
,
message
:
'
是否删除
'
,
})
.
then
(()
=>
{
postFun
(
'
/ledger/room/delete/
'
+
val
).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
Toast
.
success
(
'
删除成功
'
);
...
...
@@ -289,45 +306,53 @@ export default {
}).
catch
((
err
)
=>
{
console
.
log
(
'
err==>>
'
,
err
)
})
})
.
catch
(()
=>
{
// on cancel
});
},
//添加基础设施
addBase
(){
},
// 移动后的事件
movedEvent
(
i
,
newX
,
newY
){
this
.
layOutItem
.
x
=
newX
this
.
layOutItem
.
y
=
newY
console
.
log
(
'
layOutItem==>>
'
,
this
.
layOutItem
)
// console.log('layOutItem==>>',this.layOutItem)
// console.log('this.layout==>>',this.layout)
},
// 调整大小后的事件
resizedEvent
:
function
(
i
,
newH
,
newW
){
this
.
layOutItem
.
w
=
newW
this
.
layOutItem
.
h
=
newH
console
.
log
(
'
layOutItem==>>
'
,
this
.
layOutItem
)
// console.log('layOutItem==>>',this.layOutItem)
// console.log('this.layout==>>',this.layout)
},
//关闭
close
(){
history
.
go
(
-
1
)
},
// 确定 保存房间信息
//edger/room/update/batch
// 确定 执行批量编辑保存
confim
(){
if
(
this
.
roomName
==
''
)
{
Toast
.
fail
({
title
:
'
提示
'
,
forbidClick
:
true
,
message
:
'
请先添加房间!
'
,
// if (this.roomName == '') {
// Toast.fail({
// title: '提示',
// forbidClick: true,
// message: '请先添加房间!',
// })
// return
// }
let
data
=
this
.
layoutData
this
.
layoutData
.
forEach
((
item
)
=>
{
item
.
position
=
JSON
.
stringify
(
item
.
position
)
})
return
}
let
data
=
{
floorId
:
this
.
$route
.
params
.
floorId
?
this
.
$route
.
params
.
floorId
:
'
18
'
,
name
:
this
.
roomName
,
position
:
JSON
.
stringify
(
this
.
layOutItem
),
roomType
:
this
.
isRoom
?
this
.
roomType
:
'
9999
'
,
}
postFun
(
'
/ledger/room/save
'
,
data
).
then
((
res
)
=>
{
console
.
log
(
'
data==>>
'
,
data
)
postFun
(
'
/ledger/room/update/batch
'
,
data
).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
Toast
.
success
(
'
提交
成功
'
);
Toast
.
success
(
'
保存
成功
'
);
this
.
getRoomInfo
()
this
.
roomType
=
''
this
.
roomName
=
''
}
}).
catch
((
err
)
=>
{
console
.
log
(
'
err==>>
'
,
err
)
...
...
@@ -350,13 +375,29 @@ export default {
h
:
3
,
i
:
''
,
name
:
this
.
roomName
,
c
:
'
#
0091EA
'
,
c
:
'
#
e6e5e5
'
,
type
:
this
.
isRoom
?
this
.
roomType
:
'
thorough
'
,
isDraggable
:
true
,
isResizable
:
true
}
this
.
layout
.
push
(
this
.
layOutItem
)
console
.
log
(
'
layOutItem==>>
'
,
this
.
layOutItem
)
// console.log('layOutItem==>>',this.layOutItem)
let
data
=
{
floorId
:
this
.
$route
.
params
.
floorId
?
this
.
$route
.
params
.
floorId
:
'
18
'
,
name
:
this
.
roomName
,
position
:
JSON
.
stringify
(
this
.
layOutItem
),
roomType
:
this
.
isRoom
?
this
.
roomType
:
'
9999
'
,
}
postFun
(
'
/ledger/room/save
'
,
data
).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
// Toast.success('保存成功');
this
.
getRoomInfo
()
this
.
roomType
=
''
this
.
roomName
=
''
}
}).
catch
((
err
)
=>
{
console
.
log
(
'
err==>>
'
,
err
)
})
},
cancelDialog
(){
this
.
roomType
=
''
...
...
@@ -379,6 +420,17 @@ export default {
width
:
100vw
;
position
:
relative
;
}
.north
{
position
:
absolute
;
display
:
inline-block
;
top
:
1.5rem
;
right
:
0.5rem
;
z-index
:
999
;
}
.north
img
{
width
:
15px
;
height
:
30px
;
}
.footer
{
/* position: fixed; */
/* left: 0; */
...
...
src/views/riskProject/add/addCurrent.vue
View file @
f35384ea
This diff is collapsed.
Click to expand it.
src/views/riskProject/add/addInherent.vue
View file @
f35384ea
This diff is collapsed.
Click to expand it.
src/views/riskProject/add/index.vue
View file @
f35384ea
...
...
@@ -389,13 +389,6 @@ export default {
this
.
currentDate
=
new
Date
();
},
getLeaderUserList
(
e
)
{
if
(
!
this
.
form
.
projectId
)
{
this
.
$toast
({
title
:
"
提示
"
,
message
:
"
请选择关联项目!
"
});
return
false
;
}
this
.
userPrefix
=
e
;
this
.
$toast
.
loading
({
message
:
"
加载中...
"
,
...
...
@@ -439,14 +432,6 @@ export default {
this
.
projectDept
=
false
;
},
getExecuteUser
()
{
if
(
!
this
.
form
.
projectId
)
{
this
.
$toast
({
title
:
"
提示
"
,
message
:
"
请选择关联项目!
"
});
return
false
;
}
this
.
filedName
=
"
nickName
"
;
this
.
$toast
.
loading
({
message
:
"
加载中...
"
,
...
...
src/views/riskProject/add/taskList.vue
View file @
f35384ea
...
...
@@ -197,6 +197,10 @@
<van-col
span=
"9"
>
上报时间:
</van-col>
<van-col
span=
"15"
>
{{
timestampToTimes
(
item
.
createTime
,
"
DT2
"
)
}}
</van-col>
</van-row>
<van-row
gutter=
""
>
<van-col
span=
"9"
>
所属房间:
</van-col>
<van-col
span=
"15"
>
{{
item
.
buildingName
+
item
.
floorName
+
item
.
roomName
}}
</van-col>
</van-row>
</van-col>
</van-col>
<van-col
span=
"4"
>
...
...
src/views/riskProject/assess/index.vue
View file @
f35384ea
...
...
@@ -26,7 +26,7 @@
<van-col
span=
"17"
>
<van-row
gutter=
""
>
<van-col
span=
"9"
>
创建人:
</van-col>
<van-col
span=
"15"
>
{{
item
.
leader
UserName
}}
</van-col>
<van-col
span=
"15"
>
{{
item
.
create
UserName
}}
</van-col>
</van-row>
<van-row
gutter=
""
>
<van-col
span=
"9"
>
发起时间:
</van-col>
...
...
vue.config.js
View file @
f35384ea
...
...
@@ -8,11 +8,11 @@ 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.36:8080/', //这里是昊哥的地址
// target: 'http://localhost:8080
/', //这里是后台的地址
target
:
'
http://localhost:8081
/
'
,
//这里是后台的地址
ws
:
true
,
changOrigin
:
true
,
//允许跨域
// logLevel: 'debug', // 显示代理调试信息
...
...
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