| | |
| | | <text v-if="item.type === 0 && item.workType === 0">用工单 - 采摘工</text> |
| | | <text v-else-if="item.type === 0 && item.workType === 1">用工单 - 分拣工</text> |
| | | <text v-else-if="item.type === 0 && item.workType === 2">用工单 - 包装工</text> |
| | | <text v-else-if="item.type === 1">运货单</text> |
| | | <text v-else-if="item.type === 1">运货单 - {{item.categoryName}}</text> |
| | | <text v-else-if="item.type === 2">订餐单</text> |
| | | </view> |
| | | <view class="index-list-item-head-r" v-if="item.status === 1">待接单方接单</view> |
| | | <view class="index-list-item-head-r" v-if="item.status === 0 || item.status === 5">待支付</view> |
| | | <view class="index-list-item-head-r" v-if="item.status === 1">待接单</view> |
| | | <view class="index-list-item-head-r" v-if="item.status === 2&& item.isUpdate != 1">已接单</view> |
| | | <view class="index-list-item-head-r" v-if="item.status === 3">进行中</view> |
| | | <view class="index-list-item-head-r" v-if="item.status === 2 && item.isUpdate == 1">已修改,待接单方确认</view> |
| | | <view class="index-list-item-head-r hui" v-if="item.status === 4 && item.commentStatus !== 0">已完成</view> |
| | | <view class="index-list-item-head-r hui" v-if="item.status === 99">已取消</view> |
| | | <view class="index-list-item-head-r" v-if="item.status === 4 && item.commentStatus === 0">待评价</view> |
| | |
| | | {{item.categoryName}}|{{item.priceNum1}}人 |
| | | </view> |
| | | <view class="index-list-item-info" v-if="item.type === 1"> |
| | | {{item.categoryName}}-{{item.carUnit}} |
| | | </view> |
| | | <view class="index-list-item-info" v-if="item.type === 1"> |
| | | {{item.transportTypeName}} | {{item.transportNum}}{{item.transportUnit}}|用车{{item.priceNum1}}天 |
| | | {{item.carUnit}} | {{item.transportTypeName}} | {{item.transportNum}}{{item.transportUnit}}|用车{{item.priceNum1}}天 |
| | | </view> |
| | | <view class="index-list-item-info" v-if="item.type === 2"> |
| | | {{item.wayInfoCopy}} |
| | |
| | | <text>¥{{item.estimatedAccount / 100}}</text> |
| | | </view> |
| | | <view class="eidt"> |
| | | <view></view> |
| | | <view> |
| | | <view class="eidt-tips" v-if="item.status === 2 && item.isUpdate == 1"><text>已修改,待接单方确认</text></view> |
| | | <view class="eidt-tips" v-if="item.status === 5"> |
| | | <image src="/static/icon/ic_tip@2x.png" mode="widthFix"></image> |
| | | <text>接单方已确认费用,请支付</text> |
| | | </view> |
| | | </view> |
| | | <view class="eidt-right"> |
| | | <view class="eidt-close" v-if="[0,1,2].includes(item.status)" @click.stop="orderId = item.id, show = true">取消订单</view> |
| | | <view class="eidt-phone" v-if="[2].includes(item.status)">联系师傅</view> |
| | |
| | | <view class="eidt-btn" v-if="[0,1,2].includes(item.status) && item.type !== 2 && item.isUpdate!=1" @click.stop="jumpEdit(item)">修改订单</view> |
| | | <view class="eidt-btn" v-if="(item.type == 2 && item.status === 0)" @click.stop="jumpEdit(item)">继续支付</view> |
| | | <!-- <view class="eidt-btn" v-if="item.status === 2" @click.stop="startJobs(item.id)">开始作业</view> --> |
| | | <view class="eidt-btn" v-if="item.type != 2 && item.status === 3" @click.stop="jumpDesc(item)">完成并支付</view> |
| | | <view class="eidt-btn" v-if="item.type != 2 && item.status === 5" @click.stop="jumpDesc(item)">立即支付</view> |
| | | <view class="eidt-btn" v-if="item.type == 2 && item.status === 3" @click.stop="jumpDesc(item)">完成作业</view> |
| | | </view> |
| | | </view> |
| | |
| | | <text v-else-if="item.type === 0 && item.workType === 2">用工单 - 包装工</text> |
| | | <text v-else-if="item.type === 1">运货单</text> |
| | | <text v-else-if="item.type === 2">订餐单</text> |
| | | <view class="tips" v-if="item.acceptType === 1">系统派单</view> |
| | | <view class="tips1" v-if="item.acceptType === 0">自主抢单</view> |
| | | <view class="tips" v-if="item.acceptType === 1">派单</view> |
| | | <view class="tips1" v-if="item.acceptType === 0">抢单</view> |
| | | </view> |
| | | <view class="index-list-item-head-r" v-if="item.status === 0 || item.status === 5">待支付</view> |
| | | <view class="index-list-item-head-r" v-if="item.status === 2">已接单</view> |
| | | <view class="index-list-item-head-r" v-if="item.status === 3">进行中</view> |
| | | <view class="index-list-item-head-r hui" v-if="item.status === 4">已完成</view> |
| | |
| | | { name: '待支付', id: 0 }, |
| | | { name: '待接单', id: 1 }, |
| | | { name: '已接单', id: 2 }, |
| | | { name: '进行中', id: 3 }, |
| | | { name: '确认费用', id: 5 }, |
| | | { name: '进行中', id: 3 }, |
| | | { name: '已完成', id: 4 }, |
| | | { name: '已取消', id: 99 }, |
| | | { name: '待评价', id: 6 } |
| | |
| | | margin-top: 40rpx; |
| | | text-align: center; |
| | | text { |
| | | font-size: 30rpx; |
| | | font-size: 24rpx; |
| | | color: #666666; |
| | | } |
| | | } |
| | |
| | | <view class="list-item-row" @click="show2 = true"> |
| | | <view class="list-item-row-label">用车时间<b>*</b></view> |
| | | <view class="list-item-row-val"> |
| | | <text :style="{ color: form.startDate ? '#111111' : '' }">{{form.startDate ? form.startDate + ' 至 ' + form.endDate + ' (' + form.priceNum1 + '天) ' : '请选择'}}</text> |
| | | <text :style="{ color: form.startDate ? '#111111' : '' }">{{form.startDate ? form.startDate + ' 至 ' + form.endDate + ' (' + form.totalDays + '天) ' : '请选择'}}</text> |
| | | <u-icon name="arrow-right" color="#111111" size="16"></u-icon> |
| | | </view> |
| | | </view> |
| | |
| | | <view class="list-item-cate"> |
| | | <view :class="item.id === form.carType ? 'list-item-cate-item active' : 'list-item-cate-item'" v-for="(item, index) in ff" :key="index" @click="form.carType = item.id">{{item.name}}</view> |
| | | </view> |
| | | <view class="list-item-row"> |
| | | <view class="list-item-row-label">天数</view> |
| | | <view class="list-item-row" v-if="form.carType==0"> |
| | | <view class="list-item-row-label">用车天数</view> |
| | | <view class="list-item-row-val"> |
| | | <input type="number" v-model="form.priceNum1" disabled placeholder="请输入" /> |
| | | <input type="number" v-model="form.totalDays" disabled placeholder="" /> |
| | | <text>天</text> |
| | | </view> |
| | | </view> |
| | | <view class="list-item-row" v-if="form.carType==1"> |
| | | <view class="list-item-row-label">用车次数<b>*</b></view> |
| | | <view class="list-item-row-val"> |
| | | <input type="number" v-model="form.priceNum1" placeholder="请输入" /> |
| | | <text>次</text> |
| | | </view> |
| | | </view> |
| | | <view class="list-item-row"> |
| | |
| | | <text>元</text> |
| | | </view> |
| | | </view> |
| | | <view class="footer-bottom"> |
| | | <div class="footer-bottom-btn" @click="submit"> |
| | | <text>立即下单</text> |
| | | <text>(服务完成后付款)</text> |
| | | <view class="footer-bottom"> |
| | | <div class="footer-bottom-btn" @click="submit" > |
| | | <text>{{form.id?'确认修改':'立即下单'}}</text> |
| | | <text v-if="!form.id">(服务完成后付款)</text> |
| | | </div> |
| | | </view> |
| | | <view style="width: 100%; height: env(safe-area-inset-bottom);"></view> |
| | |
| | | categoryName: '', |
| | | wayInfoDTOList: [], |
| | | priceNum1: '', |
| | | totalDays:null, |
| | | priceNum2: 1, |
| | | transportNum: '', |
| | | transportTypeId: '', |
| | |
| | | }).then(res => { |
| | | if (res.code === 200) { |
| | | this.info = res.data |
| | | console.log(res.data.totalDays) |
| | | for (const key in this.form) { |
| | | this.form[key] = res.data[key] |
| | | } |
| | |
| | | this.form.endDate = res.endDate |
| | | this.form.lat = res.lat |
| | | this.form.lgt = res.lgt |
| | | this.form.priceNum1 = res.days |
| | | this.form.totalDays = res.days |
| | | this.form.priceNum1=res.days |
| | | this.form.categoryId = res.categoryId |
| | | this.form.categoryName = res.categoryName |
| | | this.form.location = res.location |
| | |
| | | uni.requestSubscribeMessage({ |
| | | tmplIds: ['oVjOBLcHxIlGzOMJsdInmgI5CHGXh-UTvMzQqfFOnIg','AA97cHjvlPiNO4viMkVe4JifCf9TD5b5Eb7s6El3VS8'], |
| | | success(res) { |
| | | if(that.form.carType == 0){ |
| | | that.form.priceNum1 = that.form.totalDays |
| | | } |
| | | that.$u.api.release({ |
| | | ...that.form, |
| | | price: Number(that.form.price) * 100, |
| | |
| | | this.form.startDate = e[0] |
| | | this.form.endDate = e[e.length - 1] |
| | | let time = this.form.startDate == this.form.endDate ? 1 : 0 |
| | | this.form.priceNum1 = e.length - time; |
| | | this.form.totalDays = e.length - time; |
| | | this.show2 = false |
| | | }, |
| | | addAddr() { |
| | |
| | | </view> |
| | | </view> |
| | | <view class="index-j-list"> |
| | | <view class="index-list-item" v-if="orderList" v-for="(item, index) in orderList" :key="index"> |
| | | <view class="index-list-item" v-if="orderList && orderList.length" v-for="(item, index) in orderList" :key="index"> |
| | | <view class="index-list-item-head"> |
| | | <view class="index-list-item-head-l"> |
| | | <view class="xoam"></view> |
| | | <text v-if="item.type === 0 && item.workType === 0">用工单 - 采摘工</text> |
| | | <text v-else-if="item.type === 0 && item.workType === 1">用工单 - 分拣工</text> |
| | | <text v-else-if="item.type === 0 && item.workType === 2">用工单 - 包装工</text> |
| | | |
| | | <text v-else-if="item.type === 1">运货单-{{item.categoryName}}-{{item.carUnit}}</text> |
| | | |
| | | <text v-else-if="item.type === 1">运货单-{{item.categoryName}}</text> |
| | | <text v-else-if="item.type === 2">订餐单</text> |
| | | </view> |
| | | <view class="index-list-item-head-r">距离 {{item.distance}}km</view> |
| | | <view class="index-list-item-head-r">{{item.distance}}km</view> |
| | | </view> |
| | | <view class="index-list-item-info" v-if="item.type === 0 && item.workType === 0"> |
| | | {{item.categoryName}}|{{item.priceNum1}}斤 |
| | |
| | | {{item.categoryName}}|{{item.priceNum1}}人 |
| | | </view> |
| | | <view class="index-list-item-info" v-if="item.type === 1"> |
| | | {{item.transportTypeName}} | {{item.transportNum}}{{item.transportUnit}}|用车{{item.priceNum1}}天 |
| | | {{item.carUnit}} | {{item.transportTypeName}} | {{item.transportNum}}{{item.transportUnit}}|用车{{item.priceNum1}}天 |
| | | </view> |
| | | <view class="index-list-item-info" v-if="item.type === 2"> |
| | | {{item.wayInfoCopy}} |
| | |
| | | <view class="eidt-btn" @click="show1 = true, orderId = item.id">抢单</view> |
| | | </view> |
| | | </view> |
| | | <view v-if="orderList && orderList.length&& !next" class="more">已加载全部</view> |
| | | <view v-if="(!orderList || !orderList.length)&& !next" class="more">暂无订单哦</view> |
| | | </view> |
| | | </view> |
| | | |
| | |
| | | <view class="btn2" @click="getaccept1">确认</view> |
| | | </view> |
| | | </u-modal> |
| | | <u-modal |
| | | title="支付未成功" |
| | | :show="show2" |
| | | closeOnClickOverlay |
| | | showCancelButton |
| | | > |
| | | <view class="slot-content"> |
| | | 请确认是否取消支付或查看订单继续支付? |
| | | </view> |
| | | <view slot="confirmButton" style="display: flex; justify-content: space-between; align-items: center; width: 100%;"> |
| | | <view class="btn1" @click="show2 = false;payOrderId=null">取消支付</view> |
| | | <view class="btn2" @click="goOrderDetail(payOrderId)">查看订单</view> |
| | | </view> |
| | | </u-modal> |
| | | </view> |
| | | </template> |
| | | |
| | |
| | | |
| | | isOnce: true, |
| | | show1: false, |
| | | orderId: null |
| | | show2: false, |
| | | orderId: null, |
| | | payOrderId:null |
| | | } |
| | | }, |
| | | async onLoad() { |
| | |
| | | this.isLogin = false |
| | | console.log('未登陆') |
| | | } |
| | | this.payOrderId=null |
| | | }, |
| | | watch: { |
| | | typeId: { |
| | |
| | | } |
| | | }, |
| | | methods: { |
| | | goOrderDetail(id){ |
| | | uni.navigateTo({ |
| | | url: `/pages/order-details/order-details?id=`+id |
| | | }) |
| | | this.orderId=null |
| | | this.payOrderId=null |
| | | this.show2=false |
| | | }, |
| | | clearFormParam(){ |
| | | this.form.startDate = '' |
| | | this.form.address = '' |
| | |
| | | that.next = true |
| | | that.orderList = [] |
| | | that.getOrderList() |
| | | that.goOrderDetail(that.orderId) |
| | | }, 2000) |
| | | } |
| | | }) |
| | |
| | | // 提交订单 |
| | | submit() { |
| | | var that = this |
| | | this.payOrderId=null |
| | | if (!this.form.startDate) { |
| | | return uni.showToast({ title: '请选择用餐时间', icon: 'none' }) |
| | | } |
| | |
| | | } |
| | | }, |
| | | fail(err) { |
| | | that.payOrderId = res.data.id |
| | | that.show2=true |
| | | console.log(err) |
| | | } |
| | | }) |
| | |
| | | width: 100%; |
| | | padding: 24rpx 30rpx; |
| | | box-sizing: border-box; |
| | | .more{ |
| | | width: 100%; |
| | | margin-top: 40rpx; |
| | | text-align: center; |
| | | font-size: 24rpx; |
| | | color: #666666; |
| | | } |
| | | .index-list-item { |
| | | width: 100%; |
| | | padding: 30rpx; |
| | |
| | | <view class="order-head-info" v-if="isAcceptor && info.isUpdate ==1" style="color: red;"> |
| | | 订单信息已修改,请及时确认,{{timeInfo}}后将自动同意 |
| | | </view> |
| | | <view class="order-head-info" v-if="isPushlishor && info.type ==2 && info.status ==0" style="color: red;"> |
| | | 剩余支付支付时间,{{timeInfo1}}后将自动取消 |
| | | </view> |
| | | <view class="order-head-info" v-else >{{getStatusInfo()}}</view> |
| | | </view> |
| | | <view class="order-quxiao"> |
| | |
| | | <view class="order-info-title"> |
| | | <view class="x"></view> |
| | | <text v-if="info.type===0">用工单-{{(info.workType===0?'采摘工':(info.workType===1?'分拣工':'包装工')) }}</text> |
| | | <text v-if="info.type===1">运货单-{{info.categoryName || ''}}-{{info.carUnit || ''}}</text> |
| | | <text v-if="info.type===1">运货单-{{info.categoryName || ''}}</text> |
| | | <text v-if="info.type===2">订餐单</text> |
| | | |
| | | </view> |
| | | <view v-if="info.type===0" class="order-info-wz">{{info.categoryName || ''}}|{{info.priceNum1 || '' }}{{info.workType === 0?'斤':'人'}}</view> |
| | | <view v-if="info.type===1" class="order-info-wz">{{info.transportTypeName || ''}}{{' | '}}{{info.transportNum || '' }}{{info.transportUnit||''}}{{' | '}}需{{info.priceNum2 || '' }}辆</view> |
| | | <view v-if="info.type===1" class="order-info-wz">{{info.carUnit || ''}}{{' | '}}{{info.transportTypeName || ''}}{{' | '}}{{info.transportNum || '' }}{{info.transportUnit||''}}{{' | '}}需{{info.priceNum2 || '' }}辆</view> |
| | | <view class="order-info-address"> |
| | | <image src="/static/icon/order_ic_location@2x.png" mode="widthFix"></image> |
| | | <view class="order-info-address-info"> |
| | |
| | | <view class="order-footer-btn-a" @click="show = true" v-if="1==2&& isAcceptor && info.status ===2">取消订单</view> |
| | | <view class="order-footer-btn-a" @click="show = true" v-if="isPushlishor && (info.status ===0 || info.status ===1|| info.status ===2)">取消订单</view> |
| | | <view class="order-footer-btn-b" @click="show2=true" v-if="isPushlishor && (info.status ===4 && info.commentStatus!=1)">去评价</view> |
| | | <view class="order-footer-btn-b" v-if="isPushlishor&&((info.status ===5 && info.type !==2)|| (info.status ===0 && info.type===2))" @click="show1 = true">{{info.type === 2 ? '继续支付' : '完成并支付'}}</view> |
| | | <view class="order-footer-btn-b" v-if="isPushlishor&&((info.status ===5 && info.type !==2)|| (info.status ===0 && info.type===2))" @click="show1 = true">{{info.type === 2 ? '继续支付' : '立即支付'}}</view> |
| | | <view class="order-footer-btn-b" @click="show7 = true" v-if=" info.type!==2 &&isAcceptor && info.status ===3">确认费用</view> |
| | | <view class="order-footer-btn-b" v-if="isPushlishor && ((info.status ===3 && info.type===2))" @click="payment1">完成作业</view> |
| | | <view class="order-footer-btn-b" v-if="info.type !=2 && info.isUpdate!=1&& isPushlishor && (info.status ===0 || info.status ===1|| info.status ===2)" @click="jumpEdit()">修改订单</view> |
| | |
| | | count: 5, |
| | | show3:false, |
| | | timer:null, |
| | | timer1:null, |
| | | show4:false, |
| | | show5:false, |
| | | show6:false, |
| | | show7:false, |
| | | timeInfo:'00:00:00', |
| | | timeInfo1:'00:00:00', |
| | | lessTime:null, |
| | | lessTime1:null, |
| | | value:0, |
| | | wayList:[], |
| | | bgImg: require('@/static/image/bg_green@2x.png'), |
| | |
| | | return '' |
| | | } |
| | | return '您已接单,请按时完成订单任务' |
| | | }else if(this.info.status === 5){ |
| | | return '您已确认费用,等待发单方支付' |
| | | }else if(this.info.status === 3){ |
| | | return '订单进行中,请按时完成订单任务' |
| | | }else if(this.info.status === 4){ |
| | |
| | | return '请尽快完成支付,发布订单' |
| | | }else if(this.info.status === 1){ |
| | | return '您订单已经成功发起,请耐心等待接单' |
| | | }else if(this.info.status === 5){ |
| | | return '接单方已确认费用,请支付' |
| | | }else if(this.info.status === 2){ |
| | | if(this.info.isUpdate==1){ |
| | | return '订单已修改,请等待接单方确认' |
| | |
| | | return '订单已取消' |
| | | } |
| | | } |
| | | }, |
| | | updateTimeInfo1(){ |
| | | if(this.timer1){ |
| | | clearInterval(this.timer1) |
| | | } |
| | | var that =this |
| | | this.lessTime1 = Math.floor( Number(that.info.cancelCountdown || 0)/1000) ; |
| | | if(this.lessTime1>0){ |
| | | this.timer1 = setInterval(function(){ |
| | | let h = Math.floor(that.lessTime1/60/60) ; |
| | | let m = Math.floor((that.lessTime1 - h*60*60)/60); |
| | | let s= Math.floor(that.lessTime1- h*60*60 -m*60); |
| | | that.timeInfo1 =(h<10?'0':'')+ h+":"+(m<10?'0':'')+m+":"+(s<10?'0':'')+s; |
| | | that.lessTime1 =that.lessTime1-1; |
| | | if(that.lessTime1 <=0){ |
| | | that.timeInfo1 ="00:00:00" |
| | | clearInterval(that.timer1) |
| | | } |
| | | // console.log( that.timeInfo) |
| | | },1000) |
| | | } |
| | | |
| | | }, |
| | | updateTimeInfo(){ |
| | | if(this.timer){ |
| | |
| | | that.timeInfo =(h<10?'0':'')+ h+":"+(m<10?'0':'')+m+":"+(s<10?'0':'')+s; |
| | | that.lessTime =that.lessTime-1; |
| | | // console.log( that.timeInfo) |
| | | if(that.lessTime<=0){ |
| | | that.timeInfo ="00:00:00" |
| | | clearInterval(that.timer) |
| | | } |
| | | },1000) |
| | | } |
| | | |
| | |
| | | this.isPushlishor =false |
| | | this.isAcceptor =false |
| | | this.$u.api.getDetail(param).then(res =>{ |
| | | console.error("=============================",res.data.releaseMemberId,res.data.acceptMemberId,that.userInfo.id) |
| | | |
| | | if(res.code ===200){ |
| | | if(that.userInfo.id === res.data.releaseMemberId ){ |
| | | //如果是发单方 |
| | |
| | | if(res.data.isUpdate == 1){ |
| | | that.updateTimeInfo() |
| | | } |
| | | if(res.data.status == 0){ |
| | | that.updateTimeInfo1() |
| | | } |
| | | that.initPriceNumParam() |
| | | }else{ |
| | | uni.showToast({ title: '订单信息不存在', icon: 'error', duration: 2000 }); |
| | |
| | | </view> |
| | | <view class="list-item-row"> |
| | | <view class="list-item-row-label" v-if="form.carType === 0">用工天数</view> |
| | | <view class="list-item-row-label" v-if="form.carType === 1">工作时长</view> |
| | | <view class="list-item-row-label" v-if="form.carType === 2">包装重量</view> |
| | | <view class="list-item-row-label" v-if="form.carType === 1">工作时长<b>*</b></view> |
| | | <view class="list-item-row-label" v-if="form.carType === 2">包装重量<b>*</b></view> |
| | | <view class="list-item-row-val"> |
| | | <input v-model="form.priceNum1" :disabled="form.carType === 0" @blur="getPrice" type="number" placeholder="请输入" /> |
| | | <text v-if="form.carType === 0">天</text> |
| | |
| | | </view> |
| | | </view> |
| | | <view class="footer-bottom"> |
| | | <div class="footer-bottom-btn" @click="submit"> |
| | | <text>立即下单</text> |
| | | <text>(服务完成后付款)</text> |
| | | <div class="footer-bottom-btn" @click="submit" > |
| | | <text>{{form.id?'确认修改':'立即下单'}}</text> |
| | | <text v-if="!form.id">(服务完成后付款)</text> |
| | | </div> |
| | | </view> |
| | | <view style="width: 100%; height: env(safe-area-inset-bottom);"></view> |
| | |
| | | </view> |
| | | </view> |
| | | <view class="footer-bottom"> |
| | | <div class="footer-bottom-btn" @click="submit"> |
| | | <text>立即下单</text> |
| | | <text>(服务完成后付款)</text> |
| | | <div class="footer-bottom-btn" @click="submit" > |
| | | <text>{{form.id?'确认修改':'立即下单'}}</text> |
| | | <text v-if="!form.id">(服务完成后付款)</text> |
| | | </div> |
| | | </view> |
| | | <view style="width: 100%; height: env(safe-area-inset-bottom);"></view> |
| | |
| | | </view> |
| | | </view> |
| | | <view class="footer-bottom"> |
| | | <div class="footer-bottom-btn" @click="submit"> |
| | | <text>立即下单</text> |
| | | <text>(服务完成后付款)</text> |
| | | <div class="footer-bottom-btn" @click="submit" > |
| | | <text>{{form.id?'确认修改':'立即下单'}}</text> |
| | | <text v-if="!form.id">(服务完成后付款)</text> |
| | | </div> |
| | | </view> |
| | | <view style="width: 100%; height: env(safe-area-inset-bottom);"></view> |