zhangherong
2025-07-09 57c746aa1c682d96465b3fe5d2f95eeb1ed2c4c1
src/views/eam/base/modules/EamMaintenanceStandardDetailList.vue
@@ -1,27 +1,21 @@
<template>
  <a-card :bordered="false">
    <!-- table区域-begin -->
    <div>
      <a-table
        ref="detailTable"
        size="middle"
        bordered
        rowKey="id"
        :columns="columns"
        :dataSource="dataSource"
        :pagination="ipagination"
        :loading="loading"
        class="j-table-force-nowrap"
        @change="handleTableChange">
      </a-table>
    </div>
    <!-- table区域-end -->
    <a-table
      ref="detailTable"
      size="middle"
      bordered
      rowKey="id"
      :columns="columns"
      :dataSource="dataSource"
      :pagination="ipagination"
      :loading="loading"
      class="j-table-force-nowrap"
      @change="handleTableChange">
    </a-table>
  </a-card>
</template>
<script>
  import '@/assets/less/TableExpand.less'
  import { JeecgListMixin } from '@/mixins/JeecgListMixin'
  import { getAction } from '@api/manage'
@@ -34,13 +28,21 @@
        required: true,
        default: '-1'
      },
      selectionRows:{}
      pageSelectionRow: {
        type: Object,
        default: () => {
        }
      },
      filterKey: {
        type: String
      }
    },
    data() {
      return {
        description: '保养标准明细管理页面',
        // 表头
        columns: [
        columns: [],
        inspectionColumns: [
          {
            title: '序号',
            align: 'center',
@@ -48,16 +50,10 @@
            width: 60
          },
          {
            title: '部位',
            align: 'center',
            dataIndex: 'itemPart',
            ellipsis: true
          },
          {
            title: '保养项分类',
            align: 'center',
            dataIndex: 'itemCategory_dictText',
            ellipsis: true
            width: 150
          },
          {
            title: '保养项目',
@@ -72,6 +68,53 @@
            ellipsis: true
          }
        ],
        secondMaintenanceColumns: [
          {
            title: '序号',
            align: 'center',
            dataIndex: 'itemCode',
            width: 60
          },
          {
            title: '保养项分类',
            align: 'center',
            dataIndex: 'itemCategory_dictText',
            width: 150
          },
          {
            title: '保养项目',
            align: 'center',
            dataIndex: 'itemName',
            ellipsis: true
          }
        ],
        thirdMaintenanceColumns: [
          {
            title: '序号',
            align: 'center',
            dataIndex: 'itemCode',
            width: 60
          },
          {
            title: '保养部位',
            align: 'center',
            dataIndex: 'itemPart',
            ellipsis: true
          },
          {
            title: '保养内容',
            align: 'center',
            dataIndex: 'itemName',
            ellipsis: true
          },
          {
            title: '验收标准',
            align: 'center',
            dataIndex: 'itemDemand',
            ellipsis: true
          }
        ],
        disableMixinCreated: true,
        url: {
          list: '/eam/eamMaintenanceStandardDetail/list'
        }
@@ -82,22 +125,32 @@
        immediate: true,
        handler(val) {
          if (val) {
            this.loadData(1)
            console.log('val---------------------', val)
            this.$nextTick(() => this.loadData(1))
          } else {
            this.clearList()
          }
        }
      },
      pageSelectionRow: {
        immediate: true,
        handler(val) {
          switch (val.maintenanceCategory) {
            case 'POINT_INSPECTION':
              this.columns = this.inspectionColumns
              break
            case 'SECOND_MAINTENANCE':
              this.columns = this.secondMaintenanceColumns
              break
            case 'THIRD_MAINTENANCE':
              this.columns = this.thirdMaintenanceColumns
              break
          }
        }
      }
    },
    created() {
    },
    computed: {},
    methods: {
      loadData(arg) {
        if (!this.url.list) {
          this.$message.error('请设置url.list属性!')
          return
        }
        if (this.standardId && this.standardId === '-1') {
          this.clearList()
          return
@@ -113,11 +166,13 @@
        this.dataSource = []
        params.standardId = this.standardId
        this.loading = true
        console.log('----------------------', this.filterKey)
        getAction(this.url.list, params).then((res) => {
          if (res.success) {
            // console.log(res)
            //update-begin---author:zhangyafei    Date:20201118  for:适配不分页的数据列表------------
            this.dataSource = res.result.records || res.result
            if (this.filterKey) this.dataSource = res.result.records.filter(item => item.itemCategory == this.filterKey)
            else this.dataSource = res.result.records
            if (res.result.total) {
              this.ipagination.total = res.result.total
            } else {
@@ -138,7 +193,4 @@
      }
    }
  }
</script>
<style scoped>
  @import '~@assets/less/common.less';
</style>
</script>