Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
Y
yangpu
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
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
郭铭瑶
yangpu
Commits
1f36f2d6
Commit
1f36f2d6
authored
Nov 23, 2020
by
郭铭瑶
🤘
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
调整
parent
f3cdca8b
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
83 additions
and
35 deletions
+83
-35
monitor-form.vue
...components/MonitorComponents/MonitorForm/monitor-form.vue
+1
-1
api.js
src/server/api.js
+1
-0
actions.js
src/store/actions.js
+6
-0
mutations.js
src/store/mutations.js
+3
-0
state.js
src/store/state.js
+7
-0
combine.vue
src/views/components/combine.vue
+3
-3
done-component.vue
src/views/components/done-component.vue
+2
-2
house.vue
src/views/components/house.vue
+58
-28
main.vue
src/views/main.vue
+2
-1
No files found.
src/components/MonitorComponents/MonitorForm/monitor-form.vue
View file @
1f36f2d6
...
...
@@ -5,7 +5,7 @@
<i-col
class=
"col"
v-for=
"(col, key) in row"
:key=
"key"
:span=
"col.width"
:offset=
"col.offset || 0"
>
<div
:style=
"`text-align: $
{col.align || 'right'}; width:${labelWidth}rem;`">
{{
col
.
label
}}
:
</div>
<template
v-if=
"col.type == 'img'"
>
<img
v-for=
"img in model[key].split(',')"
:key=
"img"
@
click=
"handleView(img)"
:src=
"img"
/>
<img
v-for=
"img in model[key]
&& model[key]
.split(',')"
:key=
"img"
@
click=
"handleView(img)"
:src=
"img"
/>
</
template
>
<div
v-else
class=
"content"
>
{{col.format ? col.format(model[key]) : (model[key] || ' ')}}
</div>
</i-col>
...
...
src/server/api.js
View file @
1f36f2d6
...
...
@@ -33,4 +33,5 @@ export default {
GET_GARBAGE_COUNT
:
'/dc/countPointsByStreet'
,
// 街道垃圾收集点数目
GET_TOILET_COUNT
:
'/dc/countToiletsByStreet'
,
// 街道环卫公厕数目
GET_VIDEO_URL
:
'http://10.89.1.208:7000/hawkeye/api/v1/camera/'
,
// 后面接id获取视频地址
GET_HEALTH_INFO
:
'/service-documents-ddd/public/property/health/degree'
,
// 物业健康度
}
src/store/actions.js
View file @
1f36f2d6
...
...
@@ -23,6 +23,7 @@ export default {
dispatch
(
'getRepairInfo'
)
dispatch
(
'getHandleList'
)
dispatch
(
'getDoneList'
)
dispatch
(
'getHealthInfo'
)
},
async
getGreenInfo
({
commit
})
{
const
result
=
[
...
...
@@ -147,4 +148,9 @@ export default {
commit
(
'SET_DONE_LIST'
,
com
.
confirm
(
res
,
'data.content'
,
[]))
})
},
getHealthInfo
({
commit
})
{
// 健康度
ajax
.
get
({
url
:
api
.
GET_HEALTH_INFO
}).
then
(
res
=>
{
commit
(
'SET_HEALTH_INFO'
,
com
.
confirm
(
res
,
'data.content'
,
{}))
})
},
}
src/store/mutations.js
View file @
1f36f2d6
...
...
@@ -60,4 +60,7 @@ export default {
SET_DONE_LIST
(
state
,
data
)
{
state
.
doneList
=
data
},
SET_HEALTH_INFO
(
state
,
data
)
{
state
.
healthInfo
=
data
},
}
src/store/state.js
View file @
1f36f2d6
...
...
@@ -77,6 +77,13 @@ export default {
{
id
:
310110020000
,
name
:
'新江湾城街道'
,
houseId
:
310110000168
,
center
:
[
3635.8506067447124
,
10472.688944671301
]},
{
id
:
310110101000
,
name
:
'长海路街道'
,
houseId
:
310110000175
,
center
:
[
6016.66261261553
,
8153.563542586172
]},
],
healthInfo
:
{
creditScore
:
{},
propertyWarrantyScore
:
{},
communityManagementScore
:
{},
ownerSatisfactionScore
:
{},
monthCheck
:
{},
},
currentStreetInfo
:
{
id
:
310110020000
,
name
:
'新江湾城街道'
,
houseId
:
310110000168
,
center
:
[
3635.8506067447124
,
10472.688944671301
]},
showLoading
:
false
,
curDate
:
null
,
...
...
src/views/components/combine.vue
View file @
1f36f2d6
...
...
@@ -50,9 +50,9 @@ export default {
return
this
.
handleCurTab
===
'处置中'
},
list
()
{
//
if (this.handleCurTab === '已完成') {
//
return this.doneList
//
}
if
(
this
.
handleCurTab
===
'已完成'
)
{
return
this
.
doneList
}
if
(
this
.
curSmartType
)
{
return
this
.
handleList
.
filter
(
item
=>
item
.
types
===
this
.
curSmartType
)
}
...
...
src/views/components/done-component.vue
View file @
1f36f2d6
...
...
@@ -4,8 +4,8 @@
<p
class=
"title"
><span
class=
"dot"
/>
风险报警信息
</p>
<m-form
:label-width=
".6"
:model=
"data"
:layout=
"layout"
/>
</div>
<div
v-for=
"
item
in data.details"
:key=
"item.id"
>
<p
class=
"title"
><span
class=
"dot"
/>
{{
i
tem
.
disposalDept
}}
处置
</p>
<div
v-for=
"
(item, i)
in data.details"
:key=
"item.id"
>
<p
class=
"title"
><span
class=
"dot"
/>
{{
i
==
0
?
'物业'
:
'街道'
}}
处置
</p>
<m-form
:label-width=
".6"
:model=
"item"
:layout=
"detailLayout"
/>
</div>
</div>
...
...
src/views/components/house.vue
View file @
1f36f2d6
...
...
@@ -11,7 +11,7 @@
<div
class=
"total"
>
<div>
<p>
整体治理得分
</p>
<m-count
style=
"font-size:0.12rem;color:#75e1b0;"
:value=
"92
"
:decimal=
"0"
/>
<m-count
:style=
"`font-size:0.12rem;color:$
{switchColor};`" :value="total
" :decimal="0" />
<p
class=
"unit"
>
(分)
</p>
</div>
<span
class=
"btn"
>
查看模型
</span>
...
...
@@ -25,13 +25,31 @@
<
script
>
import
echarts
from
'echarts'
const
mockValue
=
[
49
,
21
,
22
]
export
default
{
name
:
'House'
,
data
()
{
return
{
chart
:
null
,
option
:
{
}
},
mounted
()
{
setTimeout
(
this
.
init
,
0
)
},
beforeDestroy
()
{
this
.
chart
&&
window
.
removeEventListener
(
'resize'
,
()
=>
this
.
chart
.
resize
())
},
computed
:
{
list
()
{
const
{
community
,
house
,
company
,
area
}
=
this
.
$store
.
state
.
resourceSum
return
[
{
name
:
'小区数量'
,
unit
:
'个'
,
value
:
+
community
||
0
},
{
name
:
'总户数'
,
unit
:
'户'
,
value
:
+
house
||
0
},
{
name
:
'物业企业'
,
unit
:
'个'
,
value
:
+
company
||
0
},
{
name
:
'管理面积'
,
unit
:
'㎡'
,
value
:
+
area
||
0
},
]
},
option
()
{
return
{
tooltip
:
{
trigger
:
'axis'
,
confine
:
true
,
...
...
@@ -51,19 +69,16 @@ export default {
},
c
:
{
color
:
'#fff'
,
align
:
'center'
,
fontSize
:
12
*
this
.
sizeRate
,
},
},
formatter
:
(
text
,
{
index
})
=>
{
const
max
=
[
50
,
25
,
25
]
return
`{a|
${
text
}
}\n{b|
${
mockValue
[
index
]}
}{c|/
${
max
[
index
]}
}`
return
`{a|
${
text
}
}\n{b|
${
this
.
chartData
[
index
]}
}{c|/20}`
},
},
splitArea
:
{
show
:
false
,
// areaStyle: {
// color: ['rgba(1,124,143, 1)', 'rgba(1,124,143,0.9)', 'rgba(1,124,143,.7)', 'rgba(1,124,143,.5)', 'rgba(1,124,143,.3)']
// }
},
splitLine
:
{
show
:
true
,
...
...
@@ -75,9 +90,11 @@ export default {
show
:
false
,
},
indicator
:
[
{
text
:
'安全'
,
index
:
0
,
max
:
50
},
{
text
:
'干净'
,
index
:
1
,
max
:
25
},
{
text
:
'有序'
,
index
:
2
,
max
:
25
},
{
text
:
'物业诚信计分'
,
index
:
0
,
max
:
20
},
{
text
:
'投诉报修情况'
,
index
:
1
,
max
:
20
},
{
text
:
'小区管理情况'
,
index
:
2
,
max
:
20
},
{
text
:
'业主满意度'
,
index
:
3
,
max
:
20
},
{
text
:
'行业落实情况'
,
index
:
4
,
max
:
20
},
],
center
:
[
'50%'
,
'60%'
],
radius
:
'65%'
,
...
...
@@ -92,28 +109,36 @@ export default {
color
:
'#47B3FF'
,
},
data
:
[{
value
:
mockValue
,
value
:
this
.
chartData
,
}]
}]
}
}
},
mounted
()
{
setTimeout
(
this
.
init
,
0
)
},
beforeDestroy
()
{
this
.
chart
&&
window
.
removeEventListener
(
'resize'
,
()
=>
this
.
chart
.
resize
())
},
computed
:
{
list
()
{
const
{
community
,
house
,
company
,
area
}
=
this
.
$store
.
state
.
resourceSum
},
chartData
()
{
const
{
id
}
=
this
.
$store
.
state
.
currentStreetInfo
const
{
creditScore
,
propertyWarrantyScore
,
communityManagementScore
,
ownerSatisfactionScore
,
monthCheck
}
=
this
.
$store
.
state
.
healthInfo
return
[
{
name
:
'小区数量'
,
unit
:
'个'
,
value
:
+
community
||
0
},
{
name
:
'总户数'
,
unit
:
'户'
,
value
:
+
house
||
0
},
{
name
:
'物业企业'
,
unit
:
'个'
,
value
:
+
company
||
0
},
{
name
:
'管理面积'
,
unit
:
'㎡'
,
value
:
+
area
||
0
},
+
creditScore
[
id
+
''
]
||
0
,
+
propertyWarrantyScore
[
id
+
''
]
||
0
,
+
communityManagementScore
[
id
+
''
]
||
0
,
+
ownerSatisfactionScore
[
id
+
''
]
||
0
,
+
monthCheck
[
id
+
''
]
||
0
,
]
},
total
()
{
return
this
.
chartData
.
reduce
((
cur
,
acc
)
=>
cur
+
acc
,
0
)
},
switchColor
()
{
if
(
this
.
total
>=
90
)
{
return
'#75e1b0'
}
if
(
this
.
total
<
90
&&
this
.
total
>=
80
)
{
return
'#ffd400'
}
if
(
this
.
total
<
80
)
{
return
'#ff1e1e'
}
},
sizeRate
()
{
return
Number
((
screen
.
height
/
800
).
toFixed
(
1
))
},
...
...
@@ -124,7 +149,12 @@ export default {
window
.
addEventListener
(
'resize'
,
()
=>
this
.
chart
.
resize
())
this
.
chart
.
setOption
(
this
.
option
)
}
}
},
watch
:
{
chartData
()
{
this
.
chart
&&
this
.
chart
.
setOption
(
this
.
option
)
},
},
}
</
script
>
...
...
src/views/main.vue
View file @
1f36f2d6
...
...
@@ -27,7 +27,7 @@
<m-modal
v-model=
"detailModal"
title=
"智能报警"
>
<m-form
:label-width=
".6"
:model=
"detailData"
:layout=
"detailLayout"
/>
</m-modal>
<m-modal
v-model=
"doneModal"
title=
"已完成处置
列表
"
>
<m-modal
v-model=
"doneModal"
title=
"已完成处置"
>
<DoneComponent
v-if=
"doneModal"
:data=
"doneData"
/>
</m-modal>
<m-modal
v-model=
"patrolModal"
title=
"主动巡检"
>
...
...
@@ -216,6 +216,7 @@ export default {
this
.
detailData
=
data
this
.
detailModal
=
true
}
else
{
console
.
log
(
this
.
doneData
)
this
.
doneData
=
data
this
.
doneModal
=
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