rk
8 小时以前 d5e01405a50c89966ae06363b09fd385b47f99f0
pda/pages/index/queueup.vue
@@ -17,6 +17,7 @@
          type="text"
          placeholder="搜索车辆牌照"
          placeholder-class="placeholder9"
               confirm-type="search"
          @confirm="handleQuery"
        />
      </view>
@@ -26,7 +27,7 @@
    </view>
    <!--  -->
    <view class="dataList">
      <view class="item" v-for="item in platformLineUpList" :key="item.id">
      <view class="item" v-for="item,i in platformLineUpList" :key="i">
        <view class="head">
          <view v-if="item.carCodeFront" class="code">
            <text>{{ item.carCodeFront.slice(0, 1) }}</text>
@@ -34,19 +35,25 @@
            <text>·</text>
            <text>{{ item.carCodeFront.slice(2) }}</text>
          </view>
          <view class="status" v-if="item.signDate"
            >签到时间:{{ item.signDate.slice(11, 16) }}</view
          >
          <!-- <view class="status green" v-if="item.status == 2">月台等待</view > -->
          <view class="status green" v-if="item.status == 2">等待叫号</view >
          <view class="status" v-if="item.status == 3">入园等待</view >
          <view class="status" v-if="item.status == 7">转移中</view >
        </view>
        <view class="line" v-if="item.type == 4">
          <text class="label">合同单号</text>
          <text class="value">{{ item.contractNum }}</text>
        </view>
        <view class="line" v-else>
        <view class="line" v-if="item.billCode">
          <text class="label">运输单号</text>
          <text class="value">{{ item.billCode }}</text>
          <text class="primaryColor" @click="handleDetail(item)">运单详情</text>
        </view>
        <view class="line" v-else>
          <text class="label">合同单号</text>
          <text class="value">{{ item.contractNum }}</text>
               <text class="primaryColor" @click="subDetail(item)">预约详情</text>
        </view>
            <view class="line line2" v-if="item.billCode && item.wmsContractNum">
               <text class="label">合同单号</text>
               <text class="value">{{ item.wmsContractNum }}</text>
            </view>
        <view class="line">
          <text class="label">驾驶员</text>
          <text class="value"
@@ -55,12 +62,16 @@
        </view>
        <view class="line">
          <text class="label">总运输量</text>
          <text class="value">{{ item.totalNum }}万支</text>
          <text class="value">{{ item.totalNum || item.ioQty }}万支</text>
        </view>
        <view class="line" v-if="item.type != 4">
        <view class="line" v-if="item.carrierName">
          <text class="label">运输公司</text>
          <text class="value">{{ item.carrierName }}</text>
        </view>
            <view class="line">
              <text class="label primaryColor">签到时间</text>
              <text class="value primaryColor" v-if="item.signDate">{{ item.signDate.slice(5, 16) }}</text>
            </view>
        <!-- <view class="btns">
          <view class="btn active">入园</view>
        </view> -->
@@ -99,19 +110,21 @@
                  <view class="value">{{ wmsInfo.carrierName }}</view>
               </view>
            </view>
            <view class="separate"></view>
            <view class="contract_list" v-for="item in wmsInfo.wmsJobContractVOList">
               <view class="title">合同号:{{ item.contractCode }}</view>
               <view class="address">收货地:{{ item.address }}</view>
               <view class="list">
                  <view class="item" v-for="line in item.platformWmsDetailList">
                     <view class="line">
                        <view class="label">物料:</view>
                        <view class="value">{{ line.materialName }}</view>
                     </view>
                     <view class="line">
                        <view class="label">数量:</view>
                        <view class="value">{{ line.ioQty }}万支</view>
            <!-- <view class="separate"></view> -->
            <view class="contract_wrap">
               <view class="contract_list" v-for="item in wmsInfo.wmsJobContractVOList">
                  <view class="title">合同号:{{ item.contractCode }}</view>
                  <view class="address">收货地:{{ item.address }}</view>
                  <view class="list">
                     <view class="item" v-for="line in item.platformWmsDetailList">
                        <view class="line">
                           <view class="label">物料:</view>
                           <view class="value">{{ line.materialName }}</view>
                        </view>
                        <view class="line">
                           <view class="label">数量:</view>
                           <view class="value">{{ line.ioQty }}万支</view>
                        </view>
                     </view>
                  </view>
               </view>
