gyjsydsyq.vue 4.28 KB
<template>
  <div>
    <dialogBox title="查询权利信息" @submitForm="submitForm" saveButton="发起申请" width="85%" @closeDialog="closeDialog"
      v-model="value">
      <div class="from-clues">
        <!-- 表单部分 -->
        <div class="from-clues-header">
          <el-form :model="queryForm" ref="queryForm" label-width="100px">
            <el-row>
              <el-col :span="5">
                <el-form-item label="权利类型">
                  <el-select v-model="queryForm.qllx" filterable clearable placeholder="请选择权利类型">
                    <el-option v-for="item in qllxs" :key="item.value" :label="item.label" :value="item.value">
                    </el-option>
                  </el-select>
                </el-form-item>
              </el-col>
              <el-col :span="6">
                <el-form-item label="不动产单元号">
                  <el-input placeholder="请输入不动产单元号" v-model="queryForm.bdcdyh" clearable class="width200px">
                  </el-input>
                </el-form-item>
              </el-col>
              <el-col :span="5">
                <el-form-item label="业务号">
                  <el-input placeholder="请输入业务号" v-model="queryForm.ywh" clearable class="width200px">
                  </el-input>
                </el-form-item>
              </el-col>
              <el-col :span="6">
                <el-form-item label="不动产权证号">
                  <el-input placeholder="请输入不动产权证号" v-model="queryForm.bdcqzh" clearable class="width200px">
                  </el-input>
                </el-form-item>
              </el-col>
              <el-col :span="2" class="btnCol">
                <el-form-item>
                  <el-button type="primary" @click="queryClick()">查询</el-button>
                </el-form-item>
              </el-col>
            </el-row>
          </el-form>
        </div>
        <!-- 表格 -->
        <div class="from-clues-content">
          <lb-table :page-size="pageData.pageSize" heightNumSetting :current-page.sync="pageData.currentPage"
            :total="tableData.total" @size-change="handleSizeChange" @p-current-change="handleCurrentChange"
            @selection-change="handleSelectionChange" :column="tableData.columns" :data="tableData.data">
          </lb-table>
        </div>
      </div>
    </dialogBox>
  </div>
</template>
<script>
import { datas, sendThis } from "./gyjsydsyqdata.js";
import table from "@/utils/mixin/table";
import { selectBdcdy, startBusinessFlow } from "@/api/ywbl.js";
export default {
  props: {
    value: { type: Boolean, default: false },
    bsmSqyw: { type: String, default: '' },
  },
  mixins: [table],
  data () {
    return {
      appliDialog: false,
      queryForm: {
        qllx: "",
        bdcdyh: "",
        ywh: "",
        bdcqzh: "",
        sqywbm: "A03100",
      },
      qllxs: [],
      tableData: {
        total: 0,
        columns: datas.columns(),
        data: [],
      },
      bdcdyid: '',
      bdcdyh: '',
    };
  },
  mounted () {
    sendThis(this);
  },
  watch: {
    value () {
      this.fetchData()
    },
  },
  methods: {
    fetchData () {
      if (this.value) {
        selectBdcdy({ ...this.queryForm, ...this.pageData })
          .then((res) => {
            if (res.code === 200) {
              let { total, records } = res.result;
              this.tableData.total = total;
              this.tableData.data = records;
            }
          })
      }
    },
    submitForm () {
      if (this.bdcdyid == '') {
        this.$message.error('请至少选择一条数据');
        return
      }
      startBusinessFlow({
        bsmSqyw: this.bsmSqyw,
        bdcdyid: this.bdcdyid,
        bdcdyh: this.bdcdyh
      }).then(res => {
        this.$emit('input', false)
        const { href } = this.$router.resolve('/fqsq?bsmSqyw=' + this.bsmSqyw)
        window.open(href, '_blank');
      })
    },

    closeDialog () {
      this.$emit("input", false);
    },
    handleSelectionChange (val) {
      this.bdcdyid = val.map(item => item.dyhbsm ? item.dyhbsm : '').join(',')
      this.bdcdyh = val.map(item => item.bdcdyh ? item.bdcdyh : '').join(',')
    }
  },
};
</script>
<style scoped lang="scss">
@import "~@/styles/mixin.scss";
@import "~@/styles/public.scss";
</style>