Blame view

src/views/ywbl/slsqxx/tdsyq/slxx.vue 17.2 KB
1
<!--
2
 * @Description:
3
 * @Autor: renchao
4
 * @LastEditTime: 2023-08-04 16:47:29
5 6 7 8
-->
<template>
  <!-- 受理信息 -->
  <div class="slxx">
xiaomiao committed
9 10 11 12 13 14 15
    <el-form
      :model="ruleForm"
      :rules="rules"
      class="loadingtext"
      ref="ruleForm"
      :label-position="flag ? 'top' : ''"
      :inline="flag"
16
      label-width="120px">
17 18 19 20 21 22 23
      <div class="slxx_con" v-if="isShow" :class="flag ? 'formMarginBot0' : ''">
        <div class="slxx_title title-block">
          受理信息
          <div class="triangle"></div>
        </div>
        <el-row :gutter="10">
          <el-col :span="8">
xiaomiao committed
24
            <el-form-item label="业务号:">
25 26 27 28 29
              <el-input disabled v-model="ruleForm.flow.ywh"></el-input>
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="受理人员:">
tianhaohao@pashanhoo.com committed
30
              <el-input disabled v-model="ruleForm.slsq.slry"></el-input>
31 32 33 34
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="受理时间:">
tianhaohao@pashanhoo.com committed
35
              <el-input disabled v-model="ruleForm.slsq.slsj"></el-input>
36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
            </el-form-item>
          </el-col>
        </el-row>
        <el-row :gutter="10">
          <el-col :span="8">
            <el-form-item label="权利类型:">
              <el-input disabled v-model="ruleForm.sldy.qllxmc"></el-input>
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="登记类型:">
              <el-input disabled v-model="ruleForm.sldy.djlxmc"></el-input>
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="登记情形:">
tianhaohao@pashanhoo.com committed
52
              <el-input disabled v-model="ruleForm.slsq.djqxmc"></el-input>
53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83
            </el-form-item>
          </el-col>
        </el-row>
        <div class="slxx_title title-block">
          不动产单元情况
          <div class="triangle"></div>
        </div>
        <el-row :gutter="10">
          <el-col :span="8">
            <el-form-item label="宗地代码:">
              <el-input disabled v-model="ruleForm.zdjbxx.zddm"></el-input>
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="不动产单元号:">
              <el-input disabled v-model="ruleForm.zdjbxx.bdcdyh"></el-input>
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="权利性质:">
              <el-input disabled v-model="ruleForm.zdjbxx.qlxzmc"></el-input>
            </el-form-item>
          </el-col>
        </el-row>
        <el-row :gutter="10">
          <el-col :span="8">
            <el-form-item label="宗地面积:">
              <el-input disabled v-model="ruleForm.zdjbxx.zdmj"></el-input>
            </el-form-item>
          </el-col>
          <el-col :span="8">
84 85
            <el-form-item label="权利设定方式:">
              <el-input disabled v-model="ruleForm.zdjbxx.qlsdfsmc"></el-input>
86 87 88 89 90
            </el-form-item>
          </el-col>
        </el-row>
        <el-row :gutter="10">
          <el-col :span="8">
91
            <el-form-item label="农用地面积:">
92
              <div class="flex">
xiaomiao committed
93 94 95
                <el-input
                  v-model="ruleForm.tdsyq.nydmj"
                  :disabled="!ableOperation"
xiaomiao committed
96
                  oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input>
xiaomiao committed
97 98 99
                <el-select
                  v-model="mjdw"
                  :disabled="!ableOperation"
100
                  style="width: 20%">
xiaomiao committed
101 102 103 104
                  <el-option
                    v-for="item in dictData['A7']"
                    :key="item.dcode"
                    :label="item.dname"
105
                    :value="item.dcode">
106 107 108
                  </el-option>
                </el-select>
              </div>
109 110
            </el-form-item>
          </el-col>
111 112
          <el-col :span="8">
            <el-form-item label="耕地面积:">
113
              <div class="flex">
xiaomiao committed
114 115 116
                <el-input
                  v-model="ruleForm.tdsyq.gdmj"
                  :disabled="!ableOperation"
xiaomiao committed
117
                  oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input>
xiaomiao committed
118 119 120
                <el-select
                  v-model="mjdw"
                  :disabled="!ableOperation"
121
                  style="width: 20%">
xiaomiao committed
122 123 124 125
                  <el-option
                    v-for="item in dictData['A7']"
                    :key="item.dcode"
                    :label="item.dname"
126
                    :value="item.dcode">
