| | |
| | | <template> |
| | | <view class="main_app"> |
| | | <view class="status_wrap"> |
| | | <image |
| | | class="bg" |
| | | src="../../static/driver/bg_renwu@2x.png" |
| | | mode="" |
| | | ></image> |
| | | <view class="name">作业已完成</view> |
| | | <view class="id_card">皖AD1212</view> |
| | | <view class="status">作业完成</view> |
| | | <image class="bg" src="../../static/driver/bg_renwu@2x.png" mode=""></image> |
| | | <view class="name">请确认任务</view> |
| | | <view class="id_card">{{ param.carCodeFront }}</view> |
| | | <view class="status">任务待确认</view> |
| | | </view> |
| | | <!-- --> |
| | | <view class="main_content"> |
| | | <view class="line"> |
| | | <view class="label">司机姓名</view> |
| | | <view class="value">刘某</view> |
| | | <view class="value">{{ param.driverName }}</view> |
| | | </view> |
| | | <view class="line"> |
| | | <view class="label">手机号</view> |
| | | <view class="value">188</view> |
| | | <view class="value">{{ param.drivierPhone }}</view> |
| | | </view> |
| | | <view class="line"> |
| | | <view class="label">运输单号</view> |
| | | <view class="value" @click="showDetail = true"> |
| | | <text class="waybill_num">Y111</text> |
| | | <text class="waybill_num">{{ param.contractNum }}</text> |
| | | <text class="btn">运单详情</text> |
| | | </view> |
| | | </view> |
| | | <view class="line"> |
| | | <view class="label">作业类型</view> |
| | | <view class="value">入园装货</view> |
| | | <view class="value">{{ param.inType == 0 ? '整托盘' : '件烟' }}</view> |
| | | </view> |
| | | <view class="empty"></view> |
| | | <!-- --> |
| | | <view class="line"> |
| | | <view class="label">车前牌照号</view> |
| | | <view class="value" @click="openInput(1)"> |
| | | <text :style="{ color: param.carNos ? '#000000' : '#999999' }">{{ |
| | | param.carNos ? param.carNos : "请输入车前牌照号" |
| | | }}</text> |
| | | <view class="label">到场日期<text class="red ml6">*</text></view> |
| | | <view class="value" @click="showDate = true"> |
| | | <view :class="param.date ? '' : 'placeholder9'">{{ param.date ? param.date : '请选择' }}</view> |
| | | <u-icon color="#999999" name="arrow-right"></u-icon> |
| | | </view> |
| | | </view> |
| | | <view class="line"> |
| | | <view class="label">车后牌照号</view> |
| | | <view class="label">车前牌照号</view> |
| | | <view class="value" @click="openInput(1)"> |
| | | <text :style="{ color: param.carCodeFront ? '#000000' : '#999999' }">{{ param.carCodeFront ? param.carCodeFront : '请输入车前牌照号' }}</text> |
| | | </view> |
| | | </view> |
| | | <view class="line"> |
| | | <view class="label">车后牌照号<text class="red ml6">*</text></view> |
| | | <view class="value"> |
| | | <text |
| | | @click="openInput(1)" |
| | | :style="{ color: param.carNos ? '#000000' : '#999999' }" |
| | | >{{ param.carNos ? param.carNos : "请输入车后牌照号" }}</text |
| | | > |
| | | <text class="copy">复制车前牌照号</text> |
| | | <text @click="openInput(2)" :style="{ color: param.carCodeBack ? '#000000' : '#999999' }">{{ param.carCodeBack ? param.carCodeBack : '请输入车后牌照号' }}</text> |
| | | <text class="copy" @click="copy">复制车前牌照号</text> |
| | | </view> |
| | | </view> |
| | | <!-- --> |
| | | </view> |
| | | <view class="space"></view> |
| | | <!-- 等待叫号 --> |
| | | <view class="sub_wrap"> |
| | | <view class="btn check">确认任务</view> |
| | | </view> |
| | | <view class="sub_wrap"><view class="btn check" @click="onSubmit">确认任务</view></view> |
| | | |
| | | <!-- modal --> |
| | | <u-popup |
| | | :show="showDetail" |
| | | :round="10" |
| | | :safeAreaInsetBottom="true" |
| | | closeOnClickOverlay |
| | | :closeable="true" |
| | | mode="bottom" |
| | | @close="showDetail = false" |
| | | > |
| | | <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 class="id_card"> |
| | |
| | | </view> |
| | | </view> |
| | | </u-popup> |
| | | <u-datetime-picker :show="showDate" v-model="param.date" :minDate="minDate" @confirm="dateEnter" @cancel="showDate = false" mode="datetime"></u-datetime-picker> |
| | | <keyboardInput ref="keyboard" @export="setPlate" @close="closeInput" /> |
| | | </view> |
| | | <!-- --> |
| | | </template> |
| | | |
| | | <script> |
| | | import keyboardInput from '@/components/keyboard-input/keyboard-input.vue' |
| | | import keyboardInput from '@/components/keyboard-input/keyboard-input.vue'; |
| | | import { driverTaskJobDetail, driverConfirmTask } from '@/api'; |
| | | import dayjs from 'dayjs' |
| | | export default { |
| | | components: { |
| | | keyboardInput |
| | | }, |
| | | data() { |
| | | return { |
| | | param: { |
| | | status: '0' |
| | | }, |
| | | param: {}, |
| | | showDate: false, |
| | | showDetail: false, |
| | | minDate: '', |
| | | |
| | | inputType: '' |
| | | } |
| | | }; |
| | | }, |
| | | onLoad(option) { |
| | | this.getDetail(option.id); |
| | | this.minDate = new Date().getTime() |
| | | }, |
| | | methods: { |
| | | handleSignIn() { |
| | | onSubmit(){ |
| | | const { param } = this |
| | | this.param.status = param.status == '0' ? '1' : '0' |
| | | }, |
| | | getLocation() { |
| | | uni.getLocation({ |
| | | type: 'wgs84', |
| | | success: function (res) { |
| | | console.log('当前位置的经度:' + res.longitude) |
| | | console.log('当前位置的纬度:' + res.latitude) |
| | | } |
| | | if(!param.date) return this.showToast('请选择到场日期') |
| | | if(!param.carCodeBack) return this.showToast('请输入车后牌照号') |
| | | driverConfirmTask({ |
| | | id: param.id, |
| | | carCodeBack: param.carCodeBack, |
| | | arriveDate: param.date + ':59' |
| | | }).then(res =>{ |
| | | this.showToast('确认成功') |
| | | this.$goBack() |
| | | }) |
| | | }, |
| | | getDetail(jobId) { |
| | | driverTaskJobDetail({ |
| | | jobId |
| | | }).then(ress => { |
| | | this.param = { ...ress.data, carCodeBack: '' }; |
| | | }); |
| | | }, |
| | | dateEnter(e) { |
| | | setTimeout(() => { |
| | | this.$set(this.param, 'date', dayjs(e.value).format('YYYY-MM-DD HH:mm')) |
| | | }) |
| | | this.showDate = false |
| | | }, |
| | | openInput(type) { |
| | | this.inputType = type |
| | | this.$refs.keyboard.open() |
| | | this.inputType = type; |
| | | this.$refs.keyboard.open(); |
| | | }, |
| | | copy() { |
| | | if (this.param.carCodeFront) { |
| | | this.$set(this.param, 'carCodeBack', this.param.carCodeFront); |
| | | this.showToast('复制成功'); |
| | | } |
| | | }, |
| | | setPlate(e) { |
| | | if (this.inputType === 1) { |
| | | this.param.carNos = e |
| | | this.$set(this.param, 'carCodeFront', e); |
| | | } else if (this.inputType === 2) { |
| | | this.param.carNos = e |
| | | this.$set(this.param, 'carCodeBack', e); |
| | | } |
| | | this.$forceUpdate() |
| | | this.closeInput() |
| | | this.$forceUpdate(); |
| | | this.closeInput(); |
| | | }, |
| | | closeInput() { |
| | | this.$refs.keyboard.close() |
| | | this.$refs.keyboard.close(); |
| | | } |
| | | } |
| | | } |
| | | }; |
| | | </script> |
| | | |
| | | <style lang="scss"> |
| | |
| | | padding: 16rpx 30rpx; |
| | | position: relative; |
| | | bottom: 32rpx; |
| | | |
| | | z-index: 999; |
| | | .line { |
| | | padding: 24rpx 0 28rpx; |
| | | border-bottom: 1rpx solid #e5e5e5; |