Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
E
east-nanjing-new
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
郭铭瑶
east-nanjing-new
Commits
a182c341
Commit
a182c341
authored
Jun 08, 2021
by
郭铭瑶
🤘
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
工作站加装电梯接口数据
parent
0bf850ff
Hide whitespace changes
Inline
Side-by-side
Showing
17 changed files
with
381 additions
and
40 deletions
+381
-40
api.ts
src/ajax/api.ts
+1
-1
reset.styl
src/assets/style/reset.styl
+18
-1
my-form.vue
src/components/MyComponent/MyForm/my-form.vue
+1
-1
my-modal.vue
src/components/MyComponent/MyModal/my-modal.vue
+1
-1
my-sub2.vue
src/components/MyComponent/MySub/my-sub2.vue
+21
-3
my-table.vue
src/components/MyComponent/MyTable/my-table.vue
+1
-1
main.ts
src/main.ts
+9
-1
actions.ts
src/store/actions.ts
+71
-13
index.ts
src/store/index.ts
+1
-0
map-btns.vue
src/view/components/map-btns.vue
+109
-4
useSwitchMap.ts
src/view/hooks/useSwitchMap.ts
+1
-1
main.vue
src/view/main.vue
+51
-0
beauty-home-in-station.vue
src/view/right/beauty-home-in-station.vue
+66
-1
beauty-home.vue
src/view/right/beauty-home.vue
+1
-1
demand.vue
src/view/right/demand.vue
+10
-2
ecology.vue
src/view/right/ecology.vue
+6
-5
emergency-store.vue
src/view/right/emergency-store.vue
+13
-4
No files found.
src/ajax/api.ts
View file @
a182c341
...
@@ -94,7 +94,7 @@ export default {
...
@@ -94,7 +94,7 @@ export default {
GET_ECOLOGY_POINTS
:
'/service-basicdatasync-ddd/nonResidents'
,
// 获取衣食住行撒点
GET_ECOLOGY_POINTS
:
'/service-basicdatasync-ddd/nonResidents'
,
// 获取衣食住行撒点
GET_ECOLOGY_CONVENIENT
:
'/service-special-nandong/convenient/ecological'
,
// 生态-便民设施
GET_ECOLOGY_CONVENIENT
:
'/service-special-nandong/convenient/ecological'
,
// 生态-便民设施
GET_ECOLOGY_PHOTO
:
'/service-special-nandong/buildingPhotos'
,
// 生态 - 商业综合体、文保、历保照片
GET_ECOLOGY_PHOTO
:
'/service-special-nandong/buildingPhotos'
,
// 生态 - 商业综合体、文保、历保照片
GET_ELEV_COUNT
:
'/service-special-nandong/elevatorAdd/
statistical
'
,
// 美丽家园-电梯加装统计数字
GET_ELEV_COUNT
:
'/service-special-nandong/elevatorAdd/
workstation
'
,
// 美丽家园-电梯加装统计数字
GET_ELEV_LIST
:
'/service-special-nandong/elevatorAdds'
,
// 美丽家园 - 根据名称查询列表
GET_ELEV_LIST
:
'/service-special-nandong/elevatorAdds'
,
// 美丽家园 - 根据名称查询列表
GET_TOILET
:
'/service-special-nandong/toilet/renovation'
,
// 马桶改造
GET_TOILET
:
'/service-special-nandong/toilet/renovation'
,
// 马桶改造
}
}
src/assets/style/reset.styl
View file @
a182c341
...
@@ -53,4 +53,21 @@ $color-main = #5BD5FF
...
@@ -53,4 +53,21 @@ $color-main = #5BD5FF
color $color-main
color $color-main
background rgba(0,0,0,0.4)
background rgba(0,0,0,0.4)
font-size .08rem
font-size .08rem
font-weight bold
font-weight bold
\ No newline at end of file
.ant-tooltip-inner
max-width 3rem
min-height .2rem
padding .05rem .08rem
background $primary-bg
$blur(.02rem)
.ant-tree-switcher
width .1rem
color #fff
.ant-tree-title
font-size .1rem
color #fff
.ant-tree
li
.ant-tree-node-content-wrapper
background-color transparent !important
\ No newline at end of file
src/components/MyComponent/MyForm/my-form.vue
View file @
a182c341
...
@@ -156,7 +156,7 @@ export default defineComponent({
...
@@ -156,7 +156,7 @@ export default defineComponent({
display flex
display flex
align-items center
align-items center
p
p
padding
0
.05rem
padding
.02rem
.05rem
box-sizing border-box
box-sizing border-box
>.content
>.content
flex 1
flex 1
...
...
src/components/MyComponent/MyModal/my-modal.vue
View file @
a182c341
...
@@ -177,7 +177,7 @@ export default defineComponent({
...
@@ -177,7 +177,7 @@ export default defineComponent({
transform translate(50%, 50%)
transform translate(50%, 50%)
.content
.content
// min-height 30vh
// min-height 30vh
max-height 8
6
vh
max-height 8
2
vh
overflow-y auto
overflow-y auto
overflow-x hidden
overflow-x hidden
font-size 0.1rem
font-size 0.1rem
...
...
src/components/MyComponent/MySub/my-sub2.vue
View file @
a182c341
<
template
>
<
template
>
<div
class=
"my-sub"
>
<div
class=
"my-sub"
>
<div
class=
"title"
>
<div
class=
"title"
:class=
"
{ 'click-able': clickAble }"
@click="handleClick"
>
<span
/>
<span
/>
<p><slot
/></p>
<p><slot
/></p>
<div
v-if=
"addition"
class=
"addition"
>
<div
v-if=
"addition"
class=
"addition"
>
...
@@ -58,9 +62,13 @@ export default defineComponent({
...
@@ -58,9 +62,13 @@ export default defineComponent({
type
:
Boolean
as
PropType
<
boolean
>
,
type
:
Boolean
as
PropType
<
boolean
>
,
default
:
false
,
default
:
false
,
},
},
clickAble
:
{
type
:
Boolean
as
PropType
<
boolean
>
,
default
:
false
,
},
},
},
emits
:
[
'search'
,
'close'
],
emits
:
[
'search'
,
'close'
,
'select'
],
setup
(
_
,
ctx
)
{
setup
(
props
,
ctx
)
{
const
isOpened
=
ref
(
false
)
const
isOpened
=
ref
(
false
)
const
inputValue
=
ref
(
''
)
const
inputValue
=
ref
(
''
)
const
handleSearch
=
()
=>
{
const
handleSearch
=
()
=>
{
...
@@ -81,12 +89,18 @@ export default defineComponent({
...
@@ -81,12 +89,18 @@ export default defineComponent({
}
}
}
}
}
}
const
handleClick
=
()
=>
{
if
(
props
.
clickAble
)
{
ctx
.
emit
(
'select'
)
}
}
return
{
return
{
isOpened
,
isOpened
,
inputValue
,
inputValue
,
handleSearch
,
handleSearch
,
handleClose
,
handleClose
,
handleOpenSearchBar
,
handleOpenSearchBar
,
handleClick
,
}
}
},
},
})
})
...
@@ -106,6 +120,10 @@ export default defineComponent({
...
@@ -106,6 +120,10 @@ export default defineComponent({
// color $secondary-color
// color $secondary-color
flex 1
flex 1
font-size .12rem
font-size .12rem
&.click-able
cursor pointer
&:hover
color $yellow
.addition
.addition
display flex
display flex
align-items center
align-items center
...
...
src/components/MyComponent/MyTable/my-table.vue
View file @
a182c341
...
@@ -177,7 +177,7 @@ export default defineComponent({
...
@@ -177,7 +177,7 @@ export default defineComponent({
background transparent
background transparent
$full()
$full()
p
p
padding 0 .05rem
padding 0
.04rem
.05rem
margin 0
margin 0
flex 1
flex 1
box-sizing border-box
box-sizing border-box
...
...
src/main.ts
View file @
a182c341
...
@@ -2,7 +2,14 @@ import { createApp } from 'vue'
...
@@ -2,7 +2,14 @@ import { createApp } from 'vue'
import
App
from
'./App.vue'
import
App
from
'./App.vue'
import
MyComponent
from
'@/components/MyComponent'
import
MyComponent
from
'@/components/MyComponent'
import
router
from
'@/router'
import
router
from
'@/router'
import
{
Progress
,
Select
,
Input
,
Tooltip
,
Checkbox
}
from
'ant-design-vue'
import
{
Progress
,
Select
,
Input
,
Tooltip
,
Checkbox
,
Tree
,
}
from
'ant-design-vue'
import
'ant-design-vue/dist/antd.min.css'
import
'ant-design-vue/dist/antd.min.css'
import
'./assets/style/reset.styl'
import
'./assets/style/reset.styl'
...
@@ -14,4 +21,5 @@ createApp(App)
...
@@ -14,4 +21,5 @@ createApp(App)
.
use
(
Input
)
.
use
(
Input
)
.
use
(
Tooltip
)
.
use
(
Tooltip
)
.
use
(
Checkbox
)
.
use
(
Checkbox
)
.
use
(
Tree
)
.
mount
(
'#app'
)
.
mount
(
'#app'
)
src/store/actions.ts
View file @
a182c341
import
{
ajax
,
api
}
from
'@/ajax'
import
{
ajax
,
api
}
from
'@/ajax'
import
{
Dispatch
,
Commit
}
from
'vuex'
import
{
Dispatch
,
Commit
}
from
'vuex'
import
dayjs
from
'dayjs'
import
dayjs
from
'dayjs'
import
yi2
from
'@/assets/images/yi2.png'
import
xue
from
'@/assets/images/xue.png'
import
shang
from
'@/assets/images/shang.png'
import
zheng
from
'@/assets/images/zheng.png'
import
yi
from
'@/assets/images/yi.png'
import
shi
from
'@/assets/images/shi.png'
import
zhu
from
'@/assets/images/zhu.png'
import
xing
from
'@/assets/images/xing.png'
import
smStar
from
'@/assets/images/star-sm.png'
import
star
from
'@/assets/images/star.png'
const
today
=
dayjs
().
format
(
'YYYY-MM-DD'
)
const
today
=
dayjs
().
format
(
'YYYY-MM-DD'
)
...
@@ -16,7 +26,7 @@ export default {
...
@@ -16,7 +26,7 @@ export default {
dispatch
(
'GET_YOUSUBIDA_CLASSIFICATION_RANK'
,
'综合'
)
dispatch
(
'GET_YOUSUBIDA_CLASSIFICATION_RANK'
,
'综合'
)
dispatch
(
'GET_URGENTCASE'
,
{
dispatch
(
'GET_URGENTCASE'
,
{
bxmaintainType
:
'1'
,
bxmaintainType
:
'1'
,
status_in
:
'待派遣,已派单'
,
//
status_in: '待派遣,已派单',
acceptTime_gte
:
today
,
acceptTime_gte
:
today
,
pageSize
:
100
,
pageSize
:
100
,
})
})
...
@@ -24,7 +34,7 @@ export default {
...
@@ -24,7 +34,7 @@ export default {
dispatch
(
'GET_STAGECASE'
)
dispatch
(
'GET_STAGECASE'
)
dispatch
(
'GET_WORKSTATION'
)
dispatch
(
'GET_WORKSTATION'
)
dispatch
(
'GET_TRACKEVENT'
,
{
dispatch
(
'GET_TRACKEVENT'
,
{
status_in
:
'待处置,已签收'
,
//
status_in: '待处置,已签收',
acceptTime_gte
:
today
,
acceptTime_gte
:
today
,
pageSize
:
100
,
pageSize
:
100
,
})
})
...
@@ -47,6 +57,7 @@ export default {
...
@@ -47,6 +57,7 @@ export default {
dispatch
(
'GET_PUBLICSAFE_NEWFIND'
)
dispatch
(
'GET_PUBLICSAFE_NEWFIND'
)
dispatch
(
'GET_PUBLICSAFE_TRUE_PEOPLE'
)
dispatch
(
'GET_PUBLICSAFE_TRUE_PEOPLE'
)
dispatch
(
'getEcologyList'
)
dispatch
(
'getEcologyList'
)
dispatch
(
'getEcologyPoints'
)
dispatch
(
'getEcologyConvenient'
)
dispatch
(
'getEcologyConvenient'
)
dispatch
(
'getEcologyPhoto'
)
dispatch
(
'getEcologyPhoto'
)
dispatch
(
'getElevCount'
)
dispatch
(
'getElevCount'
)
...
@@ -257,11 +268,13 @@ export default {
...
@@ -257,11 +268,13 @@ export default {
},
},
// 公共安全 - 重点关注楼宇
// 公共安全 - 重点关注楼宇
async
GET_PUBLICSAFE_BUILDINGS
({
async
GET_PUBLICSAFE_BUILDINGS
(
commit
,
{
}:
{
commit
,
commit
:
Commit
}:
{
}):
Promise
<
void
>
{
commit
:
Commit
},
):
Promise
<
void
>
{
const
{
content
}
=
(
const
{
content
}
=
(
await
ajax
.
get
({
await
ajax
.
get
({
url
:
api
.
GET_PUBLICSAFE_BUILDINGS
,
url
:
api
.
GET_PUBLICSAFE_BUILDINGS
,
...
@@ -284,17 +297,62 @@ export default {
...
@@ -284,17 +297,62 @@ export default {
const
{
content
}
=
(
await
ajax
.
get
({
url
:
api
.
GET_ECOLOGY_LIST
})).
data
const
{
content
}
=
(
await
ajax
.
get
({
url
:
api
.
GET_ECOLOGY_LIST
})).
data
commit
(
'SET_ECOLOGY_LIST'
,
content
)
commit
(
'SET_ECOLOGY_LIST'
,
content
)
},
},
async
getEcologyPoints
(
async
getEcologyPoints
({
commit
}:
{
commit
:
Commit
}):
Promise
<
void
>
{
{
commit
}:
{
commit
:
Commit
},
name
:
string
):
Promise
<
void
>
{
const
{
content
}
=
(
const
{
content
}
=
(
await
ajax
.
get
({
await
ajax
.
get
({
url
:
api
.
GET_ECOLOGY_POINTS
,
url
:
api
.
GET_ECOLOGY_POINTS
,
params
:
{
labelName
:
name
,
pageSize
:
1000
},
params
:
{
pageSize
:
1000
},
})
})
).
data
).
data
commit
(
'SET_ECOLOGY_POINTS'
,
content
)
const
result
=
[
...(
content
||
[]).
map
((
item
:
any
)
=>
{
switch
(
item
.
labelName
)
{
case
'医'
:
item
.
icon
=
yi2
item
.
_type
=
'other'
break
case
'学'
:
item
.
icon
=
xue
item
.
_type
=
'other'
break
case
'商'
:
item
.
icon
=
shang
item
.
_type
=
'other'
break
case
'政'
:
item
.
icon
=
zheng
item
.
_type
=
'other'
break
case
'衣'
:
item
.
icon
=
yi
item
.
_type
=
'yi'
break
case
'食'
:
item
.
icon
=
shi
item
.
_type
=
'shi'
break
case
'住'
:
item
.
icon
=
zhu
item
.
_type
=
'zhu'
break
case
'行'
:
item
.
icon
=
xing
item
.
_type
=
'xing'
break
default
:
break
}
if
(
item
.
stAddr
===
'大沽路123号'
)
{
item
.
icon
=
smStar
}
if
(
item
.
stAddr
===
'人民大道200号'
)
{
item
.
icon
=
star
}
item
.
size
=
20
return
item
}),
]
commit
(
'SET_ECOLOGY_POINTS'
,
result
)
},
},
async
getEcologyConvenient
({
commit
}:
{
commit
:
Commit
}):
Promise
<
void
>
{
async
getEcologyConvenient
({
commit
}:
{
commit
:
Commit
}):
Promise
<
void
>
{
const
{
content
}
=
(
const
{
content
}
=
(
...
...
src/store/index.ts
View file @
a182c341
...
@@ -80,6 +80,7 @@ export interface ForOldProp {
...
@@ -80,6 +80,7 @@ export interface ForOldProp {
export
interface
ElevCountProp
{
export
interface
ElevCountProp
{
cmtName
:
string
cmtName
:
string
num
:
number
num
:
number
workstationId
?:
string
}
}
export
interface
ResponsivityProp
{
export
interface
ResponsivityProp
{
...
...
src/view/components/map-btns.vue
View file @
a182c341
...
@@ -13,6 +13,22 @@
...
@@ -13,6 +13,22 @@
</div>
</div>
</
template
>
</
template
>
</a-tooltip>
</a-tooltip>
<a-tooltip
v-else-if=
"btn.key === 'point'"
:key=
"btn.key"
placement=
"right"
>
<img
:key=
"btn.key"
:src=
"btn.icon"
draggable=
"false"
/>
<
template
#
title
>
<a-tree
v-model:expandedKeys=
"expandedKeys"
v-model:checkedKeys=
"checkedKeys"
:tree-data=
"treeData"
checkable
@
check=
"handleCheck"
/>
</
template
>
</a-tooltip>
<a-tooltip
v-else
:key=
"btn.key"
placement=
"right"
>
<a-tooltip
v-else
:key=
"btn.key"
placement=
"right"
>
<img
:src=
"btn.icon"
draggable=
"false"
@
click=
"handleClick(btn.key)"
/>
<img
:src=
"btn.icon"
draggable=
"false"
@
click=
"handleClick(btn.key)"
/>
<
template
#
title
>
{{
btn
.
title
}}
</
template
>
<
template
#
title
>
{{
btn
.
title
}}
</
template
>
...
@@ -43,7 +59,7 @@ import store from '@/store'
...
@@ -43,7 +59,7 @@ import store from '@/store'
export
default
defineComponent
({
export
default
defineComponent
({
name
:
'MapBtns'
,
name
:
'MapBtns'
,
components
:
{
SearchView
},
components
:
{
SearchView
},
emits
:
[
'full'
,
'change'
,
'zoom'
],
emits
:
[
'full'
,
'change'
,
'zoom'
,
'point'
],
setup
(
_
,
ctx
)
{
setup
(
_
,
ctx
)
{
const
curViewType
=
computed
(()
=>
store
.
state
.
curView
.
type
)
const
curViewType
=
computed
(()
=>
store
.
state
.
curView
.
type
)
const
btns
=
computed
(()
=>
{
const
btns
=
computed
(()
=>
{
...
@@ -56,8 +72,8 @@ export default defineComponent({
...
@@ -56,8 +72,8 @@ export default defineComponent({
{
key
:
'in'
,
icon
:
zoomIn
,
title
:
'放大地图'
},
{
key
:
'in'
,
icon
:
zoomIn
,
title
:
'放大地图'
},
{
key
:
'out'
,
icon
:
zoomOut
,
title
:
'缩小地图'
},
{
key
:
'out'
,
icon
:
zoomOut
,
title
:
'缩小地图'
},
{
key
:
'full'
,
icon
:
btn2
,
title
:
'全屏'
},
{
key
:
'full'
,
icon
:
btn2
,
title
:
'全屏'
},
{
key
:
'
points
'
,
icon
:
btn6
,
title
:
'显示/隐藏小区点'
},
{
key
:
'
switch-community-point
'
,
icon
:
btn6
,
title
:
'显示/隐藏小区点'
},
// { key: '
', icon: btn4 },
{
key
:
'point
'
,
icon
:
btn4
},
// { key: '', icon: btn5 },
// { key: '', icon: btn5 },
// { key: '', icon: btn6 },
// { key: '', icon: btn6 },
]
]
...
@@ -89,7 +105,7 @@ export default defineComponent({
...
@@ -89,7 +105,7 @@ export default defineComponent({
case
'out'
:
case
'out'
:
ctx
.
emit
(
'zoom'
,
key
)
ctx
.
emit
(
'zoom'
,
key
)
break
break
case
'
points
'
:
case
'
switch-community-point
'
:
store
.
commit
(
store
.
commit
(
'SET_SHOW_COMMUNITY_POINTS'
,
'SET_SHOW_COMMUNITY_POINTS'
,
!
store
.
state
.
showCommunityPoints
!
store
.
state
.
showCommunityPoints
...
@@ -117,6 +133,91 @@ export default defineComponent({
...
@@ -117,6 +133,91 @@ export default defineComponent({
ctx
.
emit
(
'change'
,
e
)
ctx
.
emit
(
'change'
,
e
)
checkboxValues
.
value
=
e
checkboxValues
.
value
=
e
}
}
const
treeData
=
ref
([
{
title
:
'居住'
,
key
:
'居住'
,
value
:
'居住'
,
children
:
[
{
title
:
'商品房、二级旧里、直管公房'
,
key
:
'community'
,
value
:
'community'
,
},
],
},
{
title
:
'非居'
,
key
:
'非居'
,
value
:
'非居'
,
children
:
[
{
title
:
'衣、食、住、行'
,
key
:
'life'
,
tipvalue
:
'life'
,
children
:
[
{
title
:
'衣'
,
key
:
'yi'
,
value
:
'yi'
,
},
{
title
:
'食'
,
key
:
'shi'
,
value
:
'shi'
,
},
{
title
:
'住'
,
key
:
'zhu'
,
value
:
'zhu'
,
},
{
title
:
'行'
,
key
:
'xing'
,
value
:
'xing'
,
},
{
title
:
'其他'
,
key
:
'other'
,
value
:
'other'
,
},
],
},
{
title
:
'为老服务站'
,
key
:
'old'
,
value
:
'old'
,
},
{
title
:
'地标性建筑'
,
key
:
'sign'
,
value
:
'sign'
,
},
{
title
:
'历史保护建筑'
,
key
:
'history'
,
value
:
'history'
,
},
],
},
// {
// title: '防寒抗冻',
// key: 'cold',
// value: 'cold',
// },
])
const
expandedKeys
=
ref
([
'居住'
,
'非居'
])
const
checkedKeys
=
ref
([
'community'
,
'life'
,
// 'cold',
'old'
,
'sign'
,
'history'
,
])
const
handleCheck
=
(
data
:
string
[])
=>
{
ctx
.
emit
(
'point'
,
data
)
}
watch
(
watch
(
[()
=>
curViewType
.
value
,
()
=>
store
.
state
.
curMapType
],
[()
=>
curViewType
.
value
,
()
=>
store
.
state
.
curMapType
],
()
=>
(
checkboxValues
.
value
=
[])
()
=>
(
checkboxValues
.
value
=
[])
...
@@ -131,6 +232,10 @@ export default defineComponent({
...
@@ -131,6 +232,10 @@ export default defineComponent({
checkboxValues
,
checkboxValues
,
handleChange
,
handleChange
,
curViewType
,
curViewType
,
treeData
,
expandedKeys
,
checkedKeys
,
handleCheck
,
}
}
},
},
})
})
...
...
src/view/hooks/useSwitchMap.ts
View file @
a182c341
...
@@ -2,7 +2,7 @@ import { ref, watch, computed } from 'vue'
...
@@ -2,7 +2,7 @@ import { ref, watch, computed } from 'vue'
import
{
ajax
,
api
}
from
'@/ajax'
import
{
ajax
,
api
}
from
'@/ajax'
import
store
from
'@/store'
import
store
from
'@/store'
export
default
function
useSwitchMap
(
map
:
any
)
{
export
default
function
useSwitchMap
(
map
:
any
)
:
any
{
const
curMapType
=
computed
(()
=>
store
.
state
.
curMapType
)
const
curMapType
=
computed
(()
=>
store
.
state
.
curMapType
)
const
curViewType
=
computed
(()
=>
store
.
state
.
curView
.
type
)
const
curViewType
=
computed
(()
=>
store
.
state
.
curView
.
type
)
watch
(
watch
(
...
...
src/view/main.vue
View file @
a182c341
...
@@ -42,6 +42,7 @@
...
@@ -42,6 +42,7 @@
@
change=
"selectArea"
@
change=
"selectArea"
@
full=
"fullScreen = $event"
@
full=
"fullScreen = $event"
@
zoom=
"handleZoom"
@
zoom=
"handleZoom"
@
point=
"handlePoint"
/>
/>
<m-drawer
v-model=
"showDrawer"
>
<m-drawer
v-model=
"showDrawer"
>
<CaseDrawer
/>
<CaseDrawer
/>
...
@@ -64,6 +65,8 @@ import CaseDrawer from './drawers/case-drawer.vue'
...
@@ -64,6 +65,8 @@ import CaseDrawer from './drawers/case-drawer.vue'
import
PopulationDrawer
from
'./drawers/population-drawer.vue'
import
PopulationDrawer
from
'./drawers/population-drawer.vue'
import
store
from
'@/store'
import
store
from
'@/store'
import
useSwitchMap
from
'./hooks/useSwitchMap'
import
useSwitchMap
from
'./hooks/useSwitchMap'
import
smStar
from
'@/assets/images/star-sm.png'
import
star
from
'@/assets/images/star.png'
export
default
defineComponent
({
export
default
defineComponent
({
name
:
'Main'
,
name
:
'Main'
,
...
@@ -111,6 +114,53 @@ export default defineComponent({
...
@@ -111,6 +114,53 @@ export default defineComponent({
}
}
})
})
const
{
handleMapComplete
,
selectArea
,
handleZoom
}
=
useSwitchMap
(
map
)
const
{
handleMapComplete
,
selectArea
,
handleZoom
}
=
useSwitchMap
(
map
)
const
mapPoints
=
ref
<
any
>
(
null
)
const
ecologyPoints
=
computed
(()
=>
store
.
state
.
ecologyPoints
)
const
handlePoint
=
(
keys
:
string
[])
=>
{
const
{
showCommunity
,
hideCommunity
,
addPoint
,
remove
}
=
map
.
value
if
(
keys
.
some
((
key
)
=>
key
===
'community'
))
{
showCommunity
()
}
else
{
hideCommunity
()
}
const
yiPoints
=
ecologyPoints
.
value
.
filter
((
e
)
=>
e
.
labelName
===
'衣'
)
const
shiPoints
=
ecologyPoints
.
value
.
filter
((
e
)
=>
e
.
labelName
===
'食'
)
const
zhuPoints
=
ecologyPoints
.
value
.
filter
((
e
)
=>
e
.
labelName
===
'住'
)
const
xingPoints
=
ecologyPoints
.
value
.
filter
((
e
)
=>
e
.
labelName
===
'行'
)
const
otherPoints
=
ecologyPoints
.
value
.
filter
((
e
)
=>
e
.
_type
===
'other'
)
// const oldPoints = []
// const signPoints = []
// const historyPoints = []
remove
(
mapPoints
.
value
)
mapPoints
.
value
=
addPoint
({
key
:
'map-points'
,
size
:
20
,
data
:
[
...(
keys
.
some
((
key
)
=>
key
===
'yi'
)
?
yiPoints
:
[]),
...(
keys
.
some
((
key
)
=>
key
===
'shi'
)
?
shiPoints
:
[]),
...(
keys
.
some
((
key
)
=>
key
===
'zhu'
)
?
zhuPoints
:
[]),
...(
keys
.
some
((
key
)
=>
key
===
'xing'
)
?
xingPoints
:
[]),
...(
keys
.
some
((
key
)
=>
key
===
'other'
)
?
otherPoints
:
[]),
{
icon
:
star
,
'479477007408168960'
:
'上海市人民政府'
,
stAddr
:
'人民大道200号'
,
belong
:
'第一工作站'
,
x
:
130.78
,
y
:
-
433.2
,
},
{
icon
:
smStar
,
'479477007408168960'
:
'南京东路街道'
,
stAddr
:
'大沽路123号'
,
belong
:
'第一工作站'
,
x
:
17.95
,
y
:
-
788.21
,
},
],
})
}
return
{
return
{
map
,
map
,
curViewType
,
curViewType
,
...
@@ -121,6 +171,7 @@ export default defineComponent({
...
@@ -121,6 +171,7 @@ export default defineComponent({
handleMapComplete
,
handleMapComplete
,
selectArea
,
selectArea
,
handleZoom
,
handleZoom
,
handlePoint
,
}
}
},
},
})
})
...
...
src/view/right/beauty-home-in-station.vue
View file @
a182c341
...
@@ -14,7 +14,13 @@
...
@@ -14,7 +14,13 @@
<m-bar
:dataset=
"barData"
:option=
"chartOption"
/>
<m-bar
:dataset=
"barData"
:option=
"chartOption"
/>
</div>
</div>
</div>
</div>
<m-sub2
:addition=
"
{ value: 33, unit: '幢' }">电梯加装(排摸)
</m-sub2>
<m-sub2
click-able
:addition=
"
{ value: elevNum, unit: '幢' }"
@select="handleClick"
>
电梯加装(排摸)
</m-sub2>
<m-sub2>
马桶改造
</m-sub2>
<m-sub2>
马桶改造
</m-sub2>
<Brief
:list=
"toiletSituation"
color=
"#fff"
/>
<Brief
:list=
"toiletSituation"
color=
"#fff"
/>
<m-progress
<m-progress
...
@@ -24,6 +30,20 @@
...
@@ -24,6 +30,20 @@
/>
/>
</div>
</div>
</m-card>
</m-card>
<m-modal
v-model=
"showElevModal"
title=
"电梯加装"
width=
"8vw"
translate-y=
"4%"
offset=
"-44%"
>
<div
class=
"elev-modal"
>
<div
v-for=
"item in elevData"
:key=
"item.id"
>
<p>
{{
item
.
sectAddr
}}
</p>
<p>
{{
item
.
cmtName
}}
|
{{
item
.
sectName
}}
</p>
</div>
</div>
</m-modal>
</
template
>
</
template
>
<
script
lang=
"ts"
>
<
script
lang=
"ts"
>
...
@@ -36,6 +56,7 @@ import icon33 from '@/assets/images/icon33.png'
...
@@ -36,6 +56,7 @@ import icon33 from '@/assets/images/icon33.png'
import
icon34
from
'@/assets/images/icon34.png'
import
icon34
from
'@/assets/images/icon34.png'
import
icon35
from
'@/assets/images/icon35.png'
import
icon35
from
'@/assets/images/icon35.png'
import
icon36
from
'@/assets/images/icon36.png'
import
icon36
from
'@/assets/images/icon36.png'
import
{
ajax
,
api
}
from
'@/ajax'
export
default
defineComponent
({
export
default
defineComponent
({
name
:
'BeautyHomeInStation'
,
name
:
'BeautyHomeInStation'
,
...
@@ -88,6 +109,35 @@ export default defineComponent({
...
@@ -88,6 +109,35 @@ export default defineComponent({
},
},
},
},
}
}
const
elevNum
=
computed
(()
=>
{
const
data
=
store
.
state
.
elevCount
const
{
id
}
=
store
.
state
.
curView
return
data
.
filter
((
e
)
=>
e
.
workstationId
===
id
)
.
reduce
((
acc
,
cur
)
=>
acc
+
cur
.
num
,
0
)
})
const
showElevModal
=
ref
(
false
)
const
elevData
=
ref
<
any
>
([])
const
dic
:
any
=
{
'01001'
:
[
'振兴'
,
'新昌'
,
'江阴'
,
'顺天村'
],
'01002'
:
[
'小花园'
],
'01003'
:
[
'福海'
,
'定兴'
],
}
const
handleClick
=
async
()
=>
{
const
{
content
}
=
(
await
ajax
.
get
({
url
:
api
.
GET_ELEV_LIST
,
params
:
{
pageSize
:
1000
},
})
).
data
const
{
id
}
=
store
.
state
.
curView
elevData
.
value
=
content
.
filter
(
(
e
:
any
)
=>
id
&&
dic
[
id
].
includes
(
e
.
cmtName
)
)
showElevModal
.
value
=
true
}
return
{
return
{
curViewType
,
curViewType
,
summary
,
summary
,
...
@@ -95,6 +145,10 @@ export default defineComponent({
...
@@ -95,6 +145,10 @@ export default defineComponent({
toiletSituation
,
toiletSituation
,
barData
,
barData
,
chartOption
,
chartOption
,
elevNum
,
showElevModal
,
elevData
,
handleClick
,
}
}
},
},
})
})
...
@@ -150,4 +204,15 @@ export default defineComponent({
...
@@ -150,4 +204,15 @@ export default defineComponent({
display flex
display flex
.chart
.chart
flex 1
flex 1
.elev-modal
height 82vh
overflow-y auto
>div
border-bottom .01rem solid rgba(176,216,255,.1)
padding .05rem 0
p
font-size .09rem
&:first-child
font-size .11rem
font-weight bold
</
style
>
</
style
>
src/view/right/beauty-home.vue
View file @
a182c341
...
@@ -184,7 +184,7 @@ export default defineComponent({
...
@@ -184,7 +184,7 @@ export default defineComponent({
font-size .12rem
font-size .12rem
font-weight bold
font-weight bold
.elev-modal
.elev-modal
height 8
4
vh
height 8
2
vh
overflow-y auto
overflow-y auto
>div
>div
border-bottom .01rem solid rgba(176,216,255,.1)
border-bottom .01rem solid rgba(176,216,255,.1)
...
...
src/view/right/demand.vue
View file @
a182c341
...
@@ -61,7 +61,7 @@
...
@@ -61,7 +61,7 @@
<p>
{{ item.address }}
</p>
<p>
{{ item.address }}
</p>
<p>
{{ item.acceptTime }}
</p>
<p>
{{ item.acceptTime }}
</p>
</div>
</div>
<m-step
:steps=
"steps"
:current=
"
item.type
"
/>
<m-step
:steps=
"steps"
:current=
"
getCurrent(item.status)
"
/>
</div>
</div>
</m-scroll>
</m-scroll>
</div>
</div>
...
@@ -243,7 +243,14 @@ export default defineComponent({
...
@@ -243,7 +243,14 @@ export default defineComponent({
]
]
})
})
const
steps
=
ref
([
'发现'
,
'立案'
,
'派遣'
,
'处置'
,
'核查'
,
'结案'
])
const
steps
=
ref
([
'发现'
,
'立案'
,
'派遣'
,
'处置'
,
'核查'
,
'结案'
])
const
getCurrent
=
(
status
:
string
):
number
=>
{
if
(
!
status
)
return
0
if
(
status
.
includes
(
'受理'
))
return
1
if
(
status
.
includes
(
'结'
))
return
5
if
(
status
.
includes
(
'检查'
))
return
4
const
index
=
steps
.
value
.
indexOf
(
status
.
split
(
''
).
slice
(
1
).
join
(
''
))
return
index
<
0
?
0
:
index
}
return
{
return
{
summary
,
summary
,
showChart
,
showChart
,
...
@@ -256,6 +263,7 @@ export default defineComponent({
...
@@ -256,6 +263,7 @@ export default defineComponent({
searchKey
,
searchKey
,
trackEvent
,
trackEvent
,
workstationKind
,
workstationKind
,
getCurrent
,
}
}
},
},
})
})
...
...
src/view/right/ecology.vue
View file @
a182c341
...
@@ -86,7 +86,7 @@
...
@@ -86,7 +86,7 @@
</
template
>
</
template
>
<
script
lang=
"ts"
>
<
script
lang=
"ts"
>
import
{
defineComponent
,
ref
,
computed
,
nextTick
}
from
'vue'
import
{
defineComponent
,
ref
,
computed
}
from
'vue'
import
img1
from
'@/assets/images/img1.png'
import
img1
from
'@/assets/images/img1.png'
import
img2
from
'@/assets/images/img2.png'
import
img2
from
'@/assets/images/img2.png'
import
img3
from
'@/assets/images/img3.png'
import
img3
from
'@/assets/images/img3.png'
...
@@ -138,11 +138,12 @@ export default defineComponent({
...
@@ -138,11 +138,12 @@ export default defineComponent({
const
photos2
=
computed
(()
=>
const
photos2
=
computed
(()
=>
photosList
.
value
.
filter
((
e
)
=>
e
.
buildingType
.
includes
(
'文保'
))
photosList
.
value
.
filter
((
e
)
=>
e
.
buildingType
.
includes
(
'文保'
))
)
)
const
getPoints
=
async
(
name
:
string
)
=>
{
const
getPoints
=
(
name
:
string
)
=>
{
store
.
dispatch
(
'getEcologyPoints'
,
name
)
// TODO 撒点
// TODO 撒点
await
nextTick
()
console
.
log
(
console
.
log
(
`生态—
${
name
}
点位信息:`
,
store
.
state
.
ecologyPoints
)
`生态—
${
name
}
点位信息:`
,
store
.
state
.
ecologyPoints
.
filter
((
e
)
=>
e
.
labelName
===
name
)
)
}
}
return
{
return
{
ecologyList
,
ecologyList
,
...
...
src/view/right/emergency-store.vue
View file @
a182c341
...
@@ -43,7 +43,7 @@
...
@@ -43,7 +43,7 @@
<m-sub2>
重点关注楼宇
</m-sub2>
<m-sub2>
重点关注楼宇
</m-sub2>
<a
class=
"check-btn"
@
click=
"listModal = true"
>
查看清单>>
</a>
<a
class=
"check-btn"
@
click=
"listModal = true"
>
查看清单>>
</a>
<div
class=
"content"
>
<div
class=
"content"
>
<div
v-for=
"item in buildings
.slice(0, 9)
"
:key=
"item.id"
>
<div
v-for=
"item in buildings"
:key=
"item.id"
>
<div>
<div>
<span>
{{
item
.
projectName
}}
</span>
<span>
{{
item
.
projectName
}}
</span>
<img
src=
"@/assets/images/location.png"
/>
<img
src=
"@/assets/images/location.png"
/>
...
@@ -105,7 +105,6 @@ export default defineComponent({
...
@@ -105,7 +105,6 @@ export default defineComponent({
const
listModal
=
ref
(
false
)
const
listModal
=
ref
(
false
)
const
SOSMaterail
=
computed
(()
=>
store
.
state
.
pubulicSafeSOSMaterail
)
const
SOSMaterail
=
computed
(()
=>
store
.
state
.
pubulicSafeSOSMaterail
)
const
pieData
=
computed
(()
=>
store
.
state
.
pubulicSafePieData
)
const
pieData
=
computed
(()
=>
store
.
state
.
pubulicSafePieData
)
const
buildings
=
computed
(()
=>
store
.
state
.
pubulicSafeBuildings
)
const
outHouseWall
=
computed
(()
=>
store
.
state
.
pubulicSafeOutHouseWall
)
const
outHouseWall
=
computed
(()
=>
store
.
state
.
pubulicSafeOutHouseWall
)
const
year
=
ref
(
'2020'
)
//年份
const
year
=
ref
(
'2020'
)
//年份
...
@@ -116,6 +115,11 @@ export default defineComponent({
...
@@ -116,6 +115,11 @@ export default defineComponent({
{
name
:
'危险点数'
,
value
:
0
},
{
name
:
'危险点数'
,
value
:
0
},
])
])
const
buildings
=
computed
(()
=>
{
const
data
=
store
.
state
.
pubulicSafeBuildings
return
data
.
filter
((
e
)
=>
e
.
year
===
year
.
value
)
})
//切换年份
//切换年份
const
changeYear
=
(
value
:
string
)
=>
{
const
changeYear
=
(
value
:
string
)
=>
{
year
.
value
=
value
year
.
value
=
value
...
@@ -158,7 +162,7 @@ export default defineComponent({
...
@@ -158,7 +162,7 @@ export default defineComponent({
])
])
watch
(
watch
(
// 监听年份切
花
更改检查楼数 隐患点数 危险点数
// 监听年份切
换
更改检查楼数 隐患点数 危险点数
[()
=>
outHouseWall
.
value
,
()
=>
year
.
value
],
[()
=>
outHouseWall
.
value
,
()
=>
year
.
value
],
([
data
,
year
])
=>
{
([
data
,
year
])
=>
{
if
(
data
.
length
===
0
)
return
if
(
data
.
length
===
0
)
return
...
@@ -326,12 +330,14 @@ export default defineComponent({
...
@@ -326,12 +330,14 @@ export default defineComponent({
transform translateY(14%)
transform translateY(14%)
.content
.content
display flex
display flex
justify-content space-around
flex-wrap wrap
flex-wrap wrap
overflow-y auto
max-height 27vh
>div
>div
width 31%
width 31%
padding .05rem .08rem
padding .05rem .08rem
margin-top .08rem
margin-top .08rem
margin-right .06rem
border-radius .03rem
border-radius .03rem
background linear-gradient(to right bottom, rgba(124,139,154,.3), rgba(70,83,97,.3))
background linear-gradient(to right bottom, rgba(124,139,154,.3), rgba(70,83,97,.3))
box-shadow 0 0 .4rem 0 rgba(45,51,66,.5)
box-shadow 0 0 .4rem 0 rgba(45,51,66,.5)
...
@@ -345,6 +351,9 @@ export default defineComponent({
...
@@ -345,6 +351,9 @@ export default defineComponent({
img
img
width 0.1rem
width 0.1rem
height @width
height @width
cursor pointer
&:hover
transform scale(1.2)
.secRow
.secRow
>span
>span
display flex
display flex
...
...
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