Blame view

src/views/workflow/components/sqrViewTable.vue 3.93 KB
1 2 3 4 5
<!--
 * @Description: 
 * @Autor: renchao
 * @LastEditTime: 2023-05-17 10:41:35
-->
蔡俊立 committed
6
<template>
任超 committed
7 8
  <lb-table :column="column" :maxHeight="300" heightNumSetting :pagination="false" :key="key" :data="tableData">
  </lb-table>
蔡俊立 committed
9 10
</template>
<script>
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
  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'
蔡俊立 committed
30 31
      }
    },
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
    data () {
      return {
        key: 0,
        dataIndex: 0,
        dialog: false,
        details: {},
        tableDataList: [],
        qlrCommonTable: [
          {
            width: '50',
            renderHeader: (h, scope) => {
              return <div> {
                this.$route.query.viewtype == 1 ? '序号' : <i class="el-icon-plus pointer" onClick={() => { this.handleAdd() }}></i>
              }
              </div>
            },
            render: (h, scope) => {
              return (
                <div>
                  {
                    this.$route.query.viewtype == 1 ? <span>{scope.$index + 1}</span> :
                      <i class="el-icon-minus pointer" onClick={() => { this.handleMinus(scope.$index, scope.row) }}></i>
                  }
                </div>
              )
蔡俊立 committed
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 84 85 86 87 88 89
          {
            prop: "sqrmc",
            label: "姓名/名称"
          },
          {
            prop: "zjzl",
            label: "证件种类"
          },
          {
            prop: "zjh",
            label: "证件号"
          },
          {
            prop: "dh",
            label: "联系电话"
          },
          {
            prop: "frmc",
            label: "法人"
          },
          {
            label: '操作',
            render: (h, scope) => {
              return (
                <div>
                  {
                    <el-button icon="el-icon-view" type="text" onClick={() => { this.handleView(scope.$index, scope.row) }}>查看</el-button>
                  }
                </div>
              )
            }
蔡俊立 committed
90
          }
91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107
        ],
        column: this.qlrCommonTable
      }
    },
    watch: {
      tableData: {
        handler: function (val, oldVal) {
          let that = this
          if (val.length == 0 || !val) {
            that.tableDataList = _.cloneDeep([{
              sqrmc: '',
              dlrzjlx: '',
              dlrzjh: '',
              fr: ''
            }])
          } else {
            that.tableDataList = _.cloneDeep(val)
蔡俊立 committed
108
          }
109 110 111
        },
        immediate: true,
        deep: true
蔡俊立 committed
112
      },
113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130
      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: "fs",
              label: "份数"
            })
          }
        },
        immediate: true
      }
蔡俊立 committed
131
    },
132 133 134 135 136
    methods: {
      updateDetail (value) {
        this.tableDataList[this.dataIndex] = value
        this.key++
        this.$emit('upDateQlrxxList', this.tableDataList)
蔡俊立 committed
137
      },
138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157
      // 添加
      handleAdd () {
        this.dialog = true
      },
      // 减
      handleMinus (index, row) {
        this.tableData.splice(index, 1)
      },
      // 身份证读取
      readClick () { },
      // 修改
      handleEdit (index, row) {
        console.log(row, 'rowrowrowrowrow');
        this.dataIndex = index
        this.dialog = true
        this.details = row
      },
      handleView () {
        this.dialog = true
      }
蔡俊立 committed
158 159 160 161 162
    }
  }
</script>
<style scoped lang='scss'>
</style>