0 <!-- * @Description: * @Autor: renchao * @LastEditTime: 2024-03-08 14:03:28 --> <template> <!-- 受理信息 --> <div class="slxx"> <el-form :model="ruleForm" :rules="rules" v-Loading="loading" ref="ruleForm" :label-position="flag ? 'top' : ''" :inline="flag" label-width="120px"> <div class="slxx_con" :class="flag ? 'formMarginBot0' : ''"> <div class="slxx_title title-block"> 申请业务信息 <div class="triangle"></div> </div> <el-row :gutter="10"> <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"> <el-col :span="8"> <el-form-item label="权利类型:"> <el-input disabled v-model="ruleForm.sldy.qllxmc"></el-input> </el-form-item> </el-col> <el-col :span="8"> <el-form-item label="登记类型:"> <el-input disabled v-model="ruleForm.sldy.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"> <el-row> <el-col :span="16"> 不动产单元情况 </el-col> <el-col :span="4"> <el-button v-if="ruleForm.sldy=='300'||ruleForm.sldy=='500'" @click="compare">变化情况对比+</el-button> </el-col> <el-col :span="4" v-if="ruleForm.sldy.djlx=='500'"> <el-form-item label="是否创建证书:" style="height:24px"> <el-radio-group v-model="ruleForm.sldy.sfxysczs"> <el-radio label="1">是</el-radio> <el-radio label="0">否</el-radio> </el-radio-group> </el-form-item> </el-col> </el-row> <div class="triangle"></div> </div> <el-row :gutter="10"> <el-col :span="8"> <el-form-item label="原不动产权证号:"> <el-input disabled v-model="ruleForm.sldy.ybdcqzsh"></el-input> </el-form-item> </el-col> <el-col :span="8"> <el-form-item label="不动产单元号:"> <el-input disabled v-model="ruleForm.qlxx.bdcdyh"></el-input> </el-form-item> </el-col> <el-col :span="8"> <el-form-item label="权利性质:"> <treeselect :disabled="!viewEdit" v-model="ruleForm.zdjbxx.qlxz" noOptionsText="暂无数据" placeholder="" :normalizer="normalizer" :default-expand-level="1" :show-count="true" :options="dictData['A9']" /> </el-form-item> </el-col> </el-row> <el-row :gutter="10"> <el-col :span="8"> <el-form-item label="权利设定方式:"> <el-select v-model="ruleForm.zdjbxx.qlsdfs" :disabled="!viewEdit"> <el-option v-for="item in dictData['A10']" :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 label="宗地面积:"> <el-input :disabled="!viewEdit" v-model="ruleForm.zdjbxx.zdmj"></el-input> </el-form-item> </el-col> <el-col :span="8"> <el-form-item label="取得价格:"> <div style="display: flex"> <el-input maxlength="11" v-model="ruleForm.jsydsyq.qdjg" style="width: 500%" oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null" :disabled="!viewEdit"></el-input> <el-select v-model="ruleForm.jsydsyq.jedw" disabled> <el-option v-for="item in dictData['A57']" :key="item.dcode" :label="item.dname" :value="item.dcode"> </el-option> </el-select> </div> </el-form-item> </el-col> </el-row> <el-row :gutter="10"> <el-col :span="8"> <el-form-item label="土地等级:"> <el-select placeholder="" v-model="ruleForm.zdjbxx.dj" :disabled="!viewEdit"> <el-option v-for="item in dictData['A50']" :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 label="图幅号:"> <el-input :disabled="!viewEdit" v-model="ruleForm.zdjbxx.tfh"></el-input> </el-form-item> </el-col> <el-col :span="8"> <el-form-item label="地籍号:"> <el-input v-model="ruleForm.zdjbxx.djh" :disabled="!viewEdit"></el-input> </el-form-item> </el-col> </el-row> <el-row :gutter="10"> <el-col :span="8"> <el-form-item label="地块代码:"> <el-input v-model="ruleForm.zdjbxx.dkdm" :disabled="!viewEdit"></el-input> </el-form-item> </el-col> <el-col :span="16"> <el-form-item label="坐落:"> <el-input :disabled="!viewEdit" v-model="ruleForm.sldy.zl"></el-input> </el-form-item> </el-col> </el-row> <el-row :gutter="10"> <el-col> <el-form-item label="附记:" prop="fj"> <el-input type="textarea" maxlength="500" show-word-limit v-model="ruleForm.jsydsyq.fj" :disabled="!viewEdit"></el-input> </el-form-item> </el-col> </el-row> <div class="slxx_title title-block"> 土地用途 <div class="triangle"></div> </div> <tdytTable :tableData="ruleForm.tdytqxList" :ableOperation="viewEdit" @upDateTdytxxList="upDateTdytxxList" /> <div class="slxx_title title-block"> 权利人信息 <div class="triangle"></div> </div> <el-row :gutter="10"> <el-col :span="12"> <el-form-item label="共有方式:"> <el-radio-group :disabled="!viewEdit" v-model="ruleForm.sldy.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-show="ruleForm.sldy.gyfs != '0'"> <el-form-item label="是否分别持证:"> <el-radio-group v-model="ruleForm.sldy.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-show="ruleForm.sldy.sqfbcz == '0' && ruleForm.sldy.gyfs != '0'"> <el-form-item label="持证人:"> <el-select v-model="czr" placeholder="持证人" :disabled="!viewEdit"> <el-option v-for="item in czrOptions" :key="item.id" :label="item.sqrmc" :value="item.id"> </el-option> </el-select> </el-form-item> </el-col> </el-row> <qlrCommonTable :tableData="ruleForm.qlrList" :disabled="viewEdit" @upDateQlrxxList="upDateQlrxxList" :gyfs="ruleForm.sldy.gyfs" /> <div v-if="ruleForm.ywrList && ruleForm.ywrList.length > 0 && ruleForm.qlxx.djlx==200"> <div class="slxx_title title-block"> 义务人信息 <div class="triangle"></div> </div> <ywrCommonTable v-if="ruleForm.ywrList" :disabled="viewEdit" :tableData="ruleForm.ywrList" :key="key" @upDateQlrxxList="upDateYwrxxList" /> </div> <div class="slxx_title title-block"> 登记原因 <div class="triangle"></div> </div> <el-row :gutter="10"> <el-col> <el-form-item label="登记原因:" prop="jsydsyq.djyy"> <el-input class="textArea" type="textarea" maxlength="500" show-word-limit :disabled="!viewEdit" v-model="ruleForm.jsydsyq.djyy"> </el-input> </el-form-item> </el-col> </el-row> </div> <el-row class="btn" v-if="isSave"> <el-form-item> <el-button type="primary" @click="onSubmit">保存</el-button> </el-form-item> </el-row> </el-form> </div> </template> <script> import { mapGetters } from "vuex"; import ywmix from "@/views/ywbl/mixin/index"; import qlrCommonTable from "@/views/workflow/components/qlrCommonTable"; import ywrCommonTable from "@/views/workflow/components/ywrCommonTable"; import tdytTable from "@/views/workflow/components/tdytTable"; import { Init, saveData } from "@/api/workflow/jsydsyqFlow.js"; export default { mixins: [ywmix], mounted () { let that = this; this.loading = true 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("isEdit", this.viewEdit); Init(formdata).then((res) => { setTimeout(() => { this.loading = false }, 200) if (res.code === 200 && res.result) { that.ruleForm = res.result; that.ruleForm.qlrList.forEach((item) => { item.id = item.bsmSqr if (item.sfczr == '1') { that.czr = item.bsmSqr } }) that.czrOptions = that.ruleForm.qlrList; that.isSave = that.viewEdit } else { that.isSave = false that.$confirm(res.message, '提示', { cancelButtonText: '取消', showConfirmButton: false, type: 'warning' }) } }).catch(() => { this.loading = false this.isSave = false }) }, components: { qlrCommonTable, tdytTable, ywrCommonTable }, computed: { ...mapGetters(["dictData", "flag"]), }, data () { return { key: 0, isSave: true, loading: false, // 键名转换,方法默认是label和children进行树状渲染 normalizer (node) { //方法 if (node.children == null || node.children == "null") { delete node.children; } return { id: node.dcode, label: node.dname, }; }, //表单是否可操作 viewEdit: false, disabled: true, czrOptions: [], czr: "", ruleForm: { slywxx: {}, qlxx: {}, zdjbxx: {}, jsydsyq: {}, }, //传递参数 propsParam: {}, rules: { 'jsydsyq.djyy': [ { required: true, message: '请输入登记原因', trigger: 'blur' } ] } }; }, methods: { /** * @description: 更新土地用途信息 * @param {*} val * @author: renchao */ upDateTdytxxList (val) { this.ruleForm.tdytqxList && (this.ruleForm.tdytqxList = _.cloneDeep(val)); this.key++; }, /** * @description: 更新权利人信息 * @param {*} val * @author: renchao */ upDateQlrxxList (val) { if (!_.isEqual(val, this.ruleForm.qlrList)) { this.ruleForm.qlrList = _.cloneDeep(val); this.czrOptions = this.ruleForm.qlrList; } this.num = 0 this.ruleForm.qlrList.forEach(item => { if (item.id == this.czr) { this.num++ } }) if (this.num == 0) { this.czr = '' } }, /** * @description: 是否持证人变化 * @param {*} val * @author: renchao */ updaterow () { this.czr = ""; }, /** * @description: onSubmit * @author: renchao */ onSubmit () { let that = this; let arr = this.ruleForm.tdytqxList.filter((item) => !item.yt); if (arr.length > 0) { this.$message({ showClose: true, message: "土地用途不能为空", type: "error", }); return false; } if (this.ruleForm.qlrList.length == 0) { this.$message({ showClose: true, message: "请确认权利人信息", type: "error", }); return false; } if (this.ruleForm.sldy.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.sldy.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.id == that.czr) { item.sfczr = "1"; } else { item.sfczr = "0"; } }) } } this.$refs['ruleForm'].validate((valid) => { if (valid) { that.$store.dispatch("user/refreshPage", false) saveData(this.ruleForm).then((res) => { if (res.code === 200) { that.$message({ showClose: true, message: "保存成功!", type: "success" }) that.$store.dispatch("user/refreshPage", true) } else { that.$message({ showClose: true, message: res.message, type: "error" }) } }) } else { this.$message({ showClose: true, message: "请输入登记原因", type: "error" }) return false } }) }, /** * @description: compare * @author: renchao */ compare () { this.$popupDialog( this.ruleForm.qlxx.qllxmc, "registerBook/comparison", { bsmQlxx: this.ruleForm.qlxx.bsmQlxx, dqqllx: "JSYDSYQ", }, "80%", true ); }, }, }; </script> <style scoped lang="scss"> @import "~@/styles/public.scss"; @import "~@/styles/slxx/slxx.scss"; </style>