|  |  |  | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="count" | 
|---|
|  |  |  | >已签到车辆:<text>{{ total }}</text></view | 
|---|
|  |  |  | >总排队车辆:<text>{{ total }}</text></view | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <!--  --> | 
|---|
|  |  |  | 
|---|
|  |  |  | >签到时间:{{ item.signDate.slice(11, 16) }}</view | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="line" v-if="item.type == 4"> | 
|---|
|  |  |  | <text class="label">合同单号</text> | 
|---|
|  |  |  | <text class="value">{{ item.contractNum }}</text> | 
|---|
|  |  |  | <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.code }}</text> | 
|---|
|  |  |  | <text class="primaryColor" @click="handleDetail()">运单详情</text> | 
|---|
|  |  |  | <text class="label">合同单号</text> | 
|---|
|  |  |  | <text class="value">{{ item.contractNum }}</text> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="line"> | 
|---|
|  |  |  | <text class="label">驾驶员</text> | 
|---|
|  |  |  | 
|---|
|  |  |  | <text>暂无作业车辆</text> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <u-picker | 
|---|
|  |  |  | <u-popup :show="showDetail" :round="10" :safeAreaInsetBottom="true" closeOnClickOverlay :closeable="true" | 
|---|
|  |  |  | mode="bottom" @close="showDetail = false"> | 
|---|
|  |  |  | <view class="detail_modal"> | 
|---|
|  |  |  | <view class="modal_title">运单详情</view> | 
|---|
|  |  |  | <view v-if="wmsInfo.plateNumber" class="id_card"> | 
|---|
|  |  |  | <text>{{ wmsInfo.plateNumber.slice(0, 1) }}</text> | 
|---|
|  |  |  | <text>{{ wmsInfo.plateNumber.slice(1, 2) }}</text> | 
|---|
|  |  |  | <text>·</text> | 
|---|
|  |  |  | <text>{{ wmsInfo.plateNumber.slice(2) }}</text> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <!--  --> | 
|---|
|  |  |  | <view class="info"> | 
|---|
|  |  |  | <view class="line"> | 
|---|
|  |  |  | <view class="label">运输单号</view> | 
|---|
|  |  |  | <view class="value">{{ wmsInfo.carryBillCode }}</view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="line"> | 
|---|
|  |  |  | <view class="label">驾驶员</view> | 
|---|
|  |  |  | <view class="value">{{ wmsInfo.driverName }} {{ wmsInfo.driverPhone }}</view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="line"> | 
|---|
|  |  |  | <view class="label">总运输量</view> | 
|---|
|  |  |  | <view class="value">{{ wmsInfo.ioQty }}万支</view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="line"> | 
|---|
|  |  |  | <view class="label">运输公司</view> | 
|---|
|  |  |  | <view class="value">{{ wmsInfo.carrierName }}</view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </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> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </u-popup> | 
|---|
|  |  |  | <u-picker | 
|---|
|  |  |  | :show="showPlatformgroup" | 
|---|
|  |  |  | keyName="name" | 
|---|
|  |  |  | :columns="[platformGroupList]" | 
|---|
|  |  |  | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <script> | 
|---|
|  |  |  | import { platformLineUpPage, getPlatformGroupList } from '@/api' | 
|---|
|  |  |  | import { platformLineUpPage, getPlatformGroupList, wmsJobDetail } from '@/api' | 
|---|
|  |  |  | export default { | 
|---|
|  |  |  | data() { | 
|---|
|  |  |  | return { | 
|---|
|  |  |  | windowTop: 24, | 
|---|
|  |  |  | showDetail: false, | 
|---|
|  |  |  | showPlatformgroup: false, | 
|---|
|  |  |  | capacity: 10, | 
|---|
|  |  |  | 
|---|
|  |  |  | total: 0, | 
|---|
|  |  |  | carCodeFront: '', | 
|---|
|  |  |  | platformGroup: {}, | 
|---|
|  |  |  | wmsInfo: {}, | 
|---|
|  |  |  | platformGroupList: [], | 
|---|
|  |  |  | platformLineUpList: [] | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | methods: { | 
|---|
|  |  |  | handleDetail() { | 
|---|
|  |  |  | this.showDetail = true | 
|---|
|  |  |  | handleDetail(param) { | 
|---|
|  |  |  | wmsJobDetail({ id: param.id }).then(res => { | 
|---|
|  |  |  | this.wmsInfo = res.data | 
|---|
|  |  |  | this.showDetail = true | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | getPlatformGroup() { | 
|---|
|  |  |  | getPlatformGroupList({ | 
|---|
|  |  |  | 
|---|
|  |  |  | getList() { | 
|---|
|  |  |  | const { page, capacity, platformGroup, carCodeFront } = this | 
|---|
|  |  |  | platformLineUpPage({ | 
|---|
|  |  |  | capacity, page, model: { platformGroupId: platformGroup.id, callType: 2, carCodeFront } | 
|---|
|  |  |  | capacity, page, model: { platformGroupId: platformGroup.id, callType: 3, carCodeFront } | 
|---|
|  |  |  | }).then(res => { | 
|---|
|  |  |  | if (res.data) { | 
|---|
|  |  |  | this.platformLineUpList = [...this.platformLineUpList, ...res.data.records || []] | 
|---|
|  |  |  | 
|---|
|  |  |  | platConfirm(e) { | 
|---|
|  |  |  | const index = e.indexs[0] | 
|---|
|  |  |  | this.platformGroup = this.platformGroupList[index] | 
|---|
|  |  |  | this.platformLineUpList = [] | 
|---|
|  |  |  | this.getList() | 
|---|
|  |  |  | this.showPlatformgroup = false | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | </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; | 
|---|
|  |  |  | 
|---|
|  |  |  | 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; | 
|---|
|  |  |  | 
|---|
|  |  |  | .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; | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .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; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | </style> | 
|---|