订单列表,订单详情修改

This commit is contained in:
THK3121 2023-07-11 18:01:46 +08:00
parent 893ca1ed81
commit b8178bdf2b
5 changed files with 2298 additions and 2173 deletions

View File

@ -36,8 +36,11 @@
</view> </view>
<!--预售代付款--> <!--预售代付款-->
<view v-else class="presell_bg_header"> <view v-else class="presell_bg_header">
<view class='header presell_header' :style="{ 'background-image': `url(${domain}/static/diy/presell_header${keyColor}.png)`}"> <view class='header presell_header'
<view class="presell_payment" v-if="orderInfo.orderList"><text class="iconfont icon-shijian1"></text>{{orderInfo.orderList[0].orderProduct[0].cart_info.productPresell.presell_type==1?'待支付':'待付定金'}}</view> :style="{ 'background-image': `url(${domain}/static/diy/presell_header${keyColor}.png)`}">
<view class="presell_payment" v-if="orderInfo.orderList"><text
class="iconfont icon-shijian1"></text>{{orderInfo.orderList[0].orderProduct[0].cart_info.productPresell.presell_type==1?'待支付':'待付定金'}}
</view>
<view class='data'> <view class='data'>
<view class='state'>请在{{orderInfo.cancel_time}}前完成支付,超时订单将自动取消</view> <view class='state'>请在{{orderInfo.cancel_time}}前完成支付,超时订单将自动取消</view>
</view> </view>
@ -54,7 +57,8 @@
</view> </view>
<!-- 店铺商品列表 --> <!-- 店铺商品列表 -->
<view class="order-wrapper" v-for="(item,index) in orderInfo.orderList" :key="index"> <view class="order-wrapper" v-for="(item,index) in orderInfo.orderList" :key="index">
<view class="title" @click="goStore(item)">{{item.merchant.mer_name}}<text class="iconfont icon-xiangyou"></text> <view class="title" @click="goStore(item)">{{item.merchant.mer_name}}<text
class="iconfont icon-xiangyou"></text>
</view> </view>
<view class="goods-box"> <view class="goods-box">
<view v-for="(goods,j) in item.orderProduct" :key="goods.order_product_id" @click="goProduct(goods)"> <view v-for="(goods,j) in item.orderProduct" :key="goods.order_product_id" @click="goProduct(goods)">
@ -62,16 +66,21 @@
<view class="item"> <view class="item">
<image :src="goods.cart_info.product.image"></image> <image :src="goods.cart_info.product.image"></image>
<view class="info-box"> <view class="info-box">
<view class="name line1"><text class="event_name event_bg">预售</text>{{goods.cart_info.product.store_name}}</view> <view class="name line1"><text
class="event_name event_bg">预售</text>{{goods.cart_info.product.store_name}}</view>
<view class="msg">{{goods.cart_info.productAttr.sku}}</view> <view class="msg">{{goods.cart_info.productAttr.sku}}</view>
<view class="event_ship event_color">发货时间 <view class="event_ship event_color">发货时间
<!--全款预售--> <!--全款预售-->
<text v-if="goods.cart_info.productPresell.presell_type === 1">{{ goods.cart_info.productPresell.delivery_type === 1 ? '支付成功后' : '预售结束后' }}{{ goods.cart_info.productPresell.delivery_day }}天内</text> <text
v-if="goods.cart_info.productPresell.presell_type === 1">{{ goods.cart_info.productPresell.delivery_type === 1 ? '支付成功后' : '预售结束后' }}{{ goods.cart_info.productPresell.delivery_day }}天内</text>
<!--定金预售--> <!--定金预售-->
<text v-if="goods.cart_info.productPresell.presell_type === 2">{{ goods.cart_info.productPresell.delivery_type === 1 ? '支付尾款后' : '预售结束后' }}{{ goods.cart_info.productPresell.delivery_day }}天内</text> <text
v-if="goods.cart_info.productPresell.presell_type === 2">{{ goods.cart_info.productPresell.delivery_type === 1 ? '支付尾款后' : '预售结束后' }}{{ goods.cart_info.productPresell.delivery_day }}天内</text>
</view> </view>
</view> </view>
<view class="num"><text class="font-color">{{goods.cart_info.productPresellAttr.presell_price}}</text></br>x{{goods.product_num}}</view> <view class="num"><text
class="font-color">{{goods.cart_info.productPresellAttr.presell_price}}</text></br>x{{goods.product_num}}
</view>
<view class="bnt"> <view class="bnt">
立即付款 立即付款
</view> </view>
@ -84,8 +93,10 @@
</view> </view>
<view class="progress_list"> <view class="progress_list">
<view class="progress_name">阶段二 未开始</view> <view class="progress_name">阶段二 未开始</view>
<view class="progress_price">商品尾款 <text class="align_right">{{ item.presellOrder.pay_price }}</text></view> <view class="progress_price">商品尾款 <text class="align_right">{{ item.presellOrder.pay_price }}</text>
<view class="progress_pay">尾款需付款<text class="align_right gColor">{{ item.presellOrder.pay_price }}</text></view> </view>
<view class="progress_pay">尾款需付款<text
class="align_right gColor">{{ item.presellOrder.pay_price }}</text></view>
</view> </view>
</view> </view>
@ -98,9 +109,10 @@
<view class="price">{{goods.cart_info.productAttr.price}}</view> <view class="price">{{goods.cart_info.productAttr.price}}</view>
</view> </view>
<view class="num">x{{goods.product_num}}</view> <view class="num">x{{goods.product_num}}</view>
<view class="bnt" @tap.stop='pay_open(orderInfo.order_id)'> <view class="bnt" @tap.stop='pay_open(orderInfo.order_id)' v-if="item.stauts == 3">
立即付款 立即付款
</view> </view>
</view> </view>
</view> </view>
</view> </view>
@ -136,19 +148,21 @@
<view>支付方式</view> <view>支付方式</view>
<view class='conter' v-if="orderInfo.pay_type==0">余额支付</view> <view class='conter' v-if="orderInfo.pay_type==0">余额支付</view>
<view class='conter' v-if="orderInfo.pay_type==4 || orderInfo.pay_type==5">支付宝支付</view> <view class='conter' v-if="orderInfo.pay_type==4 || orderInfo.pay_type==5">支付宝支付</view>
<view class='conter' <view class='conter' v-if="orderInfo.pay_type==1 || orderInfo.pay_type==2 || orderInfo.pay_type==3">微信支付
v-if="orderInfo.pay_type==1 || orderInfo.pay_type==2 || orderInfo.pay_type==3">微信支付</view> </view>
<view class='conter' <view class='conter' v-if="orderInfo.pay_type==8 ">先货后款</view>
v-if="orderInfo.pay_type==8 ">先货后款</view>
</view> </view>
</view> </view>
<view v-if="orderInfo.orderList && orderInfo.orderList[0].is_virtual == 1 && orderInfo.orderList[0].order_extend" class='wrapper'> <view v-if="orderInfo.orderList && orderInfo.orderList[0].is_virtual == 1 && orderInfo.orderList[0].order_extend"
<view v-for="(item,index) in orderInfo.orderList[0].order_extend" :key="index" v-if="item" class='item acea-row row-between'> class='wrapper'>
<view v-for="(item,index) in orderInfo.orderList[0].order_extend" :key="index" v-if="item"
class='item acea-row row-between'>
<view>{{index}}</view> <view>{{index}}</view>
<view v-if="!Array.isArray(item)" class='conter'>{{item}}</view> <view v-if="!Array.isArray(item)" class='conter'>{{item}}</view>
<view v-else class='conter virtual_image'> <view v-else class='conter virtual_image'>
<image v-for="(pic,i) in item" :key="i" class="picture" :src="pic" @click="getPhotoClickIdx(item,i)"></image> <image v-for="(pic,i) in item" :key="i" class="picture" :src="pic" @click="getPhotoClickIdx(item,i)">
</image>
</view> </view>
</view> </view>
</view> </view>
@ -167,7 +181,7 @@
</view> </view>
<view class='item acea-row row-between'> <view class='item acea-row row-between'>
<view>实付款</view> <view>实付款</view>
<view class='conter' style="color: black;" v-if="this.pay_type == 8">先货后款 实付: ¥<text style="color: #E93323;" > <view class='conter' style="color: black;" v-if="this.pay_type == 8">先货后款 实付: ¥<text style="color: #E93323;">
{{orderInfo.pay_price}} {{orderInfo.pay_price}}
</text></view> </text></view>
<view class='conter' style="color: black;" v-else>{{orderInfo.pay_price}}</view> <view class='conter' style="color: black;" v-else>{{orderInfo.pay_price}}</view>
@ -176,7 +190,8 @@
<image src="@/static/images/wenhao.png" mode="" @click="Settlement"></image> <image src="@/static/images/wenhao.png" mode="" @click="Settlement"></image>
</view> </view>
<view class="conters" v-if="this.pay_type == 8"> <view class="conters" v-if="this.pay_type == 8">
结算周期:{{orderInfo.orderList[0].merchant.settle_cycle}} 日利率:{{orderInfo.orderList[0].merchant.interest_rate}}% 结算周期:{{orderInfo.orderList[0].merchant.settle_cycle}}
日利率:{{orderInfo.orderList[0].merchant.interest_rate}}%
</view> </view>
</view> </view>
@ -184,7 +199,8 @@
<view class="content-clip"></view> <view class="content-clip"></view>
<view class='footer acea-row row-right row-middle'> <view class='footer acea-row row-right row-middle'>
<view class="bnt cancel" @click.stop="cancelOrder">取消订单</view> <view class="bnt cancel" @click.stop="cancelOrder">取消订单</view>
<view class='bnt bgColor' @tap='pay_open(orderInfo.order_id)'>立即付款</view> <view class='bnt bgColor' @tap='pay_open(orderInfo.order_id)' v-if="orderInfo.pay_type == 8">立即结算</view>
<view class='bnt bgColor' @tap='pay_open(orderInfo.order_id)' v-else>立即付款</view>
</view> </view>
</view> </view>
<authorize @onLoadFun="onLoadFun" :isAuto="isAuto" :isShowAuth="isShowAuth" @authColse="authColse"></authorize> <authorize @onLoadFun="onLoadFun" :isAuto="isAuto" :isShowAuth="isShowAuth" @authColse="authColse"></authorize>
@ -218,7 +234,7 @@
let app = getApp(); let app = getApp();
import { HTTP_REQUEST_URL } from '@/config/app'; import { HTTP_REQUEST_URL } from '@/config/app';
import { goShopDetail } from '@/libs/order.js' import { goShopDetail } from '@/libs/order.js'
import { groupOrderDetail, orderAgain, orderTake, orderDel, unOrderCancel} from '@/api/order.js'; import { groupOrderDetail, orderAgain, orderTake, orderDel, unOrderCancel } from '@/api/order.js';
import { openOrderRefundSubscribe } from '@/utils/SubscribeMessage.js'; import { openOrderRefundSubscribe } from '@/utils/SubscribeMessage.js';
import { getUserInfo } from '@/api/user.js'; import { getUserInfo } from '@/api/user.js';
import payment from '@/components/payment'; import payment from '@/components/payment';
@ -271,35 +287,35 @@
], ],
pay_close: false, pay_close: false,
pay_order_id: '', pay_order_id: '',
pay_type:'',// pay_type: '', //
totalPrice: '0', totalPrice: '0',
isAuto: false, // isAuto: false, //
isShowAuth: false, // isShowAuth: false, //
imgUrl:HTTP_REQUEST_URL, imgUrl: HTTP_REQUEST_URL,
invoice: { invoice: {
invoice: false, invoice: false,
add: false, add: false,
}, },
show:false, show: false,
credit_buy:'', credit_buy: '',
product_type:0, product_type: 0,
be_overdue:'',// be_overdue: '', //
be_overhours:'',// be_overhours: '', //
}; };
}, },
watch: { watch: {
alipay_open(n){ alipay_open(n) {
this.payMode[1].payStatus = n this.payMode[1].payStatus = n
}, },
yue_pay_status(n){ yue_pay_status(n) {
this.payMode[2].payStatus = n this.payMode[2].payStatus = n
} }
}, },
computed: configMap({hide_mer_status:0,alipay_open:0,yue_pay_status:0}, computed: configMap({ hide_mer_status: 0, alipay_open: 0, yue_pay_status: 0 },
mapGetters(['isLogin','uid','viewColor','keyColor',])), mapGetters(['isLogin', 'uid', 'viewColor', 'keyColor', ])),
onLoad: function(options) { onLoad: function(options) {
this.credit_buy=options.credit_buy this.credit_buy = options.credit_buy
if(options.product_type)this.product_type=options.product_type if (options.product_type) this.product_type = options.product_type
if (options.order_id) { if (options.order_id) {
this.$set(this, 'order_id', options.order_id); this.$set(this, 'order_id', options.order_id);
} }
@ -331,11 +347,11 @@
mounted: function() {}, mounted: function() {},
methods: { methods: {
// //
Settlement(){ Settlement() {
this.show=true this.show = true
}, },
close() { close() {
this.show=false this.show = false
}, },
// //
getPhotoClickIdx(list, idx) { getPhotoClickIdx(list, idx) {
@ -345,19 +361,19 @@
}); });
}, },
// //
goStore(item){ goStore(item) {
if(this.hide_mer_status != 1){ if (this.hide_mer_status != 1) {
uni.navigateTo({ uni.navigateTo({
url:`/pages/store/home/index?id=${item.merchant.mer_id}` url: `/pages/store/home/index?id=${item.merchant.mer_id}`
}) })
} }
}, },
// //
goProduct(goods){ goProduct(goods) {
goods.activity_id = goods.cart_info && goods.cart_info.activeSku && goods.cart_info.activeSku.product_group_id goods.activity_id = goods.cart_info && goods.cart_info.activeSku && goods.cart_info.activeSku.product_group_id
goShopDetail(goods, '').then(res => { goShopDetail(goods, '').then(res => {
uni.navigateTo({ uni.navigateTo({
url:`/pages/goods_details/index?id=${goods.product_id}` url: `/pages/goods_details/index?id=${goods.product_id}`
}) })
}) })
}, },
@ -415,7 +431,7 @@
this.pay_close = false; this.pay_close = false;
this.pay_order_id = ''; this.pay_order_id = '';
uni.redirectTo({ uni.redirectTo({
url:'/pages/users/order_list/index?status=1' url: '/pages/users/order_list/index?status=1'
}) })
}, },
/** /**
@ -459,21 +475,21 @@
uni.showLoading({ uni.showLoading({
title: "正在加载中" title: "正在加载中"
}); });
groupOrderDetail(this.order_id,this.product_type).then(res => { groupOrderDetail(this.order_id, this.product_type).then(res => {
let _type = 0; let _type = 0;
uni.hideLoading(); uni.hideLoading();
that.$set(that, 'orderInfo', res.data); that.$set(that, 'orderInfo', res.data);
this.pay_type=this.orderInfo.pay_type this.pay_type = this.orderInfo.pay_type
if(this.orderInfo.interest.start_time){ if (this.orderInfo.interest !== null) {
this.moerTime(this.orderInfo.interest.start_time) this.moerTime(this.orderInfo.interest.start_time)
} }
console.log(that.orderInfo.interest); console.log(that.orderInfo.interest);
}).catch(err => { }).catch(err => {
// console.log(err) console.log(err)
uni.hideLoading(); uni.hideLoading();
that.$util.Tips({ that.$util.Tips({
title: err title: err
}, '/pages/users/order_list/index'); });
}); });
}, },
/** /**
@ -515,18 +531,18 @@
}); });
}, },
// //
moerTime(autoTime){ moerTime(autoTime) {
var date1 = (Date.parse(new Date()))/1000; var date1 = (Date.parse(new Date())) / 1000;
var date2 = (Date.parse(new Date(autoTime)))/1000; var date2 = (Date.parse(new Date(autoTime))) / 1000;
var date3 = (date2- date1)*1000; var date3 = (date2 - date1) * 1000;
this.be_overdue = Math.floor(date3 / (24 * 3600 * 1000)); this.be_overdue = Math.floor(date3 / (24 * 3600 * 1000));
var leave1 = date3 % (24 * 3600 * 1000); // var leave1 = date3 % (24 * 3600 * 1000); //
this.be_overhours = Math.floor(leave1 / (3600 * 1000)); this.be_overhours = Math.floor(leave1 / (3600 * 1000));
if(this.be_overdue == 0 || this.be_overdue < 0 ){ if (this.be_overdue == 0 || this.be_overdue < 0) {
var date1 = (Date.parse(new Date()))/1000; var date1 = (Date.parse(new Date())) / 1000;
var date2 = (Date.parse(new Date(autoTime)))/1000; var date2 = (Date.parse(new Date(autoTime))) / 1000;
var date3 = (date2- date1)*1000; var date3 = (date2 - date1) * 1000;
this.be_overdue =Math.floor(date3 / (24 * 3600 * 1000)); this.be_overdue = Math.floor(date3 / (24 * 3600 * 1000));
} }
} }
} }
@ -549,15 +565,18 @@
} }
</style> </style>
<style scoped lang="scss"> <style scoped lang="scss">
.event_bg{ .event_bg {
background: #FF7F00; background: #FF7F00;
} }
.event_color{
.event_color {
color: #FF7F00; color: #FF7F00;
} }
.presell_bg_header { .presell_bg_header {
background: linear-gradient(90deg, var(--view-bntColor21) 0%,var(--view-bntColor22) 100%); background: linear-gradient(90deg, var(--view-bntColor21) 0%, var(--view-bntColor22) 100%);
} }
.goodCall { .goodCall {
text-align: center; text-align: center;
width: 100%; width: 100%;
@ -568,10 +587,12 @@
line-height: 86rpx; line-height: 86rpx;
background: #fff; background: #fff;
color: #282828; color: #282828;
.icon-kefu { .icon-kefu {
font-size: 32rpx; font-size: 32rpx;
margin-right: 15rpx; margin-right: 15rpx;
} }
/* #ifdef MP */ /* #ifdef MP */
button { button {
display: flex; display: flex;
@ -581,89 +602,110 @@
font-size: 30rpx; font-size: 30rpx;
color: #e93323; color: #e93323;
} }
/* #endif */ /* #endif */
} }
.order-details .header { .order-details .header {
padding: 0 30rpx; padding: 0 30rpx;
height: 150rpx; height: 150rpx;
background-image: linear-gradient(to right, var(--view-bntColor21) 0%, var(--view-bntColor22) 100%); background-image: linear-gradient(to right, var(--view-bntColor21) 0%, var(--view-bntColor22) 100%);
&.presell_header{
&.presell_header {
background-repeat: no-repeat; background-repeat: no-repeat;
background-size: cover; background-size: cover;
padding: 35rpx 50rpx; padding: 35rpx 50rpx;
.data{
.data {
margin: 8rpx 0 0 26rpx; margin: 8rpx 0 0 26rpx;
.state{
.state {
font-weight: normal; font-weight: normal;
font-size: 24rpx; font-size: 24rpx;
} }
} }
} }
} }
.order-details .header.on { .order-details .header.on {
background-color: #666 !important; background-color: #666 !important;
} }
.order-details .header .pictrue { .order-details .header .pictrue {
width: 110rpx; width: 110rpx;
height: 110rpx; height: 110rpx;
} }
.order-details .header .pictrue image { .order-details .header .pictrue image {
width: 100%; width: 100%;
height: 100%; height: 100%;
} }
.order-details .header .data { .order-details .header .data {
color: rgba(255, 255, 255, 0.8); color: rgba(255, 255, 255, 0.8);
font-size: 24rpx; font-size: 24rpx;
margin-left: 27rpx; margin-left: 27rpx;
} }
.order-details .header .data.on { .order-details .header .data.on {
margin-left: 0; margin-left: 0;
} }
.order-details .header .data .state { .order-details .header .data .state {
font-size: 30rpx; font-size: 30rpx;
font-weight: bold; font-weight: bold;
color: #fff; color: #fff;
margin-bottom: 7rpx; margin-bottom: 7rpx;
} }
.presell_header .presell_payment{
.presell_header .presell_payment {
color: #fff; color: #fff;
font-size: 30rpx; font-size: 30rpx;
font-weight: bold; font-weight: bold;
margin-left: 26rpx; margin-left: 26rpx;
.iconfont{
.iconfont {
font-weight: normal; font-weight: normal;
margin-right: 8rpx; margin-right: 8rpx;
} }
} }
.order-details .nav { .order-details .nav {
background-color: #fff; background-color: #fff;
font-size: 26rpx; font-size: 26rpx;
color: #282828; color: #282828;
padding: 25rpx 0; padding: 25rpx 0;
} }
.order-details .nav .navCon { .order-details .nav .navCon {
padding: 0 40rpx; padding: 0 40rpx;
} }
.order-details .nav .on { .order-details .nav .on {
color: var(--view-theme); color: var(--view-theme);
} }
.order-details .nav .progress { .order-details .nav .progress {
padding: 0 65rpx; padding: 0 65rpx;
margin-top: 10rpx; margin-top: 10rpx;
} }
.order-details .nav .progress .line { .order-details .nav .progress .line {
width: 100rpx; width: 100rpx;
height: 2rpx; height: 2rpx;
background-color: #939390; background-color: #939390;
} }
.order-details .nav .progress .iconfont { .order-details .nav .progress .iconfont {
font-size: 25rpx; font-size: 25rpx;
color: #939390; color: #939390;
margin-top: -2rpx; margin-top: -2rpx;
&.t-color{
&.t-color {
color: var(--view-theme); color: var(--view-theme);
} }
} }
.order-details .address { .order-details .address {
font-size: 26rpx; font-size: 26rpx;
color: #868686; color: #868686;
@ -671,63 +713,77 @@
margin-top: 13rpx; margin-top: 13rpx;
padding: 35rpx 30rpx; padding: 35rpx 30rpx;
} }
.order-details .address .name { .order-details .address .name {
font-size: 30rpx; font-size: 30rpx;
color: #282828; color: #282828;
margin-bottom: 15rpx; margin-bottom: 15rpx;
} }
.order-details .address .name .phone { .order-details .address .name .phone {
margin-left: 40rpx; margin-left: 40rpx;
} }
.order-details .line { .order-details .line {
width: 100%; width: 100%;
height: 3rpx; height: 3rpx;
} }
.order-details .line image { .order-details .line image {
width: 100%; width: 100%;
height: 100%; height: 100%;
display: block; display: block;
} }
.order-details .wrapper { .order-details .wrapper {
background-color: #fff; background-color: #fff;
margin-top: 12rpx; margin-top: 12rpx;
padding: 30rpx; padding: 30rpx;
} }
.order-details .wrapper .item { .order-details .wrapper .item {
font-size: 28rpx; font-size: 28rpx;
color: #282828; color: #282828;
} }
.order-details .wrapper .item~.item { .order-details .wrapper .item~.item {
margin-top: 20rpx; margin-top: 20rpx;
} }
.order-details .wrapper .item .conter { .order-details .wrapper .item .conter {
color: #868686; color: #868686;
width: 460rpx; width: 460rpx;
text-align: right; text-align: right;
} }
.order-details .wrapper .item .conters { .order-details .wrapper .item .conters {
color: #868686; color: #868686;
width: 100%; width: 100%;
text-align: right; text-align: right;
image{
image {
margin-left: 5px; margin-left: 5px;
width: 15px; width: 15px;
height: 15px; height: 15px;
} }
} }
.order-details .wrapper .item .virtual_image { .order-details .wrapper .item .virtual_image {
margin-left: 50rpx; margin-left: 50rpx;
} }
.order-details .wrapper .item .virtual_image .picture{
.order-details .wrapper .item .virtual_image .picture {
width: 106rpx; width: 106rpx;
height: 106rpx; height: 106rpx;
border-radius: 8rpx; border-radius: 8rpx;
margin-right: 10rpx; margin-right: 10rpx;
&:last-child{
&:last-child {
margin-right: 0; margin-right: 0;
} }
} }
.order-details .wrapper .item .conter .copy { .order-details .wrapper .item .conter .copy {
font-size: 20rpx; font-size: 20rpx;
color: #333; color: #333;
@ -736,15 +792,18 @@
padding: 3rpx 15rpx; padding: 3rpx 15rpx;
margin-left: 24rpx; margin-left: 24rpx;
} }
.order-details .wrapper .actualPay { .order-details .wrapper .actualPay {
border-top: 1px solid #eee; border-top: 1px solid #eee;
margin-top: 30rpx; margin-top: 30rpx;
padding-top: 30rpx; padding-top: 30rpx;
} }
.order-details .wrapper .actualPay .money { .order-details .wrapper .actualPay .money {
font-weight: bold; font-weight: bold;
font-size: 30rpx; font-size: 30rpx;
} }
.order-details .footer { .order-details .footer {
width: 100%; width: 100%;
position: fixed; position: fixed;
@ -757,11 +816,13 @@
height: calc(100rpx + env(safe-area-inset-bottom)); /// IOS>11.2/ height: calc(100rpx + env(safe-area-inset-bottom)); /// IOS>11.2/
box-sizing: border-box; box-sizing: border-box;
} }
.content-clip{
.content-clip {
height: 120rpx; height: 120rpx;
height: calc(120rpx+ constant(safe-area-inset-bottom)); /// IOS<11.2/ height: calc(120rpx+ constant(safe-area-inset-bottom)); /// IOS<11.2/
height: calc(120rpx + env(safe-area-inset-bottom)); /// IOS>11.2/ height: calc(120rpx + env(safe-area-inset-bottom)); /// IOS>11.2/
} }
.order-details .footer .bnt { .order-details .footer .bnt {
width: 176rpx; width: 176rpx;
height: 60rpx; height: 60rpx;
@ -771,21 +832,26 @@
color: #fff; color: #fff;
font-size: 27rpx; font-size: 27rpx;
} }
.bgColor{
.bgColor {
background-color: var(--view-theme); background-color: var(--view-theme);
} }
.order-details .footer .bnt.cancel { .order-details .footer .bnt.cancel {
color: #aaa; color: #aaa;
border: 1px solid #ddd; border: 1px solid #ddd;
} }
.order-details .footer .bnt~.bnt { .order-details .footer .bnt~.bnt {
margin-left: 18rpx; margin-left: 18rpx;
} }
.order-details .writeOff { .order-details .writeOff {
background-color: #fff; background-color: #fff;
margin-top: 13rpx; margin-top: 13rpx;
padding-bottom: 30rpx; padding-bottom: 30rpx;
} }
.order-details .writeOff .title { .order-details .writeOff .title {
font-size: 30rpx; font-size: 30rpx;
color: #282828; color: #282828;
@ -794,6 +860,7 @@
padding: 0 30rpx; padding: 0 30rpx;
line-height: 87rpx; line-height: 87rpx;
} }
.order-details .writeOff .grayBg { .order-details .writeOff .grayBg {
background-color: #f2f5f7; background-color: #f2f5f7;
width: 590rpx; width: 590rpx;
@ -802,26 +869,31 @@
margin: 50rpx auto 0 auto; margin: 50rpx auto 0 auto;
padding-top: 55rpx; padding-top: 55rpx;
} }
.order-details .writeOff .grayBg .pictrue { .order-details .writeOff .grayBg .pictrue {
width: 290rpx; width: 290rpx;
height: 290rpx; height: 290rpx;
margin: 0 auto; margin: 0 auto;
} }
.order-details .writeOff .grayBg .pictrue image { .order-details .writeOff .grayBg .pictrue image {
width: 100%; width: 100%;
height: 100%; height: 100%;
display: block; display: block;
} }
.order-details .writeOff .gear { .order-details .writeOff .gear {
width: 590rpx; width: 590rpx;
height: 30rpx; height: 30rpx;
margin: 0 auto; margin: 0 auto;
} }
.order-details .writeOff .gear image { .order-details .writeOff .gear image {
width: 100%; width: 100%;
height: 100%; height: 100%;
display: block; display: block;
} }
.order-details .writeOff .num { .order-details .writeOff .num {
background-color: #f0c34c; background-color: #f0c34c;
width: 590rpx; width: 590rpx;
@ -833,32 +905,39 @@
text-align: center; text-align: center;
padding-top: 4rpx; padding-top: 4rpx;
} }
.order-details .writeOff .rules { .order-details .writeOff .rules {
margin: 46rpx 30rpx 0 30rpx; margin: 46rpx 30rpx 0 30rpx;
border-top: 1px solid #f0f0f0; border-top: 1px solid #f0f0f0;
padding-top: 10rpx; padding-top: 10rpx;
} }
.order-details .writeOff .rules .item { .order-details .writeOff .rules .item {
margin-top: 20rpx; margin-top: 20rpx;
} }
.order-details .writeOff .rules .item .rulesTitle { .order-details .writeOff .rules .item .rulesTitle {
font-size: 28rpx; font-size: 28rpx;
color: #282828; color: #282828;
} }
.order-details .writeOff .rules .item .rulesTitle .iconfont { .order-details .writeOff .rules .item .rulesTitle .iconfont {
font-size: 30rpx; font-size: 30rpx;
color: #333; color: #333;
margin-right: 8rpx; margin-right: 8rpx;
margin-top: 5rpx; margin-top: 5rpx;
} }
.order-details .writeOff .rules .item .info { .order-details .writeOff .rules .item .info {
font-size: 28rpx; font-size: 28rpx;
color: #999; color: #999;
margin-top: 7rpx; margin-top: 7rpx;
} }
.order-details .writeOff .rules .item .info .time { .order-details .writeOff .rules .item .info .time {
margin-left: 20rpx; margin-left: 20rpx;
} }
.order-details .map { .order-details .map {
height: 86rpx; height: 86rpx;
font-size: 30rpx; font-size: 30rpx;
@ -869,6 +948,7 @@
background-color: #fff; background-color: #fff;
padding: 0 30rpx; padding: 0 30rpx;
} }
.order-details .map .place { .order-details .map .place {
font-size: 26rpx; font-size: 26rpx;
width: 176rpx; width: 176rpx;
@ -877,20 +957,24 @@
line-height: 50rpx; line-height: 50rpx;
text-align: center; text-align: center;
} }
.order-details .map .place .iconfont { .order-details .map .place .iconfont {
font-size: 27rpx; font-size: 27rpx;
height: 27rpx; height: 27rpx;
line-height: 27rpx; line-height: 27rpx;
margin: 2rpx 3rpx 0 0; margin: 2rpx 3rpx 0 0;
} }
.order-details .address .name .iconfont { .order-details .address .name .iconfont {
font-size: 34rpx; font-size: 34rpx;
margin-left: 10rpx; margin-left: 10rpx;
} }
.refund { .refund {
padding: 0 30rpx 30rpx; padding: 0 30rpx 30rpx;
margin-top: 24rpx; margin-top: 24rpx;
background-color: #fff; background-color: #fff;
.title { .title {
display: flex; display: flex;
align-items: center; align-items: center;
@ -898,68 +982,80 @@
color: #333; color: #333;
height: 86rpx; height: 86rpx;
border-bottom: 1px solid #f5f5f5; border-bottom: 1px solid #f5f5f5;
image { image {
width: 32rpx; width: 32rpx;
height: 32rpx; height: 32rpx;
margin-right: 10rpx; margin-right: 10rpx;
} }
} }
.con { .con {
padding-top: 25rpx; padding-top: 25rpx;
font-size: 28rpx; font-size: 28rpx;
color: #868686; color: #868686;
} }
} }
.order-wrapper{
.order-wrapper {
margin-top: 15rpx; margin-top: 15rpx;
.title{
.title {
display: flex; display: flex;
align-items: center; align-items: center;
height: 86rpx; height: 86rpx;
padding:0 30rpx; padding: 0 30rpx;
border-bottom: 1px solid #f0f0f0; border-bottom: 1px solid #f0f0f0;
background-color: #fff; background-color: #fff;
.iconfont{
.iconfont {
font-size: 24rpx; font-size: 24rpx;
color: #666; color: #666;
margin-top: 6rpx; margin-top: 6rpx;
margin-left: 5rpx; margin-left: 5rpx;
} }
} }
.goods-box{
.item{ .goods-box {
.item {
display: flex; display: flex;
padding: 25rpx 30rpx 25rpx 30rpx; padding: 25rpx 30rpx 25rpx 30rpx;
background-color: #fff; background-color: #fff;
position: relative; position: relative;
image{
image {
width: 130rpx; width: 130rpx;
height: 130rpx; height: 130rpx;
border-radius: 16rpx; border-radius: 16rpx;
} }
.info-box{
.info-box {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
justify-content: space-between; justify-content: space-between;
margin-left: 25rpx; margin-left: 25rpx;
width: 450rpx; width: 450rpx;
.msg{
.msg {
color: #868686; color: #868686;
font-size: 20rpx; font-size: 20rpx;
} }
.price{
.price {
font-size: 26rpx; font-size: 26rpx;
color: var(--view-priceColor); color: var(--view-priceColor);
} }
} }
.num{
.num {
flex: 1; flex: 1;
text-align: right; text-align: right;
font-size: 26rpx; font-size: 26rpx;
color: #868686; color: #868686;
} }
} }
.event_name{
.event_name {
display: inline-block; display: inline-block;
margin-right: 9rpx; margin-right: 9rpx;
color: #fff; color: #fff;
@ -969,14 +1065,17 @@
text-align: center; text-align: center;
border-radius: 6rpx; border-radius: 6rpx;
} }
.event_ship{
.event_ship {
font-size: 20rpx; font-size: 20rpx;
margin-top: 10rpx; margin-top: 10rpx;
} }
} }
.event_progress{
.event_progress {
margin-top: 20rpx; margin-top: 20rpx;
background: #fff; background: #fff;
.progress_name { .progress_name {
padding-left: 30rpx; padding-left: 30rpx;
height: 60rpx; height: 60rpx;
@ -985,7 +1084,8 @@
font-weight: bold; font-weight: bold;
position: relative; position: relative;
color: var(--view-theme); color: var(--view-theme);
&::before{
&::before {
content: ""; content: "";
display: inline-block; display: inline-block;
width: 5rpx; width: 5rpx;
@ -996,19 +1096,23 @@
left: 0; left: 0;
} }
} }
.align_right{
.align_right {
float: right; float: right;
font-weight: bold; font-weight: bold;
} }
.gColor{
.gColor {
color: var(--view-theme); color: var(--view-theme);
} }
.progress_price{
.progress_price {
padding: 20rpx 30rpx; padding: 20rpx 30rpx;
color: #999999; color: #999999;
font-size: 22rpx; font-size: 22rpx;
} }
.progress_pay{
.progress_pay {
padding: 25rpx 30rpx; padding: 25rpx 30rpx;
background: var(--view-minorColor); background: var(--view-minorColor);
font-size: 26rpx; font-size: 26rpx;
@ -1016,7 +1120,8 @@
} }
} }
} }
.bnt{
.bnt {
width: 96px; width: 96px;
height: 35px; height: 35px;
background: linear-gradient(180deg, #F98649 0%, #F34E45 100%); background: linear-gradient(180deg, #F98649 0%, #F34E45 100%);
@ -1030,14 +1135,15 @@
color: white; color: white;
} }
.stybgc{ .stybgc {
background-color: rgba(0, 0, 0,0.5); background-color: rgba(0, 0, 0, 0.5);
width: 100vw; width: 100vw;
height: 100vh; height: 100vh;
position: relative; position: relative;
.warp { .warp {
position: absolute; position: absolute;
top:30vh; top: 30vh;
left: 30px; left: 30px;
.guanbi { .guanbi {
@ -1056,6 +1162,7 @@
width: 320px; width: 320px;
padding-bottom: 20px; padding-bottom: 20px;
border-radius: 10px; border-radius: 10px;
span { span {
display: block; display: block;
width: 290px; width: 290px;
@ -1085,5 +1192,4 @@
} }
} }
} }
</style> </style>

View File

@ -207,7 +207,7 @@
data: { data: {
product_id: '', product_id: '',
unique: "", unique: "",
number: '' number: 1
}, },
on_line: '' on_line: ''
} }
@ -256,7 +256,14 @@
}, },
// //
creat() { creat() {
if (this.on_line == 1) { if (this.on_line == 1) {
if(this.data.number <1){
this.show=false
this.$util.Tips({
title: '入库数量不得小于一件'
})
}else{
postImport(this.mer_id, this.data).then(res => { postImport(this.mer_id, this.data).then(res => {
console.log(res); console.log(res);
this.show = false this.show = false
@ -270,6 +277,7 @@
}) })
}) })
} }
}
if (this.on_line == 0) { if (this.on_line == 0) {
console.log('12'); console.log('12');
navigateTo(1, '/pages/users/online_warehousing/index', { navigateTo(1, '/pages/users/online_warehousing/index', {
@ -722,6 +730,7 @@
width: 100%; width: 100%;
margin: auto; margin: auto;
padding: 10px; padding: 10px;
z-index: 0;
h4 { h4 {
font-weight: 400; font-weight: 400;

View File

@ -3,7 +3,7 @@
<view class="top"> <view class="top">
<!-- --> <!-- -->
</view> </view>
<view class="bgc_img" v-if="!this.shopList"> <view class="bgc_img" v-if="this.shopList == ![]">
<image src="@/static/images/empty-box.png" mode="widthFix"></image> <image src="@/static/images/empty-box.png" mode="widthFix"></image>
<view class="txt"> <view class="txt">
暂无商品订单~ 暂无商品订单~

View File

@ -67,7 +67,7 @@
{{item.group_order_sn}} {{item.group_order_sn}}
</view> </view>
<view class='t-color'> <view class='t-color'>
{{ item.orderList[0].activity_type === 2 && item.orderList[0].orderProduct[0].cart_info.productPresell.presell_type ==2 ? "待付定金" : "待付款" }} {{item.pay_type == 3 ? "待付款" : "待结算" }}
</view> </view>
</view> </view>
<view v-for="(order,j) in item.orderList" :key="order.order_id+j"> <view v-for="(order,j) in item.orderList" :key="order.order_id+j">
@ -86,8 +86,7 @@
class="event_name event_bg">预售</text><text>{{goods.cart_info.product.store_name}}</text> class="event_name event_bg">预售</text><text>{{goods.cart_info.product.store_name}}</text>
<view class="event_ship event_color">发货时间 <view class="event_ship event_color">发货时间
<!--全款预售--> <!--全款预售-->
<text <text v-if="goods.cart_info.productPresell.presell_type === 1">
v-if="goods.cart_info.productPresell.presell_type === 1">
{{ goods.cart_info.productPresell.delivery_type === 1 ? '支付成功后' : '预售结束后' }}{{ goods.cart_info.productPresell.delivery_day }}天内 {{ goods.cart_info.productPresell.delivery_type === 1 ? '支付成功后' : '预售结束后' }}{{ goods.cart_info.productPresell.delivery_day }}天内
</text> </text>
<!--定金预售--> <!--定金预售-->
@ -101,11 +100,9 @@
<view>x{{goods.product_num}}</view> <view>x{{goods.product_num}}</view>
</view> </view>
</view> </view>
<view v-if="goods.cart_info.productPresell.presell_type === 2" <view v-if="goods.cart_info.productPresell.presell_type === 2" class="event_price">
class="event_price">
定金待支付 <text class="t-color">{{ order.pay_price }}</text> 定金待支付 <text class="t-color">{{ order.pay_price }}</text>
尾款待支付 <text 尾款待支付 <text class="t-color">{{ order.presellOrder.pay_price }}</text>
class="t-color">{{ order.presellOrder.pay_price }}</text>
</view> </view>
</view> </view>
</block> </block>
@ -144,13 +141,17 @@
<view class='totalPrice' v-else>{{item.orderNum || 0}}件商品总金额 <view class='totalPrice' v-else>{{item.orderNum || 0}}件商品总金额
<text class='money p-color'>{{item.pay_price}}</text> <text class='money p-color'>{{item.pay_price}}</text>
</view> </view>
<view class="totalPrice" v-if="product_type == 98"> <view class="totalPrice" v-if="item.pay_type == 8">
{{item.total_num || 0}}件商品结算周期到期后付款{{item.interest.total_amount}} {{item.total_num || 0}}件商品结算周期到期后付款{{item.interest.total_amount}}
</view> </view>
<view class='bottom acea-row row-right row-middle'> <view class='bottom acea-row row-right row-middle' v-if=" item.pay_type == 3 ">
<view class='bnt b-color' @click.stop='goPay(item.pay_price,item.group_order_id)'> <view class='bnt b-color' @click.stop='goPay(item.pay_price,item.group_order_id)'>
立即付款</view> 立即付款</view>
</view> </view>
<view class='bottom acea-row row-right row-middle' v-else>
<view class='bnt b-color' @click.stop='goPay(item.pay_price,item.group_order_id)'>
去结算</view>
</view>
</view> </view>
</view> </view>
</block> </block>
@ -165,18 +166,19 @@
<text class="iconfont icon-xiangyou"></text> <text class="iconfont icon-xiangyou"></text>
</view> </view>
<view v-if="item.status == 0" class='t-color'> <view v-if="item.status == 0" class='t-color'>
<text <text v-if="item.order_type==1">{{item.takeOrderCount > 0 ? '部分核销' : '待核销'}}</text>
v-if="item.order_type==1">{{item.takeOrderCount > 0 ? '部分核销' : '待核销'}}</text>
<text v-else>待发货</text> <text v-else>待发货</text>
</view> </view>
<view v-if="item.status == 1" class='t-color'>待收货</view> <view v-if="item.status == 1" class='t-color'>待收货</view>
<view v-if="item.status == 2" class='t-color'>待评价</view> <view v-if="item.status == 2 && item.pay_type !== 8" class='t-color'>待评价</view>
<view v-if="item.status == 3" class='t-color'>已完成</view> <view v-if="item.status == 3" class='t-color'>已完成</view>
<view v-if="item.status == -1" class='t-color'>已退款</view> <view v-if="item.status == -1" class='t-color'>已退款</view>
<view v-if="item.status == 2 && item.pay_type == 8" class='t-color'>待结算</view>
</view> </view>
<view v-if="item.activity_type === 2"> <view v-if="item.activity_type === 2">
<view class='item-info acea-row row-between row-top' <view class='item-info acea-row row-between row-top' v-for="(goods,index) in item.orderProduct"
v-for="(goods,index) in item.orderProduct" :key="index"> :key="index">
<view class='pictrue'> <view class='pictrue'>
<image <image
:src='(goods.cart_info.productAttr && goods.cart_info.productAttr.image) || goods.cart_info.product.image'> :src='(goods.cart_info.productAttr && goods.cart_info.productAttr.image) || goods.cart_info.product.image'>
@ -185,8 +187,7 @@
<view class='text acea-row row-between'> <view class='text acea-row row-between'>
<view class='name '> <view class='name '>
<view class='name' :class="item.status === 0 ? 'line1' : 'line2'"> <view class='name' :class="item.status === 0 ? 'line1' : 'line2'">
<text <text class="event_name event_bg">预售</text><text>{{goods.cart_info.product.store_name}}</text>
class="event_name event_bg">预售</text><text>{{goods.cart_info.product.store_name}}</text>
<view v-if="item.status == 0" class="event_ship event_color">发货时间 <view v-if="item.status == 0" class="event_ship event_color">发货时间
<!--全款预售--> <!--全款预售-->
<text <text
@ -208,8 +209,8 @@
</view> </view>
</view> </view>
<view v-else> <view v-else>
<view class='item-info acea-row row-between row-top' <view class='item-info acea-row row-between row-top' v-for="(goods,index) in item.orderProduct"
v-for="(goods,index) in item.orderProduct" :key="index"> :key="index">
<view class='pictrue'> <view class='pictrue'>
<image <image
:src='(goods.cart_info.productAttr && goods.cart_info.productAttr.image) || goods.cart_info.product.image'> :src='(goods.cart_info.productAttr && goods.cart_info.productAttr.image) || goods.cart_info.product.image'>
@ -252,23 +253,25 @@
<view class='bnt b-color' @click='goOrderDetails(item.order_id)'>查看详情</view> <view class='bnt b-color' @click='goOrderDetails(item.order_id)'>查看详情</view>
</block> </block>
<block v-if="item.status == 1"> <block v-if="item.status == 1">
<view class='bnt cancelBnt' <view class='bnt cancelBnt' v-if="item.delivery_type == 1 || item.delivery_type == 2"
v-if="item.delivery_type == 1 || item.delivery_type == 2"
@click='goOrderDetails(item.order_id)'>查看物流</view> @click='goOrderDetails(item.order_id)'>查看物流</view>
<view class='bnt b-color' @tap='confirmOrder(item,index)'>确认收货</view> <view class='bnt b-color' @tap='confirmOrder(item,index)'>确认收货</view>
</block> </block>
<block v-if="item.status == 2"> <block v-if="item.status == 2 && item.pay_type !== 8 ">
<view class='bnt b-color' @click='goOrderDetails_Evaluation(item.order_id)'>去评价 <view class='bnt b-color' @click='goOrderDetails_Evaluation(item.order_id)'>去评价
</view> </view>
</block> </block>
<block v-if="item.status == 2 && item.pay_type == 8">
<view class='bnt b-color' @click='pay_open(item.order_id)'>去结算
</view>
</block>
<block v-if="item.status == 3"> <block v-if="item.status == 3">
<view class='bnt b-color' @click='goOrderDetails(item.order_id)' <view class='bnt b-color' @click='goOrderDetails(item.order_id)'
v-if="item.activity_type == 2 || item.activity_type == 3 || item.activity_type == 10"> v-if="item.activity_type == 2 || item.activity_type == 3 || item.activity_type == 10">
查看详情</view> 查看详情</view>
<navigator v-if="community_status == 1 && !item.community_id" <navigator v-if="community_status == 1 && !item.community_id"
:url="'/pages/plantGrass/plant_release/index?order_id='+item.order_id" :url="'/pages/plantGrass/plant_release/index?order_id='+item.order_id" class='bnt colorBnt'
class='bnt colorBnt' hover-class="none"> hover-class="none">
<text class="iconfont icon-fabu"></text> <text class="iconfont icon-fabu"></text>
发布种草 发布种草
</navigator> </navigator>
@ -442,6 +445,12 @@
onReady() {}, onReady() {},
mounted: function() {}, mounted: function() {},
methods: { methods: {
//
pay_open: function(order_id) {
uni.navigateTo({
url: '/pages/order_details/stay?order_id=' + order_id + '&product_type=' + this.product_type
})
},
// //
goMall(item) { goMall(item) {
if (this.hide_mer_status == 0) { if (this.hide_mer_status == 0) {
@ -502,7 +511,7 @@
getOrderData: function() { getOrderData: function() {
let that = this; let that = this;
orderData({ orderData({
product_type:this.product_type product_type: this.product_type
}).then(res => { }).then(res => {
that.$set(that, 'orderData', res.data); that.$set(that, 'orderData', res.data);
}) })
@ -570,7 +579,7 @@
/** /**
* 去订单详情 * 去订单详情
*/ */
goOrderDetails: function(order_id,product_type) { goOrderDetails: function(order_id, product_type) {
let self = this let self = this
if (!order_id) return that.$util.Tips({ if (!order_id) return that.$util.Tips({
title: '缺少订单号无法查看订单详情' title: '缺少订单号无法查看订单详情'
@ -1175,5 +1184,4 @@
color: #999999; color: #999999;
} }
} }
</style> </style>

View File

@ -65,7 +65,7 @@
<text class='pColor' v-if="cartArr[4].payStatus == 1">0.00</text> <text class='pColor' v-if="cartArr[4].payStatus == 1">0.00</text>
<text class='pColor' v-else>{{couponData.orderList[0].pay_price}}</text> <text class='pColor' v-else>{{couponData.orderList[0].pay_price}}</text>
</view> </view>
<view style="font-size: 14px;color: #F84221;" v-if="this.be_overdue == 0 || this.be_overdue < 0"> <view style="font-size: 14px;color: #F84221;" v-if="this.be_overdue == 0 || this.be_overdue < 0 ">
可结算周期到期后再付款{{totalPrice}} 可结算周期到期后再付款{{totalPrice}}
</view> </view>
</view> </view>
@ -176,12 +176,14 @@
groupOrderDetail(this.order_id, this.product_type).then(res => { groupOrderDetail(this.order_id, this.product_type).then(res => {
this.couponData = res.data this.couponData = res.data
this.$nextTick(()=>{ this.$nextTick(()=>{
if(this.couponData.interest !== null){
this.moerTime(this.couponData.interest.start_time) this.moerTime(this.couponData.interest.start_time)
}
}) })
}) })
}, },
SubOrder() { SubOrder() {
if (this.product_type == 98) { if (this.couponData.pay_type == 8) {
postsettle( postsettle(
this.mer_id, { this.mer_id, {
id:this.order_id, id:this.order_id,