<template> <div class="h content-form" ref="mainBox" :class="$route.path == '/h' ? 'hpage':''" :style="{'height': $route.path == '/h' ? '100%' : formHeight+'px'}"> <el-form ref="form" :model="form" label-width="160px" class="form"> <Qlr ref="qlrxxModule" :bsm='bsm' :qszt="form.qszt" :type="lx"></Qlr> <table border="1" width="100%" cellspacing="0" cellpadding="0" class="hTable"> <tbody> <tr height="30"> <th colspan="12" align="center" ><font size="4">户基本信息</font></th> </tr> <tr height="30"> <td colspan="2" align="center" >宗地代码<i class="requisite">*</i></td> <td colspan="4" > <el-input v-model="form.zddm" disabled></el-input> </td> <td colspan="2" align="center" >自然幢号<i class="requisite">*</i></td> <td colspan="4" > <el-input v-model="form.zrzh" disabled></el-input> </td> </tr> <tr height="30"> <td colspan="2" align="center" >不动产单元号<i class="requisite">*</i></td> <!-- todo 此处暂时存放的是不动产单元号标识码,而不是不动产单元号--> <td colspan="4" class="psr"> <el-input v-model="form.bdcdyh" class="percent80" :disabled="disableFlag" ref="bdcdyh"></el-input> <el-button @click.prevent="generatorCode" size="mini" class="createBtn" type="warning" :disabled="disableFlag">生成</el-button> </td> <!-- <td colspan="2" align="center" >原不动产单元</td>--> <!-- <td colspan="4" >--> <!-- <el-input v-model="form.ydybsm" disabled></el-input>--> <!-- </td>--> <td colspan="2" align="center" > <span>坐落<i class="requisite">*</i></span> </td> <td colspan="4" > <input class="formInput" v-model="form.zl" ref="zl" @blur="inputBlur($event)" :disabled="disableFlag" /> </td> </tr> <tr height="30"> <td colspan="2" align="center" >逻辑幢号</td> <td colspan="4" > <el-input v-model="form.ljzh" disabled></el-input> </td> <td colspan="2" align="center" >层号</td> <td colspan="4" > <el-input v-model="form.ch" :disabled="disableFlag"></el-input> </td> </tr> <tr height="30"> <td colspan="2" align="center" >实际层数</td> <td colspan="4" > <el-input v-model="form.sjcs" :disabled="disableFlag"></el-input> </td> <td colspan="2" align="center" >实际层</td> <td colspan="4" > <el-input v-model="form.sjc" :disabled="disableFlag"></el-input> </td> </tr> <tr height="30"> <td colspan="2" align="center" >所在单元</td> <td colspan="4" > <el-input v-model="form.zdymc" :disabled="disableFlag"></el-input> </td> <td colspan="2" align="center" >房屋编号</td> <td colspan="4" > <el-input v-model="form.fwbh" :disabled="disableFlag"></el-input> </td> </tr> <tr height="30"> <td colspan="2" align="center" >房屋类型<i class="requisite">*</i></td> <td colspan="4" > <el-select v-model="form.fwlxbsm" placeholder="请选择" :disabled="disableFlag" ref="fwlxbsm"> <el-option v-for="item in $store.state.fwlxList" :key="item.bsm" :label="item.mc" :value="item.bsm"> </el-option> </el-select> </td> <td colspan="2" align="center" >房屋性质<i class="requisite">*</i></td> <td colspan="4" > <el-select v-model="form.fwxzbsm" placeholder="请选择" :disabled="disableFlag" ref="fwxzbsm"> <el-option v-for="item in $store.state.fwxzOptions" :key="item.bsm" :label="item.mc" :value="item.bsm"> </el-option> </el-select> </td> </tr> <tr height="30"> <td colspan="2" align="center" >户号</td> <td colspan="4" > <el-input v-model="form.hh" :disabled="disableFlag"></el-input> </td> <td colspan="2" align="center" >室号</td> <td colspan="4" > <el-input v-model="form.shbw" :disabled="disableFlag"></el-input> </td> </tr> <tr height="30"> <td colspan="2" align="center" >户型</td> <td colspan="4" > <el-select v-model="form.hxbsm" placeholder="请选择" :disabled="disableFlag"> <el-option v-for="item in $store.state.hxList" :key="item.bsm" :label="item.mc" :value="item.bsm"> </el-option> </el-select> </td> <td colspan="2" align="center" >户型结构</td> <td colspan="4" > <el-select v-model="form.hxjgbsm" placeholder="请选择" :disabled="disableFlag"> <el-option v-for="item in $store.state.hxjgList" :key="item.bsm" :label="item.mc" :value="item.bsm"> </el-option> </el-select> </td> </tr> <tr height="30"> <td colspan="2" align="center" >产别<i class="requisite">*</i></td> <td colspan="4" > <el-select v-model="form.fwcbbsm" placeholder="请选择" :disabled="disableFlag" ref="fwcbbsm"> <el-option v-for="item in $store.state.cbOptions" :key="item.bsm" :label="item.mc" :value="item.bsm"> </el-option> </el-select> </td> <td colspan="2" align="center" >产权来源<i class="requisite">*</i></td> <td colspan="4" > <el-select v-model="form.fwcqlybsm" placeholder="请选择" :disabled="disableFlag" ref="fwcqlybsm"> <el-option v-for="item in $store.state.cqlyOptions" :key="item.bsm" :label="item.mc" :value="item.bsm"> </el-option> </el-select> </td> </tr> <tr height="30"> <td colspan="2" rowspan="6" align="center" >预测</td> <td colspan="2" align="center" >建筑面积(㎡) </td> <td colspan="2" align="center" > <el-input v-model="form.ycjzmj" type="number" :disabled="form.scyclx==='1'||disableFlag"></el-input> </td> <td colspan="2" rowspan="6" align="center" >实测</td> <td colspan="2" align="center" >建筑面积(㎡)</td> <td colspan="2" align="center" > <el-input v-model="form.scjzmj" type="number" :disabled="form.scyclx==='0'||disableFlag"></el-input> </td> </tr> <tr height="30"> <td colspan="2" align="center" >套内建筑面积(㎡))</td> <td colspan="2" align="center" > <el-input v-model="form.yctnjzmj" type="number" :disabled="form.scyclx==='1'||disableFlag"></el-input> </td> <td colspan="2" align="center" >套内建筑面积(㎡)</td> <td colspan="2" align="center" > <el-input v-model="form.sctnjzmj" type="number" :disabled="form.scyclx==='0'||disableFlag"></el-input> </td> </tr> <tr height="30"> <td colspan="2" align="center" >分摊建筑面积(㎡)</td> <td colspan="2" align="center" > <el-input v-model="form.ycftjzmj" type="number" :disabled="form.scyclx==='1'||disableFlag"></el-input> </td> <td colspan="2" align="center" >分摊建筑面积(㎡)</td> <td colspan="2" align="center" > <el-input v-model="form.scftjzmj" type="number" :disabled="form.scyclx==='0'||disableFlag"></el-input> </td> </tr> <tr height="30"> <td colspan="2" align="center" >地下部分建筑面积(㎡)</td> <td colspan="2" align="center" > <el-input v-model="form.ycdxbfjzmj" type="number" :disabled="form.scyclx==='1'||disableFlag"></el-input> </td> <td colspan="2" align="center" >地下部分建筑面积(㎡)</td> <td colspan="2" align="center" > <el-input v-model="form.scdxbfjzmj" type="number" :disabled="form.scyclx==='0'||disableFlag"></el-input> </td> </tr> <tr height="30"> <td colspan="2" align="center" >其它建筑面积(㎡)</td> <td colspan="2" align="center" > <el-input v-model="form.ycqtjzmj" type="number" :disabled="form.scyclx==='1'||disableFlag"></el-input> </td> <td colspan="2" align="center" >其它建筑面积(㎡)</td> <td colspan="2" align="center" > <el-input v-model="form.scqtjzmj" type="number" :disabled="form.scyclx==='0'||disableFlag"></el-input> </td> </tr> <tr height="30"> <td colspan="2" align="center" >分摊系数</td> <td colspan="2" align="center" > <input class="formInput" v-model="form.ycftxs" type="number" :disabled="form.scyclx==='1'||disableFlag" @blur="inputFtxsBlur($event)" ref="ycftxs" /> </td> <td colspan="2" align="center" >分摊系数</td> <td colspan="2" align="center" > <input class="formInput" v-model="form.scftxs" type="number" :disabled="form.scyclx==='0'||disableFlag" @blur="inputFtxsBlur($event)" ref="scftxs" /> </td> </tr> <tr height="30" v-for="(item1,index) in form.fwytList" :key="index"> <td v-if="index===0" colspan="2" :rowspan="ytTitleRowspan" align="center" id="ytTitle"> <el-button type="primary" style="margin-right: 10px" class="changeBtn addMinus inAdd" @click="addYtInfo" >+</el-button > <span>用途<i class="requisite">*</i></span> </td> <td width="30" colspan="1" align="center" > <el-button type="primary" class="changeBtn addMinus inMinus" @click="deleteYtInfo(index)" >-</el-button > 规划用途 </td> <td width="30" colspan="4" align="center" > <el-select-tree ref="ghyt" v-if="show" :default-expand-all="defaultExpandAll" @change="updateSjfyyt(item1)" :multiple="multiple" :placeholder="placeholder" :disabled="disableFlag" :data="$store.state.fwytList" :props="treeProps" :check-strictly="checkStrictly" :clearable="clearable" v-model="item1.fwytzdbsm" ></el-select-tree> </td> <td width="30" colspan="1" align="center" >用途</td> <td width="30" colspan="4" align="center" > <el-select-tree ref="yt" v-if="show" :default-expand-all="defaultExpandAll" :multiple="multiple" :placeholder="placeholder" :disabled="disableFlag" :data="$store.state.fwytList" :props="treeProps" :check-strictly="checkStrictly" :clearable="clearable" v-model="item1.fwsjytbsm" ></el-select-tree> </td> </tr> <tr height="30" v-for="(item1,index) in form.fwjgList" :key="'jg'+index"> <td colspan="2" v-if="index===0" :rowspan="fwjgTitleRowspan" align="center" > <!-- <el-button type="primary" size="mini" style="margin-right: 10px" @click="addFwjgInfo">添加</el-button> --> <el-button type="primary" style="margin-right: 10px" class="changeBtn addMinus inAdd" @click="addFwjgInfo" >+</el-button > <span>房屋结构<i class="requisite">*</i></span> </td> <td colspan="1" align="center" > <span @click="deleteFwjgInfo(index)">删除</span> </td> <td colspan="9" > <el-select v-model="item1.fwjgzdbsm" ref="fwjg" placeholder="请选择" :disabled="disableFlag"> <el-option v-for="item in $store.state.jgOptions" :key="item.bsm" :label="item.mc" :value="item.bsm"> </el-option> </el-select> </td> </tr> <tr height="30"> <td colspan="2" align="center" >共有土地面积(㎡)</td> <td colspan="2" > <el-input v-model="form.gytdmj" type="number" :disabled="disableFlag"></el-input> </td> <td colspan="2" align="center" >分摊土地面积(㎡)</td> <td colspan="2" > <el-input v-model="form.fttdmj" type="number" :disabled="disableFlag"></el-input> </td> <td colspan="2" align="center" >多幢独用土地面积(㎡)</td> <td colspan="2" > <el-input v-model="form.dytdmj" type="number" :disabled="disableFlag"></el-input> </td> </tr> <tr> <td colspan="12" rowspan="4" align="center"> <Qlxz ref="qlxzModule" :hasSyqx='false' :formData="form"></Qlxz> </td> </tr> <tr></tr> <tr></tr> <tr></tr> <tr height="30"> <td colspan="2" align="center" >东墙体归属</td> <td colspan="4" > <el-input v-model="form.dqtgs" :disabled="disableFlag"></el-input> </td> <td colspan="2" align="center" >南墙体归属</td> <td colspan="4" > <el-input v-model="form.nqtgs" :disabled="disableFlag"></el-input> </td> </tr> <tr height="30"> <td colspan="2" align="center" >西墙体归属</td> <td colspan="4" > <el-input v-model="form.xqtgs" :disabled="disableFlag"></el-input> </td> <td colspan="2" align="center" >北墙体归属</td> <td colspan="4" > <el-input v-model="form.bqtgs" :disabled="disableFlag"></el-input> </td> </tr> <tr height="30"> <td colspan="2" rowspan="2" align="center" > <span>附加说明</span> </td> <td colspan="10" rowspan="2" > <el-input v-model="form.bz" type="textarea" :disabled="disableFlag"></el-input> </td> </tr> <tr height="30"> </tr> <tr height="30"> <td colspan="2" rowspan="2" align="center" > <span>调查意见</span> </td> <td colspan="10" > <el-input v-model="form.name" :disabled="disableFlag"></el-input> </td> </tr> <tr height="30"> <td colspan="4" rowspan="2" align="right" style="width:8.33%;padding-right:10px"> <span>审查员</span> </td> <td colspan="2" > <el-input v-model="form.name" :disabled="disableFlag"></el-input> </td> <td colspan="2" rowspan="2" align="right" style="width:8.33%;padding-right:10px"> <span>审查日期</span> </td> <td colspan="2" > <el-date-picker v-model="form.date" type="date" placeholder="选择日期"> </el-date-picker> </td> </tr> </tbody> </table> </el-form> <div class="header-button" :style="{width:mainBoxWidth+'px'}"> <el-button type="primary" class="saveBtn" @click="onSave" :disabled="disableFlag">保存</el-button> <el-button type="primary" @click="onSubmit" :disabled="disableFlag">提交</el-button> <el-button type="primary" @click="registerCall">登记调用</el-button> <!-- <el-button type="primary" class="saveBtn" @click="save">保存</el-button> --> </div> </div> </template> <script> import Qlr from "@components/formMenu/qlr"; import Qlxz from "@components/formMenu/qlxz"; import {getQjHDetailByBsm,updateQjH} from "@api/h"; import {getBdcdyh} from "@api/zrz"; import {submit,registerCall} from "@api/common" export default { name:'zrz', components:{ Qlr, Qlxz, }, inject:['getTreeByBsm'], props:{ bsm:String, //户标识码 scyclx:{ type: String, default: "1", }, }, data () { return { disableFlag:false, //树型结构 show:true, clearable: true, defaultExpandAll: true, multiple: false, placeholder: '请选择', disabled: false, checkStrictly: true, treeProps: { value: 'bsm', children: 'children', label: 'mc' }, lx:'h', hbsm:'', form:{ bsm:'',//户标识码 zrzbsm:'', //自然幢标识码 ljzbsm:'', //逻辑幢标识码 ljzh:'', //逻辑幢号 zdybsm:'', //幢单元标识码 cbsm:'', //层标识码 ch:'', //层号 zdbsm:'', //宗地标识码 bdcdyh:'', //不动产单元号标识码 ydybsm:'', //原单元标识码 zrzh:'', //自然幢号 mjdwbsm:'', //面积单位编号 sjcs:'', //实际层数 hh:'', //户号 hxbsm:'', //户型标识码 hxjgbsm:'', //户型结构标识码 dltdmj:'', //独立使用土地面积 fttdmj:'', //分摊土地使用面积 gytdmj:'', //共有土地面积 fwlxbsm:'', //房屋类型标识码 fwxzbsm:'', //房屋性质标识码 sjc:'', //实际层 dqtgs:'', //东墙体归属 nqtgs:'', //南墙体归属 xqtgs:'', //西墙体归属 bqtgs:'', //北墙体归属 fwbh:'', //房屋编号 fjsm:'', //附加说明 fwcbbsm:'', //房屋产别标识码 sjhs:'', //实际户数 shbw:'', //室号部位 fwcqlybsm:'', //房屋产权来源标识码 myc:'', //名义层 qszt:'', //权属状态 //预测数据 ycjzmj:'', //建筑面积 yctnjzmj:'', //套内建筑面积 ycftjzmj:'', //分摊建筑面积 ycdxbfjzmj:'', //地下部分建筑面积 ycqtjzmj:'', //其它建筑面积 ycftxs:'', //分摊系数 //实测数据 scjzmj:'', //建筑面积 sctnjzmj:'', //套内建筑面积 scftjzmj:'', //分摊建筑面积 scdxbfjzmj:'', //地下部分建筑面积 scqtjzmj:'', //其它建筑面积 scftxs:'', //分摊系数 scyclx:'0', //实预测类型(0:预测,1:实测;),区别户是实测还是预测数据 scycglbsm:'', //实测预测关联标识码 bz:'', //备注 name:'', date:'', fwytList:[{ glbsm:'', //关联标识码 fwytzdbsm:'', //房屋用途字典标识码 sx:'', //顺序 fwsjytbsm:'', //房屋实际用途字典标识码 }], fwjgList:[{ fwjgzdbsm:'', //房屋结构字典标识码 glbsm:'', //关联标识码 sx:'', //顺序 }], qlxzList:[{ qlxzdm:'', //权利性质代码 glbsm:'', //宗地BSM、自然幢BSM、户BSM、多幢BSM、宗海BSM qlxzzdbsm:'', //权利性质字典表标识码 qlxzmc:'', //权利名称名称 zhqlxzlx:'', //除宗海数据外,默认都是空;0:用海类型权利性质;2:海岛用途权利性质 addQjTdytRequestList:[{ }], //土地用途新增实体列表 }] }, value: '', ytTitleRowspan:1, //用途的单元格垂直合并数量 fwjgTitleRowspan:1, //房屋结构的单元格垂直合并数量 formHeight:0, mainBoxWidth:0, rules:[], ftxsrules:[], } }, created(){ let bsm=this.bsm; if (bsm) { this.getHInfo(bsm); } this.$nextTick(()=>{ this.mainBoxWidth = this.$refs.mainBox.clientWidth; this.formHeight = (document.documentElement.clientHeight || document.body.clientHeight) - 230 }) }, methods: { inputFtxsBlur(e){ if(e.target.value!==''&&+e.target.value>0&&+e.target.value<10){ e.target.style.border="" }else{ e.target.style.border="1px solid red"; e.target.style.boxSizing = 'border-box'; } }, inputBlur(e){ if(e.target.value!=''){ e.target.style.border="" }else{ e.target.style.border="1px solid red"; e.target.style.boxSizing = 'border-box'; } }, registerCall(){ let data={ type:'h', bsm:this.bsm } registerCall(data).then(res=>{ if (res.success) { this.$message.success("登记成功") this.getTreeByBsm(this.$store.state.zdbsm,'h','0,1,2') } }) }, updateSjfyyt(data){ data.fwsjytbsm = data.fwytzdbsm; }, addYtInfo(){ this.form.fwytList.push({ glbsm:'', fwytzdbsm:'', fwsjytbsm:'', sx:'', }); this.ytTitleRowspan=this.form.fwytList.length; }, deleteYtInfo(index){ if(this.form.fwytList.length<=1){ this.$message({ message: '不能删除,最少含有一条用途信息', type: 'warning' }); }else{ this.form.fwytList.splice(index,1); this.ytTitleRowspan=this.form.fwytList.length; } }, addFwjgInfo(){ this.form.fwjgList.push({ fwjgzdbsm:'', //房屋结构字典标识码 glbsm:'', //关联标识码 sx:'', //顺序 }); this.fwjgTitleRowspan=this.form.fwjgList.length; }, deleteFwjgInfo(index){ if(this.form.fwjgList.length<=1){ this.$message({ message: '不能删除,最少含有一条房屋结构信息', type: 'warning' }); }else{ this.form.fwjgList.splice(index,1); this.fwjgTitleRowspan=this.form.fwjgList.length; } }, //根据户bsm查询户信息 getHInfo(hbsm){ //this.bsm = hbsm; getQjHDetailByBsm(hbsm).then((res)=>{ if(res.code===200){ this.form = res.result; this.hbsm = res.result.bsm; if(res.result.gygyqlrqk!=null){ this.$refs.qlrxxModule.changeGyfs(res.result.gygyqlrqk); } this.$refs.qlrxxModule.getQlrInfo(hbsm); if(this.form.bblx === 0 && this.form.qszt === '0' && this.form.bhqkbsm == null){ this.disableFlag = false }else { this.disableFlag = true } if(this.form.scyclx==='0'){ this.$set(this.form,"ycjzmj", this.form.jzmj) this.$set(this.form,"yctnjzmj", this.form.tnjzmj) this.$set(this.form,"ycftjzmj", this.form.ftjzmj) this.$set(this.form,"ycdxbfjzmj", this.form.dxbfjzmj) this.$set(this.form,"ycqtjzmj", this.form.qtjzmj) this.$set(this.form,"ycftxs", this.form.ftxs) this.$set(this.form,"scjzmj", this.form.gljzmj) this.$set(this.form,"sctnjzmj", this.form.gltnjzmj) this.$set(this.form,"scftjzmj", this.form.glftjzmj) this.$set(this.form,"scdxbfjzmj", this.form.gldxbfjzmj) this.$set(this.form,"scqtjzmj", this.form.glqtjzmj) this.$set(this.form,"scftxs", this.form.glftxs) }else if(this.form.scyclx==='1'){ this.$set(this.form,"scjzmj", this.form.jzmj) this.$set(this.form,"sctnjzmj", this.form.tnjzmj) this.$set(this.form,"scftjzmj", this.form.ftjzmj) this.$set(this.form,"scdxbfjzmj", this.form.dxbfjzmj) this.$set(this.form,"scqtjzmj", this.form.qtjzmj) this.$set(this.form,"scftxs", this.form.ftxs) this.$set(this.form,"ycjzmj", this.form.gljzmj) this.$set(this.form,"yctnjzmj", this.form.gltnjzmj) this.$set(this.form,"ycftjzmj", this.form.glftjzmj) this.$set(this.form,"ycdxbfjzmj", this.form.gldxbfjzmj) this.$set(this.form,"ycqtjzmj", this.form.glqtjzmj) this.$set(this.form,"ycftxs", this.form.glftxs) } if(res.result.fwytList.length===0){ this.form.fwytList.push({ glbsm:'', //关联标识码 fwytzdbsm:'', //房屋用途字典标识码 sx:'', //顺序 fwsjytbsm:'', //房屋实际用途字典标识码 }) } if(res.result.fwjgList.length===0){ this.form.fwjgList.push({ fwjgzdbsm:'', //房屋结构字典标识码 glbsm:'', //关联标识码 sx:'', //顺序 }) } this.fwjgTitleRowspan=this.form.fwjgList.length; this.ytTitleRowspan=this.form.fwytList.length; if(res.result.qjQlxzListVOS.length>0){ if(res.result.qjQlxzListVOS[0].list.length<1){ res.result.qjQlxzListVOS[0].list.push({ "pzdjbsm": "", "pzdjmc": "", "pzytdm": "", "pzytmc": "", "pzytmj": 0, "qlxzbsm": "", "sjdjbsm": "", "sjdjmc": "", "sjytdm": "", "sjytmc": "", "sjytmj": 0, "syqx": "", "tdsyjssj": "", "tdsyqssj": "", "tdzh": "" }) } //权利性质数据传给子组件 this.$refs.qlxzModule.countList = res.result.qjQlxzListVOS }else { this.$refs.qlxzModule.countList = [ { id: Math.random(), isInside: false, hasNotBorder: false, "bsm": "",//权利性质标识码 "glbsm": "",//宗地BSM、自然幢BSM、户BSM、多幢BSM、宗海BSM "qlxzdm": "", "zhqlxzlx": "", //除宗海数据外,默认都是空;0:用海类型权利性质;2:海岛用途权利性质 list:[ { "pzdjbsm": "", "pzdjmc": "", "pzytdm": "", "pzytmc": "", "pzytmj": 0, "qlxzbsm": "", "sjdjbsm": "", "sjdjmc": "", "sjytdm": "", "sjytmc": "", "sjytmj": 0, "syqx": "", "tdsyjssj": "", "tdsyqssj": "", "tdzh": "" } ] }, ] } } }) }, //保存户信息 onSave(){ if(this.form.scyclx === '0'){ this.ftxsrules=[ { data:this.form.ycftxs, name:'不动产单元号', dom:this.$refs.ycftxs, rule:/^(?!0(\.0{1,2})?$)(\d(\.\d{1,2})?)$/, //大于0小于10的所有保留两位的数字 }, ] }else { this.ftxsrules=[ { data:this.form.scftxs, name:'不动产单元号', dom:this.$refs.scftxs, rule:/^(?!0(\.0{1,2})?$)(\d(\.\d{1,2})?)$/, //大于0小于10的所有保留两位的数字 }, ] } this.rules=[ { data:this.form.bdcdyh, name:'不动产单元号', dom:this.$refs.bdcdyh, rule: /^\s*$/g, //非空 }, { data:this.form.fwlxbsm, name:'房屋类型', dom:this.$refs.fwlxbsm, rule: /^\s*$/g, //非空 }, { data:this.form.fwxzbsm, name:'房屋性质', dom:this.$refs.fwxzbsm, rule: /^\s*$/g, //非空 }, { data:this.form.fwcbbsm, name:'产别', dom:this.$refs.fwcbbsm, rule: /^\s*$/g, //非空 }, { data:this.form.fwcqlybsm, name:'产权来源', dom:this.$refs.fwcqlybsm, rule: /^\s*$/g, //非空 }, { data:this.form.zl, name:'坐落', dom:this.$refs.zl, rule: /^\s*$/g, //非空 }, ] this.form.fwytList.forEach((item,index)=>{ this.rules.push( { data:item.fwytzdbsm, name:'规划用途', dom:this.$refs.ghyt[index], rule: /^\s*$/g, //非空 }, { data:item.fwytzdbsm, name:'用途', dom:this.$refs.yt[index], rule: /^\s*$/g, //非空 }, ) }) this.form.fwjgList.forEach((item,index)=>{ this.rules.push( { data:item.fwjgzdbsm, name:'房屋结构', dom:this.$refs.fwjg[index], rule: /^\s*$/g, //非空 }, ) }) this.form.qlxzList= this.$refs.qlxzModule.getQlxzDataList(); this.$refs.qlxzModule.getRules(); let flag = true; this.rules.forEach(item=>{ if(item.rule.test(item.data) || item.data == null){ if(item.dom.$el){ item.dom.$el.style.border = '1px solid red'; item.dom.$el.style.boxSizing = 'border-box'; }else{ item.dom.style.border = '1px solid red'; item.dom.style.boxSizing = 'border-box'; } flag = false; return false } }) let ftxsflag = true; this.ftxsrules.forEach(item=>{ console.log(item.data+":item.data") console.log(item.data !=="" +":item.data !==") if(item.data !=="" && item.data !==null){ if(!item.rule.test(+item.data) || item.data == null){ if(item.dom.$el){ item.dom.$el.style.border = '1px solid red'; item.dom.$el.style.boxSizing = 'border-box'; }else{ item.dom.style.border = '1px solid red'; item.dom.style.boxSizing = 'border-box'; } ftxsflag = false; return false } } }) this.$nextTick(()=> { if (flag && ftxsflag && this.$refs.qlxzModule.getRulesResult()) { if(this.form.scyclx==='0'){ this.form.jzmj = this.form.ycjzmj; this.form.tnjzmj=this.form.yctnjzmj; this.form.ftjzmj=this.form.ycftjzmj; this.form.dxbfjzmj=this.form.ycdxbfjzmj; this.form.qtjzmj=this.form.ycqtjzmj; this.form.ftxs=this.form.ycftxs; }else if(this.form.scyclx==='1'){ this.form.jzmj = this.form.scjzmj; this.form.tnjzmj=this.form.sctnjzmj; this.form.ftjzmj=this.form.scftjzmj; this.form.dxbfjzmj=this.form.scdxbfjzmj; this.form.qtjzmj=this.form.scqtjzmj; this.form.ftxs=this.form.scftxs; } updateQjH(this.form).then((res)=>{ if(res.code===200){ this.$message.success("保存成功!") }else { this.$message.warning(res.message) } }) }else { this.$message({ // message: item.name+'不能为空', message: '表单数据有误', type: "warning", }); } }) }, onSubmit(){ let data={ glbsm:this.bsm, status:1, type:"h" } submit(data).then((res)=>{ if(res.code===200){ this.$message.success("提交完成!"); }else { this.$message.warning(res.message) } }) }, onReset(){ this.form.bdcdyh='', //不动产单元号 this.form.mjdwbsm='', //面积单位编号 this.form.hxbsm='', //户型标识码 this.form.hxjgbsm='', //户型结构标识码 this.form.dltdmj='', //独立使用土地面积 this.form.fttdmj='', //分摊土地使用面积 this.form.gytdmj='', //共有土地面积 this.form.fwlxbsm='', //房屋类型标识码 this.form.fwxzbsm='', //房屋性质标识码 this.form.sjc='', //实际层 this.form.dqtgs='', //东墙体归属 this.form.nqtgs='', //南墙体归属 this.form.xqtgs='', //西墙体归属 this.form.bqtgs='', //北墙体归属 this.form.fwbh='', //房屋编号 this.form.fjsm='', //附加说明 this.form.fwcbbsm='', //房屋产别标识码 this.form.sjhs='', //实际户数 this.form.shbw='', //室号部位 this.form.fwcqlybsm='', //房屋产权来源标识码 //预测数据 this.form.ycjzmj='', //建筑面积 this.form.yctnjzmj='', //套内建筑面积 this.form.ycftjzmj='', //分摊建筑面积 this.form.ycdxbfjzmj='', //地下部分建筑面积 this.form.ycqtjzmj='', //其它建筑面积 this.form.ycftxs='', //分摊系数 //实测数据 this.form.scjzmj='', //建筑面积 this.form.sctnjzmj='', //套内建筑面积 this.form.scftjzmj='', //分摊建筑面积 this.form.scdxbfjzmj='', //地下部分建筑面积 this.form.scqtjzmj='', //其它建筑面积 this.form.scftxs='', //分摊系数 this.form.scyclx='0', //实预测类型(0:预测,1:实测;),区别户是实测还是预测数据 this.form.scycglbsm='', //实测预测关联标识码 this.form.bz='', //备注 this.form.name='', this.form.date='', this.form.fwytList=[{ glbsm:'', //关联标识码 fwytzdbsm:'', //房屋用途字典标识码 sx:'', //顺序 fwsjytbsm:'', //房屋实际用途字典标识码 }], this.form.fwjgList=[{ fwjgzdbsm:'', //房屋结构字典标识码 glbsm:'', //关联标识码 sx:'', //顺序 }], this.form.qlxzList=[{ qlxzdm:'', //权利性质代码 glbsm:'', //宗地BSM、自然幢BSM、户BSM、多幢BSM、宗海BSM qlxzzdbsm:'', //权利性质字典表标识码 qlxzmc:'', //权利名称名称 zhqlxzlx:'', //除宗海数据外,默认都是空;0:用海类型权利性质;2:海岛用途权利性质 addQjTdytRequestList:[{ }], //土地用途新增实体列表 }] console.log("----------------------------------") console.log(this.form) }, //不动产单元号再次生成提示框 open() { this.$confirm('已经存在不动产单元号或者自然幢号, 是否继续?', '提示', { confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning' }).then(() => { getBdcdyh(this.form.zrzh,"h") .then((res)=>{ this.form.zrzh=res.result.substring(0,24); this.form.bdcdyh=res.result; }) this.$message({ type: 'success', message: '生成成功!' }); }).catch(() => { this.$message({ type: 'info', message: '已取消' }); }); }, generatorCode(){ if(this.form.bdcdyh!=null&&this.form.bdcdyh!==''){ this.open(); return; } getBdcdyh(this.form.zrzh,"h") .then((res)=>{ this.form.zrzh=res.result.substring(0,24); this.form.bdcdyh=res.result; }) }, }, watch: { scyclx:{ handler(n){ this.$nextTick(()=>{ this.form.scyclx = this.scyclx; }) } }, "form.bdcdyh":function (val) { if (val != '') { this.$refs.bdcdyh.$el.style.border = ''; } }, "form.fwlxbsm":{ handler:function (val) { if (val != '') { this.$refs.fwlxbsm.$el.style.border = ''; } }, immediate:false }, "form.fwxzbsm":{ handler:function (val) { if (val != '') { this.$refs.fwxzbsm.$el.style.border = ''; } }, immediate:false }, "form.fwcqlybsm":{ handler:function (val) { if (val != '') { this.$refs.fwcqlybsm.$el.style.border = ''; } }, immediate:false }, "form.fwcbbsm":{ handler:function (val) { if (val != '') { this.$refs.fwcbbsm.$el.style.border = ''; } }, immediate:false }, "form.fwytList": { handler : function (newVal, oldVal) { newVal.forEach((item,ind)=>{ if(item.fwytzdbsm != ''){ this.$refs.ghyt[ind].$el.style.border="" this.$refs.yt[ind].$el.style.border="" } }) }, deep:true }, "form.fwjgList": { handler : function (newVal, oldVal) { newVal.forEach((item,ind)=>{ if(item.fwjgzdbsm != ''){ this.$refs.fwjg[ind].$el.style.border="" } }) }, deep:true }, "$store.state.sxdrType": { handler(n) { this.$nextTick(()=>{ if (n === 'h') { this.getHInfo(this.$store.state.hbsm) } }) }, immediate: false, deep: true, } } } </script> <style rel="stylesheet/less" lang="less" scoped> .h { height: 100%; width: 100%; margin-top: 10px; overflow-y: scroll; overflow-x: hidden; /deep/.el-input__inner{ width: 100%; border: 0; } /deep/textarea{ width: 100%; border: 0; } .el-form-item{ font-weight: bold; font-size: xx-large } table{ background: #fff; table-layout: fixed; } td{ //bgcolor:#F1F4FC; width:8.33%; height: 36px; text-align: right; padding-right: 10px; } .el-select{ display:block; } .form{ overflow-y: scroll; overflow-x: hidden; margin-bottom: 30px; } } .hpage{ box-sizing: border-box; padding: 8px 6px 18px 18px; } table{ font-size: 14px; } .hTable{ margin-top: 10px; } /deep/.el-select-tree{ width: 100%; .el-input__inner{ height: 30px !important; } } .header-button { z-index: 3; height: 50px; position: absolute; bottom: 0; right: 6px; text-align: center; background-color: #ffffff; .el-button{ padding: 10px 30px; margin-top: 8px; } .saveBtn { background-color: #00CACD; border-color: #00CACD; } .saveBtn:hover { background-color: rgba(0, 202, 205, .8); border-color: rgba(0, 202, 205, .8); } } </style>