Blame view

src/views/ywbl/ywsq/components/selectLqqt.vue 8.79 KB
1 2 3
<!--
 * @Description:
 * @Autor: renchao
4
 * @LastEditTime: 2024-02-02 16:36:54
5 6 7 8 9 10
-->
<template>
  <div class="from-clues">
    <!-- 表单部分 林权转移变更注销 -->
    <div class="from-clues-header">
      <el-form :model="queryForm" ref="queryForm">
11 12 13 14
        <el-row :gutter="20">         
          <el-col :span="8">
            <el-form-item label="不动产单元号">
              <el-input placeholder="请输入不动产单元号" maxlength="28" v-model="queryForm.bdcdyh" clearable class="width100">
15 16 17
              </el-input>
            </el-form-item>
          </el-col>
18 19 20
          <el-col :span="8">
            <el-form-item label="不动产权证号">
              <el-input placeholder="请输入不动产权证号全部数字" v-model="queryForm.bdcqzh" clearable class="width100">
21 22 23
              </el-input>
            </el-form-item>
          </el-col>
24
          <el-col :span="8">
25
            <el-form-item label="坐落">
26
              <el-input placeholder="支持模糊查询" v-model.trim="queryForm.zl" clearable class="width100">
27 28 29
              </el-input>
            </el-form-item>
          </el-col>
30 31 32 33 34 35 36 37 38 39 40 41
          <el-col :span="8">
            <el-form-item label="权利人">
              <el-input placeholder="请输入权利人" v-model="queryForm.qlr" clearable class="width100">
              </el-input>
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="证件号码">
              <el-input placeholder="请输入证件号码" v-model="queryForm.zjh" clearable class="width100">
              </el-input>
            </el-form-item>
          </el-col>
42
          <el-col :span="8" class="btnColRight">
43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
            <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>
61 62
      <el-button type="primary" plain @click="submitForm" :loading="loading" v-if="sqywInfo.isworkFrame">添加单元</el-button>
      <el-button type="primary" plain @click="submitForm" :loading="loading" v-else>发起申请</el-button>
63 64 65 66 67 68 69
    </div>
  </div>
</template>
<script>
  //首次登记
  import jump from "./mixin/jump";
  import store from '@/store/index.js'
70
  import ywsqTable from "@/utils/mixin/ywsqTable";
71 72
  import { ywPopupDialog } from "@/utils/popup.js";
  import { selectLq } from "@/api/ywsq.js";
73
  import { startBusinessFlow, againAddSldy } from "@/api/workFlow.js";
74
  import { datas, sendThis } from "../javascript/selectQjlqxxQt.js";
75 76
  import { defaultParameters } from "../javascript/publicDefaultPar.js";
  export default {
77
    mixins: [ywsqTable, jump],
78 79 80 81 82 83 84 85 86 87 88 89 90
    props: {
      isJump: { type: Boolean, default: false },
      sqywInfo: { type: Object, default: () => { } },
    },
    data () {
      return {
        loading: false,
        queryForm: defaultParameters.defaultParameters(),
        tableData: {
          total: 0,
          columns: datas.columns(),
          data: [],
        },
91
        bdcdysz: [],
92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119
      };
    },
    mounted () {
      sendThis(this);
    },
    methods: {
      /**
       * @description: queryClick
       * @author: renchao
       */
      queryClick () {
        this.$startLoading();
        this.queryForm.sqywbm = this.sqywInfo.djywbm;
        selectLq({ ...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;
          }
        });
      },

      /**
       * @description: submitForm
       * @author: renchao
       */
      submitForm () {
120
        let that = this
121 122 123 124 125
        if (this.bdcdysz.length == 0) {
          this.$alert("请至少选择一条数据");
          return;
        }
        this.loading = true
126 127 128 129 130 131 132 133 134 135 136 137 138 139
        if (this.sqywInfo.isworkFrame) {
          store.dispatch('user/reMenuRefresh', false)
          againAddSldy({
            bsmSqyw: that.sqywInfo.bsmSqyw,
            bdcdysz: that.bdcdysz,
            bsmSlsq: that.sqywInfo.bsmSlsq,
          }).then(res => {
            that.loading = false
            if (res.code == 200) {
              if (this.sqywInfo.sqywdylx != "1") {
                that.bdcdysz = []
                that.$refs.table.clearSelection()
              }
              store.dispatch('user/reMenuRefresh', true)
140
              that.queryClick()
141 142 143 144 145
              that.$message({
                showClose: true,
                message: '添加成功',
                type: 'success'
              })
146 147
            } else {
              that.$message.error(res.message);
148
            }
149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169
          }).catch(() => {
            that.loading = false
          })
        } else {
          startBusinessFlow({
            bsmSqyw: that.sqywInfo.bsmSqyw,
            bdcdysz: that.bdcdysz,
          }).then((res) => {
            that.loading = false
            if (res.code == 200) {
              that.$message({
                showClose: true,
                message: "发起申请成功",
                type: "success",
              });
              if (!that.isJump) {
                that.jump(res.result, that.djywbm);
              } else {
                store.dispatch('user/refreshPage', true);
              }
              that.$popupCacel()
170
            } else {
171 172 173 174 175
              if (res.result && res.result.length > 0) {
                ywPopupDialog("申请错误明细", "components/ywdialog", { result: res.result }, '36%', true)
              } else {
                ywPopupDialog("申请错误明细", "components/ywdialog", { message: res.message }, '36%', true)
              }
176
            }
177 178 179 180
          }).catch(() => {
            that.loading = false
          })
        }
181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271
      },
      /**
       * @description: handleSelectionChange
       * @param {*} val
       * @author: renchao
       */
      handleSelectionChange (val) {
        val.forEach((item, index) => {
          item.bsm = item.zdbsm;
        });
        if (this.sqywInfo.sqywdylx == "1") {
          if (val.length > 1) {
            this.bdcdysz = [...val[val.length - 1]];
          } else {
            this.bdcdysz = val;
          }
        } else {
          this.bdcdysz = val;
        }
      },
      /**
       * @description: select
       * @param {*} selection
       * @param {*} row
       * @author: renchao
       */
      select (selection, row) {
        if (this.sqywInfo.sqywdylx == "1") {
          // 清除 所有勾选项
          this.$refs.table.clearSelection()
          // 当表格数据都没有被勾选的时候 就返回
          // 主要用于将当前勾选的表格状态清除
          if (selection.length == 0) return
          this.$refs.table.toggleRowSelection(row, true);
        }
      },

      /**
       * @description: handleRowClick
       * @param {*} row
       * @author: renchao
       */
      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);
        }
      },
      /**
       * @description: openBook
       * @param {*} row
       * @author: renchao
       */
      openBook (row) {
        var param = {
          bdcdyid: row.bdcdyid,
          qllx: row.qllx,
          bdcdyh: row.bdcdyh,
          bsmQlxx: row.bsmQlxx,
        };
        this.$popup("登记簿详情", "registerBook/djbFrame", {
          formData: param
        })
      },

    },
  };
</script>
<style scoped lang="scss">
  @import "~@/styles/mixin.scss";
  @import "~@/styles/public.scss";
</style>