Commit 5bb41d5d authored by youjie's avatar youjie

no message

parent a2d145fd
...@@ -762,6 +762,9 @@ ...@@ -762,6 +762,9 @@
}, },
{ {
"path": "visa_MyOrder" //签证-我的订单 "path": "visa_MyOrder" //签证-我的订单
},
{
"path": "visa_SureOrder" //签证-订单详情
} }
] ]
} }
......
...@@ -133,7 +133,7 @@ ...@@ -133,7 +133,7 @@
<text style="font-size: 22rpx">¥</text> <text style="font-size: 22rpx">¥</text>
<!-- 原b2b --> <!-- 原b2b -->
<text style="font-size: 40rpx;font-family: nav-font;">{{discountPrice}}</text> <text style="font-size: 40rpx;font-family: nav-font;">{{discountPrice}}</text>
<text style="font-size: 22rpx">/</text> <text style="font-size: 22rpx">/</text>
</view> </view>
<view style="display: flex; align-items: center"> <view style="display: flex; align-items: center">
<!-- #ifdef MP-WEIXIN --> <!-- #ifdef MP-WEIXIN -->
......
...@@ -82,7 +82,7 @@ ...@@ -82,7 +82,7 @@
</view> </view>
<view class="col column"> <view class="col column">
<view style="padding: 0 30rpx 0 30rpx;"> <view style="padding: 0 30rpx 0 30rpx;">
<view class="uDropdownBox" v-if="scrollTop <=20"> <view class="uDropdownBox">
<u-dropdown ref="uDropdown" @open="open" @close="close" active-color="#000" inactive-color="#444"> <u-dropdown ref="uDropdown" @open="open" @close="close" active-color="#000" inactive-color="#444">
<u-dropdown-item class="col" v-model="msg.ManagementName" <u-dropdown-item class="col" v-model="msg.ManagementName"
:title="optionsTitle[0]" :options="VisaTypeList" :title="optionsTitle[0]" :options="VisaTypeList"
...@@ -131,7 +131,7 @@ ...@@ -131,7 +131,7 @@
</view> </view>
<view class="visaListNumR"> <view class="visaListNumR">
<text style="font-size: 20rpx;">CNY</text> <text style="font-size: 20rpx;">CNY</text>
<text class="price-Num">{{ item.visaB2CPrice }}</text> <text class="price-Num">{{ $utils.getretailer()?item.visaPrice:item.visaB2CPrice }}</text>
<text class="price-stuff" style="font-size: 20rpx;color: rgba(164, 164, 164, 1)"></text> <text class="price-stuff" style="font-size: 20rpx;color: rgba(164, 164, 164, 1)"></text>
</view> </view>
</view> </view>
...@@ -314,7 +314,6 @@ export default { ...@@ -314,7 +314,6 @@ export default {
value: Countrys[i].Id, value: Countrys[i].Id,
}) })
} }
let VisaTypeList = res.data.VisaTypeList let VisaTypeList = res.data.VisaTypeList
let VisaType = { let VisaType = {
Id: 0, Id: 0,
......
...@@ -101,7 +101,7 @@ ...@@ -101,7 +101,7 @@
<view class="jz_OrderList" v-for="(item, index) in dataList" :key="index" @click="goOrderDetail(item)"> <view class="jz_OrderList" v-for="(item, index) in dataList" :key="index" @click="goOrderDetail(item)">
<view class="jz_OrderTop"> <view class="jz_OrderTop">
<view class="jz_Oleft" :class="{ isShowAll: !item.isShowHalf }"> <view class="jz_Oleft" :class="{ isShowAll: !item.isShowHalf }">
{{ item.title }} {{ item.name }}
</view> </view>
<view style="margin-left: 10px"> <view style="margin-left: 10px">
<u-icon name="arrow-down" @click.native.stop="getShow(item)" v-if="item.isShowHalf" color="#2979ff" size="28"></u-icon> <u-icon name="arrow-down" @click.native.stop="getShow(item)" v-if="item.isShowHalf" color="#2979ff" size="28"></u-icon>
...@@ -113,13 +113,13 @@ ...@@ -113,13 +113,13 @@
</view> </view>
<view style="display: flex"> <view style="display: flex">
<view class="jz_MyOrder_img"> <view class="jz_MyOrder_img">
<img mode="aspectFill" v-if="item.imgCover && item.imgCover.length>0" :src="item.imgCover[0].url" alt="" /> <img mode="aspectFill" v-if="item.coverImageList && item.coverImageList.length>0" :src="item.coverImageList[0].url" alt="" />
</view> </view>
<view class="jz_XiaDan"> <view class="jz_XiaDan">
<view>下单时间:{{ item.createDate }}</view> <view>下单时间:{{ item.createTime }}</view>
<view style="margin-top: 22rpx">订单总额:¥{{ item.preferPrice }}, <view style="margin-top: 22rpx">订单总额:¥{{ item.dueInMoney }},
<text v-if="item.discountMoney&&item.discountMoney>0" style="margin-left: 15px;">优惠金额:¥<text style="color:indianred">{{item.discountMoney}}</text></text> <text v-if="item.discountMoney&&item.discountMoney>0" style="margin-left: 15px;">优惠金额:¥<text style="color:indianred">{{item.discountMoney}}</text></text>
<text style="margin-left: 15px;">已付款金额:¥<text style="color:indianred">{{item.customerPayMoney?item.customerPayMoney:0}}</text></text> <text v-if="item.customerPayMoney>0" style="margin-left: 15px;">已付款金额:¥<text style="color:indianred">{{item.customerPayMoney?item.customerPayMoney:0}}</text></text>
</view> </view>
</view> </view>
</view> </view>
...@@ -129,7 +129,7 @@ ...@@ -129,7 +129,7 @@
<u-tag mode="plain" border-color="#DFBE6E" color="#DFBE6E" text="待发放优惠券" size="mini" v-if="item.autoCouponId==0"></u-tag> <u-tag mode="plain" border-color="#DFBE6E" color="#DFBE6E" text="待发放优惠券" size="mini" v-if="item.autoCouponId==0"></u-tag>
<u-tag mode="plain" border-color="#1d1d1d" color="#1d1d1d" text="已发放优惠券" size="mini" v-else-if="item.autoCouponId==1"></u-tag> <u-tag mode="plain" border-color="#1d1d1d" color="#1d1d1d" text="已发放优惠券" size="mini" v-else-if="item.autoCouponId==1"></u-tag>
</view> </view>
<view class="jz_Zailai" style="margin-right: 10rpx" @click.stop="gojz_List">再来一单</view> <view class="jz_Zailai" style="margin-right: 10rpx" @click.stop="govisa_List">再来一单</view>
<!-- #ifdef MP-WEIXIN --> <!-- #ifdef MP-WEIXIN -->
<!-- <button v-if="item.orderState == 2" class="jz_Zailai" @click.stop="goZhifu(item)" style="width: 110rpx; margin-right: 10rpx; margin-left: 0rpx"> <!-- <button v-if="item.orderState == 2" class="jz_Zailai" @click.stop="goZhifu(item)" style="width: 110rpx; margin-right: 10rpx; margin-left: 0rpx">
...@@ -139,7 +139,7 @@ ...@@ -139,7 +139,7 @@
<!-- #ifdef MP-ALIPAY --> <!-- #ifdef MP-ALIPAY -->
<view v-if="item.orderState == 2" class="jz_Zailai" style="width: 110rpx; margin-right: 10rpx" @click.stop="goZhifuAli(item)">付款</view> <view v-if="item.orderState == 2" class="jz_Zailai" style="width: 110rpx; margin-right: 10rpx" @click.stop="goZhifuAli(item)">付款</view>
<!-- #endif --> <!-- #endif -->
<view v-if="item.isApplyForCancel != 1 && item.orderState != 4 && item.customerPayMoney==0" class="jz_Zailai" <view v-if="item.isApplyForCancel != 1 && item.visaOrderStatus != 3 && item.customerPayMoney==0" class="jz_Zailai"
style="width: 110rpx" @click.stop="goCancel(item)">取消</view> style="width: 110rpx" @click.stop="goCancel(item)">取消</view>
</view> </view>
</view> </view>
...@@ -267,7 +267,7 @@ ...@@ -267,7 +267,7 @@
}, },
goOrderDetail(item) { goOrderDetail(item) {
uni.navigateTo({ uni.navigateTo({
url: "/pages/jiuzhai/jz_SureOrder?orderId=" + item.orderId, url: "/pages/visa/visa_SureOrder?orderId=" + item.id,
}); });
}, },
change(i) { change(i) {
...@@ -287,9 +287,9 @@ ...@@ -287,9 +287,9 @@
this.$forceUpdate(); this.$forceUpdate();
}, },
//跳转 //跳转
gojz_List() { govisa_List() {
uni.navigateTo({ uni.navigateTo({
url: "/pages/jiuzhai/jz_Line", url: "/pages/visa/visaList",
}); });
}, },
lower(e) { lower(e) {
...@@ -313,9 +313,6 @@ ...@@ -313,9 +313,6 @@
if (type == 1) { if (type == 1) {
this.dataList = []; this.dataList = [];
} }
// this.msg.MiniAppUserId = this.userInfo.UserId;
// this.msg.CustomerId = this.b2b_user_info.customerId;
// this.msg.DirectCustomerId = this.b2b_user_info.directCustomerId
this.apipost( this.apipost(
"b2c_get_GetB2BOrderVisaOrderList", "b2c_get_GetB2BOrderVisaOrderList",
this.msg, this.msg,
......
<style>
.jz_SureOrder {
position: relative;
}
.jz_SureTop {
width: 100%;
box-shadow: 0px 2px 15px 0px rgba(76, 76, 76, 0.13);
background-color: #fff;
border-bottom-left-radius: 60rpx;
border-bottom-right-radius: 60rpx;
padding: 40rpx;
}
.jz_SureDfk {
color: #111111;
font-size: 40rpx;
font-weight: bold;
margin-left: 26rpx;
}
.jz_SureContent {
width: 90%;
margin: auto;
min-height: 100px;
}
.jz_SureCommodity {
padding: 30rpx 0;
display: flex;
border-bottom: 1px solid #e6e6e6;
}
.jzSureMoney {
color: #333333;
font-weight: bold;
font-size: 20rpx;
}
.jz_SuOrder_img {
width: 100rpx;
height: 100rpx;
border-radius: 20rpx;
overflow: hidden;
flex-shrink: 0;
}
.jz_SuOrder_img img {
width: 100%;
height: 100%;
}
.jz_OrderNum {
color: #8f8f90;
font-size: 24rpx;
margin-right: 50rpx;
}
.jz_GoodName {
color: #333333;
font-size: 28rpx;
width: 70%;
margin-left: 15px;
font-weight: bold;
}
.jz_OrderBold {
color: #08090e;
font-weight: bold;
}
.jz_PayDiv {
position: absolute;
width: 90%;
margin: auto;
bottom: 30rpx;
display: flex;
justify-content: space-between;
}
.jz_CancleBtn {
width: 310rpx;
height: 80rpx;
border: 1px solid #111111;
border-radius: 16rpx;
color: #111111;
font-weight: bold;
text-align: center;
line-height: 80rpx;
font-size: 28rpx;
}
.jz_Reserve {
padding-bottom: 120rpx;
}
.jz_ReserTop {
width: 100%;
min-height: 300rpx;
box-shadow: 0px 2px 15px 0px rgba(76, 76, 76, 0.13);
background-color: #fff;
border-bottom-left-radius: 60rpx;
border-bottom-right-radius: 60rpx;
padding: 40rpx;
}
.jz_ReserTitle {
color: #111111;
font-weight: 600;
font-size: 36rpx;
}
.jz_ReserIn {
color: #111;
font-size: 24rpx;
font-weight: 500;
}
.jz_ReseQue {
color: #dfbe6e;
font-size: 24rpx;
padding-top: 30rpx;
border-top: 1px solid #e7e7e7;
margin-top: 20px;
}
.jz_ReseQue img {
width: 16px;
height: 14px;
position: relative;
top: 2px;
margin-right: 5px;
}
.jz_ReseOrder {
padding: 40rpx;
}
.jz_ReDix {
display: flex;
align-items: center;
margin-bottom: 10px;
}
.jz_RedixTitle {
width: 90px;
flex-shrink: 0;
}
/* .jz_OrderDiv {
position: fixed;
width: 90%;
height: 100rpx;
background-color: #fff;
margin: auto;
bottom: 20px;
padding: 20rpx;
left: 40rpx;
display: flex;
justify-content: space-between;
align-items: center;
box-shadow: 0px 10px 30px 0px rgba(36, 36, 36, 0.2);
border-radius: 16px;
z-index: 999;
} */
.jz_orderbox {
position: fixed;
background-color: #fff;
bottom: 0;
width: 100vw;
left: 0;
display: flex;
justify-content: center;
align-items: center;
box-shadow: 0px 0rpx 50rpx 0px rgba(76, 76, 76, 0.13);
z-index: 99;
justify-content: flex-end;
padding: 20rpx 30rpx;
}
.jz_OrderDiv {
width: 90%;
height: 100rpx;
background-color: #fff;
margin: auto;
padding: 20rpx;
display: flex;
justify-content: space-between;
align-items: center;
box-shadow: 0px 10rpx 30rpx 0px rgba(36, 36, 36, 0.2);
border-radius: 16px;
z-index: 999;
}
.jz_OrderReNow {
width: 170rpx;
height: 80rpx;
background-color: #111111;
text-align: center;
line-height: 80rpx;
color: #fff;
font-weight: 600;
font-size: 28rpx;
border-radius: 16rpx;
}
.jz_form {
margin-top: 60rpx;
padding: 0 45rpx;
}
.jz_form .form-items {
margin-bottom: 30rpx;
display: flex;
align-items: center;
padding-bottom: 30rpx;
border-bottom: 1px solid #f5f5f5;
font-size: 28px;
font-weight: 500;
}
.jz_form .form-items .label {
font-size: 28rpx;
font-weight: 600;
margin-right: 60rpx;
flex-shrink: 0;
}
.jz_form .form-items .val {
flex: 1;
}
.jz_ReserTop .o-timer {
height: 100rpx;
background: #ecf1f4;
border-radius: 20rpx;
padding: 0 40rpx;
margin-bottom: 30rpx;
}
.jz_ReserTop .o-timer .time-item {
font-size: 32rpx;
font-weight: 800;
}
/* .jz_ReserTop .o-timer .time-item:last-child{
text-align: right;
} */
.jz_ReserTop .o-timer .time-split {
font-size: 24rpx;
font-weight: 400;
text-align: center;
margin: 0 20rpx;
}
.jz_ReserTop .o-timer .update {
font-size: 24rpx;
font-weight: 400;
text-align: right;
color: #000;
display: flex;
align-items: center;
}
.jz_Reserve .flex {
display: flex;
align-items: center;
}
.jz_Reserve .big-title {
position: relative;
}
.jz_Reserve .big-title::before {
display: block;
width: 71rpx;
height: 12rpx;
background: #dfbe6e;
border-radius: 4rpx;
content: " ";
position: absolute;
left: 0;
bottom: 6rpx;
z-index: 1;
}
.jz_Reserve .big-title text {
font-size: 34rpx;
font-weight: bold;
color: #1f1f1f;
position: relative;
z-index: 2;
}
.jz_Reserve .empty-block {
height: 20rpx;
background: #ecf1f4;
}
.jz_form .form-items .val text {
border: none;
padding: 0;
margin: 0;
outline: none;
height: 38rpx;
line-height: 38rpx;
font-size: 28rpx;
font-weight: 500;
width: 100%;
}
.jz_Reserve .grey {
color: #6e6e6e !important;
}
.jz_Reserve .f12 {
font-size: 24rpx !important;
}
.jz_Reserve .f11 {
font-size: 22rpx !important;
}
.jz_Reserve .f14 {
font-size: 28rpx !important;
}
.jz_Reserve .regular {
font-weight: 500 !important;
}
.jz_Reserve .sheshi {
margin-top: 50rpx;
}
.jz_Reserve .sheshi .she-title {
font-size: 28rpx;
font-weight: 800;
}
.jz_Reserve .sheshi .she-content {
margin-top: 24rpx;
}
.jz_Reserve .sheshi .she-content text {
font-size: 24rpx;
font-weight: 500;
color: #4a4a4a;
line-height: 40rpx;
margin-right: 24rpx;
}
.jz_Reserve .jz_SureVal {
flex: 1;
font-size: 28rpx;
font-weight: 500;
width: 100%;
}
.jz_MyGuestList .label {
width: 115rpx;
}
.jz_MyGuestList {
margin-top: 40rpx;
}
</style>
<template>
<view class="jz_Reserve" v-if="orderData">
<view class="jz_ReserTop">
<view class="flex" style="margin-bottom: 30rpx">
<u-icon customPrefix="iconfont" name="icondaizhifu-" size="52" color="#DFBE6E" v-if="orderStatus.code == 0"></u-icon>
<u-icon customPrefix="iconfont" name="iconquxiao" size="52" color="#f26c6c" v-if="orderStatus.code == -1"></u-icon>
<u-icon customPrefix="iconfont" name="iconshenhezhong" size="52" color="#86d9a5" v-if="orderStatus.code == -2"></u-icon>
<u-icon customPrefix="iconfont" name="iconzhengchang" size="52" color="#111" v-if="orderStatus.code == 1"></u-icon>
<text style="
margin-left: 26rpx;
font-size: 40rpx;
font-weight: 600;
color: #111;
">
{{ orderStatus.text }}
</text>
</view>
<view style="margin-bottom: 30rpx" v-if="
orderData.model.RejectRemark && orderData.model.RejectRemark != ''
">
<u-alert-tips type="error" title="订单取消失败" :description="orderData.model.RejectRemark"></u-alert-tips>
</view>
<view class="o-timer flex">
<view class="time-item">{{ getDate(orderData.model.StartDate) }}
{{ getWeek(orderData.model.StartDate) }}</view>
<view class="time-split">
<view>{{ orderData.model.DayNum }}</view>
</view>
<view class="time-item" style="font-size: 26rpx; font-weight: 500; flex: 1">
<text v-if="orderData.model.ManNum > 0">{{ orderData.model.ManNum }}成人</text>
<text v-if="orderData.model.ChirdNum > 0">{{ orderData.model.ChirdNum }}儿童</text>
<text v-if="orderData.model.BabyNum > 0">{{ orderData.model.BabyNum }}婴儿</text>
</view>
<view class="update">
<!-- <text style="margin-right: 8rpx;">修改</text>
<u-icon name="arrow" size="20" /> -->
</view>
</view>
<view class="jz_ReserTitle">
{{ orderData.model.Title }}
</view>
<view class="jz_ReserIn" style="margin: 33rpx 0 18rpx 0">
<!-- {{currentPriceInfo.startCityName}}出发 {{currentPriceInfo.startDate}} -->
{{ orderData.model.LtName }}
</view>
<view class="big-title" v-if="orderData.model.StartCityName">
<text>{{ orderData.model.StartCityName }}出发</text>
</view>
<view class="jz_ReseQue">
<img src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/CustomizedCar/zuanshi.png" />即时确认:本产品付款后可快速确认,放心期待您的旅行
</view>
</view>
<view class="jz_form">
<view class="form-items">
<view class="label">订单编号</view>
<view class="jz_SureVal">
{{ orderData.model.OrderId }}
</view>
</view>
<view class="form-items">
<view class="label">下单日期</view>
<view class="jz_SureVal">
{{ orderData.model.CreateDate.replace("T", " ") }}
</view>
</view>
<!-- <view class="form-items">
<view class="label">下单日期</view>
<view class="jz_SureVal">
{{ orderData.model.CreateDate.replace("T", " ") }}
</view>
</view> -->
</view>
<view class="empty-block"></view>
<view class="jz_form jz_MyGuestList" v-for="(subItem, subIndex) in orderData.model.GuestList" :key="subIndex">
<view style="margin: 10rpx 0 20rpx 0"> 游客{{ subIndex + 1 }} </view>
<view class="form-items">
<view class="label">游客姓名</view>
<view class="jz_SureVal">{{ subItem.SurName }}{{ subItem.Name }}</view>
</view>
<view class="form-items">
<view class="label">联系电话</view>
<view class="jz_SureVal">{{ subItem.MobilePhone }}</view>
</view>
<view class="form-items">
<view class="label">身份证</view>
<view class="jz_SureVal">{{ subItem.IdCard }}</view>
</view>
<view class="form-items">
<view class="label">学生</view>
<view class="jz_SureVal">
{{ subItem.IsHightSchool == 1 ? "是" : "否" }}
</view>
</view>
</view>
<view class="empty-block"></view>
<view class="jz_form" v-if="orderData.model.Remarks">
<view class="form-items" style="border-bottom: 0">
<view class="label">备注</view>
<view class="jz_SureVal">{{ orderData.model.Remarks }}</view>
</view>
</view>
<view class="empty-block"></view>
<view style="padding: 50rpx 40rpx">
<view class="big-title">
<text>费用明细</text>
</view>
<view class="jz_form" style="margin: 40rpx 0; padding: 0">
<view class="form-items">
<view class="label"> 在线支付 </view>
<view class="val f14 regular" style="text-align: right">
<text style="margin-right: 30rpx">{{ orderData.model.GuestNum }}</text>
<text class="red">
<template v-if=" orderData.model.DiscountMoney&&orderData.model.DiscountMoney>0">
{{ Number(orderData.model.PreferPrice) -Number(orderData.model.DiscountMoney)}}
</template>
<template v-else>
{{ orderData.model.PreferPrice }}
</template>
</text>
</view>
</view>
<view class="form-items" style="border-bottom: none">
<view class="label"> 明细 </view>
</view>
<view class="flex f12 grey" style="margin-bottom: 40rpx" :key="index">
<view style="flex: 1">
<text style="margin-right: 30rpx">成人</text>
</view>
<view style="text-align: right">{{ orderData.model.ManNum }}人 × ¥{{
orderData.model.Unit_Price
}}</view>
</view>
<view class="flex f12 grey" style="margin-bottom: 40rpx" :key="index" v-if="orderData.model.ChirdNeedBedNum > 0">
<view style="flex: 1">
<text style="margin-right: 30rpx">儿童(占床)</text>
</view>
<view style="text-align: right">{{ orderData.model.ChirdNeedBedNum }}人 × ¥{{
orderData.model.Unit_Price +
(orderData.modelPrice.ChildNeedPrice
? orderData.modelPrice.ChildNeedPrice
: 0)
}}</view>
</view>
<view class="flex f12 grey" style="margin-bottom: 40rpx" :key="index" v-if="orderData.model.ChirdNum - orderData.model.ChirdNeedBedNum > 0">
<view style="flex: 1">
<text style="margin-right: 30rpx">儿童(不占床)</text>
</view>
<view style="text-align: right">{{ orderData.model.ChirdNum - orderData.model.ChirdNeedBedNum }}人
× ¥{{
orderData.model.Unit_Price -
(orderData.modelPrice.ChildNoNeedPrice
? orderData.modelPrice.ChildNoNeedPrice
: 0)
}}</view>
</view>
<view class="flex f12 grey" style="margin-bottom: 40rpx" :key="index" v-if="orderData.model.BabyNum > 0">
<view style="flex: 1">
<text style="margin-right: 30rpx">婴儿</text>
</view>
<view style="text-align: right">
{{ orderData.model.BabyNum }}人 × ¥{{
orderData.modelPrice.BabyPrice
? orderData.modelPrice.BabyPrice
: 0
}}</view>
</view>
<view class="flex f12 grey" style="margin-bottom: 40rpx" :key="index" v-if="
orderData.model.ChirdNum > 0 &&
orderData.modelPrice.BabyChargePrice &&
orderData.modelPrice.BabyChargePrice > 0
">
<view style="flex: 1">
<text style="margin-right: 30rpx">儿童(附加费)</text>
</view>
<view style="text-align: right">
{{ orderData.model.ChirdNum }}人 × ¥{{
orderData.modelPrice.BabyChargePrice
}}</view>
</view>
<view class="flex f12 grey" style="margin-bottom: 40rpx" :key="index" v-if=" orderData.model&& orderData.model.DiscountMoney&&orderData.model.DiscountMoney>0">
<view style="flex: 1">
<text style="margin-right: 30rpx">优惠金额</text>
</view>
<view style="text-align: right">
{{ orderData.model.DiscountMoney}} </view>
</view>
</view>
</view>
<view class="empty-block"></view>
<view style="padding: 50rpx 40rpx" v-if="Refund > 0 && orderStatus.code == -1">
<view class="big-title">
<text>取消订单</text>
</view>
<view class="jz_form" style="margin: 40rpx 0; padding: 0">
<view class="form-items">
<view class="label"> 已退款总额 </view>
<view class="val f14 regular" style="text-align: right">
<text style="margin-right: 30rpx">{{ orderData.model.GuestNum }}人</text>
<text class="red">¥{{ orderData.model.PreferPrice }}</text>
</view>
</view>
</view>
</view>
<view class="jz_orderbox flex">
<view style="display: flex" v-if="showPayBtn">
<view class="jz_OrderReNow" @click="goCancel" style="background: #fff; color: #111; border: 1px solid #111">
<text v-if="!submitCancel">取消</text>
<u-loading v-if="submitCancel" size="32" color="#111"></u-loading>
</view>
<!-- 返回上一页 -->
<!-- <view
class="jz_OrderReNow"
@click="goback"
style="background: #fff; color: #111; border: 1px solid #111"
v-if="!showPayBtn"
>关闭
</view> -->
</view>
<view style="display: flex; margin-left: 30rpx">
<!-- #ifdef MP-WEIXIN -->
<!-- <button class="jz_OrderReNow" @click="goFukuan" v-if="showPayBtn" :disabled="submit">
立即支付
</button> -->
<!-- #endif -->
<!-- #ifdef MP-ALIPAY -->
<!-- <button class="jz_OrderReNow" @click="goZhifuAli" v-if="showPayBtn" :disabled="submit">
立即支付
</button> -->
<!-- #endif -->
</view>
</view>
<!-- #ifdef MP-ALIPAY -->
<subscribe-msg />
<!-- #endif -->
</view>
</template>
<script>
</script>
<script>
export default {
components: {},
data() {
return {
pageTitle: "订单详情",
msg: {
pageIndex: 1,
pageSize: 15,
MiniAppUserId: 0,
},
orderData: null,
orderStatus: {},
submit: false,
submitCancel: false,
showPayBtn: true,
};
},
created() {},
onLoad(option) {
if (option.orderData) {
this.orderData = JSON.parse(decodeURIComponent(option.orderData));
} else if (option.orderId) {
this.initOrderInfo(option.orderId);
}
},
methods: {
goback() {
uni.navigateBack({
delta: 1,
});
},
goCancel() {
if (this.submit || this.submitCancel) return;
//未付款-调用后台取消
if (this.orderData.model.OrderState == 2) {
this.apipost(
"sellorder_post_B2BRemoveOrder", {
ID: this.orderData.model.OrderId,
},
(res) => {
if (res.resultCode == 1) {
uni.showToast({
title: "操作成功",
icon: "success",
});
uni.navigateTo({
url: "/pages/jiuzhai/jz_MyOrder",
});
}
},
(err) => {}
);
} else {
let msg = {
OrderId: this.orderData.model.OrderId,
UserId: uni.getStorageSync("mall_UserInfo").UserId,
};
//已付款取消申请
this.apipost(
"sellorder_post_AppletUserCancelOrder",
msg,
(res) => {
if (res.resultCode == 1) {
uni.showToast({
title: "操作成功",
icon: "success",
});
uni.navigateTo({
url: "/pages/jiuzhai/jz_MyOrder",
});
} else {}
},
null
);
}
},
getWeek(date) {
var weekArray = new Array("日", "一", "二", "三", "四", "五", "六");
var week = weekArray[new Date(date).getDay()]; //注意此处必须是先new一个Date
return "周" + week;
},
getDate(date) {
if (date) {
let arr = date.split("-");
return arr[1] + "月" + arr[2] + "日";
}
},
initOrderInfo(orderId) {
let msg = {
ID: orderId,
IsGetGuest: 1,
};
this.apipost(
"sellorder_post_GetOrderEntity",
msg,
(res) => {
if (res.resultCode == 1) {
this.orderData = res.data;
this.formatStatus(
this.orderData.model.OrderState,
this.orderData.model.IsChargeLossOrders,
this.orderData.model.IsApplyForCancel
);
} else {
this.orderData = {
result: -1,
};
}
console.log(res);
},
(e) => {}
);
},
formatStatus(status, loss, isCancel) {
loss = loss ? loss : -1;
//1、已申请;!=1未申请
if (loss == 1 || status == 4) {
this.orderStatus.code = -1;
this.orderStatus.text = "已取消";
this.showPayBtn = false;
} else if (status == 2 && isCancel != 1) {
this.orderStatus.code = 0;
this.orderStatus.text = "待付款";
this.showPayBtn = true;
} else if (status == 2 && isCancel == 1) {
this.orderStatus.code = -2;
this.orderStatus.text = "审核中";
this.showPayBtn = false;
} else if (status == 1) {
this.orderStatus.code = 1;
this.orderStatus.text = "正常";
this.showPayBtn = false;
}
},
// #ifdef MP-WEIXIN
goFukuan() {
if (this.submit || this.submitCancel) return;
var that = this;
var tempData = uni.getStorageSync("basedata");
var tempObj = [];
if (tempData && tempData.mall && tempData.mall.wechatmessage) {
tempObj = tempData.mall.wechatmessage;
}
var tmplIds = [];
if (tempObj && tempObj.length > 0) {
tempObj.forEach((x) => {
if (x.Name == "下单成功提醒" || x.Name == "订单取消提醒") {
tmplIds.push(x.MessageId);
}
});
}
uni.requestSubscribeMessage({
tmplIds: tmplIds,
complete(res) {
that.goZhifu();
},
});
},
//支付
goZhifu() {
this.submit = true;
let url = "/api/WeChatPay/GetTravlePayInfo";
let GoodsName = this.orderData.model.Title;
GoodsName = GoodsName.slice(0, 10);
this.request2({
url: url,
data: {
OrderId: this.orderData.model.OrderId,
GoodsName: GoodsName,
OrderPayType: 1,
OpenId: uni.getStorageSync("mall_UserInfo").OpenId,
},
},
(res) => {
try {
let orderInfo = JSON.parse(res.data);
console.log(orderInfo);
this.goPay(orderInfo);
} catch (e) {
uni.showToast({
title: '无法正常拉取微信支付,你可以稍后重试或联系销售人员线下转款',
icon: 'none'
})
setTimeout(() => {
this.submit = false;
}, 2000);
}
}
);
},
goPay(orderInfo) {
let that = this;
uni.requestPayment({
provider: "wxpay",
timeStamp: orderInfo.timeStamp,
nonceStr: orderInfo.nonceStr,
package: orderInfo.package,
signType: orderInfo.signType,
paySign: orderInfo.sign,
success: function(res) {
console.log("success", res);
uni.showToast({
title: "支付成功",
});
that.submit = false;
//todo
that.initOrderInfo(that.orderData.model.OrderId);
},
fail: function(err) {
console.log("fail:", err);
uni.showToast({
title: "支付失败",
icon: "none",
});
that.submit = false;
that.initOrderInfo(that.orderData.model.OrderId);
},
});
},
// #endif
// #ifdef MP-ALIPAY
//支付宝支付
goZhifuAli() {
this.submit = true;
let that = this;
uni.showLoading({
title: "支付中",
});
let url = "/api/WeChatPay/GetTravlePayInfo";
let GoodsName = this.orderData.model.Title;
this.request2({
url: url,
data: {
OrderId: this.orderData.model.OrderId,
GoodsName: GoodsName,
OrderPayType: 2,
OpenId: uni.getStorageSync("mall_UserInfo").OpenId,
},
},
(res) => {
if (res.data) {
this.$utils.SubscribeMsgAli(() => {
that.goPayAli(res.data);
});
} else {
uni.hideLoading();
uni.showToast({
title: "获取交易号失败",
duration: 2000,
});
}
}
);
},
goPayAli(tradeNO) {
let that = this;
my.tradePay({
tradeNO: tradeNO,
success: function(res) {
console.log("success", res);
const list = ["9000"];
if (list.includes(res.resultCode)) {
let obj = {
TradeNo: tradeNO,
OrderNo: that.orderData.model.OrderNo,
OrderId: that.orderData.model.OrderId,
preferPrice: that.orderData.model.PreferPrice,
};
that.payAliCallback(obj);
} else {
uni.hideLoading();
uni.showToast({
title: "支付失败",
icon: "none",
});
}
},
fail: function(err) {
console.log("fail:", err);
uni.hideLoading();
uni.showToast({
title: "支付失败",
icon: "none",
});
that.submit = false;
that.initOrderInfo(that.orderData.model.OrderId);
},
});
},
payAliCallback(obj) {
let that = this;
this.request2({
url: "/api/AliPay/ALiPayCallBackDmcNotify",
data: {
OrderNo: obj.OrderNo,
OrderId: obj.OrderId,
UserId: uni.getStorageSync("mall_UserInfo").UserId,
TradeNo: obj.TradeNo,
ProjectType: 2,
PreferPrice: obj.preferPrice,
},
},
(res) => {
that.submit = false;
uni.redirectTo({
url: "/pages/jiuzhai/paysuccess?PreferPrice=" +
obj.preferPrice +
"&isFrom=1",
});
uni.hideLoading();
},
(err) => {
console.log("err", err);
uni.hideLoading();
that.submit = false;
uni.showToast({
title: "支付失败",
icon: "none",
});
that.initOrderInfo(that.orderData.model.OrderId);
}
);
},
// #endif
},
};
</script>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment