After Width: | Height: | Size: 8.6 KiB |
After Width: | Height: | Size: 9.8 KiB |
After Width: | Height: | Size: 8.3 KiB |
After Width: | Height: | Size: 9.7 KiB |
After Width: | Height: | Size: 8.4 KiB |
After Width: | Height: | Size: 9.8 KiB |
After Width: | Height: | Size: 2.1 KiB |
After Width: | Height: | Size: 2.0 KiB |
After Width: | Height: | Size: 2.0 KiB |
After Width: | Height: | Size: 2.2 KiB |
After Width: | Height: | Size: 2.1 KiB |
After Width: | Height: | Size: 2.3 KiB |
After Width: | Height: | Size: 2.0 KiB |
After Width: | Height: | Size: 2.2 KiB |
After Width: | Height: | Size: 8.6 KiB |
After Width: | Height: | Size: 9.9 KiB |
After Width: | Height: | Size: 9.7 KiB |
After Width: | Height: | Size: 8.4 KiB |
After Width: | Height: | Size: 8.5 KiB |
After Width: | Height: | Size: 9.8 KiB |
After Width: | Height: | Size: 8.3 KiB |
After Width: | Height: | Size: 9.6 KiB |
After Width: | Height: | Size: 8.6 KiB |
After Width: | Height: | Size: 9.9 KiB |
After Width: | Height: | Size: 7.7 KiB |
After Width: | Height: | Size: 12 KiB |
@ -0,0 +1,241 @@ |
|||
<template> |
|||
<div> |
|||
<div class="g-row"> |
|||
<div class="g-left"> |
|||
<div class="m-box"> |
|||
<div class="box-title"> |
|||
<img src="~@/assets/images/shuju/main/card-title-bg-480.png" class="box-title-bg" /> |
|||
<div class="box-title-txt">需求清单</div> |
|||
</div> |
|||
<div class="m-subbox"><xqqd :orgId="orgData.org_id"></xqqd></div> |
|||
</div> |
|||
<div class="m-box"> |
|||
<div class="box-title"> |
|||
<img src="~@/assets/images/shuju/main/card-title-bg-480.png" class="box-title-bg" /> |
|||
<div class="box-title-txt">问题清单</div> |
|||
</div> |
|||
<div class="m-subbox"><wtqd :orgId="orgData.org_id"></wtqd></div> |
|||
</div> |
|||
</div> |
|||
<div class="g-center"> |
|||
<div class="m-map"> |
|||
<div class="m-search2"> |
|||
<el-date-picker type="daterange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker> |
|||
<el-button type="primary">查询</el-button> |
|||
</div> |
|||
<grid-map ref="map" @clickAgency="clickAgencyItem" :srcGridData="orgData" @clickDotBtn="handleClickDotBtn" /> |
|||
</div> |
|||
<div class="m-box "> |
|||
<div class="box-title"> |
|||
<img src="~@/assets/images/shuju/main/card-title-bg-800.png" class="box-title-bg" /> |
|||
<div class="box-title-txt">社区评价</div> |
|||
</div> |
|||
<div class="m-subbox"><sqpj :orgId="orgData.org_id"></sqpj></div> |
|||
</div> |
|||
</div> |
|||
<div class="g-right"> |
|||
<div class="m-box"> |
|||
<div class="box-title"> |
|||
<div class="box-title-btn" @click="fwMore"> |
|||
<img src="~@/assets/images/shuju/sida/index/more.png" /> |
|||
<span>查看更多</span> |
|||
</div> |
|||
|
|||
<img src="~@/assets/images/shuju/main/card-title-bg-480.png" class="box-title-bg" /> |
|||
<div class="box-title-txt" @click="fwMore">服务清单</div> |
|||
</div> |
|||
<div |
|||
class="m-subbox " |
|||
:class="{ |
|||
'z-shrink': orgLevel == 'district' || orgLevel == 'street' || orgLevel == 'city' |
|||
}" |
|||
> |
|||
<fwqd :orgId="orgData.org_id"></fwqd> |
|||
</div> |
|||
</div> |
|||
<div class="m-box"> |
|||
<div class="box-title"> |
|||
<img src="~@/assets/images/shuju/main/card-title-bg-480.png" class="box-title-bg" /> |
|||
<div class="box-title-txt">资源清单</div> |
|||
</div> |
|||
<div class="m-subbox"><zyqd :orgId="orgData.org_id"></zyqd></div> |
|||
</div> |
|||
</div> |
|||
<cpt-loading v-show="false" /> |
|||
</div> |
|||
</div> |
|||
</template> |
|||
<script> |
|||
import gridMap from '@/views/dataBoard/cpts/map/index'; |
|||
import xqqd from '@/views/dataBoard/sida/cpts/xqqd'; |
|||
import wtqd from '@/views/dataBoard/sida/cpts/wtqd'; |
|||
import zyqd from '@/views/dataBoard/sida/cpts/zyqd'; |
|||
import fwqd from '@/views/dataBoard/sida/cpts/fwqd'; |
|||
import sqpj from '@/views/dataBoard/sida/cpts/sqpj'; |
|||
import cptLoading from '@/views/dataBoard/cpts/loading'; |
|||
import { requestPostBi } from '@/js/dai/request-bipass'; |
|||
import { requestPost } from '@/js/dai/request'; |
|||
import getQueryPara from 'dai-js/modules/getQueryPara'; |
|||
|
|||
export default { |
|||
name: 'sida', |
|||
components: { |
|||
gridMap, |
|||
xqqd, |
|||
wtqd, |
|||
zyqd, |
|||
fwqd, |
|||
sqpj, |
|||
cptLoading |
|||
}, |
|||
data() { |
|||
return { |
|||
loading: false, |
|||
orgData: { |
|||
children: [] |
|||
}, //当前组织对象 |
|||
orgId: '', |
|||
orgLevel: '' |
|||
}; |
|||
}, |
|||
mounted() { |
|||
const queryOrgId = getQueryPara('orgId'); |
|||
const queryOrgLevel = getQueryPara('orgLevel'); |
|||
this.init(queryOrgId, queryOrgLevel); |
|||
}, |
|||
watch: {}, |
|||
methods: { |
|||
fwMore() { |
|||
console.log('d'); |
|||
this.$router.push({ |
|||
path: '/dataBoard/sida/fw', |
|||
query: { |
|||
org_id: this.orgId |
|||
} |
|||
}); |
|||
}, |
|||
async init(queryOrgId, queryOrgLevel) { |
|||
if (queryOrgId) { |
|||
this.orgId = queryOrgId; |
|||
this.orgLevel = queryOrgLevel || 'agency'; |
|||
} else { |
|||
this.orgId = this.$store.state.user.agencyId; |
|||
this.orgLevel = 'agency'; |
|||
} |
|||
//加载组织数据 |
|||
this.loading = false; |
|||
// await this.loadOrgData(); |
|||
await this.getMapData(); |
|||
await this.getSubMapData(); |
|||
|
|||
this.loading = true; |
|||
}, |
|||
|
|||
handleClickDotBtn(type, info) { |
|||
// console.log('handleClickDotBtn', type, info); |
|||
// if (type == 'watch-resi') { |
|||
// this.displayedResiId = info.user_id; |
|||
// } else if (type == 'watch-house') { |
|||
// this.displayedHouseId = info.house_id; |
|||
// } |
|||
}, |
|||
clickBreadItem({ item }) { |
|||
// this.toBread(item); |
|||
}, |
|||
clickAgencyItem(item) { |
|||
// console.log(item); |
|||
// this.toBread({ |
|||
// orgId: item.id, |
|||
// orgLevel: item.level, |
|||
// meta: { |
|||
// title: item.name |
|||
// } |
|||
// }); |
|||
}, |
|||
// toBread(item) { |
|||
// const { orgId } = item; |
|||
// const { breadList } = this; |
|||
// let index = breadList.findIndex(val => val.orgId === orgId); |
|||
// // return console.log(item, breadList, index); |
|||
// if (index >= 0) { |
|||
// this.breadList = breadList.slice(0, index + 1); |
|||
// } else { |
|||
// breadList.push(item); |
|||
// this.breadList = breadList; |
|||
// } |
|||
// this.init(item.orgId, item.orgLevel); |
|||
// }, |
|||
|
|||
// 根据类别搜索 |
|||
|
|||
//获取地图上显示的组织数据 |
|||
async getMapData() { |
|||
console.log('=========================getMapData'); |
|||
const url = 'org_map'; |
|||
const { data, code, msg } = await requestPostBi( |
|||
url, |
|||
{ |
|||
queryParam: { |
|||
org_id: this.orgId |
|||
} |
|||
}, |
|||
{ |
|||
// mockId: 60810589, |
|||
} |
|||
); |
|||
if (code === 0) { |
|||
let info = data[0]; |
|||
this.orgData = { |
|||
...info, |
|||
id: info.org_id, |
|||
name: info.org_name, |
|||
latitude: parseFloat(info.latitude), |
|||
longitude: parseFloat(info.longitude), |
|||
coordinates: info.coordinates || '', |
|||
children: [] |
|||
}; |
|||
this.orgId = this.orgData.org_id; |
|||
this.orgLevel = this.orgData.level; |
|||
} else { |
|||
this.$message.error(msg); |
|||
} |
|||
}, |
|||
//获取地图上显示的组织数据 |
|||
async getSubMapData() { |
|||
console.log('=========================getSubMapData'); |
|||
const url = 'sub_org_map'; |
|||
const { data, code, msg } = await requestPostBi( |
|||
url, |
|||
{ |
|||
queryParam: { |
|||
org_id: this.orgId |
|||
} |
|||
}, |
|||
{ |
|||
// mockId: 61831860, |
|||
} |
|||
); |
|||
if (code === 0) { |
|||
const { orgData } = this; |
|||
orgData.children = data.map(item => { |
|||
return { |
|||
...item, |
|||
id: item.org_id, |
|||
name: item.org_name, |
|||
latitude: parseFloat(item.latitude), |
|||
longitude: parseFloat(item.longitude), |
|||
coordinates: item.coordinates || '' |
|||
}; |
|||
}); |
|||
this.orgData = { |
|||
...orgData |
|||
}; |
|||
console.log('==========================getSubMapData:result', this.orgData); |
|||
} else { |
|||
this.$message.error(msg); |
|||
} |
|||
} |
|||
} |
|||
}; |
|||
</script> |
|||
<style lang="scss" src="@/assets/scss/dataBoard/renfang/index.scss" scoped></style> |
@ -0,0 +1,129 @@ |
|||
<template> |
|||
<div> |
|||
<cpt-bread @tap="handleClickBreadItem" v-if="breadList.length > 1" :bread-list="breadList" /> |
|||
<div class="g-row"> |
|||
<div class="g-left"> |
|||
<div class="m-box"> |
|||
<div class="m-title"> |
|||
<img class="title_img" src="@/assets/images/index/list-logo.png" alt /> |
|||
<div class="tip_title">公共服务数据统计</div> |
|||
<div class="title_line"></div> |
|||
</div> |
|||
<div class="m-height"><fw01 :orgId="orgId"></fw01></div> |
|||
</div> |
|||
</div> |
|||
<div class="g-center"> |
|||
<div class="m-box"> |
|||
<div class="m-title"> |
|||
<img class="title_img" src="@/assets/images/index/list-logo.png" alt /> |
|||
<div class="tip_title">共性需求待响应</div> |
|||
<div class="title_line"></div> |
|||
</div> |
|||
<div class="m-height"><fw02 :orgId="orgId"></fw02></div> |
|||
</div> |
|||
</div> |
|||
<div class="g-right"> |
|||
<div class="m-box"> |
|||
<div class="m-title"> |
|||
<img class="title_img" src="@/assets/images/index/list-logo.png" alt /> |
|||
<div class="tip_title">服务找人数据统计</div> |
|||
<div class="title_line"></div> |
|||
</div> |
|||
<div class="m-height"><fw03 :orgId="orgId"></fw03></div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<div class="g-row"> |
|||
<div class="g-left" style="width:920px"> |
|||
<div class="m-box"> |
|||
<div class="m-title"> |
|||
<img class="title_img" src="@/assets/images/index/list-logo.png" alt /> |
|||
<div class="tip_title">个性服务数据统计</div> |
|||
<div class="title_line"></div> |
|||
</div> |
|||
<div class="m-height "><fw04 :orgId="orgId"></fw04></div> |
|||
</div> |
|||
</div> |
|||
<div class="g-left" style="width:920px"> |
|||
<div class="m-box"> |
|||
<div class="m-title"> |
|||
<img class="title_img" src="@/assets/images/index/list-logo.png" alt /> |
|||
<div class="tip_title">政策找人数据统计</div> |
|||
<div class="title_line"></div> |
|||
</div> |
|||
<div class="m-height"><fw05 :orgId="orgId"></fw05></div> |
|||
</div> |
|||
</div> |
|||
<!-- <cpt-loading v-show="false" /> --> |
|||
</div> |
|||
</div> |
|||
</template> |
|||
<script> |
|||
import fw01 from '@/views/dataBoard/sida/cpts/fw01gg'; |
|||
import fw02 from '@/views/dataBoard/sida/cpts/fw02gxxq'; |
|||
import fw03 from '@/views/dataBoard/sida/cpts/fw03zr'; |
|||
import fw04 from '@/views/dataBoard/sida/cpts/fw04gx'; |
|||
import fw05 from '@/views/dataBoard/sida/cpts/fw05zc'; |
|||
import cptBread from '@/views/dataBoard/renfang/cpts/bread'; |
|||
export default { |
|||
props: { |
|||
orgId: { |
|||
type: String, |
|||
default: '' |
|||
} |
|||
}, |
|||
components: { |
|||
fw01, |
|||
fw02, |
|||
fw03, |
|||
fw04, |
|||
fw05, |
|||
cptBread |
|||
}, |
|||
|
|||
data() { |
|||
return { |
|||
showNoData: false, |
|||
barChart: '', |
|||
barOption: {}, |
|||
barInitState: false, |
|||
barData: [], |
|||
breadList: [ |
|||
{ |
|||
type: 'back', |
|||
meta: { |
|||
title: '四大清单' |
|||
} |
|||
}, |
|||
{ |
|||
meta: { |
|||
title: '服务清单数据统计' |
|||
} |
|||
} |
|||
] |
|||
}; |
|||
}, |
|||
mounted() {}, |
|||
watch: {}, |
|||
methods: { |
|||
handleClickBreadItem({ item }) { |
|||
if (item.type == 'back') { |
|||
this.$router.back(); |
|||
} |
|||
}, |
|||
|
|||
toListPage(type = '', type_name = '') { |
|||
this.$router.push({ |
|||
path: '/dataBoard/renfang/house-list', |
|||
query: { |
|||
org_id: this.orgId, |
|||
type, |
|||
type_name |
|||
} |
|||
}); |
|||
} |
|||
} |
|||
}; |
|||
</script> |
|||
<style lang="scss" src="@/assets/scss/dataBoard/renfang/index.scss" scoped></style> |
|||
<style lang="scss" src="@/assets/scss/dataBoard/listBox.scss" scoped></style> |
@ -0,0 +1,274 @@ |
|||
<template> |
|||
<div class="g-pgi"> |
|||
<!-- 组织路由 --> |
|||
<cpt-bread |
|||
:separator="'/'" |
|||
@tap="handleClickBreadItem" |
|||
:breadList="breadList" |
|||
></cpt-bread> |
|||
|
|||
<div class="m-title"> |
|||
<img |
|||
class="title_img" |
|||
src="@/assets/images/index/list-logo.png" |
|||
alt |
|||
/> |
|||
<div class="tip_title">{{ tableTitle }}</div> |
|||
<div class="title_line"></div> |
|||
</div> |
|||
|
|||
<cpt-tb |
|||
:col-list="colList" |
|||
:loading="loading" |
|||
:header="header" |
|||
:list="list" |
|||
:total="total" |
|||
@handleSizeChange="handleSizeChange" |
|||
@handlePageNoChange="handlePageNoChange" |
|||
@operate="showInfo" |
|||
></cpt-tb> |
|||
|
|||
<house-details |
|||
@close="displayedHouseId = ''" |
|||
:house-id="displayedHouseId" |
|||
v-if="displayedHouseId" |
|||
/> |
|||
</div> |
|||
</template> |
|||
|
|||
<script> |
|||
import cptTb from "@/views/dataBoard/cpts/tb"; |
|||
import cptBread from "@/views/dataBoard/renfang/cpts/bread"; |
|||
import houseDetails from "@/views/dataBoard/cpts/house-details"; |
|||
import { requestPostBi } from "@/js/dai/request-bipass"; |
|||
import getQueryPara from "dai-js/modules/getQueryPara"; |
|||
|
|||
export default { |
|||
name: "house-list", |
|||
|
|||
components: { |
|||
cptTb, |
|||
cptBread, |
|||
houseDetails, |
|||
}, |
|||
|
|||
data() { |
|||
return { |
|||
breadList: [ |
|||
{ |
|||
type: "back", |
|||
meta: { |
|||
title: "人房总览", |
|||
}, |
|||
}, |
|||
{ |
|||
meta: { |
|||
title: "房屋列表", |
|||
}, |
|||
}, |
|||
], |
|||
|
|||
tableTitle: "房屋列表", |
|||
searchName: "", |
|||
|
|||
orgLevel: "", |
|||
org_id: "", |
|||
houseType: "", // 流动 常驻 全部 |
|||
|
|||
loading: true, |
|||
pageSize: parseInt(localStorage.getItem("dataBoard_PageSize")) || 20, |
|||
pageNo: 1, |
|||
total: 0, |
|||
srcTableData: [], |
|||
list: [], |
|||
|
|||
colList: [ |
|||
{ |
|||
align: "left", |
|||
width: "5%", |
|||
}, |
|||
{ |
|||
align: "left", |
|||
width: "10%", |
|||
}, |
|||
{ |
|||
align: "left", |
|||
width: "10%", |
|||
}, |
|||
{ |
|||
align: "left", |
|||
width: "10%", |
|||
}, |
|||
{ |
|||
align: "left", |
|||
width: "10%", |
|||
}, |
|||
{ |
|||
align: "left", |
|||
width: "10%", |
|||
}, |
|||
{ |
|||
align: "left", |
|||
width: "5%", |
|||
}, |
|||
{ |
|||
align: "left", |
|||
width: "10%", |
|||
}, |
|||
{ |
|||
align: "left", |
|||
width: "5%", |
|||
}, |
|||
{ |
|||
align: "left", |
|||
width: "10%", |
|||
}, |
|||
{ |
|||
align: "left", |
|||
width: "10%", |
|||
}, |
|||
{ |
|||
align: "left", |
|||
width: "10%", |
|||
}, |
|||
], |
|||
|
|||
header: [ |
|||
"序号", |
|||
"所属小区", |
|||
"所属楼栋", |
|||
"单元号", |
|||
"门牌号", |
|||
"房屋类型", |
|||
"房屋用途", |
|||
"房屋状态", |
|||
"房主姓名", |
|||
"联系电话", |
|||
"证件号", |
|||
"操作", |
|||
], |
|||
|
|||
displayedHouseId: "", |
|||
}; |
|||
}, |
|||
|
|||
activated() { |
|||
this.org_id = getQueryPara("org_id"); |
|||
this.houseType = getQueryPara("type"); |
|||
const type_name = getQueryPara("type_name"); |
|||
this.breadList[1].meta.title = type_name + "房屋列表"; |
|||
this.tableTitle = type_name + "房屋列表"; |
|||
this.pageNo = 1; |
|||
this.getList(); |
|||
this.getCount(); |
|||
}, |
|||
|
|||
methods: { |
|||
handleClickBreadItem({ item }) { |
|||
if (item.type == "back") { |
|||
this.$router.back(); |
|||
} |
|||
}, |
|||
|
|||
handleSearch() {}, |
|||
|
|||
showInfo(index) { |
|||
let item = this.srcTableData[index]; |
|||
this.displayedHouseId = item.house_id; |
|||
}, |
|||
|
|||
handlePageNoChange(pageNo) { |
|||
this.pageNo = pageNo; |
|||
this.getList(); |
|||
}, |
|||
|
|||
handleSizeChange(pageSize) { |
|||
localStorage.setItem('dataBoard_PageSize', pageSize); |
|||
this.pageSize = pageSize; |
|||
this.getList(); |
|||
}, |
|||
|
|||
async getList() { |
|||
const { org_id, houseType, pageNo, pageSize } = this; |
|||
this.loading = true; |
|||
|
|||
const url = "house_list"; |
|||
|
|||
const { data, code, msg } = await requestPostBi( |
|||
url, |
|||
{ |
|||
queryParam: { |
|||
org_id, |
|||
type: houseType, |
|||
pageNo, |
|||
pageSize, |
|||
}, |
|||
}, |
|||
{ |
|||
// mockId: 60068051, |
|||
} |
|||
); |
|||
|
|||
this.loading = false; |
|||
|
|||
if (code === 0) { |
|||
this.srcTableData = data; |
|||
// this.total = data.total; |
|||
|
|||
this.list = data.map((item, index) => { |
|||
return [ |
|||
index + 1, |
|||
item.village ? item.village : "--", |
|||
item.building ? item.building : "--", |
|||
item.unit ? item.unit : "--", |
|||
item.door ? item.door : "--", |
|||
item.house_type ? item.house_type : "--", |
|||
item.house_usage ? item.house_usage : "--", |
|||
item.house_state ? item.house_state : "--", |
|||
item.holder_name ? item.holder_name : "--", |
|||
item.holder_phone ? item.holder_phone : "--", |
|||
item.holder_idcard ? item.holder_idcard : "--", |
|||
|
|||
{ type: "operate", list: ["查看"] }, |
|||
]; |
|||
}); |
|||
} else { |
|||
this.$message.error(msg); |
|||
} |
|||
}, |
|||
|
|||
async getCount() { |
|||
const { org_id, houseType, pageNo, pageSize } = this; |
|||
|
|||
const url = "house_list_total"; |
|||
|
|||
const { data, code, msg } = await requestPostBi( |
|||
url, |
|||
{ |
|||
queryParam: { |
|||
org_id, |
|||
type: houseType, |
|||
pageNo, |
|||
pageSize, |
|||
}, |
|||
}, |
|||
{ |
|||
// mockId: 63070189, |
|||
} |
|||
); |
|||
|
|||
if (code === 0) { |
|||
this.total = parseInt(data[0].count); |
|||
} else { |
|||
this.$message.error(msg); |
|||
} |
|||
}, |
|||
}, |
|||
|
|||
destroyed() { |
|||
console.log("我已经离开了!"); |
|||
}, |
|||
}; |
|||
</script> |
|||
|
|||
<style lang="scss" src="@/assets/scss/dataBoard/listBox.scss" scoped></style> |