structure.vue 5.54 KB
<template>
  <div class="structure itemForm">
    <el-form :model="ruleForm" :rules="rules" ref="formList" label-width="115px" :key="key">
      <el-row>
        <el-col :span="8">
          <el-form-item>
            <span slot="label">
              标识码: <br />
              <p class="label-detail">(BSM)</p>
            </span>
            <p :class="{ 'disabled': $store.state.business.Edit }">
              {{ ruleForm.BSM }}
            </p>
          </el-form-item>
        </el-col>

        <el-col :span="8">
          <el-form-item prop="YSDM">
            <span slot="label">
              要素代码: <br />
              <p class="label-detail">(YSDM)</p>
            </span>
            <el-input :disabled="$store.state.business.Edit" v-model="ruleForm.YSDM" placeholder="要素代码"></el-input>
          </el-form-item>
        </el-col>

        <el-col :span="8">
          <el-form-item prop="BDCDYH">
            <span slot="label">
              不动产单元号: <br />
              <p class="label-detail">(BDCDYH)</p>
            </span>
            <el-input :disabled="$store.state.business.Edit" v-model="ruleForm.BDCDYH" placeholder="不动产单元号"></el-input>
          </el-form-item>
        </el-col>
      </el-row>

      <el-row>
        <el-col :span="8">
          <el-form-item prop="ZDZHDM">
            <span slot="label">
              宗地/宗海代码: <br />
              <p class="label-detail">(ZDZHDM)</p>
            </span>
            <el-input :disabled="$store.state.business.Edit" v-model="ruleForm.ZDZHDM" placeholder="宗地/宗海代码"></el-input>
          </el-form-item>
        </el-col>

        <el-col :span="8">
          <el-form-item prop="GZWMC">
            <span slot="label">
              构筑物名称: <br />
              <p class="label-detail">(GZWMC)</p>
            </span>
            <el-input :disabled="$store.state.business.Edit" v-model="ruleForm.GZWMC" placeholder="构筑物名称"></el-input>
          </el-form-item>
        </el-col>

        <el-col :span="8">
          <el-form-item prop="ZL">
            <span slot="label">
              坐落: <br />
              <p class="label-detail">(ZL)</p>
            </span>
            <el-input :disabled="$store.state.business.Edit" v-model="ruleForm.ZL" placeholder="坐落"></el-input>
          </el-form-item>
        </el-col>
      </el-row>

      <el-row>
        <el-col :span="8">
          <el-form-item prop="MJDW">
            <span slot="label">
              面积单位: <br />
              <p class="label-detail">(MJDW)</p>
            </span>
            <el-select :disabled="$store.state.business.Edit" v-model="ruleForm.MJDW" placeholder="面积单位">
              <el-option v-for="item in dicData['A7']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
              </el-option>
            </el-select>
          </el-form-item>
        </el-col>

        <el-col :span="8">
          <el-form-item prop="MJ" :rules="{ type: 'number' }">
            <span slot="label">
              面积: <br />
              <p class="label-detail">(MJ)</p>
            </span>
            <el-input :disabled="$store.state.business.Edit" v-model.number="ruleForm.MJ" type="number"
              v-only-number="{ max: 999999999999999, min: 0, precision: 4 }" placeholder="面积"></el-input>
          </el-form-item>
        </el-col>

        <el-col :span="8">
          <el-form-item prop="DAH">
            <span slot="label">
              档案号: <br />
              <p class="label-detail">(DAH)</p>
            </span>
            <el-input :disabled="$store.state.business.Edit" v-model="ruleForm.DAH" placeholder="档案号"></el-input>
          </el-form-item>
        </el-col>
      </el-row>

      <el-row>
        <el-col :span="8">
          <el-form-item prop="ZT">
            <span slot="label">
              状态: <br />
              <p class="label-detail">(ZT)</p>
            </span>
            <el-select :disabled="$store.state.business.Edit" v-model="ruleForm.ZT" placeholder="请选择">
              <el-option v-for="item in ZTOptions" :key="item.value" :label="item.label" :value="item.value">
              </el-option>
            </el-select>
          </el-form-item>
        </el-col>
      </el-row>
    </el-form>
    <message-tips ref="msg" />
  </div>
</template>
<script>
// 构筑物
import business from '@/api/business'
import ruleMixin from '@/mixins/ruleMixin.js'
export default {
  mixins: [ruleMixin],
  props: {
    bsmSjsb: {
      type: String,
      default: ''
    },
    dataTable: {
      type: String,
      default: ''
    }
  },
  data () {
    return {
      ZTOptions: [],
      ruleForm: {
        BSM: '',
        YSDM: '',
        BDCDYH: '',
        ZDZHDM: '',
        GZWMC: '',
        ZL: '',
        MJDW: '',
        MJ: '',
        DAH: '',
        ZT: ''
      }
    }
  },
  methods: {
    async featchData () {
      try {
        let { result: res } = await business.getKttGzwById(this.bsmSjsb)
        this.ruleForm = res
        this.featchRule()
      } catch (error) {
        this.$refs.msg.messageShow()
      }
    },
    handleUpdateForm () {
      return new Promise(async (resolve) => {
        try {
          let res = await business.updateKttGzw(this.ruleForm)
          // this.$refs['formList'].resetFields();
          resolve(res.code)
        } catch (error) {
          this.$refs.msg.messageShow()
        }
      })
    }
  }
}
</script>
<style scoped lang="scss">
@import "./css/itemForm.scss";
</style>