MrShi
2025-03-12 69a1b3bf45738f048361ee4ccb6bdc64fce35720
admin/src/views/system/InterfaceLog.vue
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,159 @@
<template>
  <div class="main_app">
   <QueryForm
      v-model="filters"
      :query-form-config="queryFormConfig"
      @handleQuery="getList(1)"
      @clear="clear"
      @changeForm='changeForm'
    >
      <template #fastdate>
        <el-radio-group
          v-model="filters.fastdate"
          size="small"
          @input="changeRadio"
        >
          <el-radio-button label="0">当天</el-radio-button>
          <el-radio-button label="6">近7天</el-radio-button>
          <el-radio-button label="29">近30天</el-radio-button>
        </el-radio-group>
      </template>
    </QueryForm>
    <el-table v-loading="loading" :data="list" stripe>
      <el-table-column
        prop="name"
        label="接口名称"
        min-width="100"
        show-overflow-tooltip
      />
      <el-table-column
        prop="name"
        label="地址信息"
        min-width="100"
        show-overflow-tooltip
      />
      <el-table-column
        prop="name"
        label="类型"
        min-width="100"
        show-overflow-tooltip
      />
      <el-table-column
        prop="name"
        label="平台"
        min-width="100"
        show-overflow-tooltip
      />
      <el-table-column
        prop="name"
        label="请求参数"
        min-width="100"
        show-overflow-tooltip
      />
      <el-table-column
        prop="name"
        label="相应参数"
        min-width="100"
        show-overflow-tooltip
      />
      <el-table-column
        prop="name"
        label="创建时间"
        min-width="100"
        show-overflow-tooltip
      />
    </el-table>
    <pagination
      @size-change="handleSizeChange"
      @current-change="getList"
      :pagination="pagination"
    />
  </div>
</template>
<script>
import Pagination from '@/components/common/Pagination'
import QueryForm from '@/components/common/QueryForm'
import dayjs from 'dayjs'
export default {
  components: {
    Pagination,
    QueryForm
  },
  data () {
    return {
      loading: false,
      pagination: {
        capacity: 10,
        page: 1
      },
      filters: {
        fastdate: '0'
      },
      list: [],
      total: 0,
      queryFormConfig: {
        formItems: [
          {
            filed: 'aaaa',
            type: 'input',
            label: '接口名称'
          },
          {
            filed: 'bbb',
            type: 'select',
            label: '类型',
            options: []
          },
          {
            filed: 'selTime',
            type: 'datetimerange',
            label: '起止时间'
          },
          {
            type: 'slot',
            filed: 'fastdate',
            label: ''
          }
        ],
        online: true
      }
    }
  },
  created () {
    this.changeRadio('0')
  },
  methods: {
    changeRadio (day) {
      const arr = [dayjs().subtract(day, 'day').format('YYYY-MM-DD') + ' 00:00:00', dayjs().format('YYYY-MM-DD') + ' 23:59:59']
      this.$set(this.filters, 'selTime', arr)
      this.getList()
    },
    changeForm (str) {
      if (str === 'selTime') {
        this.$set(this.filters, 'fastdate', null)
        this.getList()
      }
    },
    handleSub () {
      this.$refs.ruleForm.validate((valid) => {
        if (valid) {
          alert('submit!')
        }
      })
    },
    getList (page) { },
    clear () {
      this.filters = { fastdate: '0' }
      this.getList(1)
    },
    handleSizeChange (capacity) {
      this.pagination.capacity = capacity
      this.getList(1)
    }
  }
}
</script>
<style>
</style>