MrShi
2025-03-26 ebedf7cee35a1131b3c5d180be5676249a87c252
admin/src/views/platform/LogisticsRecord/subscribe.vue
@@ -17,14 +17,14 @@
        v-permissions="['business:platformbooks:exportExcel']">导出</el-button>
    </div>
    <el-table :height="tableHeightNew" v-loading="loading" :data="list" stripe>
      <el-table-column prop="contractNum" label="合同单号" min-width="100" show-overflow-tooltip />
      <el-table-column prop="contractNum" label="合同/单据编号" min-width="100" show-overflow-tooltip />
      <el-table-column prop="inReason" label="入园原因" min-width="100" show-overflow-tooltip />
      <el-table-column prop="totalNum" 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="driverName" label="驾驶员" min-width="100" show-overflow-tooltip />
      <el-table-column prop="driverPhone" label="联系方式" min-width="100" show-overflow-tooltip />
      <el-table-column prop="inTypeTemp" label="入库类型" min-width="100" show-overflow-tooltip />
      <el-table-column prop="inTypeTemp" label="作业类型" min-width="100" show-overflow-tooltip />
      <el-table-column prop="arriveDate" label="预约到场时间" min-width="150" show-overflow-tooltip />
      <el-table-column label="审批结果" min-width="100" show-overflow-tooltip>
        <template v-slot="scope">
@@ -41,7 +41,8 @@
        <template v-slot="scope">
          <el-button type="text" v-permissions="['business:platformbooks:detail']"
            @click="handleDetail(scope.row)">预约详情</el-button>
          <el-button  type="text" class="red" v-permissions="['business:platformbooks:delete']" @click="handleDel(scope.row)">删除</el-button>
          <el-button type="text" class="red" v-permissions="['business:platformbooks:delete']"
            @click="handleDel(scope.row)">删除</el-button>
        </template>
      </el-table-column>
    </el-table>
@@ -57,15 +58,15 @@
            </el-option>
          </el-select>
        </el-form-item>
        <el-form-item label="合同号" prop="contractNum">
          <el-input v-model="param.contractNum" class="w300" placeholder="请输入合同号"></el-input>
        <el-form-item label="合同/单据编号" prop="contractNum">
          <el-input v-model="param.contractNum" class="w300" placeholder="请输入合同/单据编号"></el-input>
        </el-form-item>
        <el-form-item label="到场时间" prop="arriveDate">
          <el-date-picker v-model="param.arriveDate" @change="checkSurplus" value-format="yyyy-MM-dd HH:mm:ss"
            type="datetime" class="w300" placeholder="请选择">
          </el-date-picker>
        </el-form-item>
        <el-form-item label="入库类型" prop="inType">
        <el-form-item label="作业类型" prop="inType">
          <div>
            <el-radio v-model="param.inType" :label="0">整件盘</el-radio>
            <el-radio v-model="param.inType" :label="1">件烟</el-radio>
@@ -76,7 +77,7 @@
            v-model="param.totalNum" placeholder="请输入" class="w300"></el-input>
          <span class="ml10">万支</span>
        </el-form-item>
        <el-form-item label="准运证照片" prop="transportImg">
        <el-form-item label="准运证/运单照片" prop="transportImg">
          <UploadAvatarImage :file="{ 'imgurlfull': param.transportImgFull, 'imgurl': param.transportImg }"
            :uploadData="{ folder: 'platform' }" @uploadSuccess="uploadSuccess" @uploadEnd="isUploading = false"
            @uploadBegin="isUploading = true" />
