jiangping
2025-03-05 c88fe3ea9fd8bd1ea556b4769a1a0cd6c9b5661d
admin/src/views/operation/serviceCar/apprRecord.vue
@@ -1,90 +1,55 @@
<template>
  <TableLayout :permissions="['business:carusebook:query']">
    <!-- 搜索表单 -->
    <el-form
      ref="searchForm"
      slot="search-form"
      :model="searchForm"
      label-width="100px"
      inline
    >
      <el-form-item label="申请人" prop="memberName">
        <el-input
          v-model="searchForm.memberName"
          placeholder="请输入姓名/手机号"
          @keypress.enter.native="search"
        ></el-input>
      </el-form-item>
      <el-form-item label="申请人组织" prop="companyName">
        <el-input
          v-model="searchForm.companyName"
          placeholder="请输入申请人组织"
          clearable
          @keypress.enter.native="search"
        ></el-input>
      </el-form-item>
      <el-form-item label="车牌号" prop="carCode">
        <el-input
          v-model="searchForm.carCode"
          placeholder="请输入车牌号"
          clearable
          @keypress.enter.native="search"
        ></el-input>
      </el-form-item>
      <el-form-item label="状态" prop="status">
        <el-select
          v-model="searchForm.status"
          @change="search"
          clearable
          placeholder="状态"
        >
          <el-option label="申请中" value="0"></el-option>
          <el-option label="审核中" value="1"></el-option>
          <el-option label="审批通过" value="2"></el-option>
          <el-option label="审批不通过" value="3"></el-option>
          <el-option label="已撤销" value="4"></el-option>
        </el-select>
      </el-form-item>
      <el-form-item label="目的地类型" prop="type">
        <el-select
          v-model="searchForm.type"
          @change="search"
          clearable
          placeholder="目的地类型"
        >
          <el-option label="市内用车" value="0"></el-option>
          <el-option label="市外用车" value="1"></el-option>
        </el-select>
      </el-form-item>
      <el-form-item label="申请时间" prop="startTime">
        <el-date-picker
          @change="seleTime"
          v-model="time"
          @keypress.enter.native="search"
          type="datetimerange"
          format="yyyy-MM-dd HH:mm:ss"
          value-format="yyyy-MM-dd HH:mm:ss"
          :default-time="['00:00:00', '23:59:59']"
          range-separator="至"
          start-placeholder="开始日期"
          end-placeholder="结束日期"
        >
        </el-date-picker>
      </el-form-item>
      <el-radio-group
        v-model="searchForm.radio"
        size="small"
        @input="changeRadio"
      >
        <el-radio-button label="0">当天</el-radio-button>
        <el-radio-button label="1">近7天</el-radio-button>
        <el-radio-button label="2">近30天</el-radio-button>
      </el-radio-group>
      <section>
        <el-button type="primary" @click="search">搜索</el-button>
        <el-button @click="reset">重置</el-button>
      </section>
    </el-form>
    <div ref="QueryFormRef" slot="search-form">
      <el-form ref="searchForm" :model="searchForm" label-width="100px" inline>
        <el-form-item label="申请人" prop="memberName">
          <el-input v-model="searchForm.memberName" placeholder="请输入姓名/手机号" @keypress.enter.native="search"></el-input>
        </el-form-item>
        <el-form-item label="申请人组织" prop="companyName">
          <el-input v-model="searchForm.companyName" placeholder="请输入申请人组织" clearable
            @keypress.enter.native="search"></el-input>
        </el-form-item>
        <el-form-item label="车牌号" prop="carCode">
          <el-input v-model="searchForm.carCode" placeholder="请输入车牌号" clearable
            @keypress.enter.native="search"></el-input>
        </el-form-item>
        <el-form-item label="状态" prop="status">
          <el-select v-model="searchForm.status" @change="search" clearable placeholder="状态">
            <el-option label="申请中" value="0"></el-option>
            <el-option label="审核中" value="1"></el-option>
            <el-option label="审批通过" value="2"></el-option>
            <el-option label="审批不通过" value="3"></el-option>
            <el-option label="已撤销" value="4"></el-option>
          </el-select>
        </el-form-item>
        <el-form-item label="目的地类型" prop="type">
          <el-select v-model="searchForm.type" @change="search" clearable placeholder="目的地类型">
            <el-option label="市内用车" value="0"></el-option>
            <el-option label="市外用车" value="1"></el-option>
          </el-select>
        </el-form-item>
        <el-form-item label="出发时间" prop="startTime">
          <!-- <el-date-picker @change="seleTime" v-model="time" @keypress.enter.native="search" type="datetimerange"
            format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss" :default-time="['00:00:00', '23:59:59']"
            range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期">
          </el-date-picker> -->
          <el-date-picker type="datetime" v-model="searchForm.queryStartTime" value-format="yyyy-MM-dd HH:mm:ss"
            placeholder="请选择开始时间" @change="changeRadio" />
          <el-date-picker type="datetime" v-model="searchForm.queryEndTime" value-format="yyyy-MM-dd HH:mm:ss"
            placeholder="请选择结束时间" @change="changeRadio" />
        </el-form-item>
        <el-radio-group v-model="searchForm.radio" size="small" @input="changeRadio">
          <el-radio-button label="0">当天</el-radio-button>
          <el-radio-button label="1">近7天</el-radio-button>
          <el-radio-button label="2">近30天</el-radio-button>
        </el-radio-group>
        <section>
          <el-button type="primary" @click="search">搜索</el-button>
          <el-button @click="reset">重置</el-button>
        </section>
      </el-form>
    </div>
    <!-- 表格和分页 -->
    <template v-slot:table-wrap>
      <ul
@@ -112,12 +77,8 @@
          >
        </li>
      </ul>
      <el-table
        v-loading="isWorking.search"
        :data="tableData.list"
        stripe
        @selection-change="handleSelectionChange"
      >
      <el-table :max-height="tableHeight" v-loading="isWorking.search" :data="tableData.list" stripe
        @selection-change="handleSelectionChange">
        <el-table-column type="selection" width="55"></el-table-column>
        <el-table-column
            prop="carCode"
@@ -260,8 +221,8 @@
      searchForm: {
        memberName: '',
        companyName: '',
        queryStartTime: '',
        queryEndTime: '',
        startTime: '',
        endTime: '',
        type: null,
        status: null,
        radio: 0
@@ -321,20 +282,23 @@
            })
        })
    },
    changeRadio (e) {
      this.searchForm.radio = e
      if (e === 0) {
    changeRadio(e) {
      if (e === '0') {
        this.searchForm.queryStartTime = timeForMat(0)[0]
        this.searchForm.queryEndTime = timeForMat(0)[1]
        this.time = timeForMat(0)
      } else if (e === 1) {
      } else if (e === '1') {
        this.searchForm.queryStartTime = timeForMat(6)[0]
        this.searchForm.queryEndTime = timeForMat(6)[1]
        this.time = timeForMat(6)
      } else if (e === 2) {
      } else if (e === '2') {
        this.searchForm.queryStartTime = timeForMat(29)[0]
        this.searchForm.queryEndTime = timeForMat(29)[1]
        this.time = timeForMat(29)
      } else {
        this.searchForm.radio = ''
      }
      if (this.searchForm.queryStartTime && this.searchForm.queryEndTime && new Date(this.searchForm.queryStartTime).getTime() > new Date(this.searchForm.queryEndTime).getTime()) {
        this.$message.error('开始时间不能大于结束时间')
        this.searchForm.queryStartTime = ''
        return
      }
      this.search()
    },