@@ -133,6 +146,7 @@
export default {
  data() {
    return {
         windowTop: 24,
      showDetail: false,
      showPlatformgroup: false,
      capacity: 10,
@@ -150,7 +164,13 @@
  },
   onReachBottom() {
      if(this.total > this.platformLineUpList.length){
         this.page ++
         this.getList()
      }else{
         uni.showToast({
            title:'暂无更多数据',
            icon: 'none'
         })
      }
   },
  methods: {
@@ -160,6 +180,11 @@
         this.showDetail = true
      })
    },
      subDetail(item) {
         uni.navigateTo({
           url: `/pages/index/SubDetail?id=${item.bookId}`
         })
      },
    getPlatformGroup() {
      getPlatformGroupList({
        queryData: 1,
@@ -179,6 +204,11 @@
      }).then(res => {
        if (res.data) {
          this.platformLineUpList = [...this.platformLineUpList, ...res.data.records || []]
               this.platformLineUpList.forEach(item => {
                  if(item.wmsContractNum){
                     item.wmsContractNum = item.wmsContractNum.split(',').join(',')
                  }
               })
          this.total = res.data.total || 0
        }
      })
@@ -199,10 +229,11 @@
}
</script>
<style lang="scss">
   page{
      background: #f7f7f7;
   }