127 128 129
                  </el-option>
                </el-select>
              </div>
130 131 132 133
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="林地面积:">
134
              <div class="flex">
xiaomiao committed
135 136 137
                <el-input
                  v-model="ruleForm.tdsyq.ldmj"
                  :disabled="!ableOperation"
xiaomiao committed
138
                  oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input>
xiaomiao committed
139 140 141
                <el-select
                  v-model="mjdw"
                  :disabled="!ableOperation"
142
                  style="width: 20%">
xiaomiao committed
143 144 145 146
                  <el-option
                    v-for="item in dictData['A7']"
                    :key="item.dcode"
                    :label="item.dname"
147
                    :value="item.dcode">
148 149 150
                  </el-option>
                </el-select>
              </div>
151 152 153
            </el-form-item>
          </el-col>
        </el-row>
154
        <el-row :gutter="10">
155
          <el-col :span="8">
156
            <el-form-item label="草地面积:">
157
              <div class="flex">
xiaomiao committed
158 159 160
                <el-input
                  v-model="ruleForm.tdsyq.cdmj"
                  :disabled="!ableOperation"
xiaomiao committed
161
                  oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input>
xiaomiao committed
162 163 164
                <el-select
                  v-model="mjdw"
                  :disabled="!ableOperation"
165
                  style="width: 20%">
xiaomiao committed
166 167 168 169
                  <el-option
                    v-for="item in dictData['A7']"
                    :key="item.dcode"
                    :label="item.dname"
170
                    :value="item.dcode">
171 172 173
                  </el-option>
                </el-select>
              </div>
174 175
            </el-form-item>
          </el-col>
176 177
          <el-col :span="8">
            <el-form-item label="其他农用地面积:">
178
              <div class="flex">
xiaomiao committed
179 180 181
                <el-input
                  v-model="ruleForm.tdsyq.qtnydmj"
                  :disabled="!ableOperation"
xiaomiao committed
182
                  oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input>
xiaomiao committed
183 184 185
                <el-select
                  v-model="mjdw"
                  :disabled="!ableOperation"
186
                  style="width: 20%">
xiaomiao committed
187 188 189 190
                  <el-option
                    v-for="item in dictData['A7']"
                    :key="item.dcode"
                    :label="item.dname"
191
                    :value="item.dcode">
192 193 194
                  </el-option>
                </el-select>
              </div>
195 196
            </el-form-item>
          </el-col>
197 198
          <el-col :span="8">
            <el-form-item label="建筑使用面积:">
199
              <div class="flex">
xiaomiao committed
200 201 202
                <el-input
                  v-model="ruleForm.tdsyq.jsydmj"
                  :disabled="!ableOperation"
xiaomiao committed
203
                  oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input>
xiaomiao committed
204 205 206
                <el-select
                  v-model="mjdw"
                  :disabled="!ableOperation"
207
                  style="width: 20%">
xiaomiao committed
208 209 210 211
                  <el-option
                    v-for="item in dictData['A7']"
                    :key="item.dcode"
                    :label="item.dname"
212
                    :value="item.dcode">
213 214 215
                  </el-option>
                </el-select>
              </div>
216 217
            </el-form-item>
          </el-col>
218 219 220 221
        </el-row>
        <el-row :gutter="10">
          <el-col :span="8">
            <el-form-item label="未利用地面积:">
222
              <div class="flex">
xiaomiao committed
223 224 225
                <el-input
                  v-model="ruleForm.tdsyq.wlydmj"
                  :disabled="!ableOperation"
xiaomiao committed
226
                  oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input>
xiaomiao committed
227 228 229
                <el-select
                  v-model="mjdw"
                  :disabled="!ableOperation"
230
                  style="width: 20%">
xiaomiao committed
231 232 233 234
                  <el-option
                    v-for="item in dictData['A7']"
                    :key="item.dcode"
                    :label="item.dname"
235
                    :value="item.dcode">
236 237 238
                  </el-option>
                </el-select>
              </div>
239 240
            </el-form-item>
          </el-col>
241
        </el-row>
242
        <div class="slxx_title title-block">
xiaomiao committed
243 244 245 246 247
          土地用途
          <div class="triangle"></div>
        </div>
        <tdytTable
          :tableData="ruleForm.tdytqxList"
xiaomiao committed
248
          :ableOperation="ableOperation"
249
          @upDateTdytxxList="upDateTdytxxList" />
250 251 252 253 254 255 256
        <div class="slxx_title title-block">
          权利人信息
          <div class="triangle"></div>
        </div>
        <el-row :gutter="10">
          <el-col :span="12">
            <el-form-item label="共有方式:">
