qjhTable.vue 2.72 KB
<!--
 * @Description:
 * @Autor: renchao
 * @LastEditTime: 2023-07-17 13:50:53
-->
<template>
  <lb-table :column="column" :maxHeight="200" :heightNumSetting="true" :pagination="false" :key="key" :data="tableData">
  </lb-table>
</template>
<script>
  import addQlr from './dialog/addQlr.vue'
  import { mapGetters } from 'vuex'
  export default {
    components: {
      addQlr
    },
    computed: {
      ...mapGetters(["dictData"]),
    },
    props: {
      tableData: {
        type: Array,
        default: function () {
          return []
        }
      },
      gyfs: {
        type: String,
        default: '1'
      }
    },
    data () {
      return {
        key: 0,
        dataIndex: 0,
        dialog: false,
        details: {},
        tableDataList: [],
        qlrCommonTable: [
          {
            label: '序号',
            type: 'index',
            width: '50',
            render: (h, scope) => {
              return (
                <div>
                  {scope.$index + 1}
                </div>
              )
            }
          },
          //  {
          //   prop: "bdcdyh",
          //   label: "不动产单元号"
          // },
          {
            prop: "zl",
            label: "坐落"
          },
          {
            prop: "shbw",
            label: "室号部位"
          },
          {
            prop: "fwxzmc",
            label: "房屋性质"
          },
          {
            prop: "jzmj",
            label: "建筑面积"
          },
          {
            prop: "showfwyt",
            label: "房屋用途"
          },
          {
            prop: "showfwjg",
            label: "房屋结构"
          },
        ],
        column: this.qlrCommonTable
      }
    },
    watch: {
      tableData: {
        handler: function (val, oldVal) {
          let that = this;
          if (val.length == 0 || !val) {
          } else {
            that.tableDataList = _.cloneDeep(val)
          }
        },
        immediate: true,
        deep: true
      },
      gyfs: {
        handler (newVal, oldValue) {
          let dataList = _.cloneDeep(this.qlrCommonTable)
          if (newVal == '1') {
            this.column = _.cloneDeep(dataList).slice(1, dataList.length)
          } else if ((newVal == '2')) {
            this.column = dataList
          } else {
            this.column = _.cloneDeep(dataList)
            this.column.splice(
              2, 0, {
              prop: "qlbl",
              label: "份数"
            })
          }
        },
        immediate: true
      }
    },
    methods: {
    }
  }
</script>
<style scoped lang="scss">
  /deep/.el-table th {
    height: 30px !important;
  }
  /deep/.el-table--small .el-table__cell {
    padding: 5px;
  }
</style>