.main_app {
  padding: 30rpx 0 0rpx;
  min-height: 100vh;
  background: #f7f7f7;
  .main_content {
    background-color: #fff;
    padding: 30rpx 30rpx 0;
@@ -251,15 +282,21 @@
        align-items: center;
        margin-bottom: 30rpx;
        .code {
          display: flex;
          font-weight: 600;
          height: 60rpx;
          line-height: 60rpx;
               height: 100%;
          display: flex;
          justify-content: center;
          align-items: center;
          font-size: 32rpx;
          color: #111111;
          border-radius: 8rpx;
          border: 1rpx solid #dfdede;
          text {
                  display: flex;
                  justify-content: center;
                  align-items: center;
                  height: 100%;
            &:nth-of-type(1) {
              background: #e9f5f6;
              padding: 0 12rpx;
@@ -276,12 +313,16 @@
          font-size: 30rpx;
          color: $uni-color-primary;
        }
            .green{
               color: #00BA67;
            }
      }
      .line {
        display: flex;
        margin-bottom: 20rpx;
        .label {
          width: 144rpx;
               flex-shrink: 0;
          color: #666666;
        }
        .value {
@@ -294,8 +335,9 @@
        .btn {
          width: 136rpx;
          height: 64rpx;
          line-height: 64rpx;
          text-align: center;
          display: flex;
               justify-content: center;
               align-items: center;
          background: #ffffff;
          border-radius: 40rpx;
          border: 1rpx solid #999999;
@@ -310,111 +352,132 @@
    }
  }
}
.detail_modal {
      padding: 36rpx 30rpx;
      .modal_title {
         font-weight: 600;
         font-size: 32rpx;
         color: #222222;
         line-height: 44rpx;
         text-align: center;
         margin-bottom: 36rpx;
      }
      .contract_list {
         .list {
            background: #f7f7f7;
            border-radius: 8rpx;
            padding: 20rpx;
            .line {
               display: flex;
               margin-bottom: 20rpx;
               &:nth-of-type(3n) {
                  border-top: 1rpx solid #e5e5e5;
                  padding-top: 20rpx;
               }
               .label {
                  color: #666666;
                  width: 86rpx;
               }
               .value {
                  flex: 1;
                  color: #222222;
               }
            }
         }
         .title {
            font-weight: 600;
            font-size: 30rpx;
            color: $uni-color-primary;
            margin-bottom: 12rpx;
         }
         .address {
            font-size: 26rpx;
            color: #666666;
            margin-bottom: 20rpx;
         }
      }
      .info {
         .line {
            display: flex;
            margin-bottom: 20rpx;
            .label {
               font-size: 30rpx;
               color: #666666;
               width: 150rpx;
            }
            .value {
               flex: 1;
               font-size: 30rpx;
               color: #222222;
            }
         }
      }
      .separate {
         width: 750rpx;
         height: 2rpx;
         margin: 30rpx -30rpx;
         border: 1rpx solid #e5e5e5;
      }
      .id_card {
         display: flex;
         font-weight: 600;
         height: 60rpx;
         line-height: 60rpx;
         font-size: 32rpx;
         color: #111111;
         border-radius: 8rpx;
         border: 1rpx solid #dfdede;
         width: 220rpx;
         margin-bottom: 15rpx;
         text {
            &:nth-of-type(1) {
               background: #e9f5f6;
               padding: 0 12rpx;
            }
            &:nth-of-type(2) {
               padding-left: 10rpx;
            }
            &:nth-of-type(4) {
               padding-right: 6rpx;
            }
         }
      }
.detail_modal {
      height: 100vh;
      padding: 36rpx 30rpx;
      border-radius: 12rpx;
      box-shadow: 0 0 6rpx rgba(0, 0, 0, 0.5);
      .modal_title {
         font-weight: 600;
         font-size: 32rpx;
         color: #222222;
         line-height: 44rpx;
         text-align: center;
         margin-bottom: 36rpx;
      }
      .contract_wrap{
         height: calc( 100% - 400rpx );
         overflow-y: auto;
      }
      .contract_list {
         border-top: 1rpx solid #E5E5E5;
         margin-bottom: 30rpx;
         padding-top: 30rpx;
         &:nth-last-child(1){
            margin-bottom: 0;
         }
         .list {
            background: #f7f7f7;
            border-radius: 8rpx;
            padding: 20rpx;
            .item{
               border-bottom: 1rpx solid #e5e5e5;
               padding-bottom: 20rpx;
               margin-bottom: 20rpx;
               &:nth-last-child(1){
                  border: none;
                  padding-bottom: 0;
                  margin-bottom: 0;
               }
            }
            .line {
               display: flex;
               margin-bottom: 20rpx;
               &:nth-last-child(1){
                  margin-bottom: 0rpx;
               }
               .label {
                  color: #666666;
                  width: 92rpx;
               }
               .value {
                  flex: 1;
                  color: #222222;
               }
            }
         }
         .title {
            font-weight: 600;
            font-size: 30rpx;
            color: $uni-color-primary;
            margin-bottom: 12rpx;
         }
         .address {
            font-size: 26rpx;
            color: #666666;
            margin-bottom: 20rpx;
         }
      }
      .info {
         .line {
            display: flex;
            margin-bottom: 20rpx;
            .label {
               font-size: 30rpx;
               color: #666666;
               width: 150rpx;
            }
            .value {
               flex: 1;
               font-size: 30rpx;
               color: #222222;
            }
         }
      }
      .separate {
         width: 750rpx;
         height: 2rpx;
         margin: 30rpx -30rpx;
         border: 1rpx solid #e5e5e5;
      }
      .id_card {
         display: flex;
         font-weight: 600;
         height: 60rpx;
         line-height: 60rpx;
         font-size: 32rpx;
         color: #111111;
         border-radius: 8rpx;
         border: 1rpx solid #dfdede;
         width: 220rpx;
         margin-bottom: 15rpx;
         text {
            &:nth-of-type(1) {
               background: #e9f5f6;
               padding: 0 12rpx;
            }
            &:nth-of-type(2) {
               padding-left: 10rpx;
            }
            &:nth-of-type(4) {
               padding-right: 6rpx;
            }
         }
      }
   }
   .line2{
      margin-right: -30rpx;
      padding-right: 0;
   }
</style>