24 changed files with 2339 additions and 112 deletions
@ -0,0 +1,251 @@ |
|||||
|
<template> |
||||
|
<el-dialog :visible.sync="visible" :title="!dataForm.id ? $t('add') : $t('查看')" :close-on-click-modal="false" :close-on-press-escape="false"> |
||||
|
<el-form :disabled="true" :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmitHandle()" :label-width="$i18n.locale === 'en-US' ? '120px' : '80px'"> |
||||
|
<el-form-item label="楼宇类型" prop="buildingType"> |
||||
|
<el-input v-model="dataForm.buildingType" placeholder="楼宇类型"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="楼宇名称" prop="buildingName"> |
||||
|
<el-input v-model="dataForm.buildingName" placeholder="楼宇名称"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="用途分类" prop="buildingUse"> |
||||
|
<el-input v-model="dataForm.buildingUse" placeholder="用途分类"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="楼宇状态" prop="buildingStatus"> |
||||
|
<el-input v-model="dataForm.buildingStatus" placeholder="楼宇状态"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="楼宇结构" prop="buildingStructure"> |
||||
|
<el-input v-model="dataForm.buildingStructure" placeholder="楼宇结构"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="使用现状" prop="buildingUseage"> |
||||
|
<el-input v-model="dataForm.buildingUseage" placeholder="使用现状"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="建筑时间" prop="constructionTime"> |
||||
|
<el-input v-model="dataForm.constructionTime" placeholder="建筑时间"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="所处位置" prop="buildingAddr"> |
||||
|
<el-input v-model="dataForm.buildingAddr" placeholder="所处位置"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="小区(单位)名称" prop="communityName"> |
||||
|
<el-input v-model="dataForm.communityName" placeholder="小区(单位)名称"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="楼栋长" prop="buildingLeader"> |
||||
|
<el-input v-model="dataForm.buildingLeader" placeholder="楼栋长"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="楼层数" prop="layerCount"> |
||||
|
<el-input v-model="dataForm.layerCount" placeholder="楼层数"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="地下楼层数" prop="basementLayerCount"> |
||||
|
<el-input v-model="dataForm.basementLayerCount" placeholder="地下楼层数"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="住宅开始层数" prop="houseBeginLayer"> |
||||
|
<el-input v-model="dataForm.houseBeginLayer" placeholder="住宅开始层数"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="单元数" prop="unitCount"> |
||||
|
<el-input v-model="dataForm.unitCount" placeholder="单元数"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="每层每单元户数" prop="layerRoomCount"> |
||||
|
<el-input v-model="dataForm.layerRoomCount" placeholder="每层每单元户数"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="总房屋数" prop="roomCount"> |
||||
|
<el-input v-model="dataForm.roomCount" placeholder="总房屋数"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="电梯数量" prop="elevatorCount"> |
||||
|
<el-input v-model="dataForm.elevatorCount" placeholder="电梯数量"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="建筑面积" prop="buildingArea"> |
||||
|
<el-input v-model="dataForm.buildingArea" placeholder="建筑面积"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="物业公司" prop="buildingPmc"> |
||||
|
<el-input v-model="dataForm.buildingPmc" placeholder="物业公司"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="介绍" prop="buildingDesc"> |
||||
|
<el-input v-model="dataForm.buildingDesc" placeholder="介绍"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="标绘状态" prop="pointStatus"> |
||||
|
<el-input v-model="dataForm.pointStatus" placeholder="标绘状态"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="经度" prop="longitude"> |
||||
|
<el-input v-model="dataForm.longitude" placeholder="经度"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="纬度" prop="latitude"> |
||||
|
<el-input v-model="dataForm.latitude" placeholder="纬度"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="数据来源" prop="platCode"> |
||||
|
<el-input v-model="dataForm.platCode" placeholder="数据来源"></el-input> |
||||
|
</el-form-item> |
||||
|
</el-form> |
||||
|
<template slot="footer"> |
||||
|
<el-button @click="visible = false">{{ $t('cancel') }}</el-button> |
||||
|
<!-- <el-button type="primary" @click="dataFormSubmitHandle()">{{ $t('confirm') }}</el-button> --> |
||||
|
</template> |
||||
|
</el-dialog> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import debounce from 'lodash/debounce' |
||||
|
export default { |
||||
|
data () { |
||||
|
return { |
||||
|
visible: false, |
||||
|
dataForm: { |
||||
|
buildingId: '', |
||||
|
buildingType: '', |
||||
|
gridId: '', |
||||
|
buildingName: '', |
||||
|
buildingUse: '', |
||||
|
buildingStatus: '', |
||||
|
buildingStructure: '', |
||||
|
buildingUseage: '', |
||||
|
constructionTime: '', |
||||
|
buildingAddr: '', |
||||
|
communityName: '', |
||||
|
buildingLeader: '', |
||||
|
layerCount: '', |
||||
|
basementLayerCount: '', |
||||
|
houseBeginLayer: '', |
||||
|
unitCount: '', |
||||
|
layerRoomCount: '', |
||||
|
roomCount: '', |
||||
|
elevatorCount: '', |
||||
|
buildingArea: '', |
||||
|
buildingPmc: '', |
||||
|
buildingDesc: '', |
||||
|
pointStatus: '', |
||||
|
longitude: '', |
||||
|
latitude: '', |
||||
|
platCode: '', |
||||
|
createBy: '', |
||||
|
createDate: '', |
||||
|
updateBy: '', |
||||
|
updateDate: '', |
||||
|
deleteFlag: '', |
||||
|
versions: '', |
||||
|
communityId: '' |
||||
|
} |
||||
|
} |
||||
|
}, |
||||
|
computed: { |
||||
|
dataRule () { |
||||
|
return { |
||||
|
buildingType: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
buildingName: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
buildingUse: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
buildingStatus: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
buildingStructure: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
buildingUseage: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
constructionTime: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
buildingAddr: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
communityName: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
buildingLeader: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
layerCount: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
basementLayerCount: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
houseBeginLayer: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
unitCount: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
layerRoomCount: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
roomCount: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
elevatorCount: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
buildingArea: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
buildingPmc: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
buildingDesc: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
pointStatus: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
longitude: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
latitude: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
platCode: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
] |
||||
|
} |
||||
|
} |
||||
|
}, |
||||
|
methods: { |
||||
|
init () { |
||||
|
this.visible = true |
||||
|
this.$nextTick(() => { |
||||
|
this.$refs['dataForm'].resetFields() |
||||
|
if (this.dataForm.id) { |
||||
|
this.getInfo() |
||||
|
} |
||||
|
}) |
||||
|
}, |
||||
|
// 获取信息 |
||||
|
getInfo () { |
||||
|
this.$http.post(`/opendata/caLoudong/getLouDongDetails`, { buildingId: this.dataForm.id }).then(({ data: res }) => { |
||||
|
if (res.code !== 0) { |
||||
|
return this.$message.error(res.msg) |
||||
|
} |
||||
|
this.dataForm = { |
||||
|
...this.dataForm, |
||||
|
...res.data |
||||
|
} |
||||
|
}).catch(() => {}) |
||||
|
}, |
||||
|
// 表单提交 |
||||
|
dataFormSubmitHandle: debounce(function () { |
||||
|
this.$refs['dataForm'].validate((valid) => { |
||||
|
if (!valid) { |
||||
|
return false |
||||
|
} |
||||
|
this.$http[!this.dataForm.buildingId ? 'post' : 'put']('/axis/caLoudong/', this.dataForm).then(({ data: res }) => { |
||||
|
if (res.code !== 0) { |
||||
|
return this.$message.error(res.msg) |
||||
|
} |
||||
|
this.$message({ |
||||
|
message: this.$t('prompt.success'), |
||||
|
type: 'success', |
||||
|
duration: 500, |
||||
|
onClose: () => { |
||||
|
this.visible = false |
||||
|
this.$emit('refreshDataList') |
||||
|
} |
||||
|
}) |
||||
|
}).catch(() => {}) |
||||
|
}) |
||||
|
}, 1000, { 'leading': true, 'trailing': false }) |
||||
|
} |
||||
|
} |
||||
|
</script> |
||||
@ -0,0 +1,155 @@ |
|||||
|
<template> |
||||
|
<div class="mod-axis__caLoudong}"> |
||||
|
<el-card> |
||||
|
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()"> |
||||
|
<el-form-item label="楼宇名称" prop="buildingName"> |
||||
|
<el-input |
||||
|
v-model="dataForm.buildingName" |
||||
|
placeholder="楼宇名称" |
||||
|
clearable |
||||
|
></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="小区(单位)名称" prop="communityName"> |
||||
|
<el-input |
||||
|
v-model="dataForm.communityName" |
||||
|
placeholder="小区(单位)名称" |
||||
|
clearable |
||||
|
></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item> |
||||
|
<el-button type="primary" @click="getDataList()">{{ $t("query") }}</el-button> |
||||
|
</el-form-item> |
||||
|
<!-- <el-form-item> |
||||
|
<el-button v-if="$hasPermission('axis:caResident:save')" type="primary" @click="addOrUpdateHandle()">{{ $t('add') }}</el-button> |
||||
|
</el-form-item> |
||||
|
<el-form-item> |
||||
|
<el-button v-if="$hasPermission('axis:caResident:delete')" type="danger" @click="deleteHandle()">{{ $t('deleteBatch') }}</el-button> |
||||
|
</el-form-item> --> |
||||
|
</el-form> |
||||
|
</el-card> |
||||
|
<el-card shadow="never" class="aui-card--fill"> |
||||
|
<el-table |
||||
|
v-loading="dataListLoading" |
||||
|
:data="dataList" |
||||
|
border |
||||
|
@selection-change="dataListSelectionChangeHandle" |
||||
|
style="width: 100%" |
||||
|
> |
||||
|
<el-table-column |
||||
|
type="selection" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
width="50" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="buildingName" |
||||
|
label="楼宇名称" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="buildingUse" |
||||
|
label="用途分类" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="buildingAddr" |
||||
|
label="所处位置" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
:show-overflow-tooltip="true" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="communityName" |
||||
|
label="小区(单位)名称" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
:show-overflow-tooltip="true" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="layerCount" |
||||
|
label="楼层数" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="unitCount" |
||||
|
label="单元数" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="roomCount" |
||||
|
label="总房屋数" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="elevatorCount" |
||||
|
label="电梯数量" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="buildingPmc" |
||||
|
label="物业公司" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
></el-table-column> |
||||
|
<el-table-column :label="$t('handle')" fixed="right" align="center" width="100"> |
||||
|
<template slot-scope="scope"> |
||||
|
<el-button |
||||
|
type="text" |
||||
|
class="div-table-button--detail" |
||||
|
size="small" |
||||
|
@click="addOrUpdateHandle(scope.row.buildingId)" |
||||
|
>查看</el-button |
||||
|
> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
</el-table> |
||||
|
<el-pagination |
||||
|
:current-page="page" |
||||
|
:page-sizes="[10, 20, 50, 100]" |
||||
|
:page-size="limit" |
||||
|
:total="total" |
||||
|
layout="total, sizes, prev, pager, next, jumper" |
||||
|
@size-change="pageSizeChangeHandle" |
||||
|
@current-change="pageCurrentChangeHandle" |
||||
|
> |
||||
|
</el-pagination> |
||||
|
<!-- 弹窗, 新增 / 修改 --> |
||||
|
<add-or-update |
||||
|
v-if="addOrUpdateVisible" |
||||
|
ref="addOrUpdate" |
||||
|
@refreshDataList="getDataList" |
||||
|
></add-or-update> |
||||
|
</el-card> |
||||
|
</div> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import mixinViewModule from "@/mixins/view-post"; |
||||
|
import AddOrUpdate from "./caloudong-add-or-update"; |
||||
|
export default { |
||||
|
mixins: [mixinViewModule], |
||||
|
data() { |
||||
|
return { |
||||
|
mixinViewModuleOptions: { |
||||
|
getDataListURL: "/opendata/caLoudong/getPage", |
||||
|
getDataListIsPage: true, |
||||
|
deleteURL: "", |
||||
|
deleteIsBatch: true, |
||||
|
}, |
||||
|
dataForm: { |
||||
|
buildingName: "", |
||||
|
communityName: "", |
||||
|
}, |
||||
|
}; |
||||
|
}, |
||||
|
components: { |
||||
|
AddOrUpdate, |
||||
|
}, |
||||
|
}; |
||||
|
</script> |
||||
@ -0,0 +1,251 @@ |
|||||
|
<template> |
||||
|
<el-dialog :visible.sync="visible" :title="!dataForm.id ? $t('add') : $t('查看')" :close-on-click-modal="false" :close-on-press-escape="false"> |
||||
|
<el-form :disabled="true" :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmitHandle()" :label-width="$i18n.locale === 'en-US' ? '120px' : '80px'"> |
||||
|
<el-form-item label="楼宇类型" prop="buildingType"> |
||||
|
<el-input v-model="dataForm.buildingType" placeholder="楼宇类型"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="楼宇名称" prop="buildingName"> |
||||
|
<el-input v-model="dataForm.buildingName" placeholder="楼宇名称"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="用途分类" prop="buildingUse"> |
||||
|
<el-input v-model="dataForm.buildingUse" placeholder="用途分类"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="楼宇状态" prop="buildingStatus"> |
||||
|
<el-input v-model="dataForm.buildingStatus" placeholder="楼宇状态"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="楼宇结构" prop="buildingStructure"> |
||||
|
<el-input v-model="dataForm.buildingStructure" placeholder="楼宇结构"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="使用现状" prop="buildingUseage"> |
||||
|
<el-input v-model="dataForm.buildingUseage" placeholder="使用现状"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="建筑时间" prop="constructionTime"> |
||||
|
<el-input v-model="dataForm.constructionTime" placeholder="建筑时间"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="所处位置" prop="buildingAddr"> |
||||
|
<el-input v-model="dataForm.buildingAddr" placeholder="所处位置"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="小区(单位)名称" prop="communityName"> |
||||
|
<el-input v-model="dataForm.communityName" placeholder="小区(单位)名称"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="楼栋长" prop="buildingLeader"> |
||||
|
<el-input v-model="dataForm.buildingLeader" placeholder="楼栋长"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="楼层数" prop="layerCount"> |
||||
|
<el-input v-model="dataForm.layerCount" placeholder="楼层数"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="地下楼层数" prop="basementLayerCount"> |
||||
|
<el-input v-model="dataForm.basementLayerCount" placeholder="地下楼层数"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="住宅开始层数" prop="houseBeginLayer"> |
||||
|
<el-input v-model="dataForm.houseBeginLayer" placeholder="住宅开始层数"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="单元数" prop="unitCount"> |
||||
|
<el-input v-model="dataForm.unitCount" placeholder="单元数"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="每层每单元户数" prop="layerRoomCount"> |
||||
|
<el-input v-model="dataForm.layerRoomCount" placeholder="每层每单元户数"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="总房屋数" prop="roomCount"> |
||||
|
<el-input v-model="dataForm.roomCount" placeholder="总房屋数"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="电梯数量" prop="elevatorCount"> |
||||
|
<el-input v-model="dataForm.elevatorCount" placeholder="电梯数量"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="建筑面积" prop="buildingArea"> |
||||
|
<el-input v-model="dataForm.buildingArea" placeholder="建筑面积"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="物业公司" prop="buildingPmc"> |
||||
|
<el-input v-model="dataForm.buildingPmc" placeholder="物业公司"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="介绍" prop="buildingDesc"> |
||||
|
<el-input v-model="dataForm.buildingDesc" placeholder="介绍"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="标绘状态" prop="pointStatus"> |
||||
|
<el-input v-model="dataForm.pointStatus" placeholder="标绘状态"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="经度" prop="longitude"> |
||||
|
<el-input v-model="dataForm.longitude" placeholder="经度"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="纬度" prop="latitude"> |
||||
|
<el-input v-model="dataForm.latitude" placeholder="纬度"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="数据来源" prop="platCode"> |
||||
|
<el-input v-model="dataForm.platCode" placeholder="数据来源"></el-input> |
||||
|
</el-form-item> |
||||
|
</el-form> |
||||
|
<template slot="footer"> |
||||
|
<el-button @click="visible = false">{{ $t('cancel') }}</el-button> |
||||
|
<!-- <el-button type="primary" @click="dataFormSubmitHandle()">{{ $t('confirm') }}</el-button> --> |
||||
|
</template> |
||||
|
</el-dialog> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import debounce from 'lodash/debounce' |
||||
|
export default { |
||||
|
data () { |
||||
|
return { |
||||
|
visible: false, |
||||
|
dataForm: { |
||||
|
buildingId: '', |
||||
|
buildingType: '', |
||||
|
gridId: '', |
||||
|
buildingName: '', |
||||
|
buildingUse: '', |
||||
|
buildingStatus: '', |
||||
|
buildingStructure: '', |
||||
|
buildingUseage: '', |
||||
|
constructionTime: '', |
||||
|
buildingAddr: '', |
||||
|
communityName: '', |
||||
|
buildingLeader: '', |
||||
|
layerCount: '', |
||||
|
basementLayerCount: '', |
||||
|
houseBeginLayer: '', |
||||
|
unitCount: '', |
||||
|
layerRoomCount: '', |
||||
|
roomCount: '', |
||||
|
elevatorCount: '', |
||||
|
buildingArea: '', |
||||
|
buildingPmc: '', |
||||
|
buildingDesc: '', |
||||
|
pointStatus: '', |
||||
|
longitude: '', |
||||
|
latitude: '', |
||||
|
platCode: '', |
||||
|
createBy: '', |
||||
|
createDate: '', |
||||
|
updateBy: '', |
||||
|
updateDate: '', |
||||
|
deleteFlag: '', |
||||
|
versions: '', |
||||
|
communityId: '' |
||||
|
} |
||||
|
} |
||||
|
}, |
||||
|
computed: { |
||||
|
dataRule () { |
||||
|
return { |
||||
|
buildingType: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
buildingName: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
buildingUse: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
buildingStatus: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
buildingStructure: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
buildingUseage: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
constructionTime: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
buildingAddr: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
communityName: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
buildingLeader: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
layerCount: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
basementLayerCount: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
houseBeginLayer: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
unitCount: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
layerRoomCount: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
roomCount: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
elevatorCount: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
buildingArea: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
buildingPmc: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
buildingDesc: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
pointStatus: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
longitude: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
latitude: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
platCode: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
] |
||||
|
} |
||||
|
} |
||||
|
}, |
||||
|
methods: { |
||||
|
init () { |
||||
|
this.visible = true |
||||
|
this.$nextTick(() => { |
||||
|
this.$refs['dataForm'].resetFields() |
||||
|
if (this.dataForm.id) { |
||||
|
this.getInfo() |
||||
|
} |
||||
|
}) |
||||
|
}, |
||||
|
// 获取信息 |
||||
|
getInfo () { |
||||
|
this.$http.post(`/opendata/caPingfang/getPingFangDetails`, { buildingId: this.dataForm.id }).then(({ data: res }) => { |
||||
|
if (res.code !== 0) { |
||||
|
return this.$message.error(res.msg) |
||||
|
} |
||||
|
this.dataForm = { |
||||
|
...this.dataForm, |
||||
|
...res.data |
||||
|
} |
||||
|
}).catch(() => {}) |
||||
|
}, |
||||
|
// 表单提交 |
||||
|
dataFormSubmitHandle: debounce(function () { |
||||
|
this.$refs['dataForm'].validate((valid) => { |
||||
|
if (!valid) { |
||||
|
return false |
||||
|
} |
||||
|
this.$http[!this.dataForm.buildingId ? 'post' : 'put']('/axis/caLoudong/', this.dataForm).then(({ data: res }) => { |
||||
|
if (res.code !== 0) { |
||||
|
return this.$message.error(res.msg) |
||||
|
} |
||||
|
this.$message({ |
||||
|
message: this.$t('prompt.success'), |
||||
|
type: 'success', |
||||
|
duration: 500, |
||||
|
onClose: () => { |
||||
|
this.visible = false |
||||
|
this.$emit('refreshDataList') |
||||
|
} |
||||
|
}) |
||||
|
}).catch(() => {}) |
||||
|
}) |
||||
|
}, 1000, { 'leading': true, 'trailing': false }) |
||||
|
} |
||||
|
} |
||||
|
</script> |
||||
@ -0,0 +1,155 @@ |
|||||
|
<template> |
||||
|
<div class="mod-axis__caPingfang}"> |
||||
|
<el-card> |
||||
|
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()"> |
||||
|
<el-form-item label="楼宇名称" prop="buildingName"> |
||||
|
<el-input |
||||
|
v-model="dataForm.buildingName" |
||||
|
placeholder="楼宇名称" |
||||
|
clearable |
||||
|
></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="小区(单位)名称" prop="communityName"> |
||||
|
<el-input |
||||
|
v-model="dataForm.communityName" |
||||
|
placeholder="小区(单位)名称" |
||||
|
clearable |
||||
|
></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item> |
||||
|
<el-button type="primary" @click="getDataList()">{{ $t("query") }}</el-button> |
||||
|
</el-form-item> |
||||
|
<!-- <el-form-item> |
||||
|
<el-button v-if="$hasPermission('axis:caResident:save')" type="primary" @click="addOrUpdateHandle()">{{ $t('add') }}</el-button> |
||||
|
</el-form-item> |
||||
|
<el-form-item> |
||||
|
<el-button v-if="$hasPermission('axis:caResident:delete')" type="danger" @click="deleteHandle()">{{ $t('deleteBatch') }}</el-button> |
||||
|
</el-form-item> --> |
||||
|
</el-form> |
||||
|
</el-card> |
||||
|
<el-card shadow="never" class="aui-card--fill"> |
||||
|
<el-table |
||||
|
v-loading="dataListLoading" |
||||
|
:data="dataList" |
||||
|
border |
||||
|
@selection-change="dataListSelectionChangeHandle" |
||||
|
style="width: 100%" |
||||
|
> |
||||
|
<el-table-column |
||||
|
type="selection" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
width="50" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="buildingName" |
||||
|
label="楼宇名称" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="buildingUse" |
||||
|
label="用途分类" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="buildingAddr" |
||||
|
label="所处位置" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
:show-overflow-tooltip="true" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="communityName" |
||||
|
label="小区(单位)名称" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
:show-overflow-tooltip="true" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="layerCount" |
||||
|
label="楼层数" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="unitCount" |
||||
|
label="单元数" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="roomCount" |
||||
|
label="总房屋数" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="elevatorCount" |
||||
|
label="电梯数量" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="buildingPmc" |
||||
|
label="物业公司" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
></el-table-column> |
||||
|
<el-table-column :label="$t('handle')" fixed="right" align="center" width="100"> |
||||
|
<template slot-scope="scope"> |
||||
|
<el-button |
||||
|
type="text" |
||||
|
class="div-table-button--detail" |
||||
|
size="small" |
||||
|
@click="addOrUpdateHandle(scope.row.buildingId)" |
||||
|
>查看</el-button |
||||
|
> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
</el-table> |
||||
|
<el-pagination |
||||
|
:current-page="page" |
||||
|
:page-sizes="[10, 20, 50, 100]" |
||||
|
:page-size="limit" |
||||
|
:total="total" |
||||
|
layout="total, sizes, prev, pager, next, jumper" |
||||
|
@size-change="pageSizeChangeHandle" |
||||
|
@current-change="pageCurrentChangeHandle" |
||||
|
> |
||||
|
</el-pagination> |
||||
|
<!-- 弹窗, 新增 / 修改 --> |
||||
|
<add-or-update |
||||
|
v-if="addOrUpdateVisible" |
||||
|
ref="addOrUpdate" |
||||
|
@refreshDataList="getDataList" |
||||
|
></add-or-update> |
||||
|
</el-card> |
||||
|
</div> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import mixinViewModule from "@/mixins/view-post"; |
||||
|
import AddOrUpdate from "./capingfang-add-or-update"; |
||||
|
export default { |
||||
|
mixins: [mixinViewModule], |
||||
|
data() { |
||||
|
return { |
||||
|
mixinViewModuleOptions: { |
||||
|
getDataListURL: "/opendata/caPingfang/getPage", |
||||
|
getDataListIsPage: true, |
||||
|
deleteURL: "", |
||||
|
deleteIsBatch: true, |
||||
|
}, |
||||
|
dataForm: { |
||||
|
buildingName: "", |
||||
|
communityName: "", |
||||
|
}, |
||||
|
}; |
||||
|
}, |
||||
|
components: { |
||||
|
AddOrUpdate, |
||||
|
}, |
||||
|
}; |
||||
|
</script> |
||||
@ -0,0 +1,204 @@ |
|||||
|
<template> |
||||
|
<el-dialog :visible.sync="visible" :title="!dataForm.id ? $t('add') : $t('查看')" :close-on-click-modal="false" :close-on-press-escape="false"> |
||||
|
<el-form :disabled="true" :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmitHandle()" :label-width="$i18n.locale === 'en-US' ? '120px' : '80px'"> |
||||
|
<el-form-item label="房屋编号" prop="houseName"> |
||||
|
<el-input v-model="dataForm.houseName" placeholder="房屋编号"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="房屋地址" prop="houseAddress"> |
||||
|
<el-input v-model="dataForm.houseAddress" placeholder="房屋地址"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="建筑用途" prop="houseUse"> |
||||
|
<el-input v-model="dataForm.houseUse" placeholder="建筑用途"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="建筑面积(平方米)" prop="houseArea"> |
||||
|
<el-input v-model="dataForm.houseArea" placeholder="建筑面积(平方米)"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="证件代码" prop="idType"> |
||||
|
<el-input v-model="dataForm.idType" placeholder="证件代码"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="证件号码" prop="idCard"> |
||||
|
<el-input v-model="dataForm.idCard" placeholder="证件号码"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="房主姓名" prop="residentName"> |
||||
|
<el-input v-model="dataForm.residentName" placeholder="房主姓名"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="房主联系方式" prop="telephone"> |
||||
|
<el-input v-model="dataForm.telephone" placeholder="房主联系方式"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="房主现居详址" prop="curliveAddress"> |
||||
|
<el-input v-model="dataForm.curliveAddress" placeholder="房主现居详址"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="出租用途" prop="rentUse"> |
||||
|
<el-input v-model="dataForm.rentUse" placeholder="出租用途"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="隐患类型" prop="troubleType"> |
||||
|
<el-input v-model="dataForm.troubleType" placeholder="隐患类型"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="承租人公民身份证号码" prop="renterCardNumber"> |
||||
|
<el-input v-model="dataForm.renterCardNumber" placeholder="承租人公民身份证号码"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="承租人证件类型" prop="renterCardType"> |
||||
|
<el-input v-model="dataForm.renterCardType" placeholder="承租人证件类型"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="承租人姓名" prop="renterName"> |
||||
|
<el-input v-model="dataForm.renterName" placeholder="承租人姓名"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="承租人联系方式" prop="renterPhone"> |
||||
|
<el-input v-model="dataForm.renterPhone" placeholder="承租人联系方式"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="经度" prop="longitude"> |
||||
|
<el-input v-model="dataForm.longitude" placeholder="经度"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="纬度" prop="latitude"> |
||||
|
<el-input v-model="dataForm.latitude" placeholder="纬度"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="标绘状态" prop="pointStatus"> |
||||
|
<el-input v-model="dataForm.pointStatus" placeholder="标绘状态"></el-input> |
||||
|
</el-form-item> |
||||
|
</el-form> |
||||
|
<template slot="footer"> |
||||
|
<el-button @click="visible = false">{{ $t('cancel') }}</el-button> |
||||
|
<!-- <el-button type="primary" @click="dataFormSubmitHandle()">{{ $t('confirm') }}</el-button> --> |
||||
|
</template> |
||||
|
</el-dialog> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import debounce from 'lodash/debounce' |
||||
|
export default { |
||||
|
data () { |
||||
|
return { |
||||
|
visible: false, |
||||
|
dataForm: { |
||||
|
rentalId: '', |
||||
|
gridId: '', |
||||
|
houseId: '', |
||||
|
houseName: '', |
||||
|
houseAddress: '', |
||||
|
houseUse: '', |
||||
|
houseArea: '', |
||||
|
idType: '', |
||||
|
idCard: '', |
||||
|
residentName: '', |
||||
|
telephone: '', |
||||
|
curliveAddress: '', |
||||
|
rentUse: '', |
||||
|
troubleType: '', |
||||
|
renterId: '', |
||||
|
renterCardNumber: '', |
||||
|
renterCardType: '', |
||||
|
renterName: '', |
||||
|
renterPhone: '', |
||||
|
longitude: '', |
||||
|
latitude: '', |
||||
|
pointStatus: '' |
||||
|
} |
||||
|
} |
||||
|
}, |
||||
|
computed: { |
||||
|
dataRule () { |
||||
|
return { |
||||
|
houseName: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
houseAddress: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
houseUse: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
houseArea: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
idType: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
idCard: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
residentName: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
telephone: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
curliveAddress: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
rentUse: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
troubleType: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
renterCardNumber: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
renterCardType: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
renterName: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
renterPhone: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
longitude: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
latitude: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
pointStatus: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
] |
||||
|
} |
||||
|
} |
||||
|
}, |
||||
|
methods: { |
||||
|
init () { |
||||
|
this.visible = true |
||||
|
this.$nextTick(() => { |
||||
|
this.$refs['dataForm'].resetFields() |
||||
|
if (this.dataForm.id) { |
||||
|
this.getInfo() |
||||
|
} |
||||
|
}) |
||||
|
}, |
||||
|
// 获取信息 |
||||
|
getInfo () { |
||||
|
this.$http.post(`/opendata/caRental/getRentalDetails`, { rentalId: this.dataForm.id }).then(({ data: res }) => { |
||||
|
if (res.code !== 0) { |
||||
|
return this.$message.error(res.msg) |
||||
|
} |
||||
|
this.dataForm = { |
||||
|
...this.dataForm, |
||||
|
...res.data |
||||
|
} |
||||
|
}).catch(() => {}) |
||||
|
}, |
||||
|
// 表单提交 |
||||
|
dataFormSubmitHandle: debounce(function () { |
||||
|
this.$refs['dataForm'].validate((valid) => { |
||||
|
if (!valid) { |
||||
|
return false |
||||
|
} |
||||
|
this.$http[!this.dataForm.rentalId ? 'post' : 'put']('/axis/caRental/', this.dataForm).then(({ data: res }) => { |
||||
|
if (res.code !== 0) { |
||||
|
return this.$message.error(res.msg) |
||||
|
} |
||||
|
this.$message({ |
||||
|
message: this.$t('prompt.success'), |
||||
|
type: 'success', |
||||
|
duration: 500, |
||||
|
onClose: () => { |
||||
|
this.visible = false |
||||
|
this.$emit('refreshDataList') |
||||
|
} |
||||
|
}) |
||||
|
}).catch(() => {}) |
||||
|
}) |
||||
|
}, 1000, { 'leading': true, 'trailing': false }) |
||||
|
} |
||||
|
} |
||||
|
</script> |
||||
@ -0,0 +1,156 @@ |
|||||
|
<template> |
||||
|
<div class="mod-axis__caRental}"> |
||||
|
<el-card> |
||||
|
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()"> |
||||
|
<el-form-item label="房屋编号" prop="houseName"> |
||||
|
<el-input |
||||
|
v-model="dataForm.houseName" |
||||
|
placeholder="房屋编号" |
||||
|
clearable |
||||
|
></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="房主姓名" prop="residentName"> |
||||
|
<el-input |
||||
|
v-model="dataForm.residentName" |
||||
|
placeholder="房主姓名" |
||||
|
clearable |
||||
|
></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="承租人姓名" prop="renterName"> |
||||
|
<el-input |
||||
|
v-model="dataForm.renterName" |
||||
|
placeholder="承租人姓名" |
||||
|
clearable |
||||
|
></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item> |
||||
|
<el-button type="primary" @click="getDataList()">{{ $t("query") }}</el-button> |
||||
|
</el-form-item> |
||||
|
<!-- <el-form-item> |
||||
|
<el-button v-if="$hasPermission('axis:caResident:save')" type="primary" @click="addOrUpdateHandle()">{{ $t('add') }}</el-button> |
||||
|
</el-form-item> |
||||
|
<el-form-item> |
||||
|
<el-button v-if="$hasPermission('axis:caResident:delete')" type="danger" @click="deleteHandle()">{{ $t('deleteBatch') }}</el-button> |
||||
|
</el-form-item> --> |
||||
|
</el-form> |
||||
|
</el-card> |
||||
|
<el-card shadow="never" class="aui-card--fill"> |
||||
|
<el-table |
||||
|
v-loading="dataListLoading" |
||||
|
:data="dataList" |
||||
|
border |
||||
|
@selection-change="dataListSelectionChangeHandle" |
||||
|
style="width: 100%" |
||||
|
> |
||||
|
<el-table-column |
||||
|
type="selection" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
width="50" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="houseName" |
||||
|
label="房屋编号" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="houseAddress" |
||||
|
label="房屋地址" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
:show-overflow-tooltip="true" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="houseArea" |
||||
|
label="建筑面积(平方米)" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="residentName" |
||||
|
label="房主姓名" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="telephone" |
||||
|
label="房主联系方式" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="rentUse" |
||||
|
label="出租用途" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="renterName" |
||||
|
label="承租人姓名" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="renterPhone" |
||||
|
label="承租人联系方式" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
></el-table-column> |
||||
|
<el-table-column :label="$t('handle')" fixed="right" align="center" width="100"> |
||||
|
<template slot-scope="scope"> |
||||
|
<el-button |
||||
|
type="text" |
||||
|
class="div-table-button--detail" |
||||
|
size="small" |
||||
|
@click="addOrUpdateHandle(scope.row.rentalId)" |
||||
|
>查看</el-button |
||||
|
> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
</el-table> |
||||
|
<el-pagination |
||||
|
:current-page="page" |
||||
|
:page-sizes="[10, 20, 50, 100]" |
||||
|
:page-size="limit" |
||||
|
:total="total" |
||||
|
layout="total, sizes, prev, pager, next, jumper" |
||||
|
@size-change="pageSizeChangeHandle" |
||||
|
@current-change="pageCurrentChangeHandle" |
||||
|
> |
||||
|
</el-pagination> |
||||
|
<!-- 弹窗, 新增 / 修改 --> |
||||
|
<add-or-update |
||||
|
v-if="addOrUpdateVisible" |
||||
|
ref="addOrUpdate" |
||||
|
@refreshDataList="getDataList" |
||||
|
></add-or-update> |
||||
|
</el-card> |
||||
|
</div> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import mixinViewModule from "@/mixins/view-post"; |
||||
|
import AddOrUpdate from "./carental-add-or-update"; |
||||
|
export default { |
||||
|
mixins: [mixinViewModule], |
||||
|
data() { |
||||
|
return { |
||||
|
mixinViewModuleOptions: { |
||||
|
getDataListURL: "/opendata/caRental/getPage", |
||||
|
getDataListIsPage: true, |
||||
|
deleteURL: "", |
||||
|
deleteIsBatch: true, |
||||
|
}, |
||||
|
dataForm: { |
||||
|
houseName: "", |
||||
|
residentName: "", |
||||
|
renterName: "", |
||||
|
}, |
||||
|
}; |
||||
|
}, |
||||
|
components: { |
||||
|
AddOrUpdate, |
||||
|
}, |
||||
|
}; |
||||
|
</script> |
||||
@ -0,0 +1,216 @@ |
|||||
|
<template> |
||||
|
<el-dialog :visible.sync="visible" :title="!dataForm.residentId ? $t('add') : $t('查看')" :close-on-click-modal="false" :close-on-press-escape="false"> |
||||
|
<el-form disabled :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmitHandle()" :label-width="$i18n.locale === 'en-US' ? '120px' : '80px'"> |
||||
|
<el-form-item label="人口性质" prop="residentProperty"> |
||||
|
<el-input v-model="dataForm.residentProperty" placeholder="人口性质"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="居民分类" prop="residentType"> |
||||
|
<el-input v-model="dataForm.residentType" placeholder="居民分类"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="证件类型" prop="idType"> |
||||
|
<el-input v-model="dataForm.idType" placeholder="证件类型"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="证件号码(公民身份证号)" prop="idCard"> |
||||
|
<el-input v-model="dataForm.idCard" placeholder="证件号码(公民身份证号)"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="姓名" prop="residentName"> |
||||
|
<el-input v-model="dataForm.residentName" placeholder="姓名"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="性别" prop="sex"> |
||||
|
<el-input v-model="dataForm.sex" placeholder="性别"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="出生日期" prop="birthday"> |
||||
|
<el-input v-model="dataForm.birthday" placeholder="出生日期"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="民族" prop="nation"> |
||||
|
<el-input v-model="dataForm.nation" placeholder="民族"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="联系方式" prop="telephone"> |
||||
|
<el-input v-model="dataForm.telephone" placeholder="联系方式"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="户籍详址" prop="householdAddressDetail"> |
||||
|
<el-input v-model="dataForm.householdAddressDetail" placeholder="户籍详址"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="现住详址" prop="curliveAddressDetail"> |
||||
|
<el-input v-model="dataForm.curliveAddressDetail" placeholder="现住详址"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="学历" prop="education"> |
||||
|
<el-input v-model="dataForm.education" placeholder="学历"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="职业" prop="occupation"> |
||||
|
<el-input v-model="dataForm.occupation" placeholder="职业"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="婚姻状况" prop="marriageStatus"> |
||||
|
<el-input v-model="dataForm.marriageStatus" placeholder="婚姻状况"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="政治面貌" prop="party"> |
||||
|
<el-input v-model="dataForm.party" placeholder="政治面貌"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="宗教信仰" prop="religious"> |
||||
|
<el-input v-model="dataForm.religious" placeholder="宗教信仰"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="有无皈依(已受洗)" prop="conversionState"> |
||||
|
<el-input v-model="dataForm.conversionState" placeholder="有无皈依(已受洗)"></el-input> |
||||
|
</el-form-item> |
||||
|
</el-form> |
||||
|
<template slot="footer"> |
||||
|
<el-button @click="visible = false">{{ $t('cancel') }}</el-button> |
||||
|
<!-- <el-button type="primary" @click="dataFormSubmitHandle()">{{ $t('confirm') }}</el-button> --> |
||||
|
</template> |
||||
|
</el-dialog> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import debounce from 'lodash/debounce' |
||||
|
export default { |
||||
|
data () { |
||||
|
return { |
||||
|
visible: false, |
||||
|
dataForm: { |
||||
|
residentId: '', |
||||
|
gridId: '', |
||||
|
residentProperty: '', |
||||
|
residentType: '', |
||||
|
idType: '', |
||||
|
idCard: '', |
||||
|
residentName: '', |
||||
|
sex: '', |
||||
|
birthday: '', |
||||
|
nation: '', |
||||
|
telephone: '', |
||||
|
householdProv: '', |
||||
|
householdCity: '', |
||||
|
householdCounty: '', |
||||
|
householdTown: '', |
||||
|
householdVillage: '', |
||||
|
householdAddressDetail: '', |
||||
|
curliveProv: '', |
||||
|
curliveCity: '', |
||||
|
curliveCounty: '', |
||||
|
curliveTown: '', |
||||
|
curliveVillage: '', |
||||
|
curliveAddressDetail: '', |
||||
|
nativeAddressProv: '', |
||||
|
nativeAddressCity: '', |
||||
|
nativeAddressCounty: '', |
||||
|
formerName: '', |
||||
|
education: '', |
||||
|
occupation: '', |
||||
|
occupationType: '', |
||||
|
serviceAddress: '', |
||||
|
marriageStatus: '', |
||||
|
party: '', |
||||
|
religious: '', |
||||
|
conversionState: '', |
||||
|
nationality: '', |
||||
|
platCode: '', |
||||
|
createBy: '', |
||||
|
createDate: '', |
||||
|
updateBy: '', |
||||
|
updateDate: '', |
||||
|
deleteFlag: '', |
||||
|
versions: '' |
||||
|
} |
||||
|
} |
||||
|
}, |
||||
|
computed: { |
||||
|
dataRule () { |
||||
|
return { |
||||
|
residentProperty: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
residentType: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
idType: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
idCard: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
residentName: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
sex: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
birthday: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
nation: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
telephone: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
householdAddressDetail: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
curliveAddressDetail: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
education: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
occupation: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
party: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
religious: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
conversionState: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
] |
||||
|
} |
||||
|
} |
||||
|
}, |
||||
|
methods: { |
||||
|
init () { |
||||
|
this.visible = true |
||||
|
this.$nextTick(() => { |
||||
|
this.$refs['dataForm'].resetFields() |
||||
|
if (this.dataForm.id) { |
||||
|
this.getInfo() |
||||
|
} |
||||
|
}) |
||||
|
}, |
||||
|
// 获取信息 |
||||
|
getInfo () { |
||||
|
this.$http.post(`/opendata/caResident/getResidentDetails`, { idCard: this.dataForm.id }).then(({ data: res }) => { |
||||
|
if (res.code !== 0) { |
||||
|
return this.$message.error(res.msg) |
||||
|
} |
||||
|
this.dataForm = { |
||||
|
...this.dataForm, |
||||
|
...res.data |
||||
|
} |
||||
|
}).catch(() => {}) |
||||
|
}, |
||||
|
// 表单提交 |
||||
|
dataFormSubmitHandle: debounce(function () { |
||||
|
this.$refs['dataForm'].validate((valid) => { |
||||
|
if (!valid) { |
||||
|
return false |
||||
|
} |
||||
|
this.$http[!this.dataForm.residentId ? 'post' : 'put']('/axis/caResident/', this.dataForm).then(({ data: res }) => { |
||||
|
if (res.code !== 0) { |
||||
|
return this.$message.error(res.msg) |
||||
|
} |
||||
|
this.$message({ |
||||
|
message: this.$t('prompt.success'), |
||||
|
type: 'success', |
||||
|
duration: 500, |
||||
|
onClose: () => { |
||||
|
this.visible = false |
||||
|
this.$emit('refreshDataList') |
||||
|
} |
||||
|
}) |
||||
|
}).catch(() => {}) |
||||
|
}) |
||||
|
}, 1000, { 'leading': true, 'trailing': false }) |
||||
|
} |
||||
|
} |
||||
|
</script> |
||||
@ -0,0 +1,147 @@ |
|||||
|
<template> |
||||
|
<div class="mod-axis__caResident}"> |
||||
|
<el-card> |
||||
|
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()"> |
||||
|
<el-form-item label="身份证号" prop="idCard"> |
||||
|
<el-input v-model="dataForm.idCard" placeholder="身份证号" clearable></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="姓名" prop="residentName"> |
||||
|
<el-input |
||||
|
v-model="dataForm.residentName" |
||||
|
placeholder="姓名" |
||||
|
clearable |
||||
|
></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="联系方式" prop="telephone"> |
||||
|
<el-input |
||||
|
v-model="dataForm.telephone" |
||||
|
placeholder="联系方式" |
||||
|
clearable |
||||
|
></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item> |
||||
|
<el-button type="primary" @click="getDataList()">{{ $t("query") }}</el-button> |
||||
|
</el-form-item> |
||||
|
<!-- <el-form-item> |
||||
|
<el-button v-if="$hasPermission('axis:caResident:save')" type="primary" @click="addOrUpdateHandle()">{{ $t('add') }}</el-button> |
||||
|
</el-form-item> |
||||
|
<el-form-item> |
||||
|
<el-button v-if="$hasPermission('axis:caResident:delete')" type="danger" @click="deleteHandle()">{{ $t('deleteBatch') }}</el-button> |
||||
|
</el-form-item> --> |
||||
|
</el-form> |
||||
|
</el-card> |
||||
|
<el-card shadow="never" class="aui-card--fill"> |
||||
|
<el-table |
||||
|
v-loading="dataListLoading" |
||||
|
:data="dataList" |
||||
|
border |
||||
|
@selection-change="dataListSelectionChangeHandle" |
||||
|
style="width: 100%" |
||||
|
> |
||||
|
<el-table-column |
||||
|
type="selection" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
width="50" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="idCard" |
||||
|
label="证件号码(公民身份证号)" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="residentName" |
||||
|
label="姓名" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="sex" |
||||
|
label="性别" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="birthday" |
||||
|
label="出生日期" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="telephone" |
||||
|
label="联系方式" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="householdAddressDetail" |
||||
|
label="户籍详址" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
:show-overflow-tooltip="true" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="curliveAddressDetail" |
||||
|
label="现住详址" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
:show-overflow-tooltip="true" |
||||
|
></el-table-column> |
||||
|
<el-table-column :label="$t('handle')" fixed="right" align="center" width="100"> |
||||
|
<template slot-scope="scope"> |
||||
|
<el-button |
||||
|
type="text" |
||||
|
class="div-table-button--detail" |
||||
|
size="small" |
||||
|
@click="addOrUpdateHandle(scope.row.idCard)" |
||||
|
>查看</el-button |
||||
|
> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
</el-table> |
||||
|
<el-pagination |
||||
|
:current-page="page" |
||||
|
:page-sizes="[10, 20, 50, 100]" |
||||
|
:page-size="limit" |
||||
|
:total="total" |
||||
|
layout="total, sizes, prev, pager, next, jumper" |
||||
|
@size-change="pageSizeChangeHandle" |
||||
|
@current-change="pageCurrentChangeHandle" |
||||
|
> |
||||
|
</el-pagination> |
||||
|
<!-- 弹窗, 新增 / 修改 --> |
||||
|
<add-or-update |
||||
|
v-if="addOrUpdateVisible" |
||||
|
ref="addOrUpdate" |
||||
|
@refreshDataList="getDataList" |
||||
|
></add-or-update> |
||||
|
</el-card> |
||||
|
</div> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import mixinViewModule from "@/mixins/view-post"; |
||||
|
import AddOrUpdate from "./caresident-add-or-update"; |
||||
|
export default { |
||||
|
mixins: [mixinViewModule], |
||||
|
data() { |
||||
|
return { |
||||
|
mixinViewModuleOptions: { |
||||
|
getDataListURL: "/opendata/caResident/getPage", |
||||
|
getDataListIsPage: true, |
||||
|
deleteURL: "", |
||||
|
deleteIsBatch: true, |
||||
|
}, |
||||
|
dataForm: { |
||||
|
idCard: "", |
||||
|
residentName: "", |
||||
|
telephone: "", |
||||
|
}, |
||||
|
}; |
||||
|
}, |
||||
|
components: { |
||||
|
AddOrUpdate, |
||||
|
}, |
||||
|
}; |
||||
|
</script> |
||||
@ -0,0 +1,309 @@ |
|||||
|
<template> |
||||
|
<el-dialog :visible.sync="visible" :title="!dataForm.id ? $t('add') : $t('查看')" :close-on-click-modal="false" :close-on-press-escape="false"> |
||||
|
<el-form :disabled="true" :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmitHandle()" :label-width="$i18n.locale === 'en-US' ? '120px' : '80px'"> |
||||
|
<el-form-item label="公民身份证号" prop="idCard"> |
||||
|
<el-input v-model="dataForm.idCard" placeholder="公民身份证号"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="证件类型" prop="idType"> |
||||
|
<el-input v-model="dataForm.idType" placeholder="证件类型"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="姓名" prop="rotatorsName"> |
||||
|
<el-input v-model="dataForm.rotatorsName" placeholder="姓名"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="曾用名" prop="formerName"> |
||||
|
<el-input v-model="dataForm.formerName" placeholder="曾用名"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="性别" prop="sex"> |
||||
|
<el-input v-model="dataForm.sex" placeholder="性别"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="出生日期" prop="birthday"> |
||||
|
<el-input v-model="dataForm.birthday" placeholder="出生日期"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="民族" prop="nation"> |
||||
|
<el-input v-model="dataForm.nation" placeholder="民族"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="婚姻状况" prop="marriageStatus"> |
||||
|
<el-input v-model="dataForm.marriageStatus" placeholder="婚姻状况"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="政治面貌" prop="party"> |
||||
|
<el-input v-model="dataForm.party" placeholder="政治面貌"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="学历" prop="education"> |
||||
|
<el-input v-model="dataForm.education" placeholder="学历"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="宗教信仰" prop="religious"> |
||||
|
<el-input v-model="dataForm.religious" placeholder="宗教信仰"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="职业类别" prop="occupationType"> |
||||
|
<el-input v-model="dataForm.occupationType" placeholder="职业类别"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="职业" prop="occupation"> |
||||
|
<el-input v-model="dataForm.occupation" placeholder="职业"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="联系方式" prop="telephone"> |
||||
|
<el-input v-model="dataForm.telephone" placeholder="联系方式"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="户籍门(楼)详址" prop="householdAddressDetail"> |
||||
|
<el-input v-model="dataForm.householdAddressDetail" placeholder="户籍门(楼)详址"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="现住地社区/村" prop="curliveAddressVillage"> |
||||
|
<el-input v-model="dataForm.curliveAddressVillage" placeholder="现住地社区/村"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="现住门(楼)详址" prop="curliveAddressDetail"> |
||||
|
<el-input v-model="dataForm.curliveAddressDetail" placeholder="现住门(楼)详址"></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="是否重点关注人员" prop="isFocusPerson"> |
||||
|
<el-input v-model="dataForm.isFocusPerson" placeholder="是否重点关注人员"></el-input> |
||||
|
</el-form-item> |
||||
|
</el-form> |
||||
|
<template slot="footer"> |
||||
|
<el-button @click="visible = false">{{ $t('cancel') }}</el-button> |
||||
|
<!-- <el-button type="primary" @click="dataFormSubmitHandle()">{{ $t('confirm') }}</el-button> --> |
||||
|
</template> |
||||
|
</el-dialog> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import debounce from 'lodash/debounce' |
||||
|
export default { |
||||
|
data () { |
||||
|
return { |
||||
|
visible: false, |
||||
|
dataForm: { |
||||
|
rotatorsId: '', |
||||
|
idCard: '', |
||||
|
idType: '', |
||||
|
rotatorsName: '', |
||||
|
formerName: '', |
||||
|
sex: '', |
||||
|
birthday: '', |
||||
|
nation: '', |
||||
|
nativeAddressProv: '', |
||||
|
nativeAddressCity: '', |
||||
|
nativeAddressCountry: '', |
||||
|
marriageStatus: '', |
||||
|
party: '', |
||||
|
education: '', |
||||
|
religious: '', |
||||
|
occupationType: '', |
||||
|
occupation: '', |
||||
|
serviceAddress: '', |
||||
|
telephone: '', |
||||
|
householdAddressProv: '', |
||||
|
householdAddressCity: '', |
||||
|
householdAddressCountry: '', |
||||
|
householdAddressTown: '', |
||||
|
householdAddressVillage: '', |
||||
|
householdAddressDetail: '', |
||||
|
curliveAddressProv: '', |
||||
|
curliveAddressCity: '', |
||||
|
curliveAddressCountry: '', |
||||
|
curliveAddressTown: '', |
||||
|
curliveAddressVillage: '', |
||||
|
curliveAddressDetail: '', |
||||
|
inflowReason: '', |
||||
|
certificateType: '', |
||||
|
certificateNumber: '', |
||||
|
signDate: '', |
||||
|
endDate: '', |
||||
|
residenceType: '', |
||||
|
isFocusPerson: '', |
||||
|
createBy: '', |
||||
|
createDate: '', |
||||
|
updateBy: '', |
||||
|
updateDate: '', |
||||
|
deleteFlag: '', |
||||
|
platcode: '', |
||||
|
gridId: '', |
||||
|
versions: '' |
||||
|
} |
||||
|
} |
||||
|
}, |
||||
|
computed: { |
||||
|
dataRule () { |
||||
|
return { |
||||
|
idCard: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
idType: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
rotatorsName: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
formerName: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
sex: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
birthday: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
nation: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
nativeAddressProv: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
nativeAddressCity: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
nativeAddressCountry: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
marriageStatus: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
party: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
education: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
religious: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
occupationType: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
occupation: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
serviceAddress: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
telephone: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
householdAddressProv: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
householdAddressCity: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
householdAddressCountry: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
householdAddressTown: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
householdAddressVillage: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
householdAddressDetail: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
curliveAddressProv: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
curliveAddressCity: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
curliveAddressCountry: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
curliveAddressTown: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
curliveAddressVillage: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
curliveAddressDetail: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
inflowReason: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
certificateType: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
certificateNumber: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
signDate: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
endDate: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
residenceType: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
isFocusPerson: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
createBy: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
createDate: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
updateBy: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
updateDate: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
deleteFlag: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
platcode: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
gridId: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
], |
||||
|
versions: [ |
||||
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
||||
|
] |
||||
|
} |
||||
|
} |
||||
|
}, |
||||
|
methods: { |
||||
|
init () { |
||||
|
this.visible = true |
||||
|
this.$nextTick(() => { |
||||
|
this.$refs['dataForm'].resetFields() |
||||
|
if (this.dataForm.id) { |
||||
|
this.getInfo() |
||||
|
} |
||||
|
}) |
||||
|
}, |
||||
|
// 获取信息 |
||||
|
getInfo () { |
||||
|
this.$http.post(`/opendata/caRotators/getRotatorsDetails`, { idCard: this.dataForm.id }).then(({ data: res }) => { |
||||
|
if (res.code !== 0) { |
||||
|
return this.$message.error(res.msg) |
||||
|
} |
||||
|
this.dataForm = { |
||||
|
...this.dataForm, |
||||
|
...res.data |
||||
|
} |
||||
|
}).catch(() => {}) |
||||
|
}, |
||||
|
// 表单提交 |
||||
|
dataFormSubmitHandle: debounce(function () { |
||||
|
this.$refs['dataForm'].validate((valid) => { |
||||
|
if (!valid) { |
||||
|
return false |
||||
|
} |
||||
|
this.$http[!this.dataForm.rotatorsId ? 'post' : 'put']('/axis/caRotators/', this.dataForm).then(({ data: res }) => { |
||||
|
if (res.code !== 0) { |
||||
|
return this.$message.error(res.msg) |
||||
|
} |
||||
|
this.$message({ |
||||
|
message: this.$t('prompt.success'), |
||||
|
type: 'success', |
||||
|
duration: 500, |
||||
|
onClose: () => { |
||||
|
this.visible = false |
||||
|
this.$emit('refreshDataList') |
||||
|
} |
||||
|
}) |
||||
|
}).catch(() => {}) |
||||
|
}) |
||||
|
}, 1000, { 'leading': true, 'trailing': false }) |
||||
|
} |
||||
|
} |
||||
|
</script> |
||||
@ -0,0 +1,141 @@ |
|||||
|
<template> |
||||
|
<div class="mod-axis__caRotators}"> |
||||
|
<el-card> |
||||
|
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()"> |
||||
|
<el-form-item label="身份证号" prop="idCard"> |
||||
|
<el-input v-model="dataForm.idCard" placeholder="身份证号" clearable></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="姓名" prop="residentName"> |
||||
|
<el-input |
||||
|
v-model="dataForm.residentName" |
||||
|
placeholder="姓名" |
||||
|
clearable |
||||
|
></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="联系方式" prop="telephone"> |
||||
|
<el-input |
||||
|
v-model="dataForm.telephone" |
||||
|
placeholder="联系方式" |
||||
|
clearable |
||||
|
></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item> |
||||
|
<el-button type="primary" @click="getDataList()">{{ $t("query") }}</el-button> |
||||
|
</el-form-item> |
||||
|
<!-- <el-form-item> |
||||
|
<el-button v-if="$hasPermission('axis:caResident:save')" type="primary" @click="addOrUpdateHandle()">{{ $t('add') }}</el-button> |
||||
|
</el-form-item> |
||||
|
<el-form-item> |
||||
|
<el-button v-if="$hasPermission('axis:caResident:delete')" type="danger" @click="deleteHandle()">{{ $t('deleteBatch') }}</el-button> |
||||
|
</el-form-item> --> |
||||
|
</el-form> |
||||
|
</el-card> |
||||
|
<el-card shadow="never" class="aui-card--fill"> |
||||
|
<el-table |
||||
|
v-loading="dataListLoading" |
||||
|
:data="dataList" |
||||
|
border |
||||
|
@selection-change="dataListSelectionChangeHandle" |
||||
|
style="width: 100%" |
||||
|
> |
||||
|
<el-table-column |
||||
|
type="selection" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
width="50" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="idCard" |
||||
|
label="公民身份证号" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="rotatorsName" |
||||
|
label="姓名" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="sex" |
||||
|
label="性别" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="birthday" |
||||
|
label="出生日期" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="householdAddressDetail" |
||||
|
label="户籍门(楼)详址" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
:show-overflow-tooltip="true" |
||||
|
></el-table-column> |
||||
|
<el-table-column |
||||
|
prop="curliveAddressDetail" |
||||
|
label="现住门(楼)详址" |
||||
|
header-align="center" |
||||
|
align="center" |
||||
|
:show-overflow-tooltip="true" |
||||
|
></el-table-column> |
||||
|
<el-table-column :label="$t('handle')" fixed="right" align="center" width="100"> |
||||
|
<template slot-scope="scope"> |
||||
|
<el-button |
||||
|
type="text" |
||||
|
class="div-table-button--detail" |
||||
|
size="small" |
||||
|
@click="addOrUpdateHandle(scope.row.idCard)" |
||||
|
>查看</el-button |
||||
|
> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
</el-table> |
||||
|
<el-pagination |
||||
|
:current-page="page" |
||||
|
:page-sizes="[10, 20, 50, 100]" |
||||
|
:page-size="limit" |
||||
|
:total="total" |
||||
|
layout="total, sizes, prev, pager, next, jumper" |
||||
|
@size-change="pageSizeChangeHandle" |
||||
|
@current-change="pageCurrentChangeHandle" |
||||
|
> |
||||
|
</el-pagination> |
||||
|
<!-- 弹窗, 新增 / 修改 --> |
||||
|
<add-or-update |
||||
|
v-if="addOrUpdateVisible" |
||||
|
ref="addOrUpdate" |
||||
|
@refreshDataList="getDataList" |
||||
|
></add-or-update> |
||||
|
</el-card> |
||||
|
</div> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import mixinViewModule from "@/mixins/view-post"; |
||||
|
import AddOrUpdate from "./carotators-add-or-update"; |
||||
|
export default { |
||||
|
mixins: [mixinViewModule], |
||||
|
data() { |
||||
|
return { |
||||
|
mixinViewModuleOptions: { |
||||
|
getDataListURL: "/opendata/caRotators/getPage", |
||||
|
getDataListIsPage: true, |
||||
|
deleteURL: "", |
||||
|
deleteIsBatch: true, |
||||
|
}, |
||||
|
dataForm: { |
||||
|
idCard: "", |
||||
|
residentName: "", |
||||
|
telephone: "", |
||||
|
}, |
||||
|
}; |
||||
|
}, |
||||
|
components: { |
||||
|
AddOrUpdate, |
||||
|
}, |
||||
|
}; |
||||
|
</script> |
||||
Loading…
Reference in new issue