|
|
|
@ -2,77 +2,90 @@ |
|
|
|
<div class="div_main"> |
|
|
|
<div v-show="true"> |
|
|
|
<div class="div_search"> |
|
|
|
<el-form :inline="true" :model="searchData" ref="ref_searchform" :label-width="'80px'"> |
|
|
|
<el-form :inline="true" :model="searchData" ref="ref_searchform" :label-width="'120px'"> |
|
|
|
<div> |
|
|
|
<!-- 姓名 联系电话 证件号 类型 所属组织 楼栋 单元 tianqian --> |
|
|
|
<el-form-item label="姓名" prop="serviceContent"> |
|
|
|
<el-input v-model="searchData.name" class="item_width_2" size="small" clearable placeholder="请输入"></el-input> |
|
|
|
<el-form-item label="姓名" prop="name"> |
|
|
|
<el-input v-model="searchData.name" class="item_width_2" size="small" clearable |
|
|
|
placeholder="请输入"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="联系电话" prop="serviceContent"> |
|
|
|
<el-input v-model="searchData.name" class="item_width_2" size="small" clearable placeholder="请输入"></el-input> |
|
|
|
<el-form-item label="联系电话" prop="phone"> |
|
|
|
<el-input v-model="searchData.phone" class="item_width_2" size="small" clearable |
|
|
|
placeholder="请输入"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="证件号" prop="idCard"> |
|
|
|
<el-input v-model="searchData.idCard" class="item_width_2" size="small" clearable placeholder="请输入"></el-input> |
|
|
|
<el-input v-model="searchData.idCard" class="item_width_2" size="small" clearable |
|
|
|
placeholder="请输入"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="类型" prop="type"> |
|
|
|
<el-input v-model="searchData.type" class="item_width_2" size="small" clearable placeholder="请输入"></el-input> |
|
|
|
<el-select class="item_width_2" v-model="searchData.type" placeholder="请选择" filterable |
|
|
|
clearable> |
|
|
|
<el-option v-for="item in typeList" :key="item.value" :label="item.label" |
|
|
|
:value="item.value"></el-option> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="所属区市" prop="districtId"> |
|
|
|
<el-select class="item_width_2" v-model="searchData.districtId" placeholder="请选择" filterable clearable @change="getstreetList"> |
|
|
|
<el-option v-for="item in districList" :key="item.id" :label="item.organizationName" :value="item.id"></el-option> |
|
|
|
<el-select class="item_width_2" v-model="searchData.districtId" placeholder="请选择" filterable |
|
|
|
clearable @change="getstreetList"> |
|
|
|
<el-option v-for="item in districtList" :key="item.id" :label="item.organizationName" |
|
|
|
:value="item.id"></el-option> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="所属镇街" prop="streetId"> |
|
|
|
<el-select class="item_width_2" v-model="searchData.streetId" placeholder="请选择" filterable clearable @change="getcommunityList"> |
|
|
|
<el-option v-for="item in streetList" :key="item.id" :label="item.organizationName" :value="item.id"></el-option> |
|
|
|
<el-select class="item_width_2" v-model="searchData.streetId" placeholder="请选择" filterable |
|
|
|
:disabled="streetList.length==0" clearable @change="getcommunityList"> |
|
|
|
<el-option v-for="item in streetList" :key="item.id" :label="item.organizationName" |
|
|
|
:value="item.id"></el-option> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="所属社区/民居" prop="communityId"> |
|
|
|
<el-select |
|
|
|
class="item_width_2" |
|
|
|
v-model="searchData.communityId" |
|
|
|
placeholder="请选择" |
|
|
|
filterable |
|
|
|
clearable |
|
|
|
@change=" |
|
|
|
<el-select class="item_width_2" v-model="searchData.communityId" placeholder="请选择" |
|
|
|
:disabled="communityList.length==0" filterable clearable @change=" |
|
|
|
getgridList(); |
|
|
|
getviliageList(); |
|
|
|
" |
|
|
|
> |
|
|
|
<el-option v-for="item in communityList" :key="item.id" :label="item.organizationName" :value="item.id"></el-option> |
|
|
|
"> |
|
|
|
<el-option v-for="item in communityList" :key="item.id" :label="item.organizationName" |
|
|
|
:value="item.id"></el-option> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="所属网格" prop="gridId"> |
|
|
|
<el-select class="item_width_2" v-model="searchData.gridId" placeholder="请选择" filterable clearable @change="getviliageList"> |
|
|
|
<el-option v-for="item in gridList" :key="item.value" :label="item.label" :value="item.value"></el-option> |
|
|
|
<el-select class="item_width_2" v-model="searchData.gridId" placeholder="请选择" filterable |
|
|
|
:disabled="gridList.length==0" clearable @change="getviliageList"> |
|
|
|
<el-option v-for="item in gridList" :key="item.value" :label="item.label" |
|
|
|
:value="item.value"></el-option> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="所属小区" prop="viliageId"> |
|
|
|
<el-select class="item_width_2" v-model="searchData.viliageId" placeholder="请选择" filterable clearable @change="getbuildingList"> |
|
|
|
<el-option v-for="item in viliageList" :key="item.value" :label="item.label" :value="item.value"></el-option> |
|
|
|
<el-select class="item_width_2" v-model="searchData.viliageId" placeholder="请选择" filterable |
|
|
|
:disabled="viliageList.length==0" clearable @change="getbuildingList"> |
|
|
|
<el-option v-for="item in viliageList" :key="item.value" :label="item.label" |
|
|
|
:value="item.value"></el-option> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="楼栋" prop="buildingId"> |
|
|
|
<el-select class="item_width_2" v-model="searchData.buildingId" placeholder="请选择" filterable clearable @change="getunitList"> |
|
|
|
<el-option v-for="item in buildingList" :key="item.value" :label="item.label" :value="item.value"></el-option> |
|
|
|
<el-select class="item_width_2" v-model="searchData.buildingId" placeholder="请选择" filterable |
|
|
|
:disabled="buildingList.length==0" clearable @change="getunitList"> |
|
|
|
<el-option v-for="item in buildingList" :key="item.value" :label="item.label" |
|
|
|
:value="item.value"></el-option> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="单元" prop="unitId"> |
|
|
|
<el-select class="item_width_2" v-model="searchData.unitId" placeholder="请选择" filterable clearable> |
|
|
|
<el-option v-for="item in unitList" :key="item.value" :label="item.label" :value="item.value"></el-option> |
|
|
|
<el-select class="item_width_2" v-model="searchData.unitId" placeholder="请选择" filterable |
|
|
|
:disabled="unitList.length==0" clearable> |
|
|
|
<el-option v-for="item in unitList" :key="item.value" :label="item.label" |
|
|
|
:value="item.value"></el-option> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
<el-button style="margin-left: 30px" size="small" class="diy-button--search" @click="handleSearch">查询</el-button> |
|
|
|
<el-button style="margin-left: 10px" size="small" class="diy-button--reset" @click="resetSearch">重置</el-button> |
|
|
|
<el-button style="margin-left: 30px" size="small" class="diy-button--search" |
|
|
|
@click="handleSearch">查询</el-button> |
|
|
|
<el-button style="margin-left: 10px" size="small" class="diy-button--reset" |
|
|
|
@click="resetSearch">重置</el-button> |
|
|
|
</div> |
|
|
|
</el-form> |
|
|
|
</div> |
|
|
|
|
|
|
|
<div class="div_table"> |
|
|
|
<div class="div_btn"> |
|
|
|
<el-button class="diy-button--add" size="small" @click="handleAdd">新增</el-button> |
|
|
|
|
|
|
|
<!-- <el-button |
|
|
|
@click="handleExport" |
|
|
|
class="diy-button--reset" |
|
|
|
@ -80,115 +93,119 @@ |
|
|
|
>导出</el-button |
|
|
|
> --> |
|
|
|
</div> |
|
|
|
|
|
|
|
<el-table :data="tableData" border :header-cell-style="{ background: '#2195FE', color: '#FFFFFF' }" class="table" style="width: 100%" :height="maxTableHeight"> |
|
|
|
<el-table :data="tableData" border :header-cell-style="{ background: '#2195FE', color: '#FFFFFF' }" |
|
|
|
class="table" style="width: 100%" :height="maxTableHeight"> |
|
|
|
<el-table-column label="序号" fixed="left" type="index" align="center" width="50" /> |
|
|
|
<!-- 姓名 联系电话 证件号 所属组织 楼栋 单元 tianqian --> |
|
|
|
<el-table-column prop="name" align="center" label="姓名" :show-overflow-tooltip="true"></el-table-column> |
|
|
|
<el-table-column prop="phone" align="center" label="联系电话" :show-overflow-tooltip="true"></el-table-column> |
|
|
|
<el-table-column prop="idCard" align="center" label="证件号" :show-overflow-tooltip="true"></el-table-column> |
|
|
|
<el-table-column prop="districtName" align="center" label="所属区市" :show-overflow-tooltip="true"></el-table-column> |
|
|
|
<el-table-column prop="streetName" align="center" label="所属镇街" :show-overflow-tooltip="true"></el-table-column> |
|
|
|
<el-table-column prop="communityName" align="center" label="所属社区/民居" :show-overflow-tooltip="true"></el-table-column> |
|
|
|
<el-table-column prop="gridName" align="center" label="所属网格" :show-overflow-tooltip="true"></el-table-column> |
|
|
|
<el-table-column prop="viliageName" align="center" label="所属小区" :show-overflow-tooltip="true"></el-table-column> |
|
|
|
|
|
|
|
<el-table-column prop="buildingName" align="center" label="楼栋" :show-overflow-tooltip="true"></el-table-column> |
|
|
|
<el-table-column prop="unitName" align="center" label="单元" :show-overflow-tooltip="true"></el-table-column> |
|
|
|
|
|
|
|
<el-table-column prop="name" align="center" label="姓名" |
|
|
|
:show-overflow-tooltip="true"></el-table-column> |
|
|
|
<el-table-column prop="phone" align="center" label="联系电话" |
|
|
|
:show-overflow-tooltip="true"></el-table-column> |
|
|
|
<el-table-column prop="idCard" align="center" label="证件号" |
|
|
|
:show-overflow-tooltip="true"></el-table-column> |
|
|
|
<el-table-column prop="districtName" align="center" label="所属区市" |
|
|
|
:show-overflow-tooltip="true"></el-table-column> |
|
|
|
<el-table-column prop="streetName" align="center" label="所属镇街" |
|
|
|
:show-overflow-tooltip="true"></el-table-column> |
|
|
|
<el-table-column prop="communityName" align="center" label="所属社区/民居" |
|
|
|
:show-overflow-tooltip="true"></el-table-column> |
|
|
|
<el-table-column prop="gridName" align="center" label="所属网格" |
|
|
|
:show-overflow-tooltip="true"></el-table-column> |
|
|
|
<el-table-column prop="viliageName" align="center" label="所属小区" |
|
|
|
:show-overflow-tooltip="true"></el-table-column> |
|
|
|
<el-table-column prop="buildingName" align="center" label="楼栋" |
|
|
|
:show-overflow-tooltip="true"></el-table-column> |
|
|
|
<el-table-column prop="unitName" align="center" label="单元" |
|
|
|
:show-overflow-tooltip="true"></el-table-column> |
|
|
|
<el-table-column fixed="right" label="操作" align="center" width="200"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<el-button @click="handleWatch(scope.row)" type="text" size="small" class=".div-table-button--detail">查看</el-button> |
|
|
|
<el-button @click="handleEdit(scope.row)" type="text" size="small" class="div-table-button--edit">编辑</el-button> |
|
|
|
|
|
|
|
<el-popconfirm title="删除之后无法回复,确认删除?" @onConfirm="handleDelete(scope.row, scope.$index)" @confirm="handleDelete(scope.row, scope.$index)"> |
|
|
|
<el-button slot="reference" type="text" size="small" style="margin-left: 10px" class="div-table-button--delete">删除</el-button> |
|
|
|
<el-button @click="handleWatch(scope.row)" type="text" size="small" |
|
|
|
class=".div-table-button--detail">查看</el-button> |
|
|
|
<el-button @click="handleEdit(scope.row)" type="text" size="small" |
|
|
|
class="div-table-button--edit">编辑</el-button> |
|
|
|
<el-popconfirm title="删除之后无法回复,确认删除?" @onConfirm="handleDelete(scope.row, scope.$index)" |
|
|
|
@confirm="handleDelete(scope.row, scope.$index)"> |
|
|
|
<el-button slot="reference" type="text" size="small" style="margin-left: 10px" |
|
|
|
class="div-table-button--delete">删除</el-button> |
|
|
|
</el-popconfirm> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
</el-table> |
|
|
|
|
|
|
|
<div> |
|
|
|
<el-pagination |
|
|
|
@size-change="handleSizeChange" |
|
|
|
@current-change="handleCurrentChange" |
|
|
|
:current-page.sync="pageNo" |
|
|
|
:page-sizes="[20, 50, 100, 200]" |
|
|
|
:page-size="parseInt(pageSize)" |
|
|
|
layout="sizes, prev, pager, next, total" |
|
|
|
:total="total" |
|
|
|
></el-pagination> |
|
|
|
<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" |
|
|
|
:current-page.sync="pageNo" :page-sizes="[20, 50, 100, 200]" :page-size="parseInt(pageSize)" |
|
|
|
layout="sizes, prev, pager, next, total" :total="total"></el-pagination> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
|
|
|
|
<!-- 修改弹出框 --> |
|
|
|
<el-dialog |
|
|
|
v-if="formShow" |
|
|
|
:visible.sync="formShow" |
|
|
|
:close-on-click-modal="false" |
|
|
|
:close-on-press-escape="false" |
|
|
|
:title="formTitle" |
|
|
|
width="850px" |
|
|
|
top="5vh" |
|
|
|
class="dialog-h" |
|
|
|
@closed="handleClose" |
|
|
|
> |
|
|
|
<edit-form ref="eleEditForm" :formId="formId" :formType="formType" @close="handleClose" :villageList="villageList" @afterEdit="handleEditSuccess"></edit-form> |
|
|
|
<el-dialog v-if="formShow" :visible.sync="formShow" :close-on-click-modal="false" :close-on-press-escape="false" |
|
|
|
:title="formTitle" width="850px" top="5vh" class="dialog-h" @closed="handleClose"> |
|
|
|
<edit-form ref="eleEditForm" :formId="formId" :formType="formType" @close="handleClose" |
|
|
|
:villageList="villageList" @afterEdit="handleEditSuccess"></edit-form> |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
<!-- 详情弹出框 --> |
|
|
|
<el-dialog |
|
|
|
v-if="detailShow" |
|
|
|
:visible.sync="detailShow" |
|
|
|
:close-on-click-modal="false" |
|
|
|
:close-on-press-escape="false" |
|
|
|
:title="'详情'" |
|
|
|
width="850px" |
|
|
|
top="5vh" |
|
|
|
class="dialog-h" |
|
|
|
@closed="handleClose" |
|
|
|
> |
|
|
|
<detail-form ref="ref_form_detail" :formId="formId" :villageList="villageList" @diaDetailClose="handleClose"></detail-form> |
|
|
|
<el-dialog v-if="detailShow" :visible.sync="detailShow" :close-on-click-modal="false" |
|
|
|
:close-on-press-escape="false" :title="'详情'" width="850px" top="5vh" class="dialog-h" @closed="handleClose"> |
|
|
|
<detail-form ref="ref_form_detail" :formId="formId" :villageList="villageList" |
|
|
|
@diaDetailClose="handleClose"></detail-form> |
|
|
|
</el-dialog> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
|
|
|
|
<script> |
|
|
|
import { requestPost } from '@/js/dai/request'; |
|
|
|
import { |
|
|
|
requestPost |
|
|
|
} from '@/js/dai/request'; |
|
|
|
import nextTick from 'dai-js/tools/nextTick'; |
|
|
|
import { mapGetters } from 'vuex'; |
|
|
|
import { |
|
|
|
mapGetters |
|
|
|
} from 'vuex'; |
|
|
|
import axios from 'axios'; |
|
|
|
import editForm from './cpts/edit'; |
|
|
|
import detailForm from './cpts/detail'; |
|
|
|
|
|
|
|
function iniSearchData() { |
|
|
|
return { |
|
|
|
name: '' |
|
|
|
name: '', |
|
|
|
phone: '', |
|
|
|
idCard: '', |
|
|
|
type: '', |
|
|
|
districtId: '', |
|
|
|
streetId: '', |
|
|
|
communityId: '', |
|
|
|
gridId: '', |
|
|
|
viliageId: '', |
|
|
|
buildingId: '', |
|
|
|
unitId: '', |
|
|
|
}; |
|
|
|
} |
|
|
|
|
|
|
|
export default { |
|
|
|
components: { editForm, detailForm }, |
|
|
|
|
|
|
|
components: { |
|
|
|
editForm, |
|
|
|
detailForm |
|
|
|
}, |
|
|
|
data() { |
|
|
|
return { |
|
|
|
typeList: [{ |
|
|
|
value: '0', |
|
|
|
label: '楼长' |
|
|
|
}, { |
|
|
|
value: '1', |
|
|
|
label: '单元长' |
|
|
|
}], |
|
|
|
tableData: [], |
|
|
|
villageList: {}, |
|
|
|
searchData: iniSearchData(), |
|
|
|
categoryOptions: [], |
|
|
|
|
|
|
|
pageNo: 1, |
|
|
|
pageSize: window.localStorage.getItem('pageSize') || 20, |
|
|
|
total: 1, |
|
|
|
|
|
|
|
formId: '', |
|
|
|
formShow: false, |
|
|
|
formTitle: '服务项目', |
|
|
|
formType: '', // 列表list 新增add 修改edit 详情info |
|
|
|
|
|
|
|
detailShow: false, |
|
|
|
districList: [], |
|
|
|
districtList: [], |
|
|
|
streetList: [], |
|
|
|
communityList: [], |
|
|
|
gridList: [], |
|
|
|
@ -205,36 +222,31 @@ export default { |
|
|
|
}, |
|
|
|
...mapGetters(['clientHeight', 'iframeHeight']) |
|
|
|
}, |
|
|
|
|
|
|
|
mounted() { |
|
|
|
console.log(this.$store.state); |
|
|
|
this.user = this.$store.state.user; |
|
|
|
this.getTableData(); |
|
|
|
this.getdistricList(); |
|
|
|
this.getdistrictList(); |
|
|
|
}, |
|
|
|
methods: { |
|
|
|
// districList |
|
|
|
// streetList |
|
|
|
// communityList |
|
|
|
// gridList |
|
|
|
// viliageList |
|
|
|
// buildingList |
|
|
|
// unitList |
|
|
|
// getdistricList |
|
|
|
// getstreetList |
|
|
|
// getcommunityList |
|
|
|
// getgridList |
|
|
|
// getviliageList |
|
|
|
// getbuildingList |
|
|
|
// getunitList |
|
|
|
//加载组织 |
|
|
|
async getdistricList() { |
|
|
|
async getdistrictList() { |
|
|
|
// 区市 |
|
|
|
const url = '/gov/org/customeragency/districtList'; |
|
|
|
const { data, code, msg } = await requestPost(url); |
|
|
|
const { |
|
|
|
data, |
|
|
|
code, |
|
|
|
msg |
|
|
|
} = await requestPost(url); |
|
|
|
if (code === 0) { |
|
|
|
this.districList = data; |
|
|
|
|
|
|
|
this.districtList = data; |
|
|
|
this.streetList = []; |
|
|
|
this.communityList = []; |
|
|
|
this.gridList = []; |
|
|
|
this.viliageList = []; |
|
|
|
this.buildingList = []; |
|
|
|
this.unitList = []; |
|
|
|
this.searchData.districtId = ''; |
|
|
|
this.searchData.streetId = ''; |
|
|
|
this.searchData.communityId = ''; |
|
|
|
this.searchData.gridId = ''; |
|
|
|
@ -249,10 +261,19 @@ export default { |
|
|
|
async getstreetList(id) { |
|
|
|
// 镇街 |
|
|
|
const url = `/gov/org/customeragency/streetList/${id}`; |
|
|
|
const { data, code, msg } = await requestPost(url); |
|
|
|
const { |
|
|
|
data, |
|
|
|
code, |
|
|
|
msg |
|
|
|
} = await requestPost(url); |
|
|
|
if (code === 0) { |
|
|
|
this.streetList = data; |
|
|
|
|
|
|
|
this.communityList = []; |
|
|
|
this.gridList = []; |
|
|
|
this.viliageList = []; |
|
|
|
this.buildingList = []; |
|
|
|
this.unitList = []; |
|
|
|
this.searchData.streetId = ''; |
|
|
|
this.searchData.communityId = ''; |
|
|
|
this.searchData.gridId = ''; |
|
|
|
this.searchData.viliageId = ''; |
|
|
|
@ -266,10 +287,18 @@ export default { |
|
|
|
async getcommunityList(id) { |
|
|
|
// 社区/民居 |
|
|
|
const url = `/gov/org/customeragency/communityList/${id}`; |
|
|
|
const { data, code, msg } = await requestPost(url); |
|
|
|
const { |
|
|
|
data, |
|
|
|
code, |
|
|
|
msg |
|
|
|
} = await requestPost(url); |
|
|
|
if (code === 0) { |
|
|
|
this.communityList = data; |
|
|
|
|
|
|
|
this.gridList = []; |
|
|
|
this.viliageList = []; |
|
|
|
this.buildingList = []; |
|
|
|
this.unitList = []; |
|
|
|
this.searchData.communityId = ''; |
|
|
|
this.searchData.gridId = ''; |
|
|
|
this.searchData.viliageId = ''; |
|
|
|
this.searchData.buildingId = ''; |
|
|
|
@ -282,10 +311,20 @@ export default { |
|
|
|
async getgridList(id) { |
|
|
|
// 网格 |
|
|
|
const url = `/gov/org/customergrid/gridoption`; |
|
|
|
const { data, code, msg } = await requestPost(url, { agencyId: this.searchData.communityId, purpose: 'query' }); |
|
|
|
const { |
|
|
|
data, |
|
|
|
code, |
|
|
|
msg |
|
|
|
} = await requestPost(url, { |
|
|
|
agencyId: this.searchData.communityId, |
|
|
|
purpose: 'query' |
|
|
|
}); |
|
|
|
if (code === 0) { |
|
|
|
this.gridList = data; |
|
|
|
|
|
|
|
this.viliageList = []; |
|
|
|
this.buildingList = []; |
|
|
|
this.unitList = []; |
|
|
|
this.searchData.gridId = ''; |
|
|
|
this.searchData.viliageId = ''; |
|
|
|
this.searchData.buildingId = ''; |
|
|
|
this.searchData.unitId = ''; |
|
|
|
@ -297,10 +336,19 @@ export default { |
|
|
|
async getviliageList(id) { |
|
|
|
//小区 |
|
|
|
const url = `/gov/org/icneighborhood/neighborhood-options`; |
|
|
|
const { data, code, msg } = await requestPost(url, { agencyId: this.searchData.communityId, gridId: this.searchData.gridId }); |
|
|
|
const { |
|
|
|
data, |
|
|
|
code, |
|
|
|
msg |
|
|
|
} = await requestPost(url, { |
|
|
|
agencyId: this.searchData.communityId, |
|
|
|
gridId: this.searchData.gridId |
|
|
|
}); |
|
|
|
if (code === 0) { |
|
|
|
this.viliageList = data; |
|
|
|
|
|
|
|
this.buildingList = []; |
|
|
|
this.unitList = []; |
|
|
|
this.searchData.viliageId = ''; |
|
|
|
this.searchData.buildingId = ''; |
|
|
|
this.searchData.unitId = ''; |
|
|
|
} else { |
|
|
|
@ -310,37 +358,52 @@ export default { |
|
|
|
}, |
|
|
|
async getbuildingList(id) { |
|
|
|
const url = `/gov/org/icbuilding/buildingoption`; |
|
|
|
const { data, code, msg } = await requestPost(url, { neighborHoodId: this.searchData.viliageId }); |
|
|
|
const { |
|
|
|
data, |
|
|
|
code, |
|
|
|
msg |
|
|
|
} = await requestPost(url, { |
|
|
|
neighborHoodId: this.searchData.viliageId |
|
|
|
}); |
|
|
|
if (code === 0) { |
|
|
|
this.buildingList = data; |
|
|
|
|
|
|
|
this.unitList = []; |
|
|
|
this.searchData.buildingId = ''; |
|
|
|
this.searchData.unitId = ''; |
|
|
|
} else { |
|
|
|
this.$message.error(msg); |
|
|
|
} |
|
|
|
this.$forceUpdate(); |
|
|
|
}, |
|
|
|
|
|
|
|
async getunitList(id) { |
|
|
|
const url = `/gov/org/icbuildingunit/unitoption`; |
|
|
|
const { data, code, msg } = await requestPost(url, { buildingId: id }); |
|
|
|
const { |
|
|
|
data, |
|
|
|
code, |
|
|
|
msg |
|
|
|
} = await requestPost(url, { |
|
|
|
buildingId: id |
|
|
|
}); |
|
|
|
if (code === 0) { |
|
|
|
this.unitList = data; |
|
|
|
this.searchData.unitId = ''; |
|
|
|
} else { |
|
|
|
this.$message.error(msg); |
|
|
|
} |
|
|
|
this.$forceUpdate(); |
|
|
|
}, |
|
|
|
|
|
|
|
handleSearch(val) { |
|
|
|
console.log(this.searchData); |
|
|
|
this.pageNo = 1; |
|
|
|
this.getTableData(); |
|
|
|
}, |
|
|
|
|
|
|
|
async handleExport() { |
|
|
|
const url = '/gov/project/icEvent/export'; |
|
|
|
const { pageSize, pageNo, searchData } = this; |
|
|
|
const { |
|
|
|
pageSize, |
|
|
|
pageNo, |
|
|
|
searchData |
|
|
|
} = this; |
|
|
|
axios({ |
|
|
|
url: window.SITE_CONFIG['apiURL'] + url, |
|
|
|
method: 'post', |
|
|
|
@ -350,11 +413,13 @@ export default { |
|
|
|
...searchData |
|
|
|
}, |
|
|
|
responseType: 'blob' |
|
|
|
}) |
|
|
|
.then(res => { |
|
|
|
let fileName = window.decodeURI(res.headers['content-disposition'].split(';')[1].split('=')[1]); |
|
|
|
}).then(res => { |
|
|
|
let fileName = window.decodeURI(res.headers['content-disposition'].split(';')[1].split( |
|
|
|
'=')[1]); |
|
|
|
console.log('filename', fileName); |
|
|
|
let blob = new Blob([res.data], { type: 'application/vnd.ms-excel' }); |
|
|
|
let blob = new Blob([res.data], { |
|
|
|
type: 'application/vnd.ms-excel' |
|
|
|
}); |
|
|
|
var url = window.URL.createObjectURL(blob); |
|
|
|
var aLink = document.createElement('a'); |
|
|
|
aLink.style.display = 'none'; |
|
|
|
@ -364,19 +429,16 @@ export default { |
|
|
|
aLink.click(); |
|
|
|
document.body.removeChild(aLink); //下载完成移除元素 |
|
|
|
window.URL.revokeObjectURL(url); //释放掉blob对象 |
|
|
|
}) |
|
|
|
.catch(err => { |
|
|
|
}).catch(err => { |
|
|
|
console.log('获取导出情失败', err); |
|
|
|
return this.$message.error('网络错误'); |
|
|
|
}); |
|
|
|
}, |
|
|
|
|
|
|
|
handleAdd() { |
|
|
|
this.formType = 'add'; |
|
|
|
this.formTitle = '新增'; |
|
|
|
this.formShow = true; |
|
|
|
}, |
|
|
|
|
|
|
|
handleWatch(row) { |
|
|
|
// this.formType = "watch"; |
|
|
|
this.villageList = row; |
|
|
|
@ -385,30 +447,30 @@ export default { |
|
|
|
console.log(this.villageList); |
|
|
|
this.detailShow = true; |
|
|
|
}, |
|
|
|
|
|
|
|
handleEdit(row) { |
|
|
|
this.formType = 'edit'; |
|
|
|
this.formId = row.villageId; |
|
|
|
this.formId = row.id; |
|
|
|
this.villageList = row; |
|
|
|
this.formTitle = '编辑'; |
|
|
|
this.formShow = true; |
|
|
|
}, |
|
|
|
|
|
|
|
handleClose() { |
|
|
|
this.formShow = false; |
|
|
|
this.detailShow = false; |
|
|
|
}, |
|
|
|
|
|
|
|
handleEditSuccess() { |
|
|
|
this.handleClose(); |
|
|
|
this.getTableData(); |
|
|
|
}, |
|
|
|
|
|
|
|
async handleDelete(rowData, rowIndex) { |
|
|
|
console.log(rowData, rowIndex); |
|
|
|
const url = '/gov/org/communityBuildingManager/delete'; |
|
|
|
let params = { id: rowData.id }; |
|
|
|
const { data, code, msg } = await requestPost(url, params); |
|
|
|
let params = [rowData.id]; |
|
|
|
const { |
|
|
|
data, |
|
|
|
code, |
|
|
|
msg |
|
|
|
} = await requestPost(url, params); |
|
|
|
if (code === 0) { |
|
|
|
this.$message.success('删除成功!'); |
|
|
|
this.getTableData(); |
|
|
|
@ -420,29 +482,31 @@ export default { |
|
|
|
} |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
async getTableData() { |
|
|
|
const url = '/gov/org/communityBuildingManager/page'; |
|
|
|
|
|
|
|
const { pageSize, pageNo, searchData } = this; |
|
|
|
const { data, code, msg } = await requestPost(url, { |
|
|
|
const { |
|
|
|
pageSize, |
|
|
|
pageNo, |
|
|
|
searchData |
|
|
|
} = this; |
|
|
|
const { |
|
|
|
data, |
|
|
|
code, |
|
|
|
msg |
|
|
|
} = await requestPost(url, { |
|
|
|
pageSize, |
|
|
|
pageNo, |
|
|
|
...searchData |
|
|
|
}); |
|
|
|
|
|
|
|
if (code === 0) { |
|
|
|
this.total = data.total || 0; |
|
|
|
this.tableData = data.list |
|
|
|
? data.list.map(item => { |
|
|
|
this.tableData = data.list ? data.list.map(item => { |
|
|
|
return item; |
|
|
|
}) |
|
|
|
: []; |
|
|
|
}) : []; |
|
|
|
} else { |
|
|
|
this.$message.error(msg); |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
handleSizeChange(val) { |
|
|
|
this.pageSize = val; |
|
|
|
window.localStorage.setItem('pageSize', val); |
|
|
|
@ -452,7 +516,6 @@ export default { |
|
|
|
this.pageNo = val; |
|
|
|
this.getTableData(); |
|
|
|
}, |
|
|
|
|
|
|
|
resetSearch() { |
|
|
|
this.searchData = iniSearchData(); |
|
|
|
this.getTableData(); |
|
|
|
@ -460,7 +523,6 @@ export default { |
|
|
|
} |
|
|
|
}; |
|
|
|
</script> |
|
|
|
|
|
|
|
<style lang="scss" scoped> |
|
|
|
@import '@/assets/scss/buttonstyle.scss'; |
|
|
|
@import '@/assets/scss/modules/management/list-main.scss'; |
|
|
|
|