<template> <div class="from-clues"> <!-- 表单部分 国有建设用地使用权 --> <div class="from-clues-header"> <el-form :model="queryForm" ref="queryForm"> <el-row> <el-col :span="7"> <el-form-item label="宗地代码"> <el-input placeholder="请输入宗地代码" maxlength="19" v-model="queryForm.zddm" clearable class="width100"> </el-input> </el-form-item> </el-col> <el-col :span="7"> <el-form-item label="不动产单元号"> <el-input placeholder="请输入不动产单元号" maxlength="28" v-model="queryForm.bdcdyh" clearable class="width100"> </el-input> </el-form-item> </el-col> <el-col :span="6"> <el-form-item label="坐落"> <el-input placeholder="请输入坐落" v-model.trim="queryForm.zl" clearable class="width100"> </el-input> </el-form-item> </el-col> <el-col :span="4" class="btnColRight"> <el-form-item> <el-button type="primary" @click="resetForm(true)">重置</el-button> <el-button type="primary" @click="handleSearch">查询</el-button> </el-form-item> </el-col> </el-row> </el-form> </div> <!-- 表格 --> <div class="from-clues-content loadingtext"> <lb-table ref="table" @row-click="handleRowClick" :page-size="pageData.pageSize" :calcHeight="300" :current-page.sync="pageData.currentPage" :total="tableData.total" @size-change="handleSizeChange" @select="select" @p-current-change="handleCurrentChange" @selection-change="handleSelectionChange" :column="tableData.columns" :data="tableData.data"> </lb-table> </div> <div class="submit_button"> <el-button @click="$popupCacel">取消</el-button> <el-button type="primary" plain @click="submitForm">发起申请</el-button> </div> </div> </template> <script> //首次登记 import jump from "./mixin/jump"; import store from '@/store/index.js' import table from "@/utils/mixin/table"; import { ywPopupDialog } from "@/utils/popup.js"; import { startBusinessFlow, selectZdjbxx } from "@/api/ywbl.js"; import { datas, sendThis } from "../javascript/selectQjzdjbxx.js"; import { defaultParameters } from "../javascript/publicDefaultPar.js"; export default { mixins: [table, jump], props: { isJump: { type: Boolean, default: false }, sqywInfo: { type: Object, default: () => { } }, }, data () { return { queryForm: defaultParameters.defaultParameters(), tableData: { total: 0, columns: datas.columns(), data: [], }, bdcdysz: [], bsmSqyw: this.sqywInfo.nodetype === "djlx" ? this.sqywInfo.bsmSqyw : this.sqywInfo.parentid, }; }, mounted () { sendThis(this); }, methods: { queryClick () { this.$startLoading(); this.queryForm.sqywbm = this.sqywInfo.djywbm; selectZdjbxx({ ...this.queryForm, ...this.pageData }).then((res) => { this.$endLoading(); if (res.code === 200) { let { total, records } = res.result; this.tableData.total = total; this.tableData.data = records; } }); }, submitForm () { if (this.bdcdysz.length == 0) { this.$alert("请至少选择一条数据"); return; } startBusinessFlow({ bsmSqyw: this.bsmSqyw, bdcdysz: this.bdcdysz, djqxbm: this.sqywInfo.nodetype == "djqx" ? this.sqywInfo.nodecode : "", djqxmc: this.sqywInfo.nodetype == "djqx" ? this.sqywInfo.nodename : "", }).then((res) => { if (res.code == 200) { this.$message({ showClose: true, message: "发起申请成功", type: "success", }); if (!this.isJump) { this.jump(res.result, this.djywbm); } else { store.dispatch('user/refreshPage', true); } this.$popupCacel() } else { ywPopupDialog("状态", "components/ywdialog", { message: res.message, result: res.result }, '36%') } }) }, handleSelectionChange (val) { val.forEach((item, index) => { item.bsm = item.zdbsm; }); this.bdcdysz = val; }, select (selection, row) { if (this.sqywInfo.sqywdylx == "1") { // 清除 所有勾选项 this.$refs.table.clearSelection() // 当表格数据都没有被勾选的时候 就返回 // 主要用于将当前勾选的表格状态清除 if (selection.length == 0) return this.$refs.table.toggleRowSelection(row, true); } }, handleRowClick (row) { // 如果状态是1,那就是单选 if (this.sqywInfo.sqywdylx == "1") { const bdcdysz = this.bdcdysz this.$refs.table.clearSelection() if (bdcdysz.length == 1) { bdcdysz.forEach(item => { // 判断 如果当前的一行被勾选, 再次点击的时候就会取消选中 if (item == row) { this.$refs.table.toggleRowSelection(row, false); } // 不然就让当前的一行勾选 else { this.$refs.table.toggleRowSelection(row, true); } }) } else { this.$refs.table.toggleRowSelection(row, true); } } else { this.$refs.table.toggleRowSelection(row); } }, }, }; </script> <style scoped lang="scss"> @import "~@/styles/mixin.scss"; @import "~@/styles/public.scss"; </style>