k94314517
2024-10-16 17efddc6a667670dca682bf36b51a43e99615e6d
admin/src/views/platform/LogisticsRecord/waybill.vue
@@ -1,12 +1,9 @@
<template>
  <div class="main_app">
    <QueryForm v-model="filters" :query-form-config="queryFormConfig" @changeForm='changeForm' @handleQuery="getList(1)" @clear="clear">
    <QueryForm v-model="filters" :query-form-config="queryFormConfig" @changeForm='changeForm' @handleQuery="getList(1)"
      @clear="clear">
      <template #fastdate>
        <el-radio-group
          v-model="filters.fastdate"
          size="small"
          @input="changeRadio"
        >
        <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>
@@ -14,10 +11,11 @@
      </template>
    </QueryForm>
    <div class="pt16">
      <el-button :loading="exLoading" @click="handleEx" v-permissions="['business:platformJob:exportExcel']">导出</el-button>
      <el-button :loading="exLoading" @click="handleEx"
        v-permissions="['business:platformjob:exportExcel']">导出</el-button>
    </div>
    <el-table class="mb20" v-loading="loading" :data="list" stripe>
      <el-table-column prop="code" label="运单号" min-width="100" show-overflow-tooltip />
      <el-table-column prop="billCode" label="运单号" min-width="100" show-overflow-tooltip />
      <el-table-column prop="carCodeFront" label="车牌前照号" min-width="100" show-overflow-tooltip />
      <!-- <el-table-column prop="carCodeBack" label="车牌后照号" min-width="100" show-overflow-tooltip /> -->
      <el-table-column prop="taskOrigin" label="任务来源" min-width="100" show-overflow-tooltip />
@@ -33,7 +31,7 @@
          <span v-if="scope.row.type == '4'">市公司外协车卸货</span>
        </template>
      </el-table-column>
      <el-table-column prop="createDate" label="创建时间" min-width="150" show-overflow-tooltip />
      <el-table-column prop="ioCreatedate" label="创建时间" min-width="150" show-overflow-tooltip />
      <el-table-column prop="name" label="作业状态" min-width="100" show-overflow-tooltip>
        <template v-slot="scope">
          <span>{{ statusMap[scope.row.status] }}</span>
@@ -41,26 +39,26 @@
      </el-table-column>
      <el-table-column prop="name" label="操作" min-width="120" align="center" fixed="right" show-overflow-tooltip>
        <template v-slot="scope">
          <el-button v-if="scope.row.status == 12" type="text" class="red" v-permissions="['business:platformJob:delete']"
          <el-button v-if="scope.row.status == '12'" type="text" class="red" v-permissions="['business:platformjob:delete']"
            @click="handleDel(scope.row)">删除</el-button>
          <el-button type="text" v-permissions="['business:platformJob:query']"
            @click="handleDetail(scope.row)">预约详情</el-button>
          <el-button v-if="scope.row != 12" type="text" v-permissions="['business:platformjob:query']"
            @click="handleDetail(scope.row)">运单详情</el-button>
        </template>
      </el-table-column>
    </el-table>
    <Pagination @size-change="handleSizeChange" @current-change="getList" :pagination="pagination" />
    <!--  -->
    <!--  -->
    <DriverDetail v-if="isShowDriver" ref="DriverDetailRef" />
    <WaybillDetailRef v-if="isShowDetail" ref="WaybillDetailRef" />
  </div>
</template>
<script>
import Pagination from '@/components/common/Pagination'
import QueryForm from '@/components/common/QueryForm'
import { platformJobPage,  platformJobExport,platformJobDel } from '@/api'
import { platformJobPage, platformJobExport, platformJobDel } from '@/api'
import { statusMap } from '../config'
import DriverDetail from "@/views/task/driverDetail"
import WaybillDetailRef from "../components/WaybillDetail.vue"
import GlobalWindow from '@/components/common/GlobalWindow'
import UploadFaceImg from '@/components/common/UploadFaceImg'
import { Message } from 'element-ui'
@@ -69,14 +67,14 @@
  components: {
    Pagination,
    QueryForm,
    DriverDetail,
    WaybillDetailRef,
    GlobalWindow,
    UploadFaceImg
  },
  data() {
    return {
      statusMap,
      isShowDriver: false,
      isShowDetail: false,
      exLoading: false,
      loading: false,
      pagination: {
@@ -91,8 +89,8 @@
      list: [],
      queryFormConfig: {
        formItems: [
        {
            filed: 'code',
          {
            filed: 'billCode',
            type: 'input',
            label: '运单号'
          },
@@ -105,6 +103,23 @@
            filed: 'carCodeFront',
            type: 'input',
            label: '车牌号'
          },
          {
            filed: 'status',
            type: 'select',
            label: '作业状态',
            options: [
              { value: 3, label: '入园等待' },
              { value: 4, label: '月台等待' },
              { value: 5, label: '作业中' },
              { value: 6, label: '作业完成' },
              { value: 7, label: '转移中' },
              { value: 8, label: '异常挂起' },
              { value: 9, label: '已授权离园' },
              { value: 10, label: '已离园' },
              { value: 11, label: '已过号' },
              { value: 12, label: '已取消' },
            ]
          },
          {
            filed: 'selDate',
@@ -127,12 +142,12 @@
    this.getList()
  },
  methods: {
    changeRadio (day) {
    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, 'selDate', arr)
      this.getList()
    },
    changeForm (str) {
    changeForm(str) {
      if (str === 'selDate') {
        this.$set(this.filters, 'fastdate', null)
        this.getList()
@@ -145,8 +160,8 @@
        model: {
          ...filters,
          jobType: '0',
          beginWorkDateStart: filters.selDate && filters.selDate.length > 0 ? filters.selDate[0] : null,
          beginWorkDateEnd: filters.selDate && filters.selDate.length > 0 ? filters.selDate[1] : null,
          createDateStart: filters.selDate && filters.selDate.length > 0 ? filters.selDate[0] : null,
          createDateEnd: filters.selDate && filters.selDate.length > 0 ? filters.selDate[1] : null,
        },
        capacity: pagination.pageSize,
        page: page || pagination.page,
@@ -200,12 +215,11 @@
      this.getList()
    },
    handleDetail(row) {
      this.isShowDriver = true
      this.isShowDetail = true
      this.$nextTick(() => {
        this.$refs.DriverDetailRef.id = row.id
        this.$refs.DriverDetailRef.type = 6
        this.$refs.DriverDetailRef.getDetail()
        this.$refs.DriverDetailRef.isShowModal = true
        this.$refs.WaybillDetailRef.isShowModal = true
        this.$refs.WaybillDetailRef.id = row.id
        this.$refs.WaybillDetailRef.getDetail()
      })
    },
    handleSizeChange(capacity) {