xiaomiao committed
257 258
              <el-radio-group
                :disabled="!ableOperation"
259
                v-model="ruleForm.sldy.gyfs">
260 261 262 263 264 265 266
                <el-radio label="0">单独所有</el-radio>
                <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>
267
          <el-col :span="6" v-show="ruleForm.sldy.gyfs != '0'">
268
            <el-form-item label="是否分别持证:">
xiaomiao committed
269 270
              <el-radio-group
                v-model="ruleForm.sldy.sqfbcz"
271
                :disabled="!ableOperation">
xiaomiao committed
272 273
                <el-radio :label="1"></el-radio>
                <el-radio :label="0"></el-radio>
274 275 276
              </el-radio-group>
            </el-form-item>
          </el-col>
xiaomiao committed
277 278
          <el-col
            :span="6"
279
            v-show="ruleForm.sldy.sqfbcz == '0' && ruleForm.sldy.gyfs != '0'">
280
            <el-form-item label="持证人:">
xiaomiao committed
281 282 283
              <el-select
                v-model="ruleForm.czr"
                placeholder="持证人"
284
                :disabled="!ableOperation">
xiaomiao committed
285 286 287 288
                <el-option
                  v-for="item in czrOptions"
                  :key="item.zjh"
                  :label="item.sqrmc"
289
                  :value="item.zjh">
290 291 292 293 294
                </el-option>
              </el-select>
            </el-form-item>
          </el-col>
        </el-row>
xiaomiao committed
295 296 297 298 299
        <qlrCommonTable
          :tableData="ruleForm.qlrList"
          :disabled="!ableOperation"
          @upDateQlrxxList="upDateQlrxxList"
          :key="key"
300
          :gyfs="ruleForm.sldy.gyfs" />
301 302 303 304 305 306

        <div v-if="ruleForm.ywrList && ruleForm.ywrList.length > 0">
          <div class="slxx_title title-block">
            义务人信息
            <div class="triangle"></div>
          </div>
xiaomiao committed
307 308 309 310 311
          <qlrCommonTable
            v-if="ruleForm.ywrList"
            :disabled="!ableOperation"
            :tableData="ruleForm.ywrList"
            :key="key"
312
            @upDateQlrxxList="upDateYwrxxList" />
313 314 315 316 317 318 319 320 321
        </div>

        <div class="slxx_title title-block">
          登记原因
          <div class="triangle"></div>
        </div>
        <el-row :gutter="10">
          <el-col>
            <el-form-item label="登记原因:" prop="djyy">
xiaomiao committed
322 323 324 325
              <el-input
                class="textArea"
                type="textarea"
                :disabled="!ableOperation"
326
                v-model="ruleForm.tdsyq.djyy">
327 328 329 330 331
              </el-input>
            </el-form-item>
          </el-col>
        </el-row>
      </div>
332
      <el-row class="btn" v-if="ableOperation">
333 334 335 336 337 338 339 340
        <el-form-item>
          <el-button type="primary" @click="onSubmit">保存</el-button>
        </el-form-item>
      </el-row>
    </el-form>
  </div>
</template>
<script>
341
  import { mapGetters } from "vuex";
342
  import ywmix from "@/views/ywbl/mixin/index"
