<template> <div class="obligee itemForm"> <el-form :model="obligeeForm" ref="formList" label-width="113px" :key="key"> <div v-for="(item, index) in obligeeForm.obligeeList" :key="index" class="obligee-item"> <p class="obligee-item-name">权利人{{ index + 1 }}</p> <div class="obligee-item-list"> <el-row class="obligee-item-input"> <el-col :span="8"> <el-form-item class="borderTopNone" :prop="'obligeeList.' + index + '.YSDM'" :rules="rules.YSDM"> <span slot="label"> 要素代码: <br /> <p class="label-detail">(YSDM)</p> </span> <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].YSDM" placeholder="要素代码"></el-input> </el-form-item> </el-col> <el-col :span="8"> <el-form-item class="borderTopNone" :prop="'obligeeList.' + index + '.SXH'" :rules="{ ...rules.SXH, ...typeNum }"> <span slot="label"> 顺序号: <br /> <p class="label-detail">(SXH)</p> </span> <el-input :disabled="$store.state.business.Edit" v-model.number="obligeeForm.obligeeList[index].SXH" type="number" v-only-number="{ max: 9999, min: 0, precision: 0 }" placeholder="顺序号"></el-input> </el-form-item> </el-col> <el-col :span="8"> <el-form-item class="borderTopNone" :prop="'obligeeList.' + index + '.BDCDYH'" :rules="rules.BDCDYH"> <span slot="label"> 不动产单元号: <br /> <p class="label-detail">(BDCDYH)</p> </span> <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].BDCDYH" placeholder="不动产单元号"></el-input> </el-form-item> </el-col> </el-row> <el-row class="obligee-item-input"> <el-col :span="8"> <el-form-item :prop="'obligeeList.' + index + '.QLRMC'" :rules="rules.QLRMC"> <span slot="label"> 权利人名称: <br /> <p class="label-detail">(QLRMC)</p> </span> <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].QLRMC" placeholder="权利人名称"></el-input> </el-form-item> </el-col> <el-col :span="8"> <el-form-item :prop="'obligeeList.' + index + '.BDCQZH'" :rules="rules.BDCQZH"> <span slot="label"> 不动产权证号: <br /> <p class="label-detail">(BDCQZH)</p> </span> <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].BDCQZH" placeholder="不动产权证号"></el-input> </el-form-item> </el-col> <el-col :span="8"> <el-form-item :prop="'obligeeList.' + index + '.QZYSXLH'" :rules="rules.QZYSXLH"> <span slot="label"> 权证印刷序列号: <br /> <p class="label-detail">(QZYSXLH)</p> </span> <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].QZYSXLH" placeholder="权证印刷序列号"></el-input> </el-form-item> </el-col> </el-row> <el-row class="obligee-item-input"> <el-col :span="8"> <el-form-item :prop="'obligeeList.' + index + '.SFCZR'" :rules="rules.SFCZR"> <span slot="label"> 是否持证人: <br /> <p class="label-detail">(SFCZR)</p> </span> <el-select :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].SFCZR" placeholder="请选择"> <el-option v-for="item in dicData['A6']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE"> </el-option> </el-select> </el-form-item> </el-col> <el-col :span="8"> <el-form-item :prop="'obligeeList.' + index + '.ZJZL'" :rules="rules.ZJZL"> <span slot="label"> 证件种类: <br /> <p class="label-detail">(ZJZL)</p> </span> <el-select :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].ZJZL" placeholder="请选择"> <el-option v-for="item in dicData['A30']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE"> </el-option> </el-select> </el-form-item> </el-col> <el-col :span="8"> <el-form-item :prop="'obligeeList.' + index + '.ZJH'" :rules="rules.ZJH"> <span slot="label"> 证件号: <br /> <p class="label-detail">(ZJH)</p> </span> <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].ZJH" placeholder="证件号"></el-input> </el-form-item> </el-col> </el-row> <el-row class="obligee-item-input"> <el-col :span="8"> <el-form-item :prop="'obligeeList.' + index + '.FZJG'" :rules="rules.FZJG"> <span slot="label"> 发证机关: <br /> <p class="label-detail">(FZJG)</p> </span> <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].FZJG" placeholder="发证机关"></el-input> </el-form-item> </el-col> <el-col :span="8"> <el-form-item :prop="'obligeeList.' + index + '.SSHY'" :rules="rules.SSHY"> <span slot="label"> 所属行业: <br /> <p class="label-detail">(SSHY)</p> </span> <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].SSHY" placeholder="所属行业"></el-input> </el-form-item> </el-col> <el-col :span="8"> <el-form-item :prop="'obligeeList.' + index + '.GJ'" :rules="rules.GJ"> <span slot="label"> 国家/地区: <br /> <p class="label-detail">(GJ)</p> </span> <tree-select :options="dicData['A35']" v-model="obligeeForm.obligeeList[index].GJ" placeholder="国家/地区" /> </el-form-item> </el-col> </el-row> <el-row class="obligee-item-input"> <el-col :span="8"> <el-form-item :prop="'obligeeList.' + index + '.HJSZSS'" :rules="rules.HJSZSS"> <span slot="label"> 户籍所在省市: <br /> <p class="label-detail">(HJSZSS)</p> </span> <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].HJSZSS" placeholder="户籍所在省市"></el-input> </el-form-item> </el-col> <el-col :span="8"> <el-form-item :prop="'obligeeList.' + index + '.XB'" :rules="rules.XB"> <span slot="label"> 性别: <br /> <p class="label-detail">(XB)</p> </span> <el-select :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].XB" placeholder="请选择"> <el-option v-for="item in dicData['A43']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE"> </el-option> </el-select> </el-form-item> </el-col> <el-col :span="8"> <el-form-item :prop="'obligeeList.' + index + '.DH'" :rules="rules.DH"> <span slot="label"> 电话: <br /> <p class="label-detail">(DH)</p> </span> <el-input :disabled="$store.state.business.Edit" onkeyup="this.value=this.value.replace(/[^\d.]/g,'');" maxlength="11" v-model="obligeeForm.obligeeList[index].DH" placeholder="电话"></el-input> </el-form-item> </el-col> </el-row> <el-row class="obligee-item-input"> <el-col :span="8"> <el-form-item :prop="'obligeeList.' + index + '.DZ'" :rules="rules.DZ"> <span slot="label"> 地址: <br /> <p class="label-detail">(DZ)</p> </span> <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].DZ" placeholder="地址"></el-input> </el-form-item> </el-col> <el-col :span="8"> <el-form-item :prop="'obligeeList.' + index + '.YB'" :rules="rules.YB"> <span slot="label"> 邮编: <br /> <p class="label-detail">(YB)</p> </span> <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].YB" placeholder="邮编"></el-input> </el-form-item> </el-col> <el-col :span="8"> <el-form-item :prop="'obligeeList.' + index + '.GZDW'" :rules="rules.GZDW"> <span slot="label"> 工作单位: <br /> <p class="label-detail">(GZDW)</p> </span> <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].GZDW" placeholder="工作单位"></el-input> </el-form-item> </el-col> </el-row> <el-row class="obligee-item-input"> <el-col :span="8"> <el-form-item :prop="'obligeeList.' + index + '.DZYJ'" :rules="rules.DZYJ"> <span slot="label"> 电子邮件: <br /> <p class="label-detail">(DZYJ)</p> </span> <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].DZYJ" placeholder="电子邮件"></el-input> </el-form-item> </el-col> <el-col :span="8"> <el-form-item :prop="'obligeeList.' + index + '.QLRLX'" :rules="rules.QLRLX"> <span slot="label"> 权利人类型: <br /> <p class="label-detail">(QLRLX)</p> </span> <el-select :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].QLRLX" placeholder="请选择"> <el-option v-for="item in dicData['A36']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE"> </el-option> </el-select> </el-form-item> </el-col> <el-col :span="8"> <el-form-item :prop="'obligeeList.' + index + '.QLBL'" :rules="rules.QLBL"> <span slot="label"> 权利比例: <br /> <p class="label-detail">(QLBL)</p> </span> <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].QLBL" placeholder="权利比例"></el-input> </el-form-item> </el-col> </el-row> <el-row class="obligee-item-input"> <el-col :span="8"> <el-form-item :prop="'obligeeList.' + index + '.GYFS'" :rules="rules.GYFS"> <span slot="label"> 共有方式: <br /> <p class="label-detail">(GYFS)</p> </span> <el-select :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].GYFS" placeholder="共有方式"> <el-option v-for="item in dicData['A34']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE"> </el-option> </el-select> </el-form-item> </el-col> <el-col :span="8"> <el-form-item :prop="'obligeeList.' + index + '.GYQK'" :rules="rules.GYQK"> <span slot="label"> 共有情况: <br /> <p class="label-detail">(GYQK)</p> </span> <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].GYQK" placeholder="共有情况"></el-input> </el-form-item> </el-col> <el-col :span="8"> <el-form-item :prop="'obligeeList.' + index + '.BZ'" :rules="rules.BZ"> <span slot="label"> 备注: <br /> <p class="label-detail">(BZ)</p> </span> <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].BZ" placeholder="备注"></el-input> </el-form-item> </el-col> </el-row> <el-row class="obligee-item-input"> <el-col :span="8"> <el-form-item :prop="'obligeeList.' + index + '.QXDM'" :rules="rules.QXDM"> <span slot="label"> 区县代码: <br /> <p class="label-detail">(QXDM)</p> </span> <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].QXDM" placeholder="区县代码"></el-input> </el-form-item> </el-col> </el-row> </div> </div> </el-form> <message-tips ref="msg" /> </div> </template> <script> import business from '@/api/business' import ruleMixin from '@/mixins/ruleMixin.js' import treeSelect from '../treeSelect/index.vue' // 权利人 export default { mixins: [ruleMixin], props: { bsmSjsb: { type: String, default: '' }, bsmYwsjb: { type: String, default: '' } }, components: { treeSelect }, data () { return { obligeeForm: { obligeeList: [ { YSDM: '', SXH: '', BDCDYH: '', QLRMC: '', BDCQZH: '', QZYSXLH: '', SFCZR: '', ZJZL: '', ZJH: '', FZJG: '', SSHY: '', GJ: '', HJSZSS: '', XB: '', DH: '', DZ: '', YB: '', GZDW: '', DZYJ: '', QLRLX: '', QLBL: '', GYFS: '', GYQK: '', BZ: '', QXDM: '' } ] } } }, methods: { async featchData () { try { let { result: res } = await business.getZttGyQlrById(this.bsmSjsb) this.obligeeForm.obligeeList = res //this.featchRule() } catch (error) { this.$refs.msg.messageShow() } }, handleUpdateForm () { return new Promise(async (resolve) => { try { let res = await business.updateZttGyQlr(this.obligeeForm.obligeeList) // this.$refs['formList'].resetFields(); resolve(res.code) } catch (error) { this.$refs.msg.messageShow() } }) } } } </script> <style scoped lang="scss"> @import "./css/itemForm.scss"; .obligee-item { display: flex; height: 100%; margin-bottom: 15px; margin-right: 5px; &-name { display: flex; align-items: center; justify-content: center; width: 20px; padding: 10px 20px; line-height: 28px; border: 1px solid #ccc; margin-right: 15px; border-radius: 3px; } &-list { width: 100%; flex: 1; display: flex; justify-content: center; flex-direction: column; } } </style>