ll
liukangdong
2025-03-05 886de155147766e78199b7f85346f553fb88bc1d
admin/src/views/meeting/bookings.vue
@@ -32,10 +32,13 @@
        </el-select>
      </el-form-item>
      <el-form-item label="起止时间" prop="startTime">
        <el-date-picker v-model="date" type="datetimerange" range-separator="至" value-format="yyyy-MM-dd HH:mm:ss"
        <!-- <el-date-picker v-model="date" type="datetimerange" range-separator="至" value-format="yyyy-MM-dd HH:mm:ss"
          :default-time="['00:00:00', '23:59:59']" start-placeholder="开始时间" end-placeholder="结束时间"
          @change="selectDate"></el-date-picker>
        <!-- <el-date-picker v-model="searchForm.startTime" value-format="yyyy-MM-dd" placeholder="请输入开始时间" @change="search"/> -->
          @change="selectDate"></el-date-picker> -->
        <el-date-picker type="datetime" v-model="searchForm.startTime" value-format="yyyy-MM-dd HH:mm:ss"
          placeholder="请选择开始时间" @change="changeRadio" />
        <el-date-picker type="datetime" v-model="searchForm.endTime" 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>
@@ -43,7 +46,7 @@
        <el-radio-button label="2">近30天</el-radio-button>
      </el-radio-group>
      <!-- <el-form-item label="结束时间" prop="endTime">
        <el-date-picker v-model="searchForm.endTime" value-format="yyyy-MM-dd" placeholder="请输入结束时间" @change="search"/>
        <el-date-picker v-model="searchForm.endTime" value-format="yyyy-MM-dd" placeholder="请选择结束时间" @change="search"/>
      </el-form-item> -->
      <section>
        <el-button type="primary" @click="search">搜索</el-button>
@@ -66,8 +69,7 @@
            @click="exportExcel">导出</el-button>
        </li>
      </ul>
      <el-table v-loading="isWorking.search" :data="tableData.list" stripe
        @selection-change="handleSelectionChange">
      <el-table v-loading="isWorking.search" :data="tableData.list" stripe @selection-change="handleSelectionChange">
        <!-- <el-table-column type="selection" align="center" width="55"></el-table-column> -->
        <el-table-column prop="name" label="会议主题" align="center" min-width="120px" show-overflow-tooltip>
          <template slot-scope="{ row }">
@@ -102,13 +104,15 @@
          <template slot-scope="{ row }">
            <template>
              <el-button type="text" @click="$refs.operaBookingsDetailWindow.open('会议详情', row)">查看详情</el-button>
              <el-button v-if="row.meetingStatus == '1'" type="text"
                @click="$refs.operaBookingsWindow.open('编辑会议预约', row)"
                v-permissions="['business:bookings:update']">编辑</el-button>
              <el-button type="text" v-if="row.meetingStatus == '1' || row.meetingStatus == '4'" @click="handleStart(row)">开始</el-button>
              <el-button type="text" v-if="row.meetingStatus == '2'" @click="handleEnd(row)">结束</el-button>
              <el-button v-if="row.meetingStatus == '1' || row.meetingStatus == '4'" type="text" @click="cancelMeeting(row.id)"
                v-permissions="['business:bookings:update']">撤回</el-button>
              <el-button v-if="row.meetingStatus == '1' && row.creator === userInfo.id" type="text"
                @click="$refs.operaBookingsWindow.open('编辑会议预约', row)">编辑</el-button>
              <el-button type="text"
                v-if="row.creator === userInfo.id && (row.meetingStatus == '1' || row.meetingStatus == '4')"
                @click="handleStart(row)">开始</el-button>
              <el-button type="text" v-if="row.creator === userInfo.id && row.meetingStatus == '2'"
                @click="handleEnd(row)">结束</el-button>
              <el-button v-if="row.creator === userInfo.id && (row.meetingStatus == '1' || row.meetingStatus == '4')"
                type="text" @click="cancelMeeting(row.id)">撤回</el-button>
            </template>
            <!-- <el-button v-else type="text" @click="deleteById(row)" v-permissions="['business:bookings:delete']">删除</el-button> -->
          </template>
@@ -142,6 +146,7 @@
  data() {
    return {
      date: [],
      userInfo: this.$store.state.userInfo,
      // 搜索
      searchForm: {
        roomId: '',
@@ -213,15 +218,19 @@
      if (e === '0') {
        this.searchForm.startTime = timeForMat(0)[0]
        this.searchForm.endTime = timeForMat(0)[1]
        this.date = timeForMat(0)
      } else if (e === '1') {
        this.searchForm.startTime = timeForMat(6)[0]
        this.searchForm.endTime = timeForMat(6)[1]
        this.date = timeForMat(6)
      } else if (e === '2') {
        this.searchForm.startTime = timeForMat(29)[0]
        this.searchForm.endTime = timeForMat(29)[1]
        this.date = timeForMat(29)
      } else {
        this.searchForm.radio = ''
      }
      if (this.searchForm.startTime && this.searchForm.endTime && new Date(this.searchForm.startTime).getTime() > new Date(this.searchForm.endTime).getTime()) {
        this.$message.error('开始时间不能大于结束时间')
        this.searchForm.startTime = ''
        return
      }
      this.search()
    },
@@ -250,10 +259,11 @@
    reset() {
      this.$refs.searchForm.resetFields()
      this.date = []
      this.searchForm.radio = '0'
      this.searchForm.radio = ''
      this.searchForm.startTime = ''
      this.searchForm.endTime = ''
      this.changeRadio('0')
      // this.changeRadio('0')
      this.search()
    },
    copy(row) {
      const text = `${row.realName} 邀请您加入会议\n会议主题:${row.name}\n会议室:${row.roomName}\n会议时间:${row.meetingTime}\n点击链接直接加入会议:\n${this.link}?id=${row.id}`