Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
P
pc
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
wbx-PCAndMobi
pc
Commits
5ac2335c
Commit
5ac2335c
authored
Mar 16, 2021
by
Gakki
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
123
parent
8b7035c5
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
1122 additions
and
225 deletions
+1122
-225
routes.js
src/router/routes.js
+4
-0
basicInfo.vue
src/views/houseData/basicInfo.vue
+146
-218
basicInfoByLabel.vue
src/views/houseData/basicInfoByLabel.vue
+962
-0
labelRightSide.vue
src/views/label/labelRightSide.vue
+10
-7
No files found.
src/router/routes.js
View file @
5ac2335c
...
...
@@ -57,6 +57,10 @@ const appRoutes = [
path
:
'/house'
,
name
:
'house'
,
component
:
resolve
=>
require
([
'@/components/Layout/content-wrapper'
],
resolve
),
// ContentWrapper,
meta
:
{
title
:
'住宅信息'
,
menuPath
:
true
,
menuIcon
:
'profile'
,
hideInBread
:
true
,
requirePerm
:
false
},
children
:
[
{
path
:
'/houseData/basicInfoByLabel'
,
name
:
'basicInfoByLabel'
,
component
:
resolve
=>
require
([
'@/views/houseData/basicInfoByLabel'
],
resolve
),
//basicInfo,
meta
:
{
title
:
'小区列表-标签'
,
menuPath
:
true
,
hideInBread
:
false
,
},
},
{
// 小区列表
path
:
'/houseData/basicInfo'
,
name
:
'basicInfo'
,
component
:
resolve
=>
require
([
'@/views/houseData/basicInfo'
],
resolve
),
//basicInfo,
meta
:
{
title
:
'小区列表'
,
menuPath
:
true
,
hideInBread
:
false
,
},
...
...
src/views/houseData/basicInfo.vue
View file @
5ac2335c
// 小区列表
<
template
>
<div
class=
"routerWapper"
>
{{
checkedKeys
}}
<a-row
type=
'flex'
>
<a-col
flex=
'250px'
style=
"overflow: hidden"
>
<div
v-if=
"$route.path == '/houseData/basicInfo'"
class=
"layoutMargin layoutPadding"
>
<a-tree
@
check=
'onCheck'
checkable
:tree-data=
"treeData"
:replace-fields=
"replaceFields"
/>
<!--
<a-tree
v-model=
'checkedKeys'
checkable
:tree-data=
"treeData"
:replace-fields=
"replaceFields"
:selected-keys=
"selectedKeys"
@
select=
"onSelect"
/>
-->
</div>
</a-col>
<a-col
flex=
'78%'
>
<div
v-if=
"$route.path == '/houseData/basicInfo'"
class=
"layoutMargin layoutPadding"
>
<a-form
:form=
"form"
class=
"protalForm"
>
<a-row
class=
"formItem"
type=
"flex"
:justify=
"simpleSearchForm ? 'end' : ''"
align=
"top"
:gutter=
"simpleSearchForm ? 16 : 0"
>
<a-col
span=
"8"
>
<a-form-item
label=
"小区名称"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-input
placeholder=
"请输入查询内容"
v-decorator=
"['stNameFrst_l']"
/>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
label=
"小区地址"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-input
placeholder=
"请输入查询内容"
v-decorator=
"['addrFrst_l']"
/>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
label=
"房办"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-select
showSearch
allowClear
placeholder=
"请选择查询内容"
v-decorator=
"['c.hoId']"
@
change=
"handleChangefb"
>
<a-select-option
v-for=
"(item) in hos"
:key=
"item.hoId"
:value=
"item.cspName+'#'+item.hoId"
>
{{
item
.
hoName
}}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
label=
"门牌幢地址"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-input
placeholder=
"请输入查询内容"
v-decorator=
"['unitAddr']"
/>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
label=
"物业公司名称"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-select
showSearch
allowClear
placeholder=
"请选择查询内容"
v-decorator=
"['c.cspId'] "
@
change=
"changeWy"
>
<a-select-option
v-for=
"(item) in wuye"
:key=
"item.cspId"
:value=
" item.cspName+'#'+item.cspId"
>
{{
item
.
cspName
}}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
label=
"街道名称"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-select
showSearch
allowClear
placeholder=
"请选择查询内容"
v-decorator=
"['c.streetId']"
@
change=
"changeStreet"
>
<a-select-option
v-for=
"(item) in street"
:key=
"item.streetId"
:value=
"item.strName+'#'+item.streetId"
>
{{
item
.
strName
}}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
v-if=
"!simpleSearchForm"
label=
"更新时间"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-range-picker
v-decorator=
"['syncTime_betn']"
/>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
v-if=
"!simpleSearchForm"
label=
"成立业主大会"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-select
allowClear
placeholder=
"请选择查询内容"
v-decorator=
"['isHoc']"
@
change=
"changeIsHoc"
>
<a-select-option
value=
"false"
>
否
</a-select-option>
<a-select-option
value=
"true"
>
是
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
v-if=
"!simpleSearchForm"
label=
"物业合同服务到期日"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-date-picker
placeholder=
"请选择查询内容"
v-decorator=
"['cspContractEndDate_lt']"
/>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
v-if=
"!simpleSearchForm"
label=
"小区性质"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-select
v-decorator=
"['stKind_in']"
mode=
"multiple"
style=
"width: 100%"
placeholder=
"请选择小区性质(多选)"
@
change=
"changeType"
allowClear
>
<a-select-option
v-for=
"i in typeList"
:key=
"i.key"
>
{{
i
.
name
}}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<div
v-if=
"$route.path == '/houseData/basicInfo'"
class=
"layoutMargin layoutPadding"
>
<a-form
:form=
"form"
class=
"protalForm"
>
<a-row
class=
"formItem"
type=
"flex"
:justify=
"simpleSearchForm ? 'end' : ''"
align=
"top"
:gutter=
"simpleSearchForm ? 16 : 0"
>
<a-col
span=
"8"
>
<a-form-item
label=
"小区名称"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-input
placeholder=
"请输入查询内容"
v-decorator=
"['stNameFrst_l']"
/>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
label=
"小区地址"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-input
placeholder=
"请输入查询内容"
v-decorator=
"['addrFrst_l']"
/>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
label=
"房办"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-select
showSearch
allowClear
placeholder=
"请选择查询内容"
v-decorator=
"['c.hoId']"
@
change=
"handleChangefb"
>
<a-select-option
v-for=
"(item) in hos"
:key=
"item.hoId"
:value=
"item.cspName+'#'+item.hoId"
>
{{
item
.
hoName
}}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
label=
"门牌幢地址"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-input
placeholder=
"请输入查询内容"
v-decorator=
"['unitAddr']"
/>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
label=
"物业公司名称"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-select
showSearch
allowClear
placeholder=
"请选择查询内容"
v-decorator=
"['c.cspId'] "
@
change=
"changeWy"
>
<a-select-option
v-for=
"(item) in wuye"
:key=
"item.cspId"
:value=
" item.cspName+'#'+item.cspId"
>
{{
item
.
cspName
}}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
label=
"街道名称"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-select
showSearch
allowClear
placeholder=
"请选择查询内容"
v-decorator=
"['c.streetId']"
@
change=
"changeStreet"
>
<a-select-option
v-for=
"(item) in street"
:key=
"item.streetId"
:value=
"item.strName+'#'+item.streetId"
>
{{
item
.
strName
}}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
v-if=
"!simpleSearchForm"
label=
"更新时间"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-range-picker
v-decorator=
"['syncTime_betn']"
/>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
v-if=
"!simpleSearchForm"
label=
"成立业主大会"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-select
allowClear
placeholder=
"请选择查询内容"
v-decorator=
"['isHoc']"
@
change=
"changeIsHoc"
>
<a-select-option
value=
"false"
>
否
</a-select-option>
<a-select-option
value=
"true"
>
是
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
v-if=
"!simpleSearchForm"
label=
"物业合同服务到期日"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-date-picker
placeholder=
"请选择查询内容"
v-decorator=
"['cspContractEndDate_lt']"
/>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
v-if=
"!simpleSearchForm"
label=
"小区性质"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-select
v-decorator=
"['stKind_in']"
mode=
"multiple"
style=
"width: 100%"
placeholder=
"请选择小区性质(多选)"
@
change=
"changeType"
allowClear
>
<a-select-option
v-for=
"i in typeList"
:key=
"i.key"
>
{{
i
.
name
}}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
v-if=
"!simpleSearchForm"
label=
"小区层数"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-select
v-decorator=
"['unitKind_in']"
mode=
"multiple"
style=
"width: 100%"
placeholder=
"请选择小区层数(多选)"
@
change=
"changeLevel"
allowClear
>
<a-select-option
v-for=
"i in levelType"
:key=
"i.key"
>
{{
i
.
name
}}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
v-if=
"!simpleSearchForm"
label=
"小区层数"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-select
v-decorator=
"['unitKind_in']"
mode=
"multiple"
style=
"width: 100%"
placeholder=
"请选择小区层数(多选)"
@
change=
"changeLevel"
allowClear
>
<a-select-option
v-for=
"i in levelType"
:key=
"i.key"
>
{{
i
.
name
}}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
v-if=
"!simpleSearchForm"
label=
"物业服务类型"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-select
allowClear
placeholder=
"请选择查询内容"
v-decorator=
"['wuyeServiceType'] "
@
change=
"changeServiceType"
>
<a-select-option
v-for=
"(item) in wuyeServiceType"
:key=
"item.key"
:value=
"item.key"
>
{{
item
.
name
}}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
v-if=
"!simpleSearchForm"
label=
"物业服务类型"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-select
allowClear
placeholder=
"请选择查询内容"
v-decorator=
"['wuyeServiceType'] "
@
change=
"changeServiceType"
>
<a-select-option
v-for=
"(item) in wuyeServiceType"
:key=
"item.key"
:value=
"item.key"
>
{{
item
.
name
}}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
v-if=
"!simpleSearchForm"
label=
"竣工日期"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-select
allowClear
placeholder=
"请选择查询内容"
v-decorator=
"['finishDate'] "
@
change=
"changeFinishDate"
>
<a-select-option
v-for=
"(item) in finishDate"
:key=
"item.key"
:value=
"item.key"
>
{{
item
.
name
}}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
v-if=
"!simpleSearchForm"
label=
"竣工日期"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-select
allowClear
placeholder=
"请选择查询内容"
v-decorator=
"['finishDate'] "
@
change=
"changeFinishDate"
>
<a-select-option
v-for=
"(item) in finishDate"
:key=
"item.key"
:value=
"item.key"
>
{{
item
.
name
}}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col
span=
"8"
v-if=
"$store.state.isXuhui"
>
<a-form-item
v-if=
"!simpleSearchForm"
label=
"邻小汇成立状态"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-select
allowClear
placeholder=
"请选择查询内容"
v-decorator=
"['neighbourType'] "
@
change=
"changeNeighbourType"
>
<a-select-option
v-for=
"(item) in neighbourType"
:key=
"item.key"
:value=
"item.key"
>
{{
item
.
name
}}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<!-- 动态搜索条件 -->
<template
v-if=
"customKeyEnable"
>
<a-col
span=
"8"
v-for=
"i in searchList"
:key=
"i.id"
>
<a-form-item
:label=
"i.keyName"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-select
@
change=
"handleChangeZdy(i.keyCode,$event)"
v-if=
"i.compntType == 'select' || i.compntType == 'radio'"
showSearch
allowClear
placeholder=
"请选择查询内容"
v-decorator=
"[i.keyCode]"
>
<a-select-option
v-for=
"(item) in JSON.parse(i.sltJson)"
:key=
"item"
:value=
"item"
>
{{
item
}}
</a-select-option>
</a-select>
<a-select
@
change=
"handleChangeZdy(i.keyCode,$event)"
mode=
"multiple"
v-else-if=
"i.compntType =='checkbox'"
placeholder=
"请选择查询内容(多选)"
v-decorator=
"[i.keyCode]"
>
<a-select-option
v-for=
"(item) in JSON.parse(i.sltJson)"
:key=
"item"
:value=
"item"
>
{{
item
}}
</a-select-option>
</a-select>
<a-date-picker
@
change=
"handleChangeZdy(i.keyCode,$event)"
v-else-if=
"i.compntType =='date'"
v-decorator=
"[i.keyCode]"
/>
<a-input
v-else-if=
"i.compntType =='num'"
type=
"tel"
placeholder=
"请输入查询内容"
v-decorator=
"[i.keyCode]"
/>
<a-input
v-else
placeholder=
"请输入查询内容"
v-decorator=
"[i.keyCode]"
/>
</a-form-item>
</a-col>
</
template
>
<a-col
span=
"8"
v-if=
"$store.state.isXuhui"
>
<a-form-item
v-if=
"!simpleSearchForm"
label=
"邻小汇成立状态"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-select
allowClear
placeholder=
"请选择查询内容"
v-decorator=
"['neighbourType'] "
@
change=
"changeNeighbourType"
>
<a-select-option
v-for=
"(item) in neighbourType"
:key=
"item.key"
:value=
"item.key"
>
{{
item
.
name
}}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<!-- 动态搜索条件 -->
<template
v-if=
"customKeyEnable"
>
<a-col
span=
"8"
v-for=
"i in searchList"
:key=
"i.id"
>
<a-form-item
:label=
"i.keyName"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-select
@
change=
"handleChangeZdy(i.keyCode,$event)"
v-if=
"i.compntType == 'select' || i.compntType == 'radio'"
showSearch
allowClear
placeholder=
"请选择查询内容"
v-decorator=
"[i.keyCode]"
>
<a-select-option
v-for=
"(item) in JSON.parse(i.sltJson)"
:key=
"item"
:value=
"item"
>
{{
item
}}
</a-select-option>
</a-select>
<a-select
@
change=
"handleChangeZdy(i.keyCode,$event)"
mode=
"multiple"
v-else-if=
"i.compntType =='checkbox'"
placeholder=
"请选择查询内容(多选)"
v-decorator=
"[i.keyCode]"
>
<a-select-option
v-for=
"(item) in JSON.parse(i.sltJson)"
:key=
"item"
:value=
"item"
>
{{
item
}}
</a-select-option>
</a-select>
<a-date-picker
@
change=
"handleChangeZdy(i.keyCode,$event)"
v-else-if=
"i.compntType =='date'"
v-decorator=
"[i.keyCode]"
/>
<a-input
v-else-if=
"i.compntType =='num'"
type=
"tel"
placeholder=
"请输入查询内容"
v-decorator=
"[i.keyCode]"
/>
<a-input
v-else
placeholder=
"请输入查询内容"
v-decorator=
"[i.keyCode]"
/>
</a-form-item>
</a-col>
</
template
>
<!-- 功能按钮区 -->
<a-col
span=
"24"
class=
"algin-right"
>
<a-button
v-if=
"!$store.state.isXuhui && $api.BASE_URL.indexOf('211.136.105')!=-1"
@
click=
"exportEWM"
>
导出二维码
</a-button>
<a-button
@
click=
"exportList"
>
导出数据
</a-button>
<a-button
@
click=
"reset"
>
重置
</a-button>
<a-button
type=
"primary"
@
click=
"search"
>
搜索
</a-button>
<a-button
type=
"primary"
v-if=
"simpleSearchForm"
@
click=
"showMoreSearch"
>
更多搜索
</a-button
>
<a-button
type=
"primary"
v-if=
"!simpleSearchForm"
@
click=
"closeMoreSearch"
>
简单搜索
</a-button
>
</a-col>
</a-row>
</a-form>
<!-- 功能按钮区 -->
<a-col
span=
"24"
class=
"algin-right"
>
<a-button
v-if=
"!$store.state.isXuhui && $api.BASE_URL.indexOf('211.136.105')!=-1"
@
click=
"exportEWM"
>
导出二维码
</a-button>
<a-button
@
click=
"exportList"
>
导出数据
</a-button>
<a-button
@
click=
"reset"
>
重置
</a-button>
<a-button
type=
"primary"
@
click=
"search"
>
搜索
</a-button>
<a-button
type=
"primary"
v-if=
"simpleSearchForm"
@
click=
"showMoreSearch"
>
更多搜索
</a-button
>
<a-button
type=
"primary"
v-if=
"!simpleSearchForm"
@
click=
"closeMoreSearch"
>
简单搜索
</a-button
>
</a-col>
</a-row>
</a-form>
<!-- <p class="gayLine noline" /> -->
<div
class=
"portalTableOperates"
>
<tableAndMut
ref=
"childTab"
:tableData=
"tableData"
:pagination=
"pagination"
:tbl=
"tbl"
/>
</div>
</div>
<RouterWapper
v-else
></RouterWapper>
</a-col>
</a-row>
</div>
<RouterWapper
v-else
></RouterWapper>
</div>
</template>
<
script
>
const
treeData
=
[]
export
default
{
name
:
'basicInfo'
,
data
()
{
return
{
treeData
,
selectedKeys
:
[],
replaceFields
:
{
children
:
'children'
,
title
:
'labelName'
,
key
:
'id'
},
checkedKeys
:
[],
simpleSearchForm
:
true
,
// 展示、收取简单搜索开关,true为简单搜索
levelType
:
[
...
...
@@ -432,50 +400,12 @@ export default {
this
.
$nextTick
(
function
()
{
// setTimeout(() => {
this
.
getConfig
(),
this
.
getSearchParams
(),
this
.
getLabelList
()
this
.
getSearchParams
()
// }, 0)
})
}
},
methods
:
{
onCheck
(
keys
,
node
)
{
// console.log(keys, node.node.$children.length)
this
.
checkedKeys
=
[]
if
(
node
.
node
.
$children
.
length
>
0
)
{
// 一级菜单(有若干个二级菜单)
console
.
log
(
'一级菜单'
)
for
(
let
i
=
0
;
i
<
node
.
node
.
$children
.
length
;
i
++
)
{
// 一级菜单
// console.log(node.checkedNodesPositions[i].pos.split('-').length)
if
(
node
.
checkedNodesPositions
[
i
].
pos
.
split
(
'-'
).
length
==
3
)
{
this
.
checkedKeys
.
push
(
keys
[
i
])
}
}
}
else
{
console
.
log
(
'二级菜单'
)
for
(
let
i
=
0
;
i
<
node
.
checkedNodesPositions
.
length
;
i
++
)
{
// 一级菜单
// console.log(node.checkedNodesPositions[i].pos.split('-').length)
if
(
node
.
checkedNodesPositions
[
i
].
pos
.
split
(
'-'
).
length
==
2
)
{
this
.
checkedKeys
.
push
(
keys
[
i
])
}
}
}
// console.log(this.checkedKeys.toString())
},
getLabelList
()
{
this
.
$ajax
.
get
({
url
:
this
.
$api
.
GET_LABEL_LIST
,
}).
then
(
res
=>
{
if
(
res
.
code
==
200
)
{
this
.
treeData
=
this
.
$com
.
confirm
(
res
,
'data.content'
,
[])
console
.
log
(
JSON
.
stringify
(
this
.
treeData
))
}
})
},
onSelect
(
selectedKeys
,
node
)
{
console
.
log
(
selectedKeys
,
node
.
node
.
$children
.
length
)
},
getConfig
()
{
this
.
$ajax
.
get
({
url
:
this
.
$api
.
GET_CONFIG
,
...
...
@@ -616,7 +546,6 @@ export default {
// 'finishDate_lt': !!this.isBeforeTwoThousand? '2000-01-01': '',
'finishDate_lt'
:
this
.
isBeforeTwoThousand
==
'1'
?
'2020-01-01'
:
''
,
'finishDate_gt'
:
this
.
isBeforeTwoThousand
==
'2'
?
'2020-01-01'
:
''
,
'labelIds'
:
this
.
checkedKeys
.
toString
(),
'cspContractEndDate_lt'
:
!!
this
.
form
.
getFieldValue
(
'cspContractEndDate_lt'
)
?
this
.
$moment
(
this
.
form
.
getFieldValue
(
'cspContractEndDate_lt'
)).
format
(
'YYYY-MM-DD'
)
:
''
},
obj
,
isHocId
)
// 融合obj 和isHocId 到入参
...
...
@@ -626,7 +555,6 @@ export default {
this
.
form
.
setFieldsValue
({
'c.cspId'
:
this
.
$route
.
query
.
name
+
'#'
+
this
.
$route
.
query
.
id
})
searchParams
=
Object
.
assign
(
searchParams
,
{},
{
'c.cspId'
:
this
.
$route
.
query
.
id
,
'c.createTime_desc'
:
'desc'
})
}
this
.
searchParams
=
searchParams
this
.
$ajax
.
get
({
url
:
this
.
$api
.
GET_BASIC_LIST
,
...
...
src/views/houseData/basicInfoByLabel.vue
0 → 100644
View file @
5ac2335c
// 小区列表
<
template
>
<div
class=
"routerWapper"
>
{{
checkedKeys
}}
<a-row
type=
'flex'
>
<a-col
flex=
'250px'
style=
"overflow: hidden"
>
<div
v-if=
"$route.path == '/houseData/basicInfoByLabel'"
class=
"layoutMargin layoutPadding"
>
<a-tree
@
check=
'onCheck'
checkable
:tree-data=
"treeData"
:replace-fields=
"replaceFields"
/>
<!--
<a-tree
v-model=
'checkedKeys'
checkable
:tree-data=
"treeData"
:replace-fields=
"replaceFields"
:selected-keys=
"selectedKeys"
@
select=
"onSelect"
/>
-->
</div>
</a-col>
<a-col
flex=
'78%'
>
<div
v-if=
"$route.path == '/houseData/basicInfoByLabel'"
class=
"layoutMargin layoutPadding"
>
<a-form
:form=
"form"
class=
"protalForm"
>
<a-row
class=
"formItem"
type=
"flex"
:justify=
"simpleSearchForm ? 'end' : ''"
align=
"top"
:gutter=
"simpleSearchForm ? 16 : 0"
>
<a-col
span=
"8"
>
<a-form-item
label=
"小区名称"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-input
placeholder=
"请输入查询内容"
v-decorator=
"['stNameFrst_l']"
/>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
label=
"小区地址"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-input
placeholder=
"请输入查询内容"
v-decorator=
"['addrFrst_l']"
/>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
label=
"房办"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-select
showSearch
allowClear
placeholder=
"请选择查询内容"
v-decorator=
"['c.hoId']"
@
change=
"handleChangefb"
>
<a-select-option
v-for=
"(item) in hos"
:key=
"item.hoId"
:value=
"item.cspName+'#'+item.hoId"
>
{{
item
.
hoName
}}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
label=
"门牌幢地址"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-input
placeholder=
"请输入查询内容"
v-decorator=
"['unitAddr']"
/>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
label=
"物业公司名称"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-select
showSearch
allowClear
placeholder=
"请选择查询内容"
v-decorator=
"['c.cspId'] "
@
change=
"changeWy"
>
<a-select-option
v-for=
"(item) in wuye"
:key=
"item.cspId"
:value=
" item.cspName+'#'+item.cspId"
>
{{
item
.
cspName
}}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
label=
"街道名称"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-select
showSearch
allowClear
placeholder=
"请选择查询内容"
v-decorator=
"['c.streetId']"
@
change=
"changeStreet"
>
<a-select-option
v-for=
"(item) in street"
:key=
"item.streetId"
:value=
"item.strName+'#'+item.streetId"
>
{{
item
.
strName
}}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
v-if=
"!simpleSearchForm"
label=
"更新时间"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-range-picker
v-decorator=
"['syncTime_betn']"
/>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
v-if=
"!simpleSearchForm"
label=
"成立业主大会"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-select
allowClear
placeholder=
"请选择查询内容"
v-decorator=
"['isHoc']"
@
change=
"changeIsHoc"
>
<a-select-option
value=
"false"
>
否
</a-select-option>
<a-select-option
value=
"true"
>
是
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
v-if=
"!simpleSearchForm"
label=
"物业合同服务到期日"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-date-picker
placeholder=
"请选择查询内容"
v-decorator=
"['cspContractEndDate_lt']"
/>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
v-if=
"!simpleSearchForm"
label=
"小区性质"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-select
v-decorator=
"['stKind_in']"
mode=
"multiple"
style=
"width: 100%"
placeholder=
"请选择小区性质(多选)"
@
change=
"changeType"
allowClear
>
<a-select-option
v-for=
"i in typeList"
:key=
"i.key"
>
{{
i
.
name
}}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
v-if=
"!simpleSearchForm"
label=
"小区层数"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-select
v-decorator=
"['unitKind_in']"
mode=
"multiple"
style=
"width: 100%"
placeholder=
"请选择小区层数(多选)"
@
change=
"changeLevel"
allowClear
>
<a-select-option
v-for=
"i in levelType"
:key=
"i.key"
>
{{
i
.
name
}}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
v-if=
"!simpleSearchForm"
label=
"物业服务类型"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-select
allowClear
placeholder=
"请选择查询内容"
v-decorator=
"['wuyeServiceType'] "
@
change=
"changeServiceType"
>
<a-select-option
v-for=
"(item) in wuyeServiceType"
:key=
"item.key"
:value=
"item.key"
>
{{
item
.
name
}}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col
span=
"8"
>
<a-form-item
v-if=
"!simpleSearchForm"
label=
"竣工日期"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-select
allowClear
placeholder=
"请选择查询内容"
v-decorator=
"['finishDate'] "
@
change=
"changeFinishDate"
>
<a-select-option
v-for=
"(item) in finishDate"
:key=
"item.key"
:value=
"item.key"
>
{{
item
.
name
}}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col
span=
"8"
v-if=
"$store.state.isXuhui"
>
<a-form-item
v-if=
"!simpleSearchForm"
label=
"邻小汇成立状态"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-select
allowClear
placeholder=
"请选择查询内容"
v-decorator=
"['neighbourType'] "
@
change=
"changeNeighbourType"
>
<a-select-option
v-for=
"(item) in neighbourType"
:key=
"item.key"
:value=
"item.key"
>
{{
item
.
name
}}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<!-- 动态搜索条件 -->
<template
v-if=
"customKeyEnable"
>
<a-col
span=
"8"
v-for=
"i in searchList"
:key=
"i.id"
>
<a-form-item
:label=
"i.keyName"
class=
"formItem"
:label-col=
"
{span:10}" :wrapper-col="{span:14}">
<a-select
@
change=
"handleChangeZdy(i.keyCode,$event)"
v-if=
"i.compntType == 'select' || i.compntType == 'radio'"
showSearch
allowClear
placeholder=
"请选择查询内容"
v-decorator=
"[i.keyCode]"
>
<a-select-option
v-for=
"(item) in JSON.parse(i.sltJson)"
:key=
"item"
:value=
"item"
>
{{
item
}}
</a-select-option>
</a-select>
<a-select
@
change=
"handleChangeZdy(i.keyCode,$event)"
mode=
"multiple"
v-else-if=
"i.compntType =='checkbox'"
placeholder=
"请选择查询内容(多选)"
v-decorator=
"[i.keyCode]"
>
<a-select-option
v-for=
"(item) in JSON.parse(i.sltJson)"
:key=
"item"
:value=
"item"
>
{{
item
}}
</a-select-option>
</a-select>
<a-date-picker
@
change=
"handleChangeZdy(i.keyCode,$event)"
v-else-if=
"i.compntType =='date'"
v-decorator=
"[i.keyCode]"
/>
<a-input
v-else-if=
"i.compntType =='num'"
type=
"tel"
placeholder=
"请输入查询内容"
v-decorator=
"[i.keyCode]"
/>
<a-input
v-else
placeholder=
"请输入查询内容"
v-decorator=
"[i.keyCode]"
/>
</a-form-item>
</a-col>
</
template
>
<!-- 功能按钮区 -->
<a-col
span=
"24"
class=
"algin-right"
>
<a-button
v-if=
"!$store.state.isXuhui && $api.BASE_URL.indexOf('211.136.105')!=-1"
@
click=
"exportEWM"
>
导出二维码
</a-button>
<a-button
@
click=
"exportList"
>
导出数据
</a-button>
<a-button
@
click=
"reset"
>
重置
</a-button>
<a-button
type=
"primary"
@
click=
"search"
>
搜索
</a-button>
<a-button
type=
"primary"
v-if=
"simpleSearchForm"
@
click=
"showMoreSearch"
>
更多搜索
</a-button
>
<a-button
type=
"primary"
v-if=
"!simpleSearchForm"
@
click=
"closeMoreSearch"
>
简单搜索
</a-button
>
</a-col>
</a-row>
</a-form>
<!-- <p class="gayLine noline" /> -->
<div
class=
"portalTableOperates"
>
<tableAndMut
ref=
"childTab"
:tableData=
"tableData"
:pagination=
"pagination"
:tbl=
"tbl"
/>
</div>
</div>
<RouterWapper
v-else
></RouterWapper>
</a-col>
</a-row>
</div>
</template>
<
script
>
const
treeData
=
[]
export
default
{
name
:
'basicInfo'
,
data
()
{
return
{
treeData
,
selectedKeys
:
[],
replaceFields
:
{
children
:
'children'
,
title
:
'labelName'
,
key
:
'id'
},
checkedKeys
:
[],
simpleSearchForm
:
true
,
// 展示、收取简单搜索开关,true为简单搜索
levelType
:
[
{
name
:
'高层'
,
key
:
'1'
},
{
name
:
'多层'
,
key
:
'2'
},
{
name
:
'别墅'
,
key
:
'3'
},
],
finishDate
:
[
{
name
:
'2000年以前'
,
key
:
'1'
},
{
name
:
'2000年以后'
,
key
:
'2'
},
],
neighbourType
:
[
{
name
:
'未成立'
,
key
:
'1'
},
{
name
:
'已成立'
,
key
:
'2'
},
{
name
:
'前期筹备中'
,
key
:
'3'
},
],
wuyeServiceType
:
[
{
name
:
'专业委托物业管理(前期阶段)'
,
key
:
'1'
},
{
name
:
'专业委托物业管理(业主大会阶段)'
,
key
:
'2'
},
{
name
:
'无人管理'
,
key
:
'3'
},
{
name
:
'自治管理'
,
key
:
'4'
},
{
name
:
'直管物业(公房)'
,
key
:
'5'
},
{
name
:
'单位自管(公房)'
,
key
:
'6'
},
],
customKeyEnable
:
false
,
// cookie里存的是否开启自定义字段
typeList
:
[
//小区性质的数据
{
name
:
'商品房'
,
key
:
'01'
},
{
name
:
'动迁房'
,
key
:
'02'
},
{
name
:
'共有产权保障房'
,
key
:
'03'
},
{
name
:
'售后房'
,
key
:
'04'
},
{
name
:
'直管公房'
,
key
:
'05'
},
{
name
:
'混合'
,
key
:
'06'
},
{
name
:
'系统公房'
,
key
:
'07'
},
{
name
:
'集体土地集资房'
,
key
:
'08'
},
{
name
:
'军产'
,
key
:
'09'
},
{
name
:
'私产'
,
key
:
'10'
},
{
name
:
'公租房'
,
key
:
'11'
},
],
tbl
:
'tbl_community'
,
// 当前表名,
searchList
:
[],
// 动态渲染的搜索列表
keyCodeList
:
[],
// 动态搜索的keycode列表
searchParams
:
{},
// 搜索的列表
searchForm
:
{},
street
:
[],
// 街道数据
hos
:
[],
// 房办数据
wuye
:
[],
// 物业数据
columns
:
[
//表格展示的列
{
title
:
'小区名称'
,
dataIndex
:
'stNameFrst'
,
key
:
'stNameFrst'
},
{
title
:
'小区地址'
,
dataIndex
:
'addrFrst'
,
key
:
'addrFrst'
},
{
title
:
'房管办'
,
dataIndex
:
'hoName'
,
key
:
'hoName'
},
{
title
:
'街道'
,
dataIndex
:
'strName'
,
key
:
'strName'
},
{
title
:
'小区性质'
,
dataIndex
:
'stKind'
,
key
:
'stKind'
},
{
title
:
'小区类型'
,
dataIndex
:
'sectType'
,
key
:
'sectType'
},
{
title
:
'物业服务企业'
,
dataIndex
:
'cspName'
,
key
:
'cspName'
},
{
title
:
'小区管理处'
,
dataIndex
:
'csName'
,
key
:
'csName'
},
{
title
:
'是否成立业主大会'
,
dataIndex
:
'hocId'
,
key
:
'hocId'
},
{
title
:
'操作'
,
dataIndex
:
'action'
,
width
:
160
,
scopedSlots
:
{
customRender
:
'action'
}
}
],
pagination
:
{
// 分页信息
pageNo
:
1
,
pageSize
:
20
,
current
:
1
,
defaultCurrent
:
1
,
defaultPageSize
:
20
,
showQuickJumper
:
true
,
onChange
:
this
.
pageChange
,
showSizeChanger
:
true
,
onShowSizeChange
:
this
.
showSizeChange
,
pageSizeOptions
:
[
'10'
,
'20'
,
'50'
,
'100'
],
total
:
0
,
// 小区总数
showTotal
:
total
=>
`总条数:
${
total
}
`
,
totStCnstArea
:
''
,
// 房屋总面积 平方米
totUnits
:
''
,
// 总门牌数 幢
totHous
:
''
,
// 总分户数 户
},
tableData
:
[],
stLevel
:
''
,
cspServiceType
:
''
,
tableName
:
''
,
// 邻里小汇
formed
:
''
,
// 邻里小汇
type
:
''
,
// 邻里小汇
isBeforeTwoThousand
:
''
,
twoThousandValue
:
''
,
personalizedKey
:
''
}
},
beforeCreate
()
{
// 页面进来创建form
this
.
form
=
this
.
$form
.
createForm
(
this
)
},
computed
:
{
formItemLabelCol
()
{
let
labelCol
=
{}
if
(
this
.
simpleSearchForm
)
{
labelCol
=
{
span
:
0
}
}
else
{
labelCol
=
{
span
:
8
}
}
return
labelCol
},
formItemWrapperCol
()
{
let
wrapperCol
=
{}
if
(
this
.
simpleSearchForm
)
{
wrapperCol
=
{
span
:
24
}
}
else
{
wrapperCol
=
{
span
:
16
}
}
return
wrapperCol
}
},
created
()
{
// 进页面获取数据
this
.
customKeyEnable
=
this
.
$cookie
.
get
(
'customKeyEnable'
)
this
.
getHos
()
this
.
getWy
()
this
.
getStreet
()
},
mounted
(){
console
.
log
(
this
.
$api
.
BASE_URL
.
indexOf
(
'211.136.105'
)
!=-
1
)
if
(
this
.
$route
.
name
==
'basicInfoByLabel'
){
this
.
$nextTick
(
function
()
{
// setTimeout(() => {
this
.
getConfig
(),
this
.
getSearchParams
(),
this
.
getLabelList
()
// }, 0)
})
}
},
methods
:
{
onCheck
(
keys
,
node
)
{
// console.log(keys, node.node.$children.length)
this
.
checkedKeys
=
[]
console
.
log
(
keys
,
node
)
for
(
let
i
=
0
;
i
<
keys
.
length
;
i
++
)
{
console
.
log
(
keys
[
i
])
}
// if(node.node.$children.length > 0) { // 一级菜单(有若干个二级菜单)
// console.log('一级菜单')
// for(let i = 0; i
<
node
.
node
.
$children
.
length
;
i
++
)
{
// if(node.checkedNodesPositions[i].pos.split('-').length == 3) {
// this.checkedKeys.push(keys[i])
// }
// }
// } else {
// console.log('二级菜单')
// for(let i = 0; i
<
node
.
checkedNodesPositions
.
length
;
i
++
)
{
// console.log(node.checkedNodesPositions[i].pos.split('-'))
// if(node.checkedNodesPositions[i].pos.split('-').length == 2) {
// this.checkedKeys.push(keys[i])
// }
// }
// }
// this.$ajax.get({
// url: this.$api.GET_LABEL_DETAIL.replace('{id}', selectedKeys[0]),
// params: Object.assign({}, searchParams, {
// pageSize: this.pagination.pageSize,
// pageNo: this.pagination.pageNo
// })
// }).then(res => {
// })
// console.log(this.checkedKeys.toString())
},
getLabelList
()
{
this
.
$ajax
.
get
({
url
:
this
.
$api
.
GET_LABEL_LIST
,
}).
then
(
res
=>
{
if
(
res
.
code
==
200
)
{
this
.
treeData
=
this
.
$com
.
confirm
(
res
,
'data.content'
,
[])
console
.
log
(
JSON
.
stringify
(
this
.
treeData
))
}
})
},
onSelect
(
selectedKeys
,
node
)
{
console
.
log
(
selectedKeys
,
node
.
node
.
$children
.
length
)
},
getConfig
()
{
this
.
$ajax
.
get
({
url
:
this
.
$api
.
GET_CONFIG
,
}).
then
(
res
=>
{
if
(
res
.
code
===
'200'
)
{
let
inner
=
res
.
data
.
content
this
.
personalizedKey
=
inner
.
formedKey
}
})
},
closeMoreSearch
()
{
this
.
simpleSearchForm
=
true
},
showMoreSearch
()
{
this
.
simpleSearchForm
=
false
},
pageChange
(
page
){
//分页切换
this
.
pagination
.
pageNo
=
page
this
.
pagination
.
current
=
page
this
.
getList
()
},
showSizeChange
(
current
,
size
)
{
//每页条数切换
this
.
pagination
.
pageNo
=
1
this
.
pagination
.
current
=
1
this
.
pagination
.
pageSize
=
size
this
.
getList
()
},
reset
(){
// 重置表单
this
.
form
.
resetFields
()
this
.
stLevel
=
''
this
.
cspServiceType
=
''
this
.
type
=
''
this
.
isBeforeTwoThousand
=
''
this
.
pagination
.
pageNo
=
1
this
.
pagination
.
current
=
1
this
.
pagination
.
pageSize
=
20
this
.
getList
()
},
search
()
{
// 搜索按钮
this
.
pagination
.
current
=
1
this
.
pagination
.
pageNo
=
1
//需要发送ajax
this
.
getList
()
},
changeWy
(
value
){
// 切换物业
let
query
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
$route
.
query
))
query
=
{
id
:
''
,
name
:
''
}
this
.
$router
.
push
({
path
:
'/houseData/basicInfoByLabel'
,
query
:
query
})
this
.
form
.
setFieldsValue
({
'c.cspId'
:
value
})
this
.
search
()
},
changeStreet
(
value
)
{
// 切换街道
this
.
form
.
setFieldsValue
({
'c.streetId'
:
value
})
this
.
search
()
},
changeIsHoc
(
value
)
{
// 切换是否成立业主大会
this
.
form
.
setFieldsValue
({
'isHoc'
:
value
})
this
.
search
()
},
changeType
(
val
)
{
// 切换小区性质
this
.
form
.
setFieldsValue
({
'stKind_in'
:
val
})
this
.
getList
()
},
handleChangefb
(
value
)
{
//切换房办
this
.
form
.
setFieldsValue
({
'c.hoId'
:
value
})
this
.
search
()
},
handleChangeZdy
(
i
,
e
){
// 自定义字段 - 搜索条件的 change
if
(
Object
.
prototype
.
toString
.
call
(
e
)
==
'[object Array]'
)
{
e2
=
e
.
join
(
','
)
}
else
if
(
Object
.
prototype
.
toString
.
call
(
e
)
==
'[object Object]'
)
{
e2
=
this
.
$moment
(
e
).
format
(
'YYYY-MM-DD'
)
}
this
.
form
.
setFieldsValue
({
// 传入的i 是i.keyCode 将form表单设置成最新的值
i
:
e2
})
setTimeout
(()
=>
{
// 延时器,去掉会拿不到最新的value
this
.
getList
()
},
0
)
},
getList
(){
// 获取小区数据
//处理动态的搜索条件,耦合到搜索列表
const
obj
=
{}
this
.
keyCodeList
.
forEach
(
item
=>
{
let
value
=
!
this
.
form
.
getFieldValue
(
item
)?
''
:
this
.
form
.
getFieldValue
(
item
)
if
(
Object
.
prototype
.
toString
.
call
(
value
)
==
'[object Array]'
)
{
//如果是数组
value
=
value
.
join
(
','
)
}
else
if
(
Object
.
prototype
.
toString
.
call
(
value
)
===
'[object Object]'
){
value
=
this
.
$moment
(
value
).
format
(
'YYYY-MM-DD'
)
}
this
.
$set
(
obj
,
item
,
value
)
})
let
isHocId
=
{}
if
(
this
.
form
.
getFieldValue
(
'isHoc'
))
{
//判断是否有业主大会, 处理入参为 hocId_ne 还是 hocId
if
(
this
.
form
.
getFieldValue
(
'isHoc'
)
!=
'true'
)
{
isHocId
=
{
hocId
:
'null'
}
}
else
{
isHocId
=
{
hocId_ne
:
'null'
}
}
}
let
syncTime_betn
=
''
if
(
this
.
form
.
getFieldValue
(
'syncTime_betn'
)
&&
this
.
form
.
getFieldValue
(
'syncTime_betn'
).
length
>
1
)
{
syncTime_betn
=
this
.
$moment
(
this
.
form
.
getFieldValue
(
'syncTime_betn'
)[
0
]).
format
(
'YYYYMMDD'
)
+
'000000'
syncTime_betn
+=
','
+
this
.
$moment
(
this
.
form
.
getFieldValue
(
'syncTime_betn'
)[
1
]).
format
(
'YYYYMMDD'
)
+
'235959'
}
let
searchParams
=
Object
.
assign
({},
{
'stNameFrst_l'
:
this
.
form
.
getFieldValue
(
'stNameFrst_l'
)
||
''
,
'addrFrst_l'
:
this
.
form
.
getFieldValue
(
'addrFrst_l'
)
||
''
,
'c.cspId'
:
!
this
.
form
.
getFieldValue
(
'c.cspId'
)?
''
:
this
.
form
.
getFieldValue
(
'c.cspId'
).
split
(
'#'
)[
1
],
'c.hoId'
:
!
this
.
form
.
getFieldValue
(
'c.hoId'
)?
''
:
this
.
form
.
getFieldValue
(
'c.hoId'
).
split
(
'#'
)[
1
],
'c.streetId'
:
!
this
.
form
.
getFieldValue
(
'c.streetId'
)?
''
:
this
.
form
.
getFieldValue
(
'c.streetId'
).
split
(
'#'
)[
1
],
'stKind_in'
:
!
this
.
form
.
getFieldValue
(
'stKind_in'
)?
''
:
this
.
form
.
getFieldValue
(
'stKind_in'
).
join
(
','
),
'unitAddr'
:
!
this
.
form
.
getFieldValue
(
'unitAddr'
)?
''
:
this
.
form
.
getFieldValue
(
'unitAddr'
),
'unitKind_in'
:
!
this
.
stLevel
?
''
:
this
.
stLevel
,
'cspServiceType'
:
!
this
.
cspServiceType
?
''
:
this
.
cspServiceType
,
// 'tableName': !this.tableName?'': this.tableName,
'type'
:
!
this
.
type
?
''
:
this
.
type
,
'sectType'
:
1
,
'sectType_in'
:
this
.
sectType_in
,
'c.createTime_desc'
:
'desc'
,
syncTime_betn
,
// 更新时间
// 'finishDate_lt': !!this.isBeforeTwoThousand? '2000-01-01': '',
'finishDate_lt'
:
this
.
isBeforeTwoThousand
==
'1'
?
'2020-01-01'
:
''
,
'finishDate_gt'
:
this
.
isBeforeTwoThousand
==
'2'
?
'2020-01-01'
:
''
,
'labelIds'
:
this
.
checkedKeys
.
toString
(),
'cspContractEndDate_lt'
:
!!
this
.
form
.
getFieldValue
(
'cspContractEndDate_lt'
)
?
this
.
$moment
(
this
.
form
.
getFieldValue
(
'cspContractEndDate_lt'
)).
format
(
'YYYY-MM-DD'
)
:
''
},
obj
,
isHocId
)
// 融合obj 和isHocId 到入参
searchParams
[
this
.
personalizedKey
]
=
!
this
.
formed
?
''
:
this
.
formed
if
(
this
.
$route
.
query
.
id
&&
this
.
$route
.
query
.
id
!=
''
)
{
// 如果query的id不为空,则回显,并根据id搜索
this
.
form
.
setFieldsValue
({
'c.cspId'
:
this
.
$route
.
query
.
name
+
'#'
+
this
.
$route
.
query
.
id
})
searchParams
=
Object
.
assign
(
searchParams
,
{},
{
'c.cspId'
:
this
.
$route
.
query
.
id
,
'c.createTime_desc'
:
'desc'
})
}
this
.
searchParams
=
searchParams
this
.
$ajax
.
get
({
url
:
this
.
$api
.
GET_BASIC_LIST
,
params
:
Object
.
assign
({},
searchParams
,
{
pageSize
:
this
.
pagination
.
pageSize
,
pageNo
:
this
.
pagination
.
pageNo
})
}).
then
(
res
=>
{
if
(
res
.
code
==
200
)
{
/**
* 存导出的数据? 暂时废弃
*/
// searchParams.token = this.$cookie.get('token')
// let a = this.tbl + '?'
// for(let k in searchParams){
// a = a+k+'='+ searchParams[k]+ '&'
// }
// this.exportParams = a
// 小区的展示统计量信息数据
this
.
pagination
.
total
=
this
.
$com
.
confirm
(
res
,
'data.totalRows'
,
0
)
this
.
pagination
.
totStCnstArea
=
this
.
$com
.
confirm
(
res
,
'data.totStCnstArea'
,
0
)
this
.
pagination
.
totUnits
=
this
.
$com
.
confirm
(
res
,
'data.totUnits'
,
0
)
this
.
pagination
.
totHous
=
this
.
$com
.
confirm
(
res
,
'data.totHous'
,
0
)
this
.
tableData
=
this
.
$com
.
confirm
(
res
,
'data.content'
,
[])
// 处理显示的字段
this
.
tableData
.
forEach
(
col
=>
{
if
(
col
.
stKind
==
'01'
)
{
col
.
stKind
=
'商品房'
}
else
if
(
col
.
stKind
==
'02'
)
{
col
.
stKind
=
'动迁房'
}
else
if
(
col
.
stKind
==
'03'
)
{
col
.
stKind
=
'共有产权保障房'
}
else
if
(
col
.
stKind
==
'04'
)
{
col
.
stKind
=
'售后房'
}
else
if
(
col
.
stKind
==
'05'
)
{
col
.
stKind
=
'直管公房'
}
else
if
(
col
.
stKind
==
'06'
)
{
col
.
stKind
=
'混合'
}
else
if
(
col
.
stKind
==
'07'
)
{
col
.
stKind
=
'系统公房'
}
else
if
(
col
.
stKind
==
'08'
)
{
col
.
stKind
=
'集体土地集资房'
}
else
if
(
col
.
stKind
==
'09'
)
{
col
.
stKind
=
'军产'
}
else
if
(
col
.
stKind
==
'10'
)
{
col
.
stUseType
=
'私产'
}
else
if
(
col
.
stKind
==
'11'
)
{
col
.
stUseType
=
'公租房'
}
if
(
col
.
sectType
==
'1'
)
{
col
.
sectType
=
'住宅'
}
else
if
(
col
.
sectType
==
'2'
)
{
col
.
sectType
=
'非住宅'
}
else
if
(
col
.
sectType
==
'3'
)
{
col
.
sectType
=
'虚拟小区'
}
if
(
col
.
hocId
==
''
||
col
.
hocId
==
null
||
col
.
hocId
==
0
)
{
col
.
hocId
=
'否'
}
else
{
col
.
hocId
=
'是'
}
if
(
col
.
hocId
==
''
||
col
.
hocId
==
null
||
col
.
hocId
==
0
)
{
col
.
hocId
=
'否'
}
else
{
col
.
hocId
=
'是'
}
//特殊处理更新时间
if
(
!!
col
.
syncTime
)
{
col
.
syncTime
=
col
.
syncTime
.
slice
(
0
,
4
)
+
'-'
+
col
.
syncTime
.
slice
(
4
,
6
)
+
'-'
+
col
.
syncTime
.
slice
(
6
,
8
)
+
' '
+
col
.
syncTime
.
slice
(
8
,
10
)
+
':'
+
col
.
syncTime
.
slice
(
10
,
12
)
+
':'
+
col
.
syncTime
.
slice
(
12
,
14
)
}
})
}
//
// 存储当前页面列表的搜索信息
//
this
.
$com
.
storeSearchParams
(
this
.
$route
.
name
,
this
.
pagination
,
Object
.
assign
({},
this
.
searchForm
,
{
'stNameFrst_l'
:
this
.
form
.
getFieldValue
(
'stNameFrst_l'
)
||
''
,
'addrFrst_l'
:
this
.
form
.
getFieldValue
(
'addrFrst_l'
)
||
''
,
'c.cspId'
:
this
.
form
.
getFieldValue
(
'c.cspId'
)
||
''
,
'c.hoId'
:
this
.
form
.
getFieldValue
(
'c.hoId'
)
||
''
,
'c.streetId'
:
this
.
form
.
getFieldValue
(
'c.streetId'
)
||
''
,
'stKind_in'
:
this
.
form
.
getFieldValue
(
'stKind_in'
)
||
''
,
'isHoc'
:
this
.
form
.
getFieldValue
(
'isHoc'
)
||
''
,
},
obj
)
)
})
},
getStreet
(){
//获取街道下拉
this
.
$ajax
.
get
({
url
:
this
.
$api
.
GET_STREET_LIST
,
params
:
{
pageSize
:
10000
}
}).
then
(
res
=>
{
this
.
street
=
this
.
$com
.
confirm
(
res
,
'data.content'
,
[])
})
},
getHos
(){
// 获取房办的下拉选项
this
.
$ajax
.
get
({
url
:
this
.
$api
.
GET_HOS_LIST
,
params
:
{
pageSize
:
100000
,
sectType_in
:
'1'
}
}).
then
(
res
=>
{
this
.
hos
=
this
.
$com
.
confirm
(
res
,
'data.content'
,
[])
})
},
getWy
(){
// 获取物业的下拉选项
this
.
$ajax
.
get
({
url
:
this
.
$api
.
GET_PROPCOMPANIES_LIST
,
params
:
{
pageSize
:
100000
,
sectType_in
:
'1'
}
}).
then
(
res
=>
{
this
.
wuye
=
this
.
$com
.
confirm
(
res
,
'data.content'
,
[])
})
},
/**
* 从vuex中或已存储的搜索条件,判断此条件是否为当前路由的 。如果是则使用
*/
getSearchParams
(){
const
searchParams
=
!
this
.
$store
.
state
.
listSearchParams
?
null
:
this
.
$store
.
state
.
listSearchParams
[
this
.
$route
.
name
]
if
(
!!
searchParams
&&
!!
searchParams
.
routeName
&&
(
this
.
$route
.
name
==
searchParams
.
routeName
)){
if
(
!!
searchParams
.
params
){
Object
.
keys
(
searchParams
.
params
).
forEach
(
elem
=>
{
switch
(
elem
)
{
case
'stNameFrst_l'
:
this
.
form
.
setFieldsValue
({
'stNameFrst_l'
:
searchParams
.
params
[
elem
]
})
break
case
'addrFrst_l'
:
this
.
form
.
setFieldsValue
({
'addrFrst_l'
:
searchParams
.
params
[
elem
]
})
break
case
'c.cspId'
:
if
(
searchParams
.
params
[
elem
]
!=
''
)
{
this
.
form
.
setFieldsValue
({
'c.cspId'
:
searchParams
.
params
[
elem
]
})
}
break
case
'c.hoId'
:
if
(
searchParams
.
params
[
elem
]
!=
''
)
{
this
.
form
.
setFieldsValue
({
'c.hoId'
:
searchParams
.
params
[
elem
]
})
}
break
case
'stKind_in'
:
if
(
searchParams
.
params
[
elem
]
!=
''
)
{
this
.
form
.
setFieldsValue
({
'stKind_in'
:
searchParams
.
params
[
elem
]
})
}
break
case
'c.streetId'
:
if
(
searchParams
.
params
[
elem
]
!=
''
)
{
this
.
form
.
setFieldsValue
({
'c.streetId'
:
searchParams
.
params
[
elem
]
})
}
break
case
'isHoc'
:
if
(
searchParams
.
params
[
elem
]
!=
''
)
{
this
.
form
.
setFieldsValue
({
'isHoc'
:
searchParams
.
params
[
elem
]
})
}
break
default
:
break
}
// 无法回显自定义的值,store里面有数据但是会报 You cannot set a form field before rendering a field associated with the value.
// setTimeout(()=>{
// this.form.setFieldsValue({ elem : searchParams.params[elem] })
// },0)
})
}
if
(
!!
searchParams
.
pagination
){
if
(
!!
searchParams
.
pagination
.
pageNo
){
this
.
pagination
.
pageNo
=
searchParams
.
pagination
.
pageNo
this
.
pagination
.
current
=
searchParams
.
pagination
.
current
this
.
pagination
.
pageSize
=
searchParams
.
pagination
.
pageSize
}
}
}
this
.
getList
()
},
toView
(
row
){
// 操作里面去详情
this
.
$router
.
push
({
path
:
`/houseData/basicInfoByLabel/
${
row
.
id
}
`
,
query
:
{
id
:
row
.
id
,
name
:
row
.
cspName
}})
},
toBul
(
row
){
this
.
$router
.
push
({
path
:
'/houseData/buildings'
,
query
:
{
id
:
row
.
id
}})
},
toShebei
(
row
){
this
.
$router
.
push
({
path
:
`/houseData/shebei/
${
row
.
id
}
`
})
},
exportList
(){
//导出功能
const
formValue
=
this
.
form
.
getFieldsValue
()
let
newUrl
=
this
.
tbl
+
'?'
let
newObj
=
{}
//拼接除 c.xxx 和 是否成立业主大会 之外的数据
for
(
const
k
in
formValue
){
if
(
k
!=
'isHoc'
)
{
// 排除isHoc 是否成立业主大会 后续判断
if
(
formValue
[
k
]
!=
undefined
)
{
// 判断是否值为 undefined
if
(
k
==
'c'
)
{
// 排除 c.xxx 的键
newObj
=
formValue
[
k
]
//有c.xx存入 b对象 下面处理,
}
else
if
(
Object
.
prototype
.
toString
.
call
(
formValue
[
k
])
==
'[object Array]'
){
// 数组的话就拼接字符串
newUrl
+=
k
+
'='
+
formValue
[
k
].
join
(
','
)
+
'&'
}
else
if
(
Object
.
prototype
.
toString
.
call
(
formValue
[
k
])
===
'[object Object]'
)
{
//时间格式对象就转换成字符串
newUrl
+=
k
+
'='
+
this
.
$moment
(
formValue
[
k
]).
format
(
'YYYY-MM-DD'
)
+
'&'
}
else
{
newUrl
+=
k
+
'='
+
formValue
[
k
]
+
'&'
//没有特殊情况 直接拼接到 newUrl
}
}
}
}
// 处理 c.xxx 里面的数据
for
(
const
k
in
newObj
){
if
(
newObj
[
k
]
!=
undefined
)
{
// 排除值为undefined的键
newUrl
+=
'c.'
+
k
+
'='
+
newObj
[
k
].
split
(
'#'
)[
1
]
+
'&'
// 拼接到 newUrl
}
}
// 处理是否成立业主大会
if
(
formValue
.
isHoc
)
{
if
(
formValue
.
isHoc
==
'false'
)
{
// 判断业主大会是否选择了, 再根据 选项 拼接参数到 newUrl
newUrl
=
newUrl
+
'hocId=null&'
}
else
{
newUrl
=
newUrl
+
'hocId_ne=null&'
}
}
let
token
=
this
.
$cookie
.
get
(
'token'
)
// 获取token 并拼接到 newUrl
newUrl
+=
'sectType=1&access_token='
+
token
.
split
(
'bearer '
)[
1
]
window
.
open
(
this
.
$api
.
BASE_URL
+
'/service-basicdatasync-ddd/export/'
+
newUrl
)
},
/**
* 导出二维码
*/
exportEWM
(){
const
formValue
=
this
.
form
.
getFieldsValue
()
let
token
=
this
.
$cookie
.
get
(
'token'
)
let
selectedKeys
=
this
.
$refs
.
childTab
.
rowSelection
.
selectedRowKeys
if
(
selectedKeys
.
length
>
0
){
let
sectId
=
selectedKeys
.
join
(
','
)
// console.log('https://hm.omniview.pro/common/public/qrCodeGenerate?sectId='+sectId+'&token='+token)
window
.
open
(
this
.
$api
.
GET_EXPORT_EWM
+
'?sectId='
+
sectId
+
'&access_token='
+
token
.
split
(
'bearer '
)[
1
]
)
}
else
{
let
streetsId
=
formValue
.
c
.
streetId
if
(
streetsId
){
streetsId
=
streetsId
.
split
(
'#'
)[
1
]
}
else
{
streetsId
=
''
}
let
stNameFrst_l
=
formValue
.
stNameFrst_l
?
formValue
.
stNameFrst_l
:
''
// console.log(this.$api.GET_EXPORT_EWM+'?streetId='+streetsId+'&stNameFrst_l='+stNameFrst_l+'&token='+token)
window
.
open
(
this
.
$api
.
GET_EXPORT_EWM
+
'?streetId='
+
streetsId
+
'&stNameFrst_l='
+
stNameFrst_l
+
'&access_token='
+
token
.
split
(
'bearer '
)[
1
])
}
},
changeLevel
(
val
)
{
console
.
log
(
val
)
this
.
stLevel
=
val
.
join
(
','
)
// if(val.indexOf('1')!=-1 && val.indexOf('2')!=-1) {
// this.stLevel = '8'
// } else {
// this.stLevel = val[0]
// }
// this.getList()
},
changeServiceType
(
val
)
{
this
.
cspServiceType
=
val
this
.
getList
()
},
changeNeighbourType
(
val
)
{
switch
(
val
)
{
case
'1'
:
this
.
tableName
=
'tbl_community'
this
.
formed
=
''
this
.
type
=
'un'
break
case
'2'
:
this
.
tableName
=
'tbl_community'
this
.
formed
=
'10,'
+
(
this
.
$moment
().
format
(
'L'
).
split
(
'/'
)).
join
(
''
)
this
.
type
=
'bet'
break
case
'3'
:
this
.
tableName
=
'tbl_community'
this
.
formed
=
'前期筹备中'
this
.
type
=
'l'
break
default
:
this
.
type
=
''
this
.
formed
=
''
break
}
// this.getList()
},
changeFinishDate
(
val
)
{
switch
(
val
)
{
case
'1'
:
this
.
isBeforeTwoThousand
=
'1'
break
case
'2'
:
this
.
isBeforeTwoThousand
=
'2'
break
default
:
this
.
isBeforeTwoThousand
=
'none'
break
}
// this.getList()
}
},
}
</
script
>
<
style
scoped
>
</
style
>
src/views/label/labelRightSide.vue
View file @
5ac2335c
...
...
@@ -20,25 +20,27 @@
</div>
<a-divider
type=
'horizontal'
/>
<a-form
:form=
'labelForm'
>
<a-form-item
label=
'标签名'
:label-col=
"
{span:
2}" :wrapper-col="{span:14
}">
<a-input
v-decorator=
"['labelName',
{validateTrigger:'blur', initialValue: jsonData.labelName?jsonData.labelName: '', rules: [{required: true, message: '请填写标签名!'}]}]">
</a-input>
<a-form-item
label=
'标签名'
:label-col=
"
{span:
3}" :wrapper-col="{span:15
}">
<a-input
placeholder=
'请输入标签名'
v-decorator=
"['labelName',
{validateTrigger:'blur', initialValue: jsonData.labelName?jsonData.labelName: '', rules: [{required: true, message: '请填写标签名!'}]}]">
</a-input>
</a-form-item>
<a-form-item
label=
'标签分组'
:label-col=
"
{span:
2}" :wrapper-col="{span:14
}">
<a-form-item
label=
'标签分组'
:label-col=
"
{span:
3}" :wrapper-col="{span:7
}">
<a-select
v-decorator=
"['parentId',
{validateTrigger:'blur', initialValue: jsonData.parentId?jsonData.parentId: '0', rules: []}]">
<a-select-option
value=
'0'
>
无(将改标签设为一级标签)
</a-select-option>
<a-select-option
v-for=
"(item, index) in parentLabelList"
:key=
'index'
:value=
'item.id'
>
{{
item
.
labelName
}}
</a-select-option>
</a-select>
<!--
<a-input
placeholder=
'请输入分组名称'
v-decorator=
"['parentName',
{validateTrigger:'blur', initialValue: jsonData.parentName?jsonData.parentName: '', rules: [{required: true, message: '请填写标签分组名!'}]}]">
</a-input>
-->
</a-form-item>
<a-form-item
label=
'业务对象'
:label-col=
"
{span:
2}" :wrapper-col="{span:14
}">
<a-select
:disabled=
"triggerType == 'loadChildLabel'"
@
change=
'handleObjChange'
v-decorator=
"['tableName',
{validateTrigger:'blur', initialValue: jsonData.tableName?jsonData.tableName: '', rules: [{required: true, message: '请选择业务对象!'}]}]">
<a-form-item
label=
'业务对象'
:label-col=
"
{span:
3}" :wrapper-col="{span:15
}">
<a-select
placeholder=
'请选择业务对象'
:disabled=
"triggerType == 'loadChildLabel'"
@
change=
'handleObjChange'
v-decorator=
"['tableName',
{validateTrigger:'blur', initialValue: jsonData.tableName?jsonData.tableName: '', rules: [{required: true, message: '请选择业务对象!'}]}]">
<a-select-option
value=
'tbl_community'
>
小区
</a-select-option>
<a-select-option
value=
'tbl_building'
>
门牌幢
</a-select-option>
</a-select>
</a-form-item>
</a-form>
<a-row
style=
"font-weight: bold"
>
信息筛选配置
</a-row>
<a-row
style=
"font-weight: bold; font-size: 16px;"
>
信息筛选配置
</a-row>
<a-divider
type=
'horizontal'
dashed
/>
<a-form
:form=
'infoSettingForm'
layout=
'inline'
>
<div
v-for=
"(item, index) in loopContent.data"
:key=
'index'
>
<a-form-item
v-if=
"!!item.relation"
>
...
...
@@ -85,10 +87,11 @@
<a-icon
v-if=
"index+1 == loopContent.data.length"
theme=
'filled'
style=
"color:lightgreen;"
type=
"plus-circle"
@
click=
"addRow()"
/>
<a-icon
v-if=
"index+1 == loopContent.data.length"
theme=
'filled'
style=
"color:red; margin-left: 5px"
type=
"minus-circle"
@
click=
"deleteRow(index)"
/>
</a-form-item>
<a-divider
type=
'horizontal'
dashed
/>
</div>
</a-form>
<a-button
type=
'link'
v-if=
"loopContent.data.length == 0"
@
click=
"addInitRow()"
>
新增配置
</a-button>
<a-button
type=
'link'
v-if=
"loopContent.data.length == 0"
@
click=
"addInitRow()"
>
<a-icon
type=
"plus"
/>
新增配置
</a-button>
<!--
<div
v-if=
"resultList.length > 0"
>
<a-divider
type=
'horizontal'
/>
<a-row
style=
"font-weight: bold"
>
筛选结果
</a-row>
...
...
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