307 lines
8.0 KiB
Vue
307 lines
8.0 KiB
Vue
|
|
<template>
|
|||
|
|
<view class="content">
|
|||
|
|
<view style="overflow: hidden;">
|
|||
|
|
|
|||
|
|
<view class="news_title">
|
|||
|
|
<view class="fsz30 overflow2 title tag">
|
|||
|
|
{{orderInfo.status_name||''}}
|
|||
|
|
</view>
|
|||
|
|
<view class="time fsz26">
|
|||
|
|
订单号:{{orderInfo.order_no||''}}
|
|||
|
|
</view>
|
|||
|
|
<view class="time fsz26">
|
|||
|
|
下单时间:{{orderInfo.createtime||''}}
|
|||
|
|
</view>
|
|||
|
|
<view class="time fsz26" v-if="orderInfo.status ==3">
|
|||
|
|
完成时间:{{orderInfo.finish_time||''}}
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
<view class="line"></view>
|
|||
|
|
<view class="xydd_main w">
|
|||
|
|
<view class="biaoti fsz30">
|
|||
|
|
预约信息
|
|||
|
|
</view>
|
|||
|
|
<view class="main">
|
|||
|
|
<view class="li fsz30">
|
|||
|
|
<view class="ti">联系人 : </view>
|
|||
|
|
<view>{{orderInfo.accept_name||''}}</view>
|
|||
|
|
</view>
|
|||
|
|
<view class="li fsz30">
|
|||
|
|
<view class="ti">电话 : </view>
|
|||
|
|
<view v-if="orderInfo.person_id>0" @tap="call(orderInfo.accept_mobile)">{{orderInfo.accept_mobile||''}}</view>
|
|||
|
|
<view v-else>接单后可看</view>
|
|||
|
|
</view>
|
|||
|
|
<view class="li fsz30" >
|
|||
|
|
<view class="ti">地址 : </view>
|
|||
|
|
<view>{{orderInfo.area_name||''}}</view>
|
|||
|
|
</view>
|
|||
|
|
|
|||
|
|
<view class="li fsz30" >
|
|||
|
|
<view clas="ti"></view>
|
|||
|
|
<view style=" text-align: right;">{{orderInfo.accept_address||''}}</view>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
<view class="line"></view>
|
|||
|
|
<view class="xydd_main w">
|
|||
|
|
<view class="biaoti fsz30">
|
|||
|
|
回收信息
|
|||
|
|
</view>
|
|||
|
|
<view class="main">
|
|||
|
|
<view class="li fsz30">
|
|||
|
|
<view class="ti">预约回收品类 : </view>
|
|||
|
|
<view>{{orderInfo.type_name||''}}</view>
|
|||
|
|
</view>
|
|||
|
|
<view class="li fsz30">
|
|||
|
|
<view class="ti">预约时间 : </view>
|
|||
|
|
<view>{{orderInfo.order_time||''}}</view>
|
|||
|
|
</view>
|
|||
|
|
<view class="li fsz30">
|
|||
|
|
<view class="ti">预约重量 : </view>
|
|||
|
|
<view>{{orderInfo.weight||''}}</view>
|
|||
|
|
</view>
|
|||
|
|
<view class="li fsz30">
|
|||
|
|
<view class="ti">备注 : </view>
|
|||
|
|
<view>{{orderInfo.remark||''}}</view>
|
|||
|
|
</view>
|
|||
|
|
<view class="li fsz30" v-if="orderInfo.status ==3">
|
|||
|
|
<view class="ti">订单金额 : </view>
|
|||
|
|
<view class="red-price">{{orderInfo.price||''}}元</view>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
<view class="line"></view>
|
|||
|
|
<view class="xydd_main w" v-if="orderInfo.status>=2">
|
|||
|
|
<view class="biaoti fsz30">
|
|||
|
|
回收员
|
|||
|
|
</view>
|
|||
|
|
<view class="main">
|
|||
|
|
<view class="li fsz30">
|
|||
|
|
<view>姓名 : </view>
|
|||
|
|
<view>{{orderInfo.person_name||''}}</view>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
<view class="main">
|
|||
|
|
<view class="li fsz30">
|
|||
|
|
<view>接单时间 : </view>
|
|||
|
|
<view>{{orderInfo.jiedan_time||''}}</view>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
<view style="height:100px"></view>
|
|||
|
|
<view class="button-bottom" v-if="(orderInfo.status==1 && jiedan_type ==1) || orderInfo.status==2">
|
|||
|
|
<button class='btn btn-default' @click="setorder(orderInfo.id,2)" v-if="orderInfo.status==1 && jiedan_type ==1 ">接单</button>
|
|||
|
|
<button class='btn btn-default' @click="setorder(orderInfo.id,1)" v-if="orderInfo.status==2 ">转给他人</button>
|
|||
|
|
<button class='btn btn-default' @click="toshow()" v-if="orderInfo.status==2 ">点击完成</button>
|
|||
|
|
</view>
|
|||
|
|
|
|||
|
|
<lvv-popup position="bottom" ref="lvvpopref">
|
|||
|
|
<view style="width: 100%;height: 700upx;background: #F8F8F8;;position: absolute;left:0;bottom: 0;">
|
|||
|
|
<view class="pop-c">
|
|||
|
|
<view class="pop-t">
|
|||
|
|
<view class='hs-row invoice'>
|
|||
|
|
<view class='hs-row-hd'>
|
|||
|
|
<view class='hs-hd-title'>完成订单</view>
|
|||
|
|
</view>
|
|||
|
|
<view class='hs-row-ft'
|
|||
|
|
@click="toclose()">
|
|||
|
|
<image class='fr icon' src='/static/img/close.png'></image>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
<view class="neirong">
|
|||
|
|
<view class="content-top">
|
|||
|
|
<view class='hs-box'>
|
|||
|
|
<view class='hs-row'>
|
|||
|
|
<view class='hs-row-hd'>
|
|||
|
|
<view class='hs-hd-title' style="width: 100px;">订单金额:</view>
|
|||
|
|
</view>
|
|||
|
|
<view class='hs-row-bd' style="width: 95%;">
|
|||
|
|
<input type="text" class='hs-input' placeholder='请填写金额' v-model="money" ></input>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
<view class="button-bottom" style="width: 100%;margin: 0px; padding: 0px;">
|
|||
|
|
<button style="width: 100%;margin: 0px; padding: 0px;" class="btn btn-default" @click="setorder(orderInfo.id,3)" :disabled='submitStatus' :loading='submitStatus'>完成</button>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
</lvv-popup>
|
|||
|
|
</view>
|
|||
|
|
</template>
|
|||
|
|
|
|||
|
|
<script>
|
|||
|
|
import lvvPopup from '@/components/lvv-popup/lvv-popup.vue';
|
|||
|
|
export default {
|
|||
|
|
components: { lvvPopup },
|
|||
|
|
data() {
|
|||
|
|
return {
|
|||
|
|
money:'',
|
|||
|
|
jiedan_type:0,
|
|||
|
|
order_id: '',
|
|||
|
|
orderInfo: {},
|
|||
|
|
};
|
|||
|
|
},
|
|||
|
|
onLoad(e) {
|
|||
|
|
this.order_id = e.id;
|
|||
|
|
this.getOrderDetail();
|
|||
|
|
this.config()
|
|||
|
|
},
|
|||
|
|
methods: {
|
|||
|
|
toshow() {
|
|||
|
|
this.$refs.lvvpopref.show();
|
|||
|
|
},
|
|||
|
|
toclose() {
|
|||
|
|
this.$refs.lvvpopref.close();
|
|||
|
|
},
|
|||
|
|
getOrderDetail() {
|
|||
|
|
let _this = this
|
|||
|
|
let data = {
|
|||
|
|
id: _this.order_id
|
|||
|
|
}
|
|||
|
|
_this.$api.personorderdetail(data, function(res) {
|
|||
|
|
if (res.code ==1 ) {
|
|||
|
|
let data = res.data.info
|
|||
|
|
_this.orderInfo = data;
|
|||
|
|
} else {
|
|||
|
|
uni.showToast({ title: res.msg , icon: 'none' })
|
|||
|
|
}
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
setorder(id,status){
|
|||
|
|
var msg ='';
|
|||
|
|
if(status ==2){
|
|||
|
|
msg ='确认要接单吗?';
|
|||
|
|
}
|
|||
|
|
if(status ==1){
|
|||
|
|
msg ='确认要转给他人吗?';
|
|||
|
|
}
|
|||
|
|
if(status ==3){
|
|||
|
|
if (this.money == '' || this.money < 0 || isNaN(parseFloat(this.money))) {
|
|||
|
|
uni.showToast({ title: '请输入结算金额' , icon: 'none' })
|
|||
|
|
return false;
|
|||
|
|
}
|
|||
|
|
msg ='确认要结算完成吗?';
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
uni.showModal({
|
|||
|
|
title:'提示',
|
|||
|
|
content: msg,
|
|||
|
|
success:(ret)=>{
|
|||
|
|
if(ret.confirm){
|
|||
|
|
this.$api.setorder({
|
|||
|
|
|
|||
|
|
order_id:id ,
|
|||
|
|
status:status
|
|||
|
|
}, res => {
|
|||
|
|
if (res.code == "1") {
|
|||
|
|
uni.showToast({
|
|||
|
|
title: res.msg,
|
|||
|
|
icon: 'none'
|
|||
|
|
})
|
|||
|
|
setTimeout(()=>{
|
|||
|
|
|
|||
|
|
this.money =''
|
|||
|
|
this.toclose();
|
|||
|
|
this.getOrderDetail()
|
|||
|
|
},1000)
|
|||
|
|
}else{
|
|||
|
|
uni.showToast({ title: res.msg , icon: 'none' })
|
|||
|
|
}
|
|||
|
|
})
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
call(phone){
|
|||
|
|
uni.makePhoneCall({
|
|||
|
|
phoneNumber:phone,
|
|||
|
|
success:function(){
|
|||
|
|
console.log('拨打电话成功');
|
|||
|
|
},
|
|||
|
|
fail() {
|
|||
|
|
console.log('打电话失败了');
|
|||
|
|
}
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
config(){
|
|||
|
|
this.$api.config({}, res => {
|
|||
|
|
if (res.code == "1") {
|
|||
|
|
this.jiedan_type = res.data.jiedan_type;
|
|||
|
|
}else{
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
}
|
|||
|
|
};
|
|||
|
|
</script>
|
|||
|
|
|
|||
|
|
<style lang="scss">
|
|||
|
|
.container {
|
|||
|
|
/* padding: 22upx 14upx 100upx; */
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.news_title{
|
|||
|
|
border-bottom: 1px solid #eee;
|
|||
|
|
padding: 20rpx 5%;
|
|||
|
|
box-sizing: border-box;
|
|||
|
|
overflow: hidden;
|
|||
|
|
position: relative;
|
|||
|
|
width: 100%; }
|
|||
|
|
.news_title .title{
|
|||
|
|
color: #333;
|
|||
|
|
line-height: 50rpx;
|
|||
|
|
}
|
|||
|
|
.news_title .time{
|
|||
|
|
color: #777;
|
|||
|
|
margin-top: 20rpx;
|
|||
|
|
}
|
|||
|
|
.news_title .tag{
|
|||
|
|
color: #e01f20;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.xydd_main{ }
|
|||
|
|
.biaoti{
|
|||
|
|
color: #777777;
|
|||
|
|
height: 90rpx;
|
|||
|
|
line-height: 90rpx;
|
|||
|
|
margin-top: 20rpx; }
|
|||
|
|
.biaoti image{width: 35rpx;margin-right: 10rpx; margin-bottom: -6rpx;}
|
|||
|
|
.main{
|
|||
|
|
line-height: 60rpx;}
|
|||
|
|
.main .li{
|
|||
|
|
display: flex;
|
|||
|
|
justify-content: space-between;
|
|||
|
|
}
|
|||
|
|
.servicepic{
|
|||
|
|
width: 180rpx;
|
|||
|
|
height: 180rpx;
|
|||
|
|
position: relative;
|
|||
|
|
box-sizing: border-box;}
|
|||
|
|
.servicepic image{
|
|||
|
|
width: 180rpx;
|
|||
|
|
height: 180rpx;
|
|||
|
|
}
|
|||
|
|
.servicepic uni-icons{
|
|||
|
|
position: absolute;
|
|||
|
|
right: 0;
|
|||
|
|
top: 0;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.line{border:solid 3px #eee}.button-bottom {
|
|||
|
|
padding: 15upx 26upx;
|
|||
|
|
text-align: right;
|
|||
|
|
display: block;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.button-bottom .btn {
|
|||
|
|
margin-left: 20upx;
|
|||
|
|
}
|
|||
|
|
.ti{width:115px}
|
|||
|
|
</style>
|