@@ -105,7 +106,6 @@
<script>
import Pagination from '@/components/common/Pagination'
import QueryForm from '@/components/common/QueryForm'
import BasePage from '@/components/base/BasePage'
import { platformBooksPage, platformReasonList, platformBooksApply, platformBooksExport } from '@/api'
import { checkSurplusNum, deletebooksById } from '@/api/platform/platform'
import DriverDetail from '@/views/task/driverDetail'
@@ -113,7 +113,9 @@
import UploadAvatarImage from '@/components/common/UploadAvatarImage'
import { Message } from 'element-ui'
import dayjs from 'dayjs'
import BaseComputHeight from "@/components/base/BaseComputHeight"
export default {
  extends: BaseComputHeight,
  components: {
    Pagination,
    QueryForm,
@@ -121,8 +123,7 @@
    GlobalWindow,
    UploadAvatarImage
  },
  extends: BasePage,
  data () {
  data() {
    return {
      isShowDriver: false,
      exLoading: false,
@@ -133,7 +134,8 @@
        total: 0
      },
      filters: {
        selDate: [],
        arriveDateStart: '',
        arriveDateEnd: '',
        fastdate: 0
      },
      list: [],
@@ -187,10 +189,10 @@
            ]
          },
          {
            filed: 'selDate',
            type: 'datetimerange',
            label: '操作时间',
            pickerOptions: {}
            filed1: 'arriveDateStart',
            filed2: 'arriveDateEnd',
            type: 'datetime',
            label: '操作时间'
          },
          {
            type: 'slot',
@@ -202,12 +204,12 @@
      }
    }
  },
  created () {
  created() {
    this.changeRadio('0')
    this.getList()
    // this.getList()
  },
  methods: {
    checkSurplus () {
    checkSurplus() {
      const { arriveDate, reasonId, totalNum } = this.param
      if (!arriveDate || !reasonId || !totalNum) return
      checkSurplusNum({
@@ -222,25 +224,25 @@
        }
      })
    },
    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.filters.arriveDateStart = arr[0]
      this.filters.arriveDateEnd = arr[1]
      this.getList(1)
    },
    changeForm(str) {
      if (this.filters.arriveDateStart > this.filters.arriveDateEnd) {
        this.filters.arriveDateStart = this.filters.arriveDateEnd
        return this.$message.error('开始时间不能大于结束时间')
      }
      this.getList()
    },
    changeForm (str) {
      if (str === 'selDate') {
        this.$set(this.filters, 'fastdate', null)
        this.getList()
      }
    },
    getList (page) {
    getList(page) {
      const { pagination, filters } = this
      this.loading = true
      platformBooksPage({
        model: {
          ...filters,
          arriveDateStart: filters.selDate && filters.selDate.length > 0 ? filters.selDate[0] : null,
          arriveDateEnd: filters.selDate && filters.selDate.length > 0 ? filters.selDate[1] : null
          ...filters
        },
        capacity: pagination.pageSize,
        page: page || pagination.page
@@ -255,7 +257,7 @@
        this.loading = false
      })
    },
    handleEx () {
    handleEx() {
      this.$dialog.exportConfirm('确认导出吗?')
        .then(() => {
          const { filters } = this
@@ -264,9 +266,7 @@
            page: this.pagination.page,
            capacity: 1000000,
            model: {
              ...filters,
              arriveDateStart: filters.selDate && filters.selDate.length > 0 ? filters.selDate[0] : null,
              arriveDateEnd: filters.selDate && filters.selDate.length > 0 ? filters.selDate[1] : null
              ...filters
            }
          })
            .then(response => {
@@ -280,7 +280,7 @@
            })
        })
    },
    onSubmit () {
    onSubmit() {
      this.$refs.ruleForm.validate((valid) => {
        const param = this.param
        param.inReason = this.reasonList.find(item => param.reasonId == item.id).reason
@@ -296,11 +296,11 @@
        }
      })
    },
    uploadSuccess (file) {
    uploadSuccess(file) {
      this.$set(this.param, 'transportImg', file.imgurl)
      this.$set(this.param, 'transportImgFull', file.imgurlfull)
    },
    handleEdit (row) {
    handleEdit(row) {
      this.isShowEdit = true
      this.param = {
        inType: 0
@@ -311,27 +311,25 @@
      this.$set(this.param, 'arriveDate', dayjs().format('YYYY-MM-DD HH:mm:ss'))
      this.getplatformReason()
    },
    getplatformReason () {
    getplatformReason() {
      platformReasonList().then(res => {
        this.reasonList = res || []
      })
    },
    handleSub () {
    handleSub() {
      this.$refs.ruleForm.validate((valid) => {
        if (valid) {
          alert('submit!')
        }
      })
    },
    clear () {
    clear() {
      this.pagination.page = 1
      this.filters = {
        selDate: []
      }
      this.filters = {}
      this.getList()
      // this.changeRadio('0')
    },
    handleDetail (row) {
    handleDetail(row) {
      this.isShowDriver = true
      this.$nextTick(() => {
        this.$refs.DriverDetailRef.id = row.id
@@ -340,7 +338,7 @@
        this.$refs.DriverDetailRef.isShowModal = true
      })
    },
    handleDel (row) {
    handleDel(row) {
      this.$confirm('确定删除该记录吗, 是否继续?', '提示', {
        confirmButtonText: '确定',
        cancelButtonText: '取消',
@@ -355,9 +353,9 @@
      }).catch(() => {
      })
    },
    handleSizeChange (capacity) {
    handleSizeChange(capacity) {
      this.pagination.pageSize = capacity
      this.getList()
      this.getList(1)
    }
  }
}