jiangping
2024-09-02 843d0abd014ec20424844546fc57a9f976f366ba
pda/pages/index/queueup.vue
@@ -1,8 +1,9 @@
<template>
  <view class="main_app">
    <view class="main_content">
      <view class="title"
        >安泰物流装货平台<u-icon
      <view class="title" @click="showPlatformgroup = true"
        >{{ platformGroup.name
        }}<u-icon
          name="arrow-down"
          size="20"
          class="ml12"
@@ -12,63 +13,134 @@
      <view class="input_wrap">
        <u-icon name="search" class="mr12" size="19" color="#999999" />
        <input
          v-model="carCodeFront"
          type="text"
          placeholder="搜索车辆牌照"
          placeholder-class="placeholder9"
          @confirm="handleQuery"
        />
      </view>
      <view class="count"
        >已签到车辆:<text>{{ 10 }}</text></view
        >已签到车辆:<text>{{ total }}</text></view
      >
    </view>
    <!--  -->
    <div class="dataList">
      <div class="item">
    <view class="dataList">
      <view class="item" v-for="item in platformLineUpList" :key="item.id">
        <view class="head">
          <view class="code">
            <text>皖</text>
            <text>AD1212</text>
          <view v-if="item.carCodeFront" class="code">
            <text>{{ item.carCodeFront.slice(0, 1) }}</text>
            <text>{{ item.carCodeFront.slice(1, 2) }}</text>
            <text>·</text>
            <text>{{ item.carCodeFront.slice(2) }}</text>
          </view>
          <view class="status">签到时间:{{ 11 }}</view>
          <view class="status" v-if="item.signDate"
            >签到时间:{{ item.signDate.slice(11, 16) }}</view
          >
        </view>
        <view class="line">
        <view class="line" v-if="item.type == 4">
          <text class="label">合同单号</text>
          <text class="value">{{ item.contractNum }}</text>
        </view>
        <view class="line" v-else>
          <text class="label">运输单号</text>
          <text class="value">11111</text>
          <text class="value">{{ item.code }}</text>
          <text class="primaryColor" @click="handleDetail()">运单详情</text>
        </view>
        <view class="line">
          <text class="label">驾驶员</text>
          <text class="value">11111</text>
          <text class="value"
            >{{ item.driverName }} {{ item.drivierPhone }}</text
          >
        </view>
        <view class="line">
          <text class="label">总运输量</text>
          <text class="value">11111</text>
          <text class="value">{{ item.totalNum }}万支</text>
        </view>
        <view class="line">
        <view class="line" v-if="item.type != 4">
          <text class="label">运输公司</text>
          <text class="value">11111</text>
          <text class="value">{{ item.carrierName }}</text>
        </view>
        <view class="btns">
        <!-- <view class="btns">
          <view class="btn active">入园</view>
        </view>
      </div>
    </div>
        </view> -->
      </view>
      <view v-if="platformLineUpList.length == 0" class="empty_wrap">
        <image src="@/static/default_nodata@2x.png" />
        <text>暂无作业车辆</text>
      </view>
    </view>
    <u-picker
      :show="showPlatformgroup"
      keyName="name"
      :columns="[platformGroupList]"
      @cancel="showPlatformgroup = false"
      @confirm="platConfirm"
    ></u-picker>
  </view>
</template>
<script>
import { platformLineUpPage, getPlatformGroupList } from '@/api'
export default {
  data() {
    return {
      showDetail: false
      showDetail: false,
      showPlatformgroup: false,
      capacity: 10,
      page: 1,
      total: 0,
      carCodeFront: '',
      platformGroup: {},
      platformGroupList: [],
      platformLineUpList: []
    }
  },
  onLoad() {
    this.getPlatformGroup()
  },
   onReachBottom() {
      if(this.total > this.platformLineUpList.length){
         this.getList()
      }
   },
  methods: {
    handleDetail() {
      this.showDetail = true
    },
    getPlatformGroup() {
      getPlatformGroupList({
        queryData: 1,
        queryType: 0
      }).then(res => {
        this.platformGroupList = res.data || []
        if (this.platformGroupList && this.platformGroupList.length > 0) {
          this.platformGroup = this.platformGroupList[0]
          this.getList()
        }
      })
    },
    getList() {
      const { page, capacity, platformGroup, carCodeFront } = this
      platformLineUpPage({
        capacity, page, model: { platformGroupId: platformGroup.id, callType: 2, carCodeFront }
      }).then(res => {
        if (res.data) {
          this.platformLineUpList = [...this.platformLineUpList, ...res.data.records || []]
          this.total = res.data.total || 0
        }
      })
    },
    handleQuery() {
      this.page = 1
      this.platformLineUpList = []
      this.getList()
    },
    platConfirm(e) {
      const index = e.indexs[0]
      this.platformGroup = this.platformGroupList[index]
      this.getList()
      this.showPlatformgroup = false
    },
  }
}
@@ -135,9 +207,15 @@
          border-radius: 8rpx;
          border: 1rpx solid #dfdede;
          text {
            padding: 0 12rpx;
            &:nth-of-type(1) {
              background: #e9f5f6;
              padding: 0 12rpx;
            }
            &:nth-of-type(2) {
              padding-left: 4rpx;
            }
            &:nth-of-type(4) {
              padding-right: 6rpx;
            }
          }
        }