优化订单刷新
parent
0b649e3f5b
commit
79f737404e
|
@ -1,15 +1,43 @@
|
||||||
<template>
|
<template>
|
||||||
<view class="content">
|
<view class="content">
|
||||||
<view class="navbar">
|
<view class="navbar">
|
||||||
<view v-for="(item, index) in navList" :key="index" class="nav-item" :class="{ current: tabCurrentIndex === index }" @click="tabClick(index)">{{ item.text }}</view>
|
<view
|
||||||
|
v-for="(item, index) in navList"
|
||||||
|
:key="index"
|
||||||
|
class="nav-item"
|
||||||
|
:class="{ current: tabCurrentIndex === index }"
|
||||||
|
@click="tabClick(index)"
|
||||||
|
>{{ item.text }}</view
|
||||||
|
>
|
||||||
</view>
|
</view>
|
||||||
<swiper :current="tabCurrentIndex" class="swiper-box" duration="300" @change="changeTab">
|
<swiper
|
||||||
<swiper-item class="tab-content" v-for="(tabItem, tabIndex) in navList" :key="tabIndex">
|
:current="tabCurrentIndex"
|
||||||
<scroll-view class="list-scroll-content" scroll-y @scrolltolower="loadData(tabIndex)">
|
class="swiper-box"
|
||||||
|
duration="300"
|
||||||
|
@change="changeTab"
|
||||||
|
>
|
||||||
|
<swiper-item
|
||||||
|
class="tab-content"
|
||||||
|
v-for="(tabItem, tabIndex) in navList"
|
||||||
|
:key="tabIndex"
|
||||||
|
>
|
||||||
|
<scroll-view
|
||||||
|
class="list-scroll-content"
|
||||||
|
scroll-y
|
||||||
|
@scrolltolower="loadData(tabIndex)"
|
||||||
|
>
|
||||||
<!-- 空白页 -->
|
<!-- 空白页 -->
|
||||||
<u-empty text="暂无订单" mode="list" v-if="tabItem.loaded === true && tabItem.orderList.length === 0"></u-empty>
|
<u-empty
|
||||||
|
text="暂无订单"
|
||||||
|
mode="list"
|
||||||
|
v-if="tabItem.loaded === true && tabItem.orderList.length === 0"
|
||||||
|
></u-empty>
|
||||||
<!-- 订单列表 -->
|
<!-- 订单列表 -->
|
||||||
<view class="seller-view" :key="oderIndex" v-for="(order, oderIndex) in tabItem.orderList">
|
<view
|
||||||
|
class="seller-view"
|
||||||
|
:key="oderIndex"
|
||||||
|
v-for="(order, oderIndex) in tabItem.orderList"
|
||||||
|
>
|
||||||
<!-- 店铺名称 -->
|
<!-- 店铺名称 -->
|
||||||
<view class="seller-info u-flex u-row-between">
|
<view class="seller-info u-flex u-row-between">
|
||||||
<view class="seller-name" @click="navigateToStore(order)">
|
<view class="seller-name" @click="navigateToStore(order)">
|
||||||
|
@ -21,13 +49,32 @@
|
||||||
</view>
|
</view>
|
||||||
<view>
|
<view>
|
||||||
<view>
|
<view>
|
||||||
<view class="goods-item-view" @click="navigateToOrderDetail(order.sn)">
|
<view
|
||||||
<view class="goods-img" v-for="(goods, goodsIndex) in order.orderItems" :key="goodsIndex">
|
class="goods-item-view"
|
||||||
<u-image border-radius="6" width="100%" height="100%" :src="goods.image"></u-image>
|
@click="navigateToOrderDetail(order.sn)"
|
||||||
|
>
|
||||||
|
<view
|
||||||
|
class="goods-img"
|
||||||
|
v-for="(goods, goodsIndex) in order.orderItems"
|
||||||
|
:key="goodsIndex"
|
||||||
|
>
|
||||||
|
<u-image
|
||||||
|
border-radius="6"
|
||||||
|
width="100%"
|
||||||
|
height="100%"
|
||||||
|
:src="goods.image"
|
||||||
|
></u-image>
|
||||||
</view>
|
</view>
|
||||||
<view class="goods-info">
|
<view class="goods-info">
|
||||||
<view v-if="order.orderItems.length <= 1" class="goods-title u-line-2">{{ order.groupName }}</view>
|
<view
|
||||||
<view v-if="order.orderItems.length <= 1" class="goods-price">
|
v-if="order.orderItems.length <= 1"
|
||||||
|
class="goods-title u-line-2"
|
||||||
|
>{{ order.groupName }}</view
|
||||||
|
>
|
||||||
|
<view
|
||||||
|
v-if="order.orderItems.length <= 1"
|
||||||
|
class="goods-price"
|
||||||
|
>
|
||||||
¥{{ order.flowPrice | unitPrice }}
|
¥{{ order.flowPrice | unitPrice }}
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
@ -45,19 +92,56 @@
|
||||||
</view>
|
</view>
|
||||||
<view>
|
<view>
|
||||||
<!-- 全部 -->
|
<!-- 全部 -->
|
||||||
<u-button ripple class="pay-btn" shape="circle" size="mini" v-if="order.allowOperationVO.pay" @click="waitPay(order)">立即付款</u-button>
|
<u-button
|
||||||
|
ripple
|
||||||
|
class="pay-btn"
|
||||||
|
shape="circle"
|
||||||
|
size="mini"
|
||||||
|
v-if="order.allowOperationVO.pay"
|
||||||
|
@click="waitPay(order)"
|
||||||
|
>立即付款</u-button
|
||||||
|
>
|
||||||
<!-- 取消订单 -->
|
<!-- 取消订单 -->
|
||||||
<u-button ripple class="cancel-btn" shape="circle" size="mini" v-if="order.allowOperationVO.cancel" @click="onCancel(order.sn)">
|
<u-button
|
||||||
|
ripple
|
||||||
|
class="cancel-btn"
|
||||||
|
shape="circle"
|
||||||
|
size="mini"
|
||||||
|
v-if="order.allowOperationVO.cancel"
|
||||||
|
@click="onCancel(order.sn)"
|
||||||
|
>
|
||||||
取消订单
|
取消订单
|
||||||
</u-button>
|
</u-button>
|
||||||
<!-- 等待收货 -->
|
<!-- 等待收货 -->
|
||||||
<u-button ripple shape="circle" class="rebuy-btn" size="mini" v-if="order.allowOperationVO.showLogistics" @click="navigateToLogistics(order)">
|
<u-button
|
||||||
|
ripple
|
||||||
|
shape="circle"
|
||||||
|
class="rebuy-btn"
|
||||||
|
size="mini"
|
||||||
|
v-if="order.allowOperationVO.showLogistics"
|
||||||
|
@click="navigateToLogistics(order)"
|
||||||
|
>
|
||||||
查看物流
|
查看物流
|
||||||
</u-button>
|
</u-button>
|
||||||
<u-button ripple :customStyle="{'background':lightColor,'color':'#fff' }" shape="circle" class="pay-btn" size="mini" v-if="order.allowOperationVO.rog" @click="onRog(order.sn)">
|
<u-button
|
||||||
|
ripple
|
||||||
|
:customStyle="{ background: lightColor, color: '#fff' }"
|
||||||
|
shape="circle"
|
||||||
|
class="pay-btn"
|
||||||
|
size="mini"
|
||||||
|
v-if="order.allowOperationVO.rog"
|
||||||
|
@click="onRog(order.sn)"
|
||||||
|
>
|
||||||
确认收货
|
确认收货
|
||||||
</u-button>
|
</u-button>
|
||||||
<u-button ripple shape="circle" class="cancel-btn" size="mini" v-if="order.groupAfterSaleStatus.includes('NOT_APPLIED')" @click="applyService(order)">
|
<u-button
|
||||||
|
ripple
|
||||||
|
shape="circle"
|
||||||
|
class="cancel-btn"
|
||||||
|
size="mini"
|
||||||
|
v-if="order.groupAfterSaleStatus.includes('NOT_APPLIED')"
|
||||||
|
@click="applyService(order)"
|
||||||
|
>
|
||||||
退款/售后
|
退款/售后
|
||||||
</u-button>
|
</u-button>
|
||||||
<!-- TODO 后续完善 -->
|
<!-- TODO 后续完善 -->
|
||||||
|
@ -75,26 +159,57 @@
|
||||||
</scroll-view>
|
</scroll-view>
|
||||||
</swiper-item>
|
</swiper-item>
|
||||||
</swiper>
|
</swiper>
|
||||||
<u-popup class="cancel-popup" v-model="cancelShow" mode="bottom" length="60%">
|
<u-popup
|
||||||
|
class="cancel-popup"
|
||||||
|
v-model="cancelShow"
|
||||||
|
mode="bottom"
|
||||||
|
length="60%"
|
||||||
|
>
|
||||||
<view class="header">取消订单</view>
|
<view class="header">取消订单</view>
|
||||||
<view class="body">
|
<view class="body">
|
||||||
<view class="title">取消订单后,本单享有的优惠可能会一并取消,是否继续?</view>
|
<view class="title"
|
||||||
|
>取消订单后,本单享有的优惠可能会一并取消,是否继续?</view
|
||||||
|
>
|
||||||
<view>
|
<view>
|
||||||
<u-radio-group v-model="reason">
|
<u-radio-group v-model="reason">
|
||||||
<view class="value">
|
<view class="value">
|
||||||
<view class="radio-view" :key="index" v-for="(item, index) in cancelList">
|
<view
|
||||||
<u-radio :active-color="lightColor" label-size="25" shape="circle" :name="item.reason" @change="reasonChange">{{ item.reason }}</u-radio>
|
class="radio-view"
|
||||||
|
:key="index"
|
||||||
|
v-for="(item, index) in cancelList"
|
||||||
|
>
|
||||||
|
<u-radio
|
||||||
|
:active-color="lightColor"
|
||||||
|
label-size="25"
|
||||||
|
shape="circle"
|
||||||
|
:name="item.reason"
|
||||||
|
@change="reasonChange"
|
||||||
|
>{{ item.reason }}</u-radio
|
||||||
|
>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</u-radio-group>
|
</u-radio-group>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="footer">
|
<view class="footer">
|
||||||
<u-button size="medium" ripple v-if="reason" shape="circle" @click="submitCancel">提交</u-button>
|
<u-button
|
||||||
|
size="medium"
|
||||||
|
ripple
|
||||||
|
v-if="reason"
|
||||||
|
shape="circle"
|
||||||
|
@click="submitCancel"
|
||||||
|
>提交</u-button
|
||||||
|
>
|
||||||
</view>
|
</view>
|
||||||
</u-popup>
|
</u-popup>
|
||||||
<u-toast ref="uToast" />
|
<u-toast ref="uToast" />
|
||||||
<u-modal :confirm-color="lightColor" v-model="rogShow" :show-cancel-button="true" :content="'是否确认收货?'" @confirm="confirmRog"></u-modal>
|
<u-modal
|
||||||
|
:confirm-color="lightColor"
|
||||||
|
v-model="rogShow"
|
||||||
|
:show-cancel-button="true"
|
||||||
|
:content="'是否确认收货?'"
|
||||||
|
@confirm="confirmRog"
|
||||||
|
></u-modal>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
@ -203,10 +318,21 @@ export default {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
onPullDownRefresh() {
|
onPullDownRefresh() {
|
||||||
|
if (this.tabCurrentIndex) {
|
||||||
|
this.initData(this.tabCurrentIndex);
|
||||||
|
} else {
|
||||||
|
this.initData(0);
|
||||||
|
}
|
||||||
|
this.loadData(this.status);
|
||||||
|
},
|
||||||
|
onShow() {
|
||||||
|
if (this.tabCurrentIndex) {
|
||||||
|
this.initData(this.tabCurrentIndex);
|
||||||
|
} else {
|
||||||
|
this.initData(0);
|
||||||
|
}
|
||||||
this.loadData(this.status);
|
this.loadData(this.status);
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
onLoad(options) {
|
onLoad(options) {
|
||||||
/**
|
/**
|
||||||
|
@ -219,7 +345,6 @@ export default {
|
||||||
if (status == 0) {
|
if (status == 0) {
|
||||||
this.loadData(status);
|
this.loadData(status);
|
||||||
}
|
}
|
||||||
|
|
||||||
},
|
},
|
||||||
|
|
||||||
watch: {
|
watch: {
|
||||||
|
@ -236,16 +361,11 @@ export default {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
|
||||||
|
|
||||||
// 售后
|
// 售后
|
||||||
applyService(order) {
|
applyService(order) {
|
||||||
|
|
||||||
|
|
||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
url: `/pages/order/afterSales/afterSales?orderSn=${order.sn}`
|
url: `/pages/order/afterSales/afterSales?orderSn=${order.sn}`,
|
||||||
});
|
});
|
||||||
|
|
||||||
},
|
},
|
||||||
|
|
||||||
// 店铺详情
|
// 店铺详情
|
||||||
|
|
Loading…
Reference in New Issue