addjtfc.vue 5.95 KB
<template>
  <dialogBox title="家庭房产查询" @closeDialog="closeDialog" width="80%" :isButton="false" v-model="myValue">
    <div class="jtfccx-edit">
      <div class="jtfccx-edit-con">
        <b class="title">申请信息</b>
        <personInfoTable @getInfoList="handleGetSqList" :dataList="sqdataList" />
        <el-form :model="ruleForm" label-width="120px">
          <el-row>
            <el-col :span="8">
              <el-form-item label="查询用途" label-width="90px">
                <el-input v-model="ruleForm.cxyt"></el-input>
              </el-form-item>
            </el-col>
            <el-col :span="16">
              <el-form-item label="与产权人的关系">
                <el-radio-group v-model="ruleForm.ycyrgx">
                  <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-row>
        </el-form>
        <b class="title">权利人</b>
        <personInfoTable :dataList="qldataList" @getInfoList="handleGetQlList" />
        <div class="submit-button">
          <el-button type="primary" icon="el-icon-search" @click="handleSearch">查询</el-button>
          <el-button icon="el-icon-refresh-left" @click="handleReset">重置</el-button>
        </div>
        <b class="title">查询结果</b>
        <p>查询编号:202200409</p>
        <lb-table :column="searchData.columns" :data="searchData.data" :maxHeight="200" heightNumSetting
          :pagination="false">
        </lb-table>
      </div>

      <div class="submit-button" style="padding-bottom:20px">
        <el-button type="primary">无房证明打印(1)</el-button>
        <el-button type="primary">房产结果打印(1)</el-button>
        <el-button @click="closeDialog">关闭</el-button>
      </div>
    </div>
  </dialogBox>
</template>

<script>
import personInfoTable from '@/views/components/personInfoTable'
import { addJtfcCxjgXx } from '@/api/jtfc'
export default {
  components: {
    personInfoTable
  },
  props: {
    value: { type: Boolean, default: false },
  },
  data () {
    return {
      myValue: this.value,
      ruleForm: {
        cxyt: '',
        ycyrgx: 1,
        cxlx: '1' //查询类型 1:房产查询 2:登记簿查询
      },
      dataList: [{
        sqrxm: '',
        sqrzjlxbm: '',
        sqrzjhm: '',
        lxdh: '',
        inputErr: false
      }],
      sqdataList: [],
      qldataList: [],
      options: [{
        name: '1',
        value: 1
      }],
      searchData: {
        columns: [
          {
            prop: 'qszt',
            label: '权属状态',
          },
          {
            prop: 'bdcqzh',
            label: '不动产权证号',
          },
          {
            prop: 'djsj',
            label: '登记时间',
          },
          {
            prop: 'hth',
            label: '合同号',
          },
          {
            prop: 'wqsj',
            label: '网签时间',
          },
          {
            prop: 'bdcdyh',
            label: '不动产单元号',
          },
          {
            prop: 'gyfs',
            label: '共有方式',
          },
          {
            prop: 'qlr',
            label: '权利人',
          },
          {
            prop: 'zjh',
            label: '证件号',
          },
          {
            prop: 'fdzl',
            label: '房地坐落',
          },
          {
            prop: 'jzmj',
            label: '建筑面积(㎡)',
          },
          {
            prop: 'fwyt',
            label: '房屋用途',
          },
          {

            label: '登记状态',
            width: '150',
            align: 'center',
            fixed: 'right',
            render: (h, scope) => {
              return (
                <div>
                  <el-button type="text" icon="el-icon-edit-outline" onClick={() => { this.editClick(scope) }}>抵押</el-button>
                </div>
              )
            }
          }
        ],
        data: []
      },
      addJtfc: {
        djSqcxDO: {},
        sqxx: [],
        qlrxx: [],
      }
    }
  },
  watch: {
    value (val) {
      this.myValue = val
      this.qldataList = _.cloneDeep(this.dataList)
      this.sqdataList = _.cloneDeep(this.dataList)
      this.addJtfc.sqxx = _.cloneDeep(this.dataList)
      this.addJtfc.qlrxx = _.cloneDeep(this.dataList)
    },
    'ruleForm.ycyrgx' (val) {
      if (val != 1) {
        this.qldataList = _.cloneDeep(this.dataList)
        this.addJtfc.qlrxx = _.cloneDeep(this.dataList)
      } else {
        this.qldataList = this.addJtfc.sqxx
        this.addJtfc.qlrxx = this.addJtfc.sqxx
      }
    }
  },
  methods: {
    closeDialog () {
      this.$emit('input', false)
    },
    handleGetSqList (val) {
      if (!_.isEqual(val, this.dataList) && this.ruleForm.ycyrgx == 1) {
        this.qldataList = val
        this.addJtfc.qlrxx = val
      } else
        this.addJtfc.sqxx = val
    },
    handleGetQlList (val) {
      if (this.ruleForm.ycyrgx != 1) {
        this.addJtfc.qlrxx = val
      }
    },
    handleSearch () {
      this.addJtfc.djSqcxDO = { ...this.ruleForm }
      addJtfcCxjgXx(this.addJtfc).then(res => {
        console.log(res);
      })
    },
    handleReset () {
      this.qldataList = _.cloneDeep(this.dataList)
      this.sqdataList = _.cloneDeep(this.dataList)
    },
    handleRead (row) { }
  }
}
</script>
<style scoped lang="scss">
@import "~@/styles/mixin.scss";

.title {
  padding-bottom: 10px;
  margin-bottom: 10px;
  display: block;
  border-bottom: 1px solid $borderColor;
}

.jtfccx-edit {
  @include flex;
  flex-direction: column;
  overflow-y: hidden;
  max-height: 87vh;
  padding: 0 2px;

  .jtfccx-edit-con {
    flex: 1;
    height: 100%;
    overflow-y: scroll;
  }

  .submit-button {
    text-align: center;
    height: 52px;
    padding-top: 10px;
    background-color: #fff;
  }
}
</style>