index.vue 6.25 KB
<template>
  <div class="fdcqdz from-clues">
    <div class="from-clues-header">
      <el-form ref="form" :model="form" label-width="120px">
        <el-form-item v-if="BASE_API.THEME == 'jg'">
          <Breadcrumb />
        </el-form-item>
        <el-row class="mb-5">
          <el-col :span="6">
            <el-form-item label="行政区">
              <el-select
                v-model="$store.state.user.userInfo.grade === 'county' ? form.XZQDM = $store.state.user.userInfo.areaCode : form.XZQDM"
                class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'">
                <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
                </el-option>
              </el-select>
            </el-form-item>
          </el-col>
          <el-col :span="6">
            <el-form-item label="权属状态">
              <el-select class="width100" v-model="form.QSZT" clearable placeholder="权属状态">
                <el-option v-for="item in dicData['A22']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
                </el-option>
              </el-select>
            </el-form-item>
          </el-col>
          <el-col :span="6">
            <el-form-item label="坐落">
              <el-input v-model="form.ZL" clearable placeholder="坐落"></el-input>
            </el-form-item>
          </el-col>
          <el-col :span="6">
            <el-form-item label="权利人" label-width="80px">
              <el-input v-model="form.QLR" clearable placeholder="权利人"></el-input>
            </el-form-item>
          </el-col>
        </el-row>
        <el-row class="mt-10">
          <el-col :span="6">
            <el-form-item label="登记类型">
              <el-select v-model="form.DJLX" clearable class="width100" ref="selectlandDJ"
                @visible-change="isShowSelectOptions" placeholder="登记类型">
                <el-option v-for="item in dicData['A21']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
                </el-option>
              </el-select>
            </el-form-item>
          </el-col>
          <el-col :span="6">
            <el-form-item label="不动产单元号" label-width="120px">
              <el-input v-model="form.BDCDYH" clearable placeholder="不动产单元号"></el-input>
            </el-form-item>
          </el-col>
          <el-col :span="6">
            <el-form-item label="不动产权证号" label-width="120px">
              <el-input v-model="form.BDCQZH" clearable placeholder="不动产权证号"></el-input>
            </el-form-item>
          </el-col>
          <el-col :span="6">
            <el-form-item label="证件号" label-width="80px">
              <el-input v-model="form.ZJH" clearable placeholder="证件号"></el-input>
            </el-form-item>
          </el-col>
        </el-row>
        <el-row class="mt-10">
          <el-col :span="24" class="btnColRight">
            <btn nativeType="cz" @click="resetForm">重置</btn>
            <btn nativeType="cx" @click="handleSearch">查询</btn>
          </el-col>
        </el-row>
      </el-form>
    </div>
    <div class="from-clues-content">
      <lb-table :page-size="pageData.size" :current-page.sync="pageData.current" :total="pageData.total"
        @size-change="handleSizeChange" @p-current-change="handleCurrentChange" :column="tableData.columns"
        :data="tableData.data">
      </lb-table>
    </div>
    <dataDetails ref="editLog" :title="title" :tabsActiveName="'qltFwFdcqDz'" />
  </div>
</template>

<script>
  //  房地产权(项目内多幢房屋)
  import data from "./data"
  import qltFwFdcqDz from '@/api/qltFwFdcqDz'
  import sjsbFunctionOper from '@/api/sjsbFunctionOper'
  import tableMixin from '@/mixins/tableMixin.js'
  import treeSelect from '@/components/TreeSelect.vue'
  export default {
    name: "fdcqdz",
    mixins: [tableMixin],
    components: {
      treeSelect
    },
    data () {
      return {
        form: {
          XZQDM: '',
          QSZT: '',
          ZL: '',
          QLR: '',
          DJLX: '',
          BDCQZH: '',
          BDCDYH: '',
          ZJH: '',
          currentPage: 1
        },
        // 表格数据
        tableData: {
          columns: [{
            label: '序号',
            type: 'index',
            width: '50',
            index: this.indexMethod,
          }].concat(data.columns()).concat([
            {
              label: "操作",
              width: 80,
              fixed: "right",
              render: (h, scope) => {
                return (
                  <div>
                    <el-button
                      type="text"
                      class='btnColor'
                      onClick={() => {
                        this.handleEdit(scope.row);
                      }}
                    >
                      详情
                    </el-button>
                  </div>
                );
              },
            },

          ]),
          data: []
        },
        // 分页
        pageData: {
          total: 0,
          pageSize: 15,
          current: 1,
        },
        diaData: null,
        bsmSjsb: ''
      }
    },
    methods: {
      // 是否显示下拉框
      isShowSelectOptions (e) {
        if (!e) this.$refs.selectmanyQL.blur()
        if (!e) this.$refs.selectmanyDJ.blur()
      },
      async featchData () {
        try {
          this.form = Object.assign(this.form, this.formData)
          let { result: { list, total, pages: pageSize, pageNum: current }
          } = await qltFwFdcqDz.getQltFwFdcqDzList(this.form)
          this.tableData.data = list
          this.pageData = {
            pageSize,
            current,
            total
          }
        } catch (error) {
          this.message = error
          // this.$refs.msg.messageShow()
        }
      },
      async handlDatadetails (index, row) {
        let { result: res, message } = await sjsbFunctionOper.getQltFwFdcqYzByCondition(row.BSM_SJSB)
        if (res != null) {
          this.diaData = res
          this.bsmSjsb = row.BSM_SJSB
          this.$store.dispatch('qltFwFdcqDz/setEdit'); this.$refs.editLog.isShow()
        } else {
          this.$message(message);
        }
      }
    }
  }
</script>