|
|
@ -108,37 +108,48 @@ |
|
|
|
{{scope.$index+1}} |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="name" label="姓名" header-align="center" align="center" width="100px"> |
|
|
|
<el-table-column prop="name" label="姓名" :render-header="renderHeader" header-align="center" align="center" width="120"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<el-input v-model="dataForm.tenantList[scope.$index].name"></el-input> |
|
|
|
<el-form-item :prop="'tenantList['+scope.$index+'].name'" required :show-message="false"> |
|
|
|
<el-input v-model="scope.row.name"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="yfzgx" label="与户主关系" header-align="center" align="center" width="120"> |
|
|
|
<el-table-column prop="yfzgx" label="与户主关系" :render-header="renderHeader" header-align="center" align="center" width="120"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<el-form-item :prop="'tenantList['+scope.$index+'].yfzgx'" required :show-message="false"> |
|
|
|
<!--<el-input v-model="dataForm.tenantList[scope.$index].yfzgx" placeholder="租客"></el-input>--> |
|
|
|
<el-select v-model="dataForm.tenantList[scope.$index].yfzgx" placeholder="与房主关系"> |
|
|
|
<el-select v-model="scope.row.yfzgx" placeholder="与房主关系"> |
|
|
|
<el-option v-for="item in lessorRelationArr" :key="item.dictValue" :label="item.dictName" :value="item.dictValue"> |
|
|
|
</el-option> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="mobile" label="手机" header-align="center" align="center" width="145"> |
|
|
|
<el-table-column prop="mobile" label="手机" :render-header="renderHeader" header-align="center" align="center" width="145"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<el-form-item :prop="'tenantList['+scope.$index+'].mobile'" required :show-message="false"> |
|
|
|
<el-input v-model="dataForm.tenantList[scope.$index].mobile"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="idCard" label="身份证号" header-align="center" align="center" width="180"> |
|
|
|
<el-table-column prop="idCard" label="身份证号" :render-header="renderHeader" header-align="center" align="center" width="180"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<el-form-item :prop="'tenantList['+scope.$index+'].idCard'" required :show-message="false"> |
|
|
|
<el-input v-model="dataForm.tenantList[scope.$index].idCard"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="unit" label="工作单位" header-align="center" align="center" width="180" show-overflow-tooltip> |
|
|
|
<el-table-column prop="unit" label="工作单位" :render-header="renderHeader" header-align="center" align="center" width="180" show-overflow-tooltip> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<el-form-item :prop="'tenantList['+scope.$index+'].unit'" required :show-message="false"> |
|
|
|
<el-input v-model="dataForm.tenantList[scope.$index].unit"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="politicalStatus" label="政治面貌" header-align="center" align="center" width="120"> |
|
|
|
<el-table-column prop="politicalStatus" label="政治面貌" :render-header="renderHeader" header-align="center" align="center" width="120"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<el-form-item :prop="'tenantList['+scope.$index+'].politicalStatus'" required :show-message="false"> |
|
|
|
<el-select v-model="dataForm.tenantList[scope.$index].politicalStatus" placeholder="请选择"> |
|
|
|
<el-option |
|
|
|
v-for="item in zzmmOptions" |
|
|
@ -147,10 +158,12 @@ |
|
|
|
:value="item.value"> |
|
|
|
</el-option> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="isMilitary" label="是否服过兵役" header-align="center" align="center" width="120"> |
|
|
|
<el-table-column prop="isMilitary" label="是否服过兵役" :render-header="renderHeader" header-align="center" align="center" width="120"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<el-form-item :prop="'tenantList['+scope.$index+'].isMilitary'" required :show-message="false"> |
|
|
|
<el-select v-model="dataForm.tenantList[scope.$index].isMilitary" placeholder="请选择"> |
|
|
|
<el-option |
|
|
|
v-for="item in shifouOptions" |
|
|
@ -159,10 +172,12 @@ |
|
|
|
:value="item.value"> |
|
|
|
</el-option> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="nation" label="国籍" header-align="center" align="center" width="120"> |
|
|
|
<el-table-column prop="nation" label="国籍" :render-header="renderHeader" header-align="center" align="center" width="120"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<el-form-item :prop="'tenantList['+scope.$index+'].nation'" required :show-message="false"> |
|
|
|
<el-select v-model="dataForm.tenantList[scope.$index].nation" placeholder="请选择"> |
|
|
|
<el-option |
|
|
|
v-for="item in nationOptions" |
|
|
@ -171,14 +186,15 @@ |
|
|
|
:value="item.value"> |
|
|
|
</el-option> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column label="身份证照片" header-align="center" align="center" width="245px"> |
|
|
|
<el-table-column label="身份证照片" :render-header="renderHeader" header-align="center" align="center" width="245px"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<upload-image :defaultFileList="dataForm.tenantList[scope.$index].idCardImgList" :limit="2" :rowIndex="scope.$index" @change="onChangeTenantListIdImgList"></upload-image> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="imgList" label="照片" header-align="center" align="center" width="215px"> |
|
|
|
<el-table-column prop="imgList" label="照片" :render-header="renderHeader" header-align="center" align="center" width="215px"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<upload-image :defaultFileList="dataForm.tenantList[scope.$index].imgList" :limit="3" :rowIndex="scope.$index" @change="onChangeImgList"></upload-image> |
|
|
|
</template> |
|
|
@ -211,11 +227,10 @@ |
|
|
|
<el-form-item label="出租人现居住地" prop="lessorLiveAddress" label-width="140px"> |
|
|
|
<el-input v-model="dataForm.lessorLiveAddress" placeholder="出租人现居住地" ></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="中介合同附件" prop="agencyImgList" v-if="dataForm.lessorRelation ==='中介'"> |
|
|
|
<br/> |
|
|
|
<el-form-item label="中介合同附件" prop="agencyImgList" v-if="dataForm.lessorRelation ==='中介'" label-width="140px"> |
|
|
|
<template> |
|
|
|
<label v-for="(item,index) in dataForm.agencyImgList" :key="index"> |
|
|
|
<img :src="item.fileUrl" @click="imgShow(item.fileUrl)" width="100" height="100" /> |
|
|
|
</label> |
|
|
|
<upload-image :defaultFileList="dataForm.agencyImgList" :limit="6" @change="onChangeAgencyImgList"></upload-image> |
|
|
|
</template> |
|
|
|
</el-form-item> |
|
|
|
<br/> |
|
|
@ -430,6 +445,18 @@ export default { |
|
|
|
lesseeMobile: [ |
|
|
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
|
|
|
], |
|
|
|
lessorRelation: [ |
|
|
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
|
|
|
], |
|
|
|
lessorLiveAddress: [ |
|
|
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
|
|
|
], |
|
|
|
lesseeUnit: [ |
|
|
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
|
|
|
], |
|
|
|
lesseeHouseAddress: [ |
|
|
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
|
|
|
], |
|
|
|
signDate: [ |
|
|
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
|
|
|
], |
|
|
@ -438,7 +465,13 @@ export default { |
|
|
|
], |
|
|
|
endDate: [ |
|
|
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
|
|
|
] |
|
|
|
], |
|
|
|
fileList: [ |
|
|
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
|
|
|
], |
|
|
|
// agencyImgList: [ |
|
|
|
// { required: true, message: this.$t('validate.required'), trigger: 'blur' } |
|
|
|
// ] |
|
|
|
} |
|
|
|
}, |
|
|
|
changeCDisabled() { |
|
|
@ -503,7 +536,8 @@ export default { |
|
|
|
idCardImgList: [], |
|
|
|
unit: '' |
|
|
|
}], |
|
|
|
fileList: [] |
|
|
|
fileList: [], |
|
|
|
agencyImgList: [] |
|
|
|
} |
|
|
|
}, |
|
|
|
init () { |
|
|
@ -518,6 +552,15 @@ export default { |
|
|
|
} |
|
|
|
}) |
|
|
|
}, |
|
|
|
renderHeader(h, params) { |
|
|
|
const label = params.column.label |
|
|
|
return ( |
|
|
|
<div> |
|
|
|
<span style="font-size:12px; color: #ff0000;">*</span> |
|
|
|
<span>{label}</span> |
|
|
|
</div> |
|
|
|
) |
|
|
|
}, |
|
|
|
onChangeTenantListIdImgList (e, rowIndex=0) { |
|
|
|
console.log('onChangeTenantListIdImgList', e) |
|
|
|
if (e.length > 0) { |
|
|
@ -557,8 +600,25 @@ export default { |
|
|
|
}) |
|
|
|
} |
|
|
|
}, |
|
|
|
onChangeAgencyImgList (e, rowIndex=0) { |
|
|
|
console.log('onChangeAgencyImgList', e) |
|
|
|
if (e.length > 0) { |
|
|
|
this.dataForm.agencyImgList = [] |
|
|
|
e.forEach(item => { |
|
|
|
let ob = { |
|
|
|
fileType: '0', |
|
|
|
fileUrl: item.response.data.url |
|
|
|
} |
|
|
|
this.dataForm.agencyImgList.push(ob) |
|
|
|
}) |
|
|
|
} |
|
|
|
}, |
|
|
|
deleteMember(index){ |
|
|
|
if (this.dataForm.tenantList.length > 1) { |
|
|
|
this.dataForm.tenantList.splice(index, 1) |
|
|
|
} else { |
|
|
|
this.$message.error('成员人数不能少于1人') |
|
|
|
} |
|
|
|
}, |
|
|
|
addMember () { |
|
|
|
let ob = { |
|
|
@ -786,6 +846,9 @@ export default { |
|
|
|
return this.$message.error(res.msg) |
|
|
|
} |
|
|
|
this.dataForm.ownerName = res.data.ownerName |
|
|
|
this.dataForm.lessorName = res.data.ownerName |
|
|
|
this.dataForm.lessorIdCard = res.data.ownerIdCard |
|
|
|
this.dataForm.lessorMobile = res.data.ownerPhone |
|
|
|
resolve(true) |
|
|
|
}).catch(() => {}) |
|
|
|
}) |
|
|
@ -809,6 +872,26 @@ export default { |
|
|
|
if (!valid) { |
|
|
|
return false |
|
|
|
} |
|
|
|
const isUploadIdCardImgList = this.dataForm.tenantList.some(item => { |
|
|
|
return item.idCardImgList.length == 0 |
|
|
|
}) |
|
|
|
if (isUploadIdCardImgList) { |
|
|
|
this.$message.error('请上传成员身份证照片') |
|
|
|
return |
|
|
|
} |
|
|
|
const isUploadImgList = this.dataForm.tenantList.some(item => { |
|
|
|
return item.imgList.length == 0 |
|
|
|
}) |
|
|
|
if (isUploadImgList) { |
|
|
|
this.$message.error('请上传成员照片') |
|
|
|
return |
|
|
|
} |
|
|
|
if (this.dataForm.lessorRelation == '中介') { |
|
|
|
if (this.dataForm.agencyImgList.length == 0) { |
|
|
|
this.$message.error('请上传中介委托照片') |
|
|
|
return |
|
|
|
} |
|
|
|
} |
|
|
|
const url = this.dataForm.flag == 'edit' ? '/pli/power/rentContractInfo/updatePc' : '/pli/power/rentContractInfo/savePc' |
|
|
|
this.$http['post'](url, this.dataForm).then(({ data: res }) => { |
|
|
|
if (res.code !== 0) { |
|
|
@ -841,7 +924,10 @@ export default { |
|
|
|
<style lang="scss"> |
|
|
|
.rent { |
|
|
|
.el-form--inline .el-form-item__content { |
|
|
|
width: 280px; |
|
|
|
// width: 280px; |
|
|
|
} |
|
|
|
.el-table .el-form-item { |
|
|
|
margin-bottom: 0; |
|
|
|
} |
|
|
|
} |
|
|
|
</style> |
|
|
|