<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"> </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 }"></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"> </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"> </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"> </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"> </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"> <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"> <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"> </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"> </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"> </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" /> </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"> </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"> <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"></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"></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"></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"> </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"> </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"> <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"> </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"> <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"> </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"></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"> </el-input> </el-form-item> </el-col> </el-row> </div> </div> </el-form> </div> </template> <script> import zttGyQlr from "@/api/zttGyQlr"; import ruleMixin from "@/mixins/ruleMixin.js"; import treeSelect from "@/components/TreeSelect.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 zttGyQlr.getZttGyQlrById(this.bsmSjsb); this.obligeeForm.obligeeList = res; } catch (error) {} }, handleUpdateForm() { return new Promise(async (resolve) => { try { let res = await zttGyQlr.updateZttGyQlr(this.obligeeForm.obligeeList); resolve(res.code); } catch (error) {} }); }, }, }; </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>