jsydsyq.vue 12 KB
<!--
 * @Description:
 * @Autor: renchao
 * @LastEditTime: 2023-06-25 15:52:42
-->
<template>
  <!-- 受理信息 -->
  <div class="slxx">
    <el-form
      :model="ruleForm"
      :rules="rules"
      class="loadingtext"
      ref="ruleForm"
      :label-position="flag ? 'top' : ''"
      :inline="flag"
      label-width="127px"
    >
      <div class="slxx_con" v-if="isShow" :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.repair.ywh"></el-input>
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="补录人员:">
              <el-input disabled v-model="ruleForm.repair.slry"></el-input>
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="补录时间:">
              <el-input disabled v-model="ruleForm.repair.slsj"></el-input>
            </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="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="业务号:">
              <el-input v-model="ruleForm.qlxx.ywh"></el-input>
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="上手业务号:">
              <el-input v-model="ruleForm.qlxx.ssywh"></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.qlxx.qllxmc"></el-input>
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="登记类型:">
              <el-select v-model="ruleForm.qlxx.djlx">
                <el-option
                  v-for="item in dictData['A21']"
                  :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-select v-model="ruleForm.qlxx.qszt">
                <el-option
                  v-for="item in qsztlist"
                  :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 v-model="ruleForm.qlxx.zl"></el-input>
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="使用权面积:">
              <el-input v-model="ruleForm.jsydsyq.syqmj"></el-input>
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="取得价格:">
              <div style="display: flex">
                <el-input
                  v-model="ruleForm.jsydsyq.qdjg"
                  style="width: 500%"
                ></el-input>
                <el-select v-model="ruleForm.jsydsyq.jedw">
                  <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-col :span="8">
            <el-form-item label="不动产权证号:">
              <el-input v-model="ruleForm.qlxx.bdcqzh"></el-input>
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="区县代码:">
              <el-input v-model="ruleForm.qlxx.qxdm"></el-input>
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="登记机构:">
              <el-input v-model="ruleForm.qlxx.djjg"></el-input>
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="登簿人:">
              <el-input v-model="ruleForm.qlxx.dbr"></el-input>
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="登记时间:">
              <el-input v-model="ruleForm.qlxx.djsj"></el-input>
            </el-form-item>
          </el-col>
        </el-row>
        <el-row>
          <el-col :span="24">
            <el-form-item label="附记:">
              <el-input v-model="ruleForm.jsydsyq.fj"></el-input>
            </el-form-item>
          </el-col>
        </el-row>
        <div class="slxx_title title-block">
          土地用途
          <div class="triangle"></div>
        </div>
        <tdytTable
          :tableData="ruleForm.tdytqxList"
          @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="$route.query.viewtype == 0"
                v-model="ruleForm.qlxx.gyqk"
              >
                <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.qlxx.gyfs == '1'">
            <el-form-item label="是否分别持证:">
              <el-radio-group v-model="ruleForm.qlxx.sqfbcz">
                <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.qlxx.sqfbcz == '0' && ruleForm.qlxx.gyfs == '1'"
          >
            <el-form-item label="持证人:">
              <el-select v-model="ruleForm.czr" placeholder="持证人">
                <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
          :tableData="ruleForm.qlrData"
          @upDateQlrxxList="upDateQlrxxList"
          :key="key"
          :viewtype="$route.query.viewtype"
          :gyfs="ruleForm.qlxx.gyfs"
        />

        <div v-if="ruleForm.ywrList && ruleForm.ywrList.length > 0">
          <div class="slxx_title title-block">
            义务人信息
            <div class="triangle"></div>
          </div>
          <qlrCommonTable
            v-if="ruleForm.ywrList"
            :tableData="ruleForm.ywrList"
            :key="key"
            @upDateQlrxxList="upDateYwrxxList"
            :viewtype="$route.query.viewtype"
          />
        </div>
      </div>
      <el-row class="btn" v-if="!$route.query.viewtype && ableOperation">
        <el-form-item>
          <el-button type="primary" @click="onSubmit">保存</el-button>
        </el-form-item>
      </el-row>
    </el-form>
  </div>
</template>
<script>
import store from "@/store/index.js";
import { mapGetters } from "vuex";
import { init, save } from "@/api/djbbl.js";
import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
import tdytTable from "@/views/workflow/components/tdytTable";
export default {
  components: { qlrCommonTable, tdytTable },
  computed: {
    ...mapGetters(["dictData", "flag"]),
  },
  data() {
    return {
      // 键名转换,方法默认是label和children进行树状渲染
      normalizer(node) {
        //方法
        if (node.children == null || node.children == "null") {
          delete node.children;
        }
        return {
          id: node.dcode,
          label: node.dname,
        };
      },
      //表单是否可操作
      propsParam: this.$attrs,
      ableOperation: true,
      key: 0,
      // 权属状态
      qsztlist: [
        {
          dcode: "1",
          dname: "现势",
        },
        {
          dcode: "2",
          dname: "历史",
        },
      ],
      tdxz:null,
      isShow: false,
      disabled: true,
      czrOptions: [],
      ruleForm: {},
      //传递参数\
      rules: {},
    };
  },
  created() {
    this.loadData();
  },
  mounted() {},
  methods: {
    // 字典
    getDictData(val) {
      return store.getters.dictData[val];
    },
    loadData() {
      init(this.propsParam.bsmRepair).then((res) => {
        if (res.code == 200) {
          this.ruleForm = res.result;
            if( this.ruleForm.tdytqxList.length>0){
            this.tdxz=this.ruleForm.tdytqxList[0].qlxzbm
          }else{
            this.tdxz=null
          }
          console.log("this.ruleForm", this.ruleForm);
          this.isShow = true;
        }
      });
    },
    // 更新土地用途信息
    upDateTdytxxList(val) {
      console.log("VAL", val);
      this.ruleForm.tdytqxList && (this.ruleForm.tdytqxList = _.cloneDeep(val));
      this.key++;
    },
    // 更新权利人信息
    upDateQlrxxList(val) {
      console.log("val", val);
      this.ruleForm.qlrData && (this.ruleForm.qlrData = _.cloneDeep(val));
      console.log("this.ruleForm.qlrData", this.ruleForm.qlrData);
      this.czrOptions = this.ruleForm.qlrData;
      this.key++;
    },
    // 更新义务人信息
    upDateYwrxxList(val) {
      this.ruleForm.ywrList && (this.ruleForm.ywrList = _.cloneDeep(val));
      this.key++;
    },
    onSubmit() {
      console.log("this.ruleForm大信息", this.ruleForm);
      if (this.ruleForm.qlrData.length == 0) {
        this.$message({
          showClose: true,
          message: "请确认权利人信息",
          type: "error",
        });
        return false;
      }

      if (this.ruleForm.qlxx.gyfs == "0") {
        if (this.ruleForm.qlrData.length > 1) {
          this.$message({
            showClose: true,
            message: "共有方式:单独所有,权利人只能是一个人",
            type: "error",
          });
          return false;
        }
        this.ruleForm.qlrData[0].sfczr = "1";
      }
      if (this.ruleForm.qlxx.gyfs == "1") {
        //是否分别持证
        if (this.ruleForm.qlxx.sqfbcz == "1") {
          //是
          this.ruleForm.qlrData.forEach((item, index) => {
            item.sfczr = "1";
          });
        } else {
          this.ruleForm.qlrData.forEach((item, index) => {
            if (item.zjh == this.ruleForm.czr) {
              item.sfczr = "1";
            } else {
              item.sfczr = "0";
            }
          });
        }
      }
      save(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";
@import "~@/styles/slxx/slxx.scss";
</style>