343 344 345 346
  import { Init, saveData } from "@/api/workflow/tdsyqFlow.js";
  import tdytTable from "@/views/workflow/components/tdytTable";
  import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
  export default {
347
    mixins: [ywmix],
348 349 350 351 352 353 354 355 356 357 358 359 360
    components: { qlrCommonTable, tdytTable },
    mounted () {
      this.ableOperation = this.$parent.currentSelectTab.ableOperation;
      this.propsParam = this.$attrs;
      var formdata = new FormData();
      let that = this;
      this.$startLoading();
      formdata.append("bsmSldy", this.propsParam.bsmSldy);
      formdata.append("djlx", this.propsParam.djlx);
      formdata.append("isEdit", this.ableOperation);
      Init(formdata).then((res) => {
        this.$nextTick(() => {
          that.ruleForm = res.result;
361 362 363 364 365
          this.ruleForm.qlrList.forEach((item, index) => {
            if (item.sfczr == 1) {
              this.ruleForm.czr = item.zjh
            }
          })
366 367 368 369
          that.$endLoading();
          that.isShow = true;
          this.czrOptions = this.ruleForm.qlrList;
        });
xiaomiao committed
370 371
      });
    },
372 373 374

    computed: {
      ...mapGetters(["dictData", "flag"]),
xiaomiao committed
375
    },
376 377 378 379 380 381 382 383 384 385 386 387
    data () {
      return {
        mjdw: "1",
        value2: {
          id: "520000198407304275",
          user: "史平",
        },
        props: {
          label: "user",
          value: "id",
          keyword: "keyword",
        },
xiaomiao committed
388

389 390 391 392 393 394 395 396 397 398 399 400 401 402
        //表单是否可操作
        ableOperation: true,
        key: 0,
        isShow: false,
        disabled: true,
        czrOptions: [],
        ruleForm: {},
        //传递参数
        propsParam: {},
        rules: {},
      };
    },
    methods: {
      // 更新土地用途信息
yuanbo committed
403 404 405 406 407
      /**
       * @description: 更新土地用途信息
       * @param {*} val
       * @author: renchao
       */
408 409 410 411 412
      upDateTdytxxList (val) {
        this.ruleForm.tdytqxList && (this.ruleForm.tdytqxList = _.cloneDeep(val));
        this.key++;
      },
      // 更新权利人信息
yuanbo committed
413 414 415 416 417
      /**
       * @description: 更新权利人信息
       * @param {*} val
       * @author: renchao
       */
418 419 420 421 422 423
      upDateQlrxxList (val) {
        this.ruleForm.qlrList && (this.ruleForm.qlrList = _.cloneDeep(val));
        this.czrOptions = this.ruleForm.qlrList;
        this.key++;
      },
      // 更新义务人信息
yuanbo committed
424 425 426 427 428
      /**
       * @description: 更新义务人信息
       * @param {*} val
       * @author: renchao
       */
429 430 431 432
      upDateYwrxxList (val) {
        this.ruleForm.ywrList && (this.ruleForm.ywrList = _.cloneDeep(val));
        this.key++;
      },
yuanbo committed
433 434 435 436
      /**
       * @description: onSubmit
       * @author: renchao
       */
437
      onSubmit () {
438
        let that = this
439 440 441 442 443 444 445 446 447
        let arr = this.ruleForm.tdytqxList.filter(item => !item.yt)
        if (arr.length > 0) {
          this.$message({
            showClose: true,
            message: "土地用途不能为空",
            type: "error",
          });
          return false;
        }
448
        if (this.ruleForm.qlrList.length == 0) {
449 450
          this.$message({
            showClose: true,
451
            message: "请确认权利人信息",
452 453 454 455
            type: "error",
          });
          return false;
        }
456 457 458 459 460 461 462 463 464 465 466

        if (this.ruleForm.sldy.gyfs == "0") {
          if (this.ruleForm.qlrList.length > 1) {
            this.$message({
              showClose: true,
              message: "共有方式:单独所有,权利人只能是一个人",
              type: "error",
            });
            return false;
          }
          this.ruleForm.qlrList[0].sfczr = "1";
467
        } else {
468 469 470 471 472 473 474 475
          if (this.ruleForm.qlrList.length <= 1) {
            this.$message({
              showClose: true,
              message: "共有方式:共同所有,按份所有,其他所有,权利人必须是两个以上",
              type: "error",
            });
            return false;
          }
476 477 478 479 480 481 482
          //是否分别持证
          if (this.ruleForm.sldy.sqfbcz == "1") {
            //是
            this.ruleForm.qlrList.forEach((item, index) => {
              item.sfczr = "1";
            });
          } else {
483 484 485 486 487 488 489 490
            if (!that.ruleForm.czr) {
              that.$message({
                showClose: true,
                message: "请选择持证人",
                type: "error",
              });
              return false;
            }
491 492 493 494 495 496 497 498
            this.ruleForm.qlrList.forEach((item, index) => {
              if (item.zjh == this.ruleForm.czr) {
                item.sfczr = "1";
              } else {
                item.sfczr = "0";
              }
            });
          }
xiaomiao committed
499
        }
500 501 502 503
        /**
         * @description: saveData
         * @author: renchao
         */
504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520
        saveData(this.ruleForm).then((res) => {
          if (res.code === 200) {
            this.$message({
              showClose: true,
              message: "保存成功!",
              type: "success",
            });
            this.$store.dispatch("user/refreshPage", true);
          } else {
            this.$message({
              showClose: true,
              message: res.message,
              type: "error",
            });
          }
        });
      },
xiaomiao committed
521
    },
522
  };
523
</script>
xiaomiao committed
524
<style scoped lang="scss">
525 526
  @import "~@/styles/public.scss";
  @import "~@/styles/slxx/slxx.scss";
527
</style>