<!-- * @Description: 受理信息 * @Autor: renchao * @LastEditTime: 2023-08-17 14:14:53 --> <template> <div class="slxx"> <el-form :model="ruleForm" :rules="rules" ref="ruleForm" :label-position="flag ? 'top' : ''" :inline="flag" label-width="130px"> <div class="slxx_con" :class="flag ? 'formMarginBot0' : ''"> <div class="slxx_title title-block"> 申请业务信息 <div class="triangle"></div> </div> <el-row :gutter="10" v-if="ruleForm.slsq"> <el-col :span="8"> <el-form-item label="业务号:"> <el-input disabled v-model="ruleForm.flow.ywh"></el-input> </el-form-item> </el-col> <el-col :span="8"> <el-form-item label="受理人员:"> <el-input disabled v-model="ruleForm.slsq.slry"></el-input> </el-form-item> </el-col> <el-col :span="8"> <el-form-item label="受理时间:"> <el-input disabled v-model="ruleForm.slsq.slsj"></el-input> </el-form-item> </el-col> </el-row> <el-row :gutter="10" v-if="ruleForm.slsq"> <el-col :span="8" v-if="ruleForm.sldyList.length > 0"> <el-form-item label="权利类型:"> <el-input disabled v-model="ruleForm.sldyList[0].qllxmc"></el-input> </el-form-item> </el-col> <el-col :span="8" v-if="ruleForm.sldyList.length > 0"> <el-form-item label="登记类型:"> <el-input disabled v-model="ruleForm.sldyList[0].djlxmc"></el-input> </el-form-item> </el-col> <el-col :span="8"> <el-form-item label="登记情形:"> <el-input disabled v-model="ruleForm.slsq.djqxmc"></el-input> </el-form-item> </el-col> </el-row> <div class="slxx_title title-block"> 房屋批量情况 <div class="triangle"></div> </div> <el-row :gutter="10" v-if="ruleForm.zdjbxx"> <el-col :span="8"> <el-form-item label="宗地面积:"> <div class="flex"> <el-input disabled v-model="ruleForm.zdjbxx.zdmj"></el-input> <el-select disabled v-model="ruleForm.zdjbxx.mjdw" style="width: 68px"> <el-option v-for="item in dictData['A7']" :key="item.dcode" :label="item.dname" :value="item.dcode"></el-option> </el-select> </div> </el-form-item> </el-col> <el-col :span="8"> <el-form-item label="土地性质:"> <el-input disabled v-model="ruleForm.zdjbxx.ghytmc"></el-input> </el-form-item> </el-col> <el-col :span="8"> <el-form-item label="土地用途:"> <el-input disabled v-model="ruleForm.zdjbxx.ghytmc"></el-input> </el-form-item> </el-col> </el-row> <el-row :gutter="10" v-if="ruleForm.zdjbxx"> <el-col :span="8"> <el-form-item label="房屋性质:"> <el-input disabled v-model="ruleForm.zdjbxx.qlsdfsmc"></el-input> </el-form-item> </el-col> <el-col :span="8"> <el-form-item label="房屋用途:"> <el-input disabled v-model="splicingFdcq2.fwxz"></el-input> </el-form-item> </el-col> <el-col :span="8"> <el-form-item label="房屋结构:"> <el-input disabled v-model="splicingFdcq2.fwjg"></el-input> </el-form-item> </el-col> </el-row> <el-row :gutter="10" v-if="ruleForm.zdjbxx"> <el-col :span="8"> <el-form-item label="房屋总层数:"> <el-input disabled v-model="ruleForm.fdcq2List[0].zcs"></el-input> </el-form-item> </el-col> <el-col :span="8"> <el-form-item label="房屋总建筑面积:"> <el-input disabled v-model="splicingFdcq2.jzmj"></el-input> </el-form-item> </el-col> <el-col :span="8"> <el-form-item label="房屋总套数:"> <el-input disabled v-model="splicingFdcq2.zts"></el-input> </el-form-item> </el-col> </el-row> <el-row :gutter="10" v-if="ruleForm.slsq"> <el-col :span="8"> <el-form-item label="竣工时间:"> <el-input disabled v-model="splicingFdcq2.jzmj"></el-input> </el-form-item> </el-col> <el-col :span="5"> <el-form-item label="发证方式:" :disabled="!viewEdit"> <el-radio-group v-model="ruleForm.slsq.fzfs"> <el-radio label="1">小证</el-radio> <el-radio label="2">大证</el-radio> </el-radio-group> </el-form-item> </el-col> </el-row> <div class="slxx_title title-block"> 权利人信息 <div class="triangle"></div> </div> <el-row :gutter="10"> <el-col :span="12" v-if="ruleForm.sldyList.length > 0"> <el-form-item label="共有方式:"> <el-radio-group :disabled="!viewEdit" v-model="ruleForm.sldyList[0].gyfs"> <el-radio label="0">单独所有</el-radio> <el-radio label="1">共同共有</el-radio> <el-radio label="2">按份所有</el-radio> <el-radio label="3">其它共有</el-radio> </el-radio-group> </el-form-item> </el-col> <el-col :span="6" v-if="ruleForm.sldyList[0].gyfs != 0"> <el-form-item label="是否分别持证:"> <el-radio-group v-model="ruleForm.sldyList[0].sqfbcz" :disabled="!viewEdit" @input="updaterow()"> <el-radio :label="1">是</el-radio> <el-radio :label="0">否</el-radio> </el-radio-group> </el-form-item> </el-col> <el-col :span="6" v-if=" ruleForm.sldyList[0].gyfs != 0 && ruleForm.sldyList[0].sqfbcz == '0' "> <el-form-item label="持证人:"> <el-select v-model="czr" placeholder="持证人" :disabled="!viewEdit"> <el-option v-for="item in czrOptions" :key="item.zjh" :label="item.sqrmc" :value="item.zjh"></el-option> </el-select> </el-form-item> </el-col> </el-row> <qlrCommonTable :disabled="viewEdit" @upDateQlrxxList="upDateQlrxxList" :tableData="ruleForm.qlrList" :gyfs="ruleForm.sldyList[0].gyfs" /> <div class="slxx_title title-block"> 登记原因 <div class="triangle"></div> </div> <el-row :gutter="10"> <el-col v-if="ruleForm.fdcq2List.length > 0"> <el-form-item v-if="ruleForm.slsq" label="登记原因:" prop="djyy"> <el-input class="textArea" type="textarea" maxlength="500" show-word-limit :disabled="!viewEdit" v-model="ruleForm.fdcq2List[0].djyy"> </el-input> </el-form-item> </el-col> </el-row> </div> <el-row class="btn" v-if="viewEdit"> <el-form-item> <el-button type="primary" @click="onSubmit">保存</el-button> </el-form-item> </el-row> </el-form> </div> </template> <script> import ywmix from "@/views/ywbl/mixin/index"; import qlrCommonTable from "@/views/workflow/components/qlrCommonTable"; import { BatchInit, Init, saveBatchData, saveData, } from "@/api/workflow/fwsyqFlow.js"; import { mapGetters } from "vuex"; export default { mixins: [ywmix], computed: { ...mapGetters(["dictData", "flag"]), }, components: { qlrCommonTable }, // 更新义务人信息 /** * @description: 更新义务人信息 * @param {*} val * @author: renchao */ upDateYwrxxList (val) { this.ruleForm.ywrList = _.cloneDeep(val); }, data () { return { disabled: true, tdytOption: [], ruleForm: { cfdjList: [], //查封登记 diyaqList: [], //抵押权 fdcq2List: [], //房屋信息集合 qlrList: [], //权利人 ywrList: [], //义务人 qlxxList: [], //权利信息集合 sldyList: [], //受理不动产单元集合 slsq: {}, //受理申请流程明细 flow: {}, //受理申请流程明细 sqrList: [], //申请人 ssQlxxList: [], //上手权利信息 user: {}, //用户 zdjbxx: {}, //宗地基本信息 }, czrOptions: [], czr: "", //传递参数 propsParam: this.$attrs, //表单是否可操作 viewEdit: true, rules: {}, gyfs: "", bsmSlsq: this.$route.query.bsmSlsq, //受理申请标识码 splicingFdcq2: { //前端根据后台数组组装展示内容 tdxz: "", //土地性质 fwxz: "", //房屋性质 fwjg: "", //房屋结构 jzmj: "", //建筑面积 zts: "", //房屋总套数 }, }; }, mounted (callbackfn, thisArg) { this.viewEdit = this.$parent.currentSelectTab.ableOperation; this.propsParam = this.$attrs; var formdata = new FormData(); formdata.append("bsmSldy", this.propsParam.bsmSldy); formdata.append("djlx", this.propsParam.djlx); formdata.append("bsmSlsq", this.bsmSlsq); formdata.append("isEdit", this.viewEdit); BatchInit(formdata).then((res) => { if (res.code == 200) { this.ruleForm = res.result; this.czrOptions = this.ruleForm.qlrList; this.gyfs = this.ruleForm.sldyList[0].gyfs; this.splicingFdcq2Info(); } this.ruleForm.qlrList.forEach((item) => { if (item.sfczr == 1) { this.czr = item.zjh } }); }); }, methods: { //组装房地产权通用信息 /** * @description: 组装房地产权通用信息 * @author: renchao */ splicingFdcq2Info () { let fdcq2List = this.ruleForm.fdcq2List; let fwxzArr = []; let fwjgArr = []; let jzmj = 0; fdcq2List.forEach((fdcq2) => { fwxzArr.push(fdcq2.fwxzmc); fwjgArr.push(fdcq2.fwjgmc); jzmj += parseFloat(fdcq2.jzmj); }); //将数据转为字符串 //房屋性质 let fwxz = Array.from(new Set(fwxzArr)).join(","); //房屋结构 let fwjg = Array.from(new Set(fwjgArr)).join(","); this.splicingFdcq2.fwxz = fwxz; this.splicingFdcq2.fwjg = fwjg; this.splicingFdcq2.jzmj = jzmj == null ? 0 : jzmj; this.splicingFdcq2.zts = fdcq2List.length; }, /** * @description: 更新权利人信息 * @param {*} val * @author: renchao */ upDateQlrxxList (val) { this.ruleForm.qlrList = _.cloneDeep(val); this.czrOptions = this.ruleForm.qlrList; }, // 是否持证人变化 /** * @description: 是否持证人变化 * @param {*} val * @author: renchao */ updaterow () { this.czr = ""; }, // 更新义务人信息 /** * @description: 更新义务人信息 * @param {*} val * @author: renchao */ upDateYwrxxList (val) { this.ruleForm.ywrList = _.cloneDeep(val); }, /** * @description: onSubmit * @author: renchao */ onSubmit () { let that = this; if (this.ruleForm.qlrList.length == 0) { this.$message({ showClose: true, message: "请确认权利人信息", type: "error", }); return false; } if (this.ruleForm.sldyList[0].gyfs == "0") { if (this.ruleForm.qlrList.length > 1) { this.$message({ showClose: true, message: "共有方式:单独所有,权利人只能是一个人", type: "error", }); return false; } this.ruleForm.qlrList[0].sfczr = "1"; } else { if (this.ruleForm.qlrList.length <= 1) { this.$message({ showClose: true, message: "共有方式:共同所有,按份所有,其他所有,权利人必须是两个以上", type: "error", }); return false; } //是否分别持证 if (this.ruleForm.sldyList[0].sqfbcz == "1") { //是 this.ruleForm.qlrList.forEach((item, index) => { item.sfczr = "1"; }); } else { if (!that.czr) { that.$message({ showClose: true, message: "请选择持证人", type: "error", }); return false; } this.ruleForm.qlrList.forEach((item, index) => { if (item.zjh == that.czr) { item.sfczr = "1"; } else { item.sfczr = "0"; } }); } } saveBatchData(this.ruleForm).then((res) => { if (res.code === 200) { this.$message({ showClose: true, message: "保存成功!", type: "success", }); this.$store.dispatch("user/refreshPage", true); } else { this.$message({ showClose: true, message: res.message, type: "error", }); } }); }, }, }; </script> <style scoped lang="scss"> @import "~@/styles/public.scss"; /deep/.el-form { display: flex; flex-direction: column; height: calc(100vh - 130px); } /deep/.el-form-item__label { padding: 0; } /deep/.el-radio { margin-right: 10px; } /deep/.el-select { width: 100%; } /deep/.el-form-item { margin-bottom: 8px; } .marginBot0 { margin-bottom: 0 !important; } .slxx { box-sizing: border-box; } .slxx_con { flex: 1; height: 100%; background-color: #ffffff; overflow-y: auto; padding-right: 3px; overflow-x: hidden; } .submit_btn { height: 50px; } .slxx_title { border-bottom: 1px solid $borderColor; padding-left: 10px; padding-bottom: 5px; margin-bottom: 10px; margin-top: 5px; font-size: 16px; font-weight: 500; color: #4a4a4a; } .btn { text-align: center; padding-top: 10px; height: 36px; background-color: #ffffff; padding: 5px 0; } .textArea { /deep/.el-textarea__inner { min-height: 90px !important; } } /deep/.el-form-item__label { padding-bottom: 0px; } </style>