Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a4751dc9f6 | ||
|
|
6ab3d5cc75 | ||
|
|
01c400bb7e | ||
|
|
cb8a4bb33c | ||
|
|
fb03ad9f4a | ||
|
|
e7557e72a5 | ||
|
|
6e1e6233fa | ||
|
|
ce94e5d739 | ||
|
|
ca79a820fb | ||
|
|
cb6abf4a5a | ||
|
|
f2aeab5c41 | ||
|
|
1fad8cae64 | ||
|
|
2411ae369d | ||
|
|
e6cf9c082c | ||
|
|
fcccf351bf | ||
|
|
27ac2a086d | ||
|
|
df87d0f9c8 | ||
|
|
7aeff7ece1 | ||
|
|
7dcba7c04b | ||
|
|
5d4ad3f427 | ||
|
|
fd583b7a2e | ||
|
|
7dedcf773f | ||
|
|
a8907717b2 | ||
|
|
ed23d2e220 | ||
|
|
7d55bdf879 | ||
|
|
4b56c2cce7 | ||
|
|
77e900e02c | ||
|
|
75e9c404fc | ||
|
|
0a70e4af6c | ||
|
|
11e294bcdc | ||
|
|
3e0e1542b6 | ||
|
|
ae3fbf914b | ||
|
|
8ee399823d | ||
|
|
dac7c96189 | ||
|
|
458d2b8b65 | ||
|
|
33a1125294 | ||
|
|
a2d0ef8dfa | ||
|
|
b0c4a5621e | ||
|
|
8c83e0a1bc | ||
|
|
97c4d7fe4f | ||
|
|
29827b250a | ||
|
|
edaba70c6e | ||
|
|
e5c7900b89 | ||
|
|
d69cf4c9e2 | ||
|
|
4a29b1cd27 | ||
|
|
df1c6dfb73 | ||
|
|
13201d251b | ||
|
|
be90572388 | ||
|
|
335793676b | ||
|
|
377852a65f | ||
|
|
f202fca716 | ||
|
|
d288547259 | ||
|
|
5568cf039e | ||
|
|
ef66206182 | ||
|
|
d00fe87625 | ||
|
|
749e3901f8 | ||
|
|
1710f4809c | ||
|
|
38545cd76e | ||
|
|
b9dcbe6560 | ||
|
|
50e143f13c | ||
|
|
7c65d839d9 | ||
|
|
f29ca88ab3 | ||
|
|
56402e37f3 | ||
|
|
c39f2a4da8 | ||
|
|
c894689365 | ||
|
|
5c23dc9773 | ||
|
|
bad10982b7 | ||
|
|
fe0397a483 | ||
|
|
a535c8192e | ||
|
|
2e1fa524fa | ||
|
|
48284adb6b | ||
|
|
2af9fe99ee | ||
|
|
5caa9b176a | ||
|
|
438b7a98e4 | ||
|
|
a2f1d9f59e | ||
|
|
c4787b56e8 | ||
|
|
0937a32bce | ||
|
|
cfef9c5b39 | ||
|
|
85906cbe44 |
@@ -51,6 +51,7 @@ export const chatMixinsV2 = {
|
||||
audioPlayId: '',
|
||||
showGiftBtn: false,
|
||||
buyLoading: false,
|
||||
buyActionLock: false,
|
||||
exceptionConfig: {
|
||||
model_exception: '您提的问题未能理解,云灵思想跑偏啦,重新整理一下问题或者重新提问,让云灵再试试!',
|
||||
voice_exception: ''
|
||||
@@ -533,6 +534,10 @@ export const chatMixinsV2 = {
|
||||
this.productItemBuyNowOrGiftBuy(item, 2)
|
||||
},
|
||||
productItemBuyNowOrGiftBuy(item, BuyNowOrGiftBuyType) {
|
||||
if (this.buyActionLock) {
|
||||
return
|
||||
}
|
||||
this.buyActionLock = true
|
||||
this.audioStopHandle()
|
||||
this.cart_num = 1
|
||||
this.m_id = item.id
|
||||
@@ -540,6 +545,7 @@ export const chatMixinsV2 = {
|
||||
const { data } = res
|
||||
this.storeInfo = {...data.storeInfo}
|
||||
if(data.storeInfo.stock === 0) {
|
||||
this.buyActionLock = false
|
||||
uni.showToast({
|
||||
title: "产品库存不足,请选择其他商品",
|
||||
icon: "none",
|
||||
@@ -577,6 +583,14 @@ export const chatMixinsV2 = {
|
||||
return
|
||||
}
|
||||
this.attr.cartAttr = !this.isOpen ? true : false
|
||||
this.buyActionLock = false
|
||||
}).catch(error => {
|
||||
this.buyActionLock = false
|
||||
uni.showToast({
|
||||
title: error.msg || '操作失败,请稍后重试',
|
||||
icon: "none",
|
||||
duration: 3000
|
||||
})
|
||||
})
|
||||
},
|
||||
buyNowOrGiftBuyReq(type) {
|
||||
@@ -617,6 +631,7 @@ export const chatMixinsV2 = {
|
||||
})
|
||||
}).finally(() => {
|
||||
_this.buyLoading = false
|
||||
_this.buyActionLock = false
|
||||
})
|
||||
},
|
||||
closeAttrWindow() {
|
||||
|
||||
@@ -102,6 +102,17 @@ export function postOrderRefund(data) {
|
||||
return request.post("/order/refund/verify", data);
|
||||
}
|
||||
|
||||
/**
|
||||
* 取消退款申请
|
||||
* @param uni
|
||||
* @returns {*}
|
||||
*/
|
||||
export function cancelOrderRefund(uni) {
|
||||
return request.post("/order/refund/cancel", {
|
||||
uni
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 确认收货
|
||||
* @returns {*}
|
||||
|
||||
@@ -10,6 +10,14 @@ if (NODE_ENV === 'development' || NODE_ENV === 'test') {
|
||||
enableDebug: false
|
||||
})
|
||||
}
|
||||
if (NODE_ENV === 'fix') {
|
||||
BASE_URL = 'https://shop-pre.xdd618.com/api'
|
||||
SERVICE_URL = 'https://service-pre.xdd618.com/api'
|
||||
SERVICE_WS_URL = 'wss://service-pre.xdd618.com/ws'
|
||||
wx.setEnableDebug({
|
||||
enableDebug: false
|
||||
})
|
||||
}
|
||||
if (NODE_ENV === 'prod') {
|
||||
BASE_URL = 'https://wxapp.xdd618.com/api'
|
||||
SERVICE_URL = 'https://service.xdd618.com/api'
|
||||
|
||||
@@ -133,6 +133,17 @@
|
||||
"CUSTOM-CONST": true
|
||||
}
|
||||
},
|
||||
"mp-weixin-fix": {
|
||||
"title": "微信小程序(Fix环境)",
|
||||
"env": {
|
||||
"UNI_PLATFORM": "mp-weixin",
|
||||
"VUE_APP_ENV": "fix",
|
||||
"UNI_OUTPUT_DIR": "dist"
|
||||
},
|
||||
"define": {
|
||||
"CUSTOM-CONST": true
|
||||
}
|
||||
},
|
||||
"mp-weixin": {
|
||||
"title": "微信小程序(生产环境)",
|
||||
"env": {
|
||||
|
||||
+1
-1
@@ -490,7 +490,7 @@
|
||||
{
|
||||
"path": "views/giftList",
|
||||
"style": {
|
||||
"navigationBarTitleText": "特色礼品"
|
||||
"navigationBarTitleText": "全国礼品"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
</view>
|
||||
|
||||
<view class="list" v-if="list.length">
|
||||
<view class="video-waterfalls-wrap">
|
||||
<custom-waterfalls-flow :value="list" imageKey="cover">
|
||||
<view class="item" v-for="(item,index) in list" :key="index" slot="slot{{index}}" @click="goDetail(item)">
|
||||
<image class="cover" :src="item.cover" mode="widthFix"></image>
|
||||
@@ -23,6 +24,7 @@
|
||||
</view>
|
||||
</custom-waterfalls-flow>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="v4-nodata" v-else>
|
||||
<image src="@/static/images/img_nodata.png" mode="scaleToFill"/>
|
||||
@@ -114,6 +116,7 @@ export default {
|
||||
border-radius: 20rpx;
|
||||
background: #fff;
|
||||
font-size: 26rpx;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.active {
|
||||
@@ -125,6 +128,19 @@ export default {
|
||||
.list {
|
||||
margin: 28rpx 32rpx;
|
||||
|
||||
.video-waterfalls-wrap {
|
||||
direction: ltr;
|
||||
|
||||
/deep/ .waterfalls-flow {
|
||||
direction: ltr;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
/deep/ .waterfalls-flow-column {
|
||||
float: left !important;
|
||||
}
|
||||
}
|
||||
|
||||
.item {
|
||||
border-radius: 4rpx;
|
||||
background: #fff;
|
||||
|
||||
@@ -384,20 +384,23 @@ export default {
|
||||
this.mescroll && this.mescroll.triggerDownScroll()
|
||||
},
|
||||
search() {
|
||||
if(this.keyword === '') return
|
||||
this.listGroup.findIndex((group, index) => {
|
||||
let result
|
||||
group.city.forEach(item => {
|
||||
result = item.cityName.indexOf(this.keyword, 0)
|
||||
if (result !== -1) {
|
||||
this.asideTap(index);
|
||||
return null;
|
||||
}
|
||||
const keyword = (this.keyword || '').trim()
|
||||
if (!keyword) return
|
||||
const matchIndex = this.listGroup.findIndex(group => {
|
||||
const cityList = Array.isArray(group.city) ? group.city : []
|
||||
return cityList.some(item => item && item.cityName && item.cityName.indexOf(keyword) !== -1)
|
||||
})
|
||||
if (result !== -1) {
|
||||
return result
|
||||
if (matchIndex !== -1) {
|
||||
this.keyword = keyword
|
||||
this.asideTap(matchIndex)
|
||||
return
|
||||
}
|
||||
if (matchIndex === -1) {
|
||||
uni.showToast({
|
||||
title: '未找到该城市,请重新输入城市名称',
|
||||
icon: 'none'
|
||||
})
|
||||
}
|
||||
},
|
||||
select(item) {
|
||||
if (this.type === 0 && item.hasData === 0) return
|
||||
|
||||
+21
-3
@@ -36,7 +36,7 @@
|
||||
</view>
|
||||
|
||||
</view>
|
||||
<view class="product-wrap v12-mt-3">
|
||||
<view v-if="products.length > 0" class="product-wrap v12-mt-3">
|
||||
<view class="product-card" v-for="(item, index) in products" :key="index" @click="toGoods(item)">
|
||||
<image :src="item.productImage" class="product-card-img" mode="heightFix|widthFix"></image>
|
||||
<view class="new-info">
|
||||
@@ -53,6 +53,9 @@
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view v-else class="empty-wrap">
|
||||
<view class="empty-text">暂无数据</view>
|
||||
</view>
|
||||
<ProductWindow
|
||||
ref="attrWindow"
|
||||
:attr="attr"
|
||||
@@ -99,8 +102,12 @@ export default{
|
||||
onLoad() {
|
||||
queryNewZone().then(res => {
|
||||
this.details = res.data
|
||||
this.tabs = res.data.categories
|
||||
this.tabs = Array.isArray(res.data.categories) ? res.data.categories : []
|
||||
if (this.tabs.length > 0) {
|
||||
this.handleClick(0, this.tabs[0])
|
||||
} else {
|
||||
this.products = []
|
||||
}
|
||||
})
|
||||
},
|
||||
computed: {
|
||||
@@ -112,7 +119,7 @@ export default{
|
||||
methods: {
|
||||
handleClick(index, tab) {
|
||||
this.activeIndex = index
|
||||
this.products = tab.products
|
||||
this.products = Array.isArray(tab && tab.products) ? tab.products : []
|
||||
},
|
||||
handleChange(e) {
|
||||
this.current = e.detail.current
|
||||
@@ -144,6 +151,17 @@ export default{
|
||||
justify-content: space-between;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
.empty-wrap{
|
||||
min-height: 260rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
.empty-text{
|
||||
font-size: 28rpx;
|
||||
color: #999999;
|
||||
text-align: center;
|
||||
}
|
||||
.tab-line{
|
||||
position: absolute;
|
||||
bottom: 0;
|
||||
|
||||
+239
-70
@@ -54,14 +54,14 @@
|
||||
<view class="list v12-ma-0" style="padding: 0rpx 0 30rpx;">
|
||||
<view
|
||||
v-for="(order, orderListIndex) in orderList"
|
||||
:key="orderListIndex"
|
||||
:key="order.orderId || orderListIndex"
|
||||
class="item"
|
||||
>
|
||||
<view
|
||||
v-if="order.experienceOrderInfo"
|
||||
class="shop-info flex jc-between ai-center"
|
||||
style="padding-bottom: 0"
|
||||
@click.stop="goStore(order)"
|
||||
@click.stop="goStore(orderListIndex)"
|
||||
>
|
||||
<view class="flex ai-center">
|
||||
<image
|
||||
@@ -79,7 +79,7 @@
|
||||
v-if="order.merName && !order.experienceOrderInfo"
|
||||
class="shop-info flex jc-between ai-center"
|
||||
style="padding-bottom: 0"
|
||||
@click="goStore(order)"
|
||||
@click="goStore(orderListIndex)"
|
||||
>
|
||||
<view class="flex ai-center">
|
||||
<image
|
||||
@@ -133,7 +133,7 @@
|
||||
class="font-color-white statusTag v12-primary"
|
||||
>{{ (order.isGiftCardSend || order.isGiftCardReceive) ? '礼包' : (getStatus(order) || (order._status && order._status._title) || '已完成') }}</view>
|
||||
</view>
|
||||
<view @click="goOrderDetails(order)">
|
||||
<view @click="goOrderDetails(orderListIndex)">
|
||||
<view
|
||||
v-if="order.isGiftCardReceiveBlind === 1"
|
||||
class="item-info acea-row row-between row-top"
|
||||
@@ -254,22 +254,22 @@
|
||||
<image
|
||||
v-if="cart.combinationId === 0 && cart.bargainId === 0 &&cart.seckillId === 0"
|
||||
:src="cart.productInfo.image"
|
||||
@click.stop="gotoGoodDetail(cart, 1, { id: cart.productInfo.id })"
|
||||
@click.stop="gotoGoodDetail(orderListIndex, cartInfoIndex)"
|
||||
/>
|
||||
<image
|
||||
v-else-if="cart.combinationId > 0"
|
||||
:src="cart.productInfo.image"
|
||||
@click.stop="gotoGoodDetail(cart, 2, { id: cart.combinationId })"
|
||||
@click.stop="gotoGoodDetail(orderListIndex, cartInfoIndex)"
|
||||
/>
|
||||
<image
|
||||
v-else-if="cart.bargainId > 0"
|
||||
:src="cart.productInfo.image"
|
||||
@click.stop="gotoGoodDetail(cart, 3, { id: cart.bargainId })"
|
||||
@click.stop="gotoGoodDetail(orderListIndex, cartInfoIndex)"
|
||||
/>
|
||||
<image
|
||||
v-else-if="cart.seckillId > 0"
|
||||
:src="cart.productInfo.image"
|
||||
@click.stop="gotoGoodDetail(cart, 4, { id: cart.seckillId })"
|
||||
@click.stop="gotoGoodDetail(orderListIndex, cartInfoIndex)"
|
||||
/>
|
||||
</view>
|
||||
<view class="text" style="margin-top: 0 !important;">
|
||||
@@ -334,17 +334,17 @@
|
||||
<view
|
||||
v-if="order.experienceOrderStatus === 0 || order.experienceOrderStatus === 1"
|
||||
class="bnt service"
|
||||
@click.stop="goRoom(order)"
|
||||
@click.stop="goRoom(orderListIndex)"
|
||||
>联系商家</view>
|
||||
<view
|
||||
v-if="order.experienceOrderStatus === 0"
|
||||
class="bnt v12-primary v12-white-text v12-primary-border v12-radius-40"
|
||||
@click.stop="goOrderDetails(order)"
|
||||
@click.stop="goOrderDetails(orderListIndex)"
|
||||
>去使用</view>
|
||||
<view
|
||||
v-if="order.experienceOrderStatus === 1 || order.experienceOrderStatus === 2"
|
||||
class="bnt service"
|
||||
@click.stop="delOrder(order)"
|
||||
@click.stop="delOrder(orderListIndex)"
|
||||
>删除订单</view>
|
||||
</view>
|
||||
<view
|
||||
@@ -358,18 +358,18 @@
|
||||
>
|
||||
<text
|
||||
class="btn-more v12-font-28 v12-font-bold"
|
||||
@click.stop="tapShowMore(order, orderListIndex)"
|
||||
@click.stop="tapShowMore(orderListIndex)"
|
||||
>更多</text>
|
||||
<view class="group-float" v-show="order.showMore">
|
||||
<view
|
||||
v-if="order.merName && order.isGiftCardReceiveBlind === 0"
|
||||
class="btn btn-service flex jc-center ai-center v12-font-24"
|
||||
@click="goRoom(order)"
|
||||
@click="goRoom(orderListIndex)"
|
||||
>联系商家</view>
|
||||
<view
|
||||
v-if="order.isTravelGroup === 0 && order.refundSystemStatus !== 2"
|
||||
class="btn flex jc-center ai-center v12-font-24"
|
||||
@click="goRefund(order)"
|
||||
@click="goRefund(orderListIndex)"
|
||||
>申请退款</view>
|
||||
</view>
|
||||
</view>
|
||||
@@ -378,7 +378,7 @@
|
||||
<view
|
||||
v-if="order.isDrawOrder > 0"
|
||||
class="bnt service"
|
||||
@click.stop="callMerPhone(order)"
|
||||
@click.stop="callMerPhone(orderListIndex)"
|
||||
>联系客服
|
||||
</view>
|
||||
<view>
|
||||
@@ -389,18 +389,18 @@
|
||||
parseInt(order._status._type) !== 9
|
||||
"
|
||||
class="bnt service"
|
||||
@click="goRoom(order)"
|
||||
@click="goRoom(orderListIndex)"
|
||||
>联系商家</view>
|
||||
</view>
|
||||
<view class="v12-justify-between">
|
||||
<view
|
||||
class="bnt service"
|
||||
@click="goOrderDetails(order)"
|
||||
@click="goOrderDetails(orderListIndex)"
|
||||
v-if="[-1, -2, -3].includes(parseInt(order._status._type))"
|
||||
>查看详情</view>
|
||||
<view
|
||||
class="bnt service"
|
||||
@click="delOrder(order)"
|
||||
@click="delOrder(orderListIndex)"
|
||||
v-if="[9].includes(parseInt(order._status._type))"
|
||||
>删除订单</view>
|
||||
</view>
|
||||
@@ -411,61 +411,61 @@
|
||||
<template v-if="parseInt(order._status._type) === 0">
|
||||
<view
|
||||
class="bnt cancelBnt v12-dark-text v12-dark-border"
|
||||
@click="cancelOrder(order)"
|
||||
@click="cancelOrder(orderListIndex)"
|
||||
>取消订单</view>
|
||||
<view
|
||||
v-if="order.isTravelGroup === 0 && order.isDrawOrder === 0"
|
||||
class="bnt cancelBnt v12-dark-text v12-dark-border"
|
||||
@click="addressTap(order)"
|
||||
@click="addressTap(orderListIndex)"
|
||||
>修改地址</view>
|
||||
<view
|
||||
class="bnt bg-color-lightred v12-white v12-primary-text v12-primary-border v12-radius-40"
|
||||
@click="subscribePay(order)"
|
||||
@click="subscribePay(orderListIndex)"
|
||||
>立即付款</view>
|
||||
</template>
|
||||
<template v-if="parseInt(order._status._type) === 1 && order.isTickets === 0">
|
||||
<view
|
||||
v-if="order.isTravelGroup === 1"
|
||||
class="bnt service"
|
||||
@click="editTime(order)"
|
||||
@click="editTime(orderListIndex)"
|
||||
>{{ '修改时间' }}</view>
|
||||
<view
|
||||
v-if="order.isTravelGroup === 1"
|
||||
class="bnt service"
|
||||
@click="applyRefund(order)"
|
||||
@click="applyRefund(orderListIndex)"
|
||||
>{{ '申请退款' }}</view>
|
||||
<view
|
||||
v-if="canShowModifyAddress(order) && order.isDrawOrder === 0"
|
||||
class="bnt service"
|
||||
@click="addressTap(order)"
|
||||
@click="addressTap(orderListIndex)"
|
||||
>修改地址</view>
|
||||
<view
|
||||
class="bnt service"
|
||||
:class="{'v12-primary-text v12-primary-border': order.isTravelGroup === 1}"
|
||||
@click="goOrderDetails(order)"
|
||||
@click="goOrderDetails(orderListIndex)"
|
||||
>{{ order.isTravelGroup === 0 ? '查看详情' : '查看券码' }}</view>
|
||||
</template>
|
||||
<template v-if="parseInt(order._status._type) === 1 && order.isTickets === 1">
|
||||
<view
|
||||
class="bnt bg-color-lightred v12-white v12-primary-text v12-primary-border v12-radius-40"
|
||||
@click="goOrderDetails(order)"
|
||||
@click="goOrderDetails(orderListIndex)"
|
||||
>立即核销</view>
|
||||
</template>
|
||||
<template v-if="parseInt(order._status._type) === 2 && order.isTickets === 0 && order.isTravelGroup === 1">
|
||||
<view
|
||||
v-if="order.isTravelGroup === 1"
|
||||
class="bnt service"
|
||||
@click="editTime(order)"
|
||||
@click="editTime(orderListIndex)"
|
||||
>{{ '修改时间' }}</view>
|
||||
<view
|
||||
v-if="order.isTravelGroup === 1"
|
||||
class="bnt service"
|
||||
@click="applyRefund(order)"
|
||||
@click="applyRefund(orderListIndex)"
|
||||
>{{ '申请退款' }}</view>
|
||||
<view
|
||||
class="bnt service"
|
||||
:class="{'v12-primary-text v12-primary-border': order.isTravelGroup === 1}"
|
||||
@click="goOrderDetails(order)"
|
||||
@click="goOrderDetails(orderListIndex)"
|
||||
>{{ order.isTravelGroup === 0 ? '查看详情' : '查看券码' }}</view>
|
||||
</template>
|
||||
<template v-if="parseInt(order._status._type) === 2 && order.isTickets === 0 && order.isTravelGroup === 0">
|
||||
@@ -477,23 +477,23 @@
|
||||
</view>
|
||||
<view
|
||||
class="bnt bg-color-lightred v12-white v12-primary-text v12-primary-border v12-radius-40"
|
||||
@click="takeOrder(order)"
|
||||
@click="takeOrder(orderListIndex)"
|
||||
>确认收货</view>
|
||||
</template>
|
||||
<template v-if="parseInt(order._status._type) === 3 && order.isTravelGroup === 0">
|
||||
<view
|
||||
class="bnt bg-color-lightred v12-white v12-primary-text v12-primary-border v12-radius-40"
|
||||
@click="goOrderDetails(order)"
|
||||
@click="goOrderDetails(orderListIndex)"
|
||||
>去评价</view>
|
||||
</template>
|
||||
<template v-if="parseInt(order._status._type) === 3 && order.isTravelGroup === 1">
|
||||
<view
|
||||
class="bnt bg-color-lightred v12-white v12-primary-text v12-primary-border v12-radius-40"
|
||||
@click="goOrderDetails(order)"
|
||||
@click="goOrderDetails(orderListIndex)"
|
||||
>去评价</view>
|
||||
</template>
|
||||
<template v-if="parseInt(order._status._type) === 4">
|
||||
<view class="bnt service" @click="goOrderDetails(order)">查看订单</view>
|
||||
<view class="bnt service" @click="goOrderDetails(orderListIndex)">查看订单</view>
|
||||
</template>
|
||||
</view>
|
||||
</view>
|
||||
@@ -505,7 +505,7 @@
|
||||
<view
|
||||
v-if="order.merName && order.isGiftCardReceiveBlind === 0"
|
||||
class="bnt btn-service flex jc-center ai-center v12-font-24"
|
||||
@click="goRoom(order)"
|
||||
@click="goRoom(orderListIndex)"
|
||||
>联系商家
|
||||
</view>
|
||||
<view class="v12-align-center">
|
||||
@@ -519,14 +519,14 @@
|
||||
"
|
||||
open-type="share"
|
||||
class="gift-btn service v12-primary-text v12-primary-border"
|
||||
@click="shareGift(order)"
|
||||
@click="shareGift(orderListIndex)"
|
||||
>送给朋友</button>
|
||||
<button
|
||||
v-if="Number(order.status) === 0"
|
||||
class="gift-btn service v12-primary-text v12-primary-border"
|
||||
@click="subscribePay(order)"
|
||||
@click="subscribePay(orderListIndex)"
|
||||
>立即支付</button>
|
||||
<view class="bnt service" @click="goOrderDetails(order)">查看详情</view>
|
||||
<view class="bnt service" @click="goOrderDetails(orderListIndex)">查看详情</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
@@ -725,7 +725,8 @@ export default {
|
||||
showDatePicker: false,
|
||||
dateRange: [],
|
||||
userLatitude: null,
|
||||
userLongitude: null
|
||||
userLongitude: null,
|
||||
orderListRequestId: 0
|
||||
}
|
||||
},
|
||||
components: {
|
||||
@@ -929,12 +930,28 @@ export default {
|
||||
uni.hideLoading();
|
||||
})
|
||||
},
|
||||
editTime(order) {
|
||||
editTime(orderOrIndex) {
|
||||
const order = this.getOrderByIndex(orderOrIndex)
|
||||
if (!order) {
|
||||
uni.showToast({
|
||||
title: '订单信息异常',
|
||||
icon: 'none'
|
||||
})
|
||||
return
|
||||
}
|
||||
this.showDatePicker = true
|
||||
this.travelGroupOrderInfo = order.travelGroupOrderInfo
|
||||
this.orderInfo = order
|
||||
},
|
||||
applyRefund(order) {
|
||||
applyRefund(orderOrIndex) {
|
||||
const order = this.getOrderByIndex(orderOrIndex)
|
||||
if (!order) {
|
||||
uni.showToast({
|
||||
title: '订单信息异常',
|
||||
icon: 'none'
|
||||
})
|
||||
return
|
||||
}
|
||||
// 这里可以添加申请退款的逻辑,比如跳转到退款页面
|
||||
uni.navigateTo({
|
||||
url: '/pkg_product/views/sojoumOrderRefund?id=' + order.orderId
|
||||
@@ -950,8 +967,16 @@ export default {
|
||||
}
|
||||
return timeMap[type]
|
||||
},
|
||||
shareGift(item) {
|
||||
this.giftItem = item
|
||||
shareGift(orderOrIndex) {
|
||||
const order = this.getOrderByIndex(orderOrIndex)
|
||||
if (!order) {
|
||||
uni.showToast({
|
||||
title: '订单信息异常',
|
||||
icon: 'none'
|
||||
})
|
||||
return
|
||||
}
|
||||
this.giftItem = order
|
||||
},
|
||||
getGiftTips(giftCardInfo) {
|
||||
// giftCardStatus int 礼品卡状态 0-未领取 1-已领取 2-已失效
|
||||
@@ -982,14 +1007,30 @@ export default {
|
||||
})
|
||||
this.$forceUpdate()
|
||||
},
|
||||
delOrder(order) {
|
||||
getOrderByIndex(orderOrIndex) {
|
||||
if (typeof orderOrIndex === 'number') {
|
||||
return this.orderList[orderOrIndex]
|
||||
}
|
||||
if (typeof orderOrIndex === 'string' && /^\d+$/.test(orderOrIndex)) {
|
||||
return this.orderList[Number(orderOrIndex)]
|
||||
}
|
||||
return orderOrIndex
|
||||
},
|
||||
delOrder(orderOrIndex) {
|
||||
const order = this.getOrderByIndex(orderOrIndex)
|
||||
if (!order) {
|
||||
uni.showToast({
|
||||
title: '订单信息异常',
|
||||
icon: 'none'
|
||||
})
|
||||
return
|
||||
}
|
||||
delOrderHandle(order.orderId).then(() => {
|
||||
this.page = 1
|
||||
this.orderList = [];
|
||||
this.getOrderListReq()
|
||||
this.changeType()
|
||||
})
|
||||
},
|
||||
goStore(order) {
|
||||
goStore(orderOrIndex) {
|
||||
const order = this.getOrderByIndex(orderOrIndex)
|
||||
if (!order) {
|
||||
return
|
||||
}
|
||||
@@ -1071,14 +1112,30 @@ export default {
|
||||
this.toYuePay(payPwd)
|
||||
this.isShowPayPwdPop = false
|
||||
},
|
||||
subscribePay(order) {
|
||||
subscribePay(orderOrIndex) {
|
||||
const order = this.getOrderByIndex(orderOrIndex)
|
||||
if (!order) {
|
||||
uni.showToast({
|
||||
title: '订单信息异常',
|
||||
icon: 'none'
|
||||
})
|
||||
return
|
||||
}
|
||||
this.orderInfo = order
|
||||
uni.requestSubscribeMessage({
|
||||
tmplIds: settings.SubscribeMessageTmplIds,
|
||||
complete: () => this.pay = true
|
||||
})
|
||||
},
|
||||
addressTap(order) {
|
||||
addressTap(orderOrIndex) {
|
||||
const order = this.getOrderByIndex(orderOrIndex)
|
||||
if (!order) {
|
||||
uni.showToast({
|
||||
title: '订单信息异常',
|
||||
icon: 'none'
|
||||
})
|
||||
return
|
||||
}
|
||||
this._orderId = order.orderId
|
||||
uni.setStorageSync('updateOrderSourceAddress', {
|
||||
id: order.addressId || order.userAddressId || '',
|
||||
@@ -1096,7 +1153,8 @@ export default {
|
||||
force2Decimal(v) {
|
||||
return this.$force2Decimal(v)
|
||||
},
|
||||
callMerPhone(order) {
|
||||
callMerPhone(orderOrIndex) {
|
||||
const order = this.getOrderByIndex(orderOrIndex)
|
||||
const phone = String((order && order.merPhone) || '').trim()
|
||||
if (!phone) {
|
||||
uni.showToast({
|
||||
@@ -1109,10 +1167,17 @@ export default {
|
||||
phoneNumber: phone
|
||||
})
|
||||
},
|
||||
goRoom(order) {
|
||||
console.log(order);
|
||||
goRoom(orderOrIndex) {
|
||||
const order = this.getOrderByIndex(orderOrIndex)
|
||||
if (!order) {
|
||||
uni.showToast({
|
||||
title: '订单信息异常',
|
||||
icon: 'none'
|
||||
})
|
||||
return
|
||||
}
|
||||
if (order.experienceOrderInfo) {
|
||||
const phone = order.merchantPhone || order.merPhone || order.experienceOrderInfo.phone || order.companyTel;
|
||||
const phone = order.merchantPhone || order.merPhone || order.experienceOrderInfo.phone || order.companyTel
|
||||
if (phone) {
|
||||
uni.makePhoneCall({
|
||||
phoneNumber: phone
|
||||
@@ -1143,7 +1208,15 @@ export default {
|
||||
url: `/pkg_common/views/room?id=${order.merId}&name=${order.merName}¶ms=${JSON.stringify(params)}`
|
||||
})
|
||||
},
|
||||
goRefund(order) {
|
||||
goRefund(orderOrIndex) {
|
||||
const order = this.getOrderByIndex(orderOrIndex)
|
||||
if (!order) {
|
||||
uni.showToast({
|
||||
title: '订单信息异常',
|
||||
icon: 'none'
|
||||
})
|
||||
return
|
||||
}
|
||||
// fix bug#1631
|
||||
if (this.type === 4 || parseInt(order._status._type) === 3) {
|
||||
// 打开售后的目的就是开启已完成/待评价订单的退款功能,确认打开售后之后,小程序用户再点击申请退款,就可以进入退款申请填写页面,正常走退款流程,提交退款申请以后,订单状态变为退款中
|
||||
@@ -1165,7 +1238,15 @@ export default {
|
||||
})
|
||||
}
|
||||
},
|
||||
goLogistics(order) {
|
||||
goLogistics(orderOrIndex) {
|
||||
const order = this.getOrderByIndex(orderOrIndex)
|
||||
if (!order) {
|
||||
uni.showToast({
|
||||
title: '订单信息异常',
|
||||
icon: 'none'
|
||||
})
|
||||
return
|
||||
}
|
||||
this.$yrouter.push({
|
||||
path: "/pagesOrder/order/Logistics/index",
|
||||
query: {
|
||||
@@ -1173,7 +1254,15 @@ export default {
|
||||
}
|
||||
});
|
||||
},
|
||||
goOrderDetails(order) {
|
||||
goOrderDetails(orderOrIndex) {
|
||||
const order = this.getOrderByIndex(orderOrIndex)
|
||||
if (!order) {
|
||||
uni.showToast({
|
||||
title: '订单信息异常',
|
||||
icon: 'none'
|
||||
})
|
||||
return
|
||||
}
|
||||
if (order.experienceOrderInfo) {
|
||||
this.$yrouter.push({
|
||||
path: "/pkg_product/views/experienceCouponOrderDetail",
|
||||
@@ -1210,9 +1299,39 @@ export default {
|
||||
}
|
||||
}
|
||||
},
|
||||
gotoGoodDetail(cart, type, query){
|
||||
gotoGoodDetail(orderOrIndex, cartOrIndex) {
|
||||
const order = this.getOrderByIndex(orderOrIndex)
|
||||
const cartList = Array.isArray(order && order.cartInfo) ? order.cartInfo : []
|
||||
const cart = typeof cartOrIndex === 'number' ? cartList[cartOrIndex] : cartOrIndex
|
||||
if (!cart) {
|
||||
uni.showToast({
|
||||
title: '未获取到商品信息',
|
||||
icon: 'none'
|
||||
})
|
||||
return
|
||||
}
|
||||
const productInfo = cart.productInfo || {}
|
||||
let type = 1
|
||||
let id = productInfo.id || cart.productId || ''
|
||||
if (Number(cart.combinationId) > 0) {
|
||||
type = 2
|
||||
id = cart.combinationId
|
||||
} else if (Number(cart.bargainId) > 0) {
|
||||
type = 3
|
||||
id = cart.bargainId
|
||||
} else if (Number(cart.seckillId) > 0) {
|
||||
type = 4
|
||||
id = cart.seckillId
|
||||
}
|
||||
if (!id) {
|
||||
uni.showToast({
|
||||
title: '未获取到商品详情参数',
|
||||
icon: 'none'
|
||||
})
|
||||
return
|
||||
}
|
||||
// isProductStillExist:0-不存在,1-存在
|
||||
const isProductStillExist = cart.isProductStillExist || 0
|
||||
const isProductStillExist = Number(cart.isProductStillExist || 0)
|
||||
if (isProductStillExist === 0) {
|
||||
this.$dialog.toast({ mes: '商品已下架' })
|
||||
return
|
||||
@@ -1232,14 +1351,32 @@ export default {
|
||||
path = '/pages/activity/SeckillDetails/index'
|
||||
break
|
||||
}
|
||||
this.$yrouter.push({ path, query })
|
||||
if (!path) {
|
||||
uni.showToast({
|
||||
title: '未找到商品详情页',
|
||||
icon: 'none'
|
||||
})
|
||||
return
|
||||
}
|
||||
this.$yrouter.push({
|
||||
path,
|
||||
query: { id }
|
||||
})
|
||||
},
|
||||
getOrderData() {
|
||||
getOrderData().then(res => {
|
||||
this.orderData = res.data
|
||||
})
|
||||
},
|
||||
takeOrder(order) {
|
||||
takeOrder(orderOrIndex) {
|
||||
const order = this.getOrderByIndex(orderOrIndex)
|
||||
if (!order) {
|
||||
uni.showToast({
|
||||
title: '订单信息异常',
|
||||
icon: 'none'
|
||||
})
|
||||
return
|
||||
}
|
||||
const that = this
|
||||
uni.showModal({
|
||||
title: '是否确认收货?',
|
||||
@@ -1260,6 +1397,23 @@ export default {
|
||||
reload() {
|
||||
this.changeType(this.type)
|
||||
},
|
||||
normalizeOrderList(list = []) {
|
||||
const orderKeySet = new Set()
|
||||
return list.reduce((result, item) => {
|
||||
const orderKey = item && (item.orderId || item.id)
|
||||
if (orderKey && orderKeySet.has(orderKey)) {
|
||||
return result
|
||||
}
|
||||
if (orderKey) {
|
||||
orderKeySet.add(orderKey)
|
||||
}
|
||||
result.push({
|
||||
...item,
|
||||
showMore: false
|
||||
})
|
||||
return result
|
||||
}, [])
|
||||
},
|
||||
tabChange(item) {
|
||||
this.type = item.index
|
||||
this.$yroute.query.type = this.type
|
||||
@@ -1300,6 +1454,7 @@ export default {
|
||||
})
|
||||
},
|
||||
changeType() {
|
||||
this.orderListRequestId += 1
|
||||
this.orderList = []
|
||||
this.page = 1
|
||||
this.loaded = false
|
||||
@@ -1308,7 +1463,8 @@ export default {
|
||||
},
|
||||
getOrderListReq() {
|
||||
if (this.loading || this.loaded) return
|
||||
// this.loading = true
|
||||
this.loading = true
|
||||
const currentRequestId = this.orderListRequestId
|
||||
uni.showLoading({
|
||||
mask: true,
|
||||
})
|
||||
@@ -1335,22 +1491,27 @@ export default {
|
||||
keyword,
|
||||
orderType
|
||||
}).then(res => {
|
||||
this.orderList = this.orderList.concat(res.data)
|
||||
if (this.orderList.length > 0) {
|
||||
this.orderList.forEach(item => {
|
||||
item.showMore = false;
|
||||
})
|
||||
if (currentRequestId !== this.orderListRequestId) {
|
||||
return
|
||||
}
|
||||
const nextOrderList = page === 1 ? res.data : this.orderList.concat(res.data)
|
||||
this.orderList = this.normalizeOrderList(nextOrderList)
|
||||
this.updateOrderDistances()
|
||||
this.page++;
|
||||
this.page = page + 1
|
||||
this.loaded = res.data.length < this.limit
|
||||
this.loading = false
|
||||
}).finally(() => {
|
||||
if (currentRequestId !== this.orderListRequestId) {
|
||||
return
|
||||
}
|
||||
this.loading = false
|
||||
uni.hideLoading()
|
||||
});
|
||||
},
|
||||
tapShowMore(order, index) {
|
||||
tapShowMore(index) {
|
||||
const order = this.getOrderByIndex(index)
|
||||
if (!order) {
|
||||
return
|
||||
}
|
||||
order.showMore = !order.showMore;
|
||||
this.$set(this.orderList, index, order);
|
||||
},
|
||||
@@ -1390,7 +1551,15 @@ export default {
|
||||
}
|
||||
return status
|
||||
},
|
||||
cancelOrder(order) {
|
||||
cancelOrder(orderOrIndex) {
|
||||
const order = this.getOrderByIndex(orderOrIndex)
|
||||
if (!order) {
|
||||
uni.showToast({
|
||||
title: '订单信息异常',
|
||||
icon: 'none'
|
||||
})
|
||||
return
|
||||
}
|
||||
cancelOrderHandle(order.orderId).then(() => {
|
||||
this.getOrderData();
|
||||
this.orderList.splice(this.orderList.indexOf(order), 1)
|
||||
|
||||
@@ -117,7 +117,7 @@
|
||||
<text class="v12-font-28">{{ force2Decimal(orderPrice.payPostage) }}</text>
|
||||
</view>
|
||||
</view> -->
|
||||
<view class="v12-justify-between v12-align-center v12-py-1">
|
||||
<view v-if="!isLotteryOrder()" class="v12-justify-between v12-align-center v12-py-1">
|
||||
<view class="v12-font-24 v12-dark-text v12-align-center">
|
||||
<text>优惠券</text>
|
||||
<view class="v12-align-center v12-ml-1" v-if="couponTitle">
|
||||
@@ -255,7 +255,7 @@
|
||||
</view>
|
||||
<!-- v9 优惠券开始 -->
|
||||
<u-popup
|
||||
v-if="show"
|
||||
v-if="!isLotteryOrder() && show"
|
||||
:show="show"
|
||||
:round="10"
|
||||
mode="bottom"
|
||||
@@ -263,7 +263,7 @@
|
||||
@close="close"
|
||||
>
|
||||
<CouponsPopup
|
||||
v-if="couponList.usable.length > 0 && show"
|
||||
v-if="!isLotteryOrder() && couponList.usable.length > 0 && show"
|
||||
:two-list="couponList"
|
||||
@change="changeCoupons"
|
||||
@close="close"
|
||||
@@ -398,7 +398,8 @@ export default {
|
||||
pageKeyId: Object.freeze('orderConfirm'),
|
||||
total: 0,
|
||||
couponTitle: '',
|
||||
hasCoupon: false
|
||||
hasCoupon: false,
|
||||
pageQuery: {}
|
||||
}
|
||||
},
|
||||
computed: mapGetters(["userInfo", "storeItems"]),
|
||||
@@ -417,17 +418,18 @@ export default {
|
||||
},
|
||||
onLoad(opts) {
|
||||
const that = this
|
||||
if (that.$yroute.query.pinkid !== undefined) {
|
||||
that.pinkId = that.$yroute.query.pinkid
|
||||
that.pageQuery = Object.assign({}, that.resolvePageQuery(), opts || {})
|
||||
if (that.pageQuery.pinkid !== undefined) {
|
||||
that.pinkId = that.pageQuery.pinkid
|
||||
}
|
||||
if (that.$yroute.query.id !== undefined) {
|
||||
that.cartid = that.$yroute.query.id
|
||||
if (that.pageQuery.id !== undefined) {
|
||||
that.cartid = that.pageQuery.id
|
||||
console.log(that.cartid)
|
||||
}
|
||||
if (that.$yroute.query.lotteryRecordId !== undefined) {
|
||||
that.lotteryRecordId = that.$yroute.query.lotteryRecordId
|
||||
if (that.pageQuery.lotteryRecordId !== undefined) {
|
||||
that.lotteryRecordId = that.pageQuery.lotteryRecordId
|
||||
}
|
||||
that.hasCoupon = opts.couponId !== ''
|
||||
that.hasCoupon = !!(opts && opts.couponId !== '')
|
||||
that.getCartInfo()
|
||||
},
|
||||
onShow() {
|
||||
@@ -452,6 +454,37 @@ export default {
|
||||
},
|
||||
methods: {
|
||||
isNullOrEmpty,
|
||||
resolvePageQuery() {
|
||||
if (this.$yroute && this.$yroute.query) {
|
||||
return this.$yroute.query
|
||||
}
|
||||
if (this.$route && this.$route.query) {
|
||||
return this.$route.query
|
||||
}
|
||||
if (this._route && this._route.query) {
|
||||
return this._route.query
|
||||
}
|
||||
return {}
|
||||
},
|
||||
isLotteryOrder() {
|
||||
const cartInfo = Array.isArray(this.orderGroupInfo && this.orderGroupInfo.cartInfo)
|
||||
? this.orderGroupInfo.cartInfo
|
||||
: []
|
||||
return Boolean(
|
||||
this.lotteryRecordId ||
|
||||
this.pageQuery.from === 'countyLottery' ||
|
||||
Number(this.pageQuery.drawActivityId || 0) > 0 ||
|
||||
cartInfo.some(item => Number(
|
||||
item.drawActivityId ||
|
||||
(item.productInfo && item.productInfo.drawActivityId) ||
|
||||
0
|
||||
) > 0)
|
||||
)
|
||||
},
|
||||
getOrderCouponId() {
|
||||
if (this.isLotteryOrder()) return 0
|
||||
return this.couponList.usable.length === 0 ? 0 : (this.couponId || 0)
|
||||
},
|
||||
couponMax(e) {
|
||||
// this.couponTitle = e.couponTitle
|
||||
// this.couponId = this.$yroute.query.couponId || uni.getStorageSync('couponId') || 0
|
||||
@@ -477,12 +510,17 @@ export default {
|
||||
postOrderComputed(this.orderGroupInfo.orderKey, {
|
||||
addressId: this.addressInfo.id,
|
||||
useIntegral: this.useIntegral ? 1 : 0,
|
||||
couponId: this.couponList.usable.length === 0 ? 0 : this.couponId,
|
||||
couponId: this.getOrderCouponId(),
|
||||
usePoints: this.usePointsCheck ? 1 : 0,
|
||||
shipping_type: parseInt(this.shipping_type) + 1
|
||||
}).then(res => {
|
||||
this.couponList = res.data.result.couponList
|
||||
if(!f) {
|
||||
if (this.isLotteryOrder()) {
|
||||
this.couponTitle = ''
|
||||
if (this.couponId !== 0) {
|
||||
this.couponId = 0
|
||||
}
|
||||
} else if(!f) {
|
||||
this.couponId = res.data.result.defaultCouponId
|
||||
}
|
||||
const data = res.data;
|
||||
@@ -543,8 +581,8 @@ export default {
|
||||
}
|
||||
_this.systemStore = data.systemStore || {}
|
||||
_this.storeSelfMention = data.storeSelfMention
|
||||
if(_this.$yroute.query.address !== undefined ) {
|
||||
_this.addressInfo = JSON.parse(_this.$yroute.query.address) || {}
|
||||
if(_this.pageQuery.address !== undefined ) {
|
||||
_this.addressInfo = JSON.parse(_this.pageQuery.address) || {}
|
||||
_this.computedPrice()
|
||||
} else {
|
||||
// _this.addressInfo = uni.getStorageSync('sourceAddress') || data.addressInfo || {}
|
||||
@@ -683,7 +721,7 @@ export default {
|
||||
phone: this.contactsTel,
|
||||
addressId: this.addressInfo.id,
|
||||
useIntegral: this.useIntegral ? 1 : 0,
|
||||
couponId: this.couponList.usable.length === 0 ? 0 : this.couponId || 0,
|
||||
couponId: this.getOrderCouponId(),
|
||||
usePoints: this.usePointsNumber || 0,
|
||||
payType: this.active,
|
||||
pinkId: this.pinkId,
|
||||
@@ -811,11 +849,13 @@ export default {
|
||||
this.show = !this.show
|
||||
},
|
||||
showCouponsPopup() {
|
||||
if (this.isLotteryOrder()) return
|
||||
if (this.couponList.usable.length === 0) return
|
||||
this.show = !this.show
|
||||
},
|
||||
// v9-2
|
||||
changeCoupons(item) {
|
||||
if (this.isLotteryOrder()) return
|
||||
if(!item) return
|
||||
if (this.couponList.usable.length === 0) return
|
||||
this.show = !this.show
|
||||
|
||||
@@ -540,7 +540,7 @@ import {
|
||||
getProductSkuBySelected
|
||||
} from '@/api/store'
|
||||
import { userBindParent } from '@/api/user'
|
||||
import { handleQrCode, isWeixin } from '@/utils'
|
||||
import { handleLoginFailure, handleQrCode, isWeixin } from '@/utils'
|
||||
import { getHomeData } from '@/api/public'
|
||||
import {
|
||||
getDailyGoods,
|
||||
@@ -655,7 +655,8 @@ export default {
|
||||
pageKeyId: '',
|
||||
couponListLimit2ToShow: [],
|
||||
qualifications: [],
|
||||
couponId: null
|
||||
couponId: null,
|
||||
submitActionLock: false
|
||||
}
|
||||
},
|
||||
computed: mapGetters(['isLogin', 'location', 'userInfo']),
|
||||
@@ -821,6 +822,7 @@ export default {
|
||||
}
|
||||
},
|
||||
onShow() {
|
||||
this.submitActionLock = false
|
||||
this.getMapData()
|
||||
getGiftCardSendBackground().then(res => {
|
||||
if (res.status === 200) {
|
||||
@@ -876,6 +878,15 @@ export default {
|
||||
})
|
||||
},
|
||||
goRoom() {
|
||||
if (!this.isLogin) {
|
||||
uni.showToast({
|
||||
title: '请先登录后联系客服',
|
||||
icon: 'none',
|
||||
duration: 2000
|
||||
})
|
||||
handleLoginFailure()
|
||||
return
|
||||
}
|
||||
console.log(this.storeInfo);
|
||||
const params = {
|
||||
goodsId: this.id,
|
||||
@@ -1500,6 +1511,10 @@ export default {
|
||||
q.drawActivityId = Number(this.activityId || 0)
|
||||
break
|
||||
}
|
||||
if (that.submitActionLock) {
|
||||
return
|
||||
}
|
||||
that.submitActionLock = true
|
||||
postCartAdd(q).then(function (res) {
|
||||
that.isOpen = false
|
||||
that.attr.cartAttr = false
|
||||
@@ -1511,6 +1526,9 @@ export default {
|
||||
discount: that.storeInfo.discount,
|
||||
}
|
||||
})
|
||||
setTimeout(() => {
|
||||
that.submitActionLock = false
|
||||
}, 1500)
|
||||
return
|
||||
}
|
||||
if(news === 2) {
|
||||
@@ -1527,8 +1545,12 @@ export default {
|
||||
// + '&couponId=' + coupId
|
||||
url: giftUrl
|
||||
})
|
||||
setTimeout(() => {
|
||||
that.submitActionLock = false
|
||||
}, 1500)
|
||||
}
|
||||
if(news === 0) {
|
||||
that.submitActionLock = false
|
||||
uni.showToast({
|
||||
title: "添加购物车成功",
|
||||
icon: "success",
|
||||
@@ -1541,6 +1563,7 @@ export default {
|
||||
}
|
||||
}).catch(error => {
|
||||
that.isOpen = false;
|
||||
that.submitActionLock = false
|
||||
uni.showToast({
|
||||
title: error.msg,
|
||||
icon: "none",
|
||||
|
||||
@@ -588,7 +588,8 @@ export default {
|
||||
pageKeyId: '',
|
||||
shareImg: '',
|
||||
videoPlayers: [],
|
||||
isView: false
|
||||
isView: false,
|
||||
skipRefreshOnShow: false
|
||||
}
|
||||
},
|
||||
// 必须在页面加 onPageScroll(e){} ,才能滑动显示背景
|
||||
@@ -679,6 +680,10 @@ export default {
|
||||
if (!this.isLoad) {
|
||||
return
|
||||
}
|
||||
if (this.skipRefreshOnShow) {
|
||||
this.skipRefreshOnShow = false
|
||||
return
|
||||
}
|
||||
this.fetchInnDetail()
|
||||
if(this.isView) return
|
||||
if(this.activeIndex === 1) {
|
||||
@@ -834,6 +839,7 @@ export default {
|
||||
})
|
||||
},
|
||||
infoClick: function (info) {
|
||||
this.skipRefreshOnShow = true
|
||||
this.$yrouter.push('/pagesInn/inn/innInfoDetail?id=' + info.id)
|
||||
},
|
||||
coverPlay(){
|
||||
|
||||
@@ -554,8 +554,9 @@
|
||||
</view>
|
||||
</template>
|
||||
<template v-if="status.type == -1">
|
||||
<view style="width: 100%">
|
||||
<view class="v12-justify-between" style="width: 100%">
|
||||
<view class="bnt v12-dark-text v12-dark-border cancel" @click="goRoom(orderInfo)">联系商家</view>
|
||||
<view class="bnt v12-primary-text v12-primary-border cancel" @click="cancelRefund">取消退款</view>
|
||||
</view>
|
||||
</template>
|
||||
<template v-if="status.type == -2">
|
||||
@@ -570,7 +571,11 @@
|
||||
<view class="v12-justify-between ">
|
||||
|
||||
<view class="bnt v12-dark-text v12-dark-border cancel" @click="buyAgin">再买一单</view>
|
||||
<view class="bnt v12-primary-text v12-primary-border" @click="routerGo(orderInfo.cartInfo[0])">立即评价</view>
|
||||
<view
|
||||
v-if="!isGiftOrder(orderInfo)"
|
||||
class="bnt v12-primary-text v12-primary-border"
|
||||
@click="routerGo(orderInfo.cartInfo[0])"
|
||||
>立即评价</view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
@@ -654,7 +659,7 @@
|
||||
<script>
|
||||
import passkeyborad from '@/components/yzc-paykeyboard/yzc-paykeyboard'
|
||||
import OrderGoods from "@/components/OrderGoods";
|
||||
import {orderDetail, orderDelay, aginConfirm, express, applyEditAddress, orderExpectedArrivalTime, groupOrderDetail} from "@/api/order";
|
||||
import {orderDetail, orderDelay, aginConfirm, express, applyEditAddress, orderExpectedArrivalTime, groupOrderDetail, cancelOrderRefund} from "@/api/order";
|
||||
import Payment from "@/components/Payment";
|
||||
import DataFormat from "@/components/DataFormat";
|
||||
import {copyClipboard} from "@/utils";
|
||||
@@ -1056,6 +1061,9 @@ export default {
|
||||
}
|
||||
return imgUrl;
|
||||
},
|
||||
isGiftOrder(order = {}) {
|
||||
return Number(order.isGiftCardSend || 0) === 1 || Number(order.isGiftCardReceive || 0) === 1
|
||||
},
|
||||
subscribePay() {
|
||||
uni.requestSubscribeMessage({
|
||||
tmplIds: settings.SubscribeMessageTmplIds,
|
||||
@@ -1166,6 +1174,39 @@ export default {
|
||||
this.getDetail();
|
||||
});
|
||||
},
|
||||
cancelRefund() {
|
||||
uni.showModal({
|
||||
title: '取消退款申请',
|
||||
content: '确认取消退款申请吗?',
|
||||
showCancel: true,
|
||||
cancelText: '再想想',
|
||||
confirmText: '确认取消',
|
||||
confirmColor: '#C52733 ',
|
||||
success: (res) => {
|
||||
if (!res.confirm) return;
|
||||
uni.showLoading({
|
||||
title: '取消中'
|
||||
});
|
||||
cancelOrderRefund(this.orderInfo.orderId).then((res) => {
|
||||
uni.showToast({
|
||||
title: res.msg || '已取消退款申请',
|
||||
icon: 'none',
|
||||
duration: 2000
|
||||
});
|
||||
this.getDetail();
|
||||
}).catch((err) => {
|
||||
const message = err.msg || (err.response && err.response.data && (err.response.data.msg || err.response.data.message)) || '取消退款失败';
|
||||
uni.showToast({
|
||||
title: message,
|
||||
icon: 'none',
|
||||
duration: 3000
|
||||
});
|
||||
}).finally(() => {
|
||||
uni.hideLoading();
|
||||
});
|
||||
}
|
||||
});
|
||||
},
|
||||
takeOrder() {
|
||||
takeOrderHandle(this.orderInfo.orderId).finally(() => {
|
||||
this.getDetail();
|
||||
|
||||
@@ -29,6 +29,13 @@
|
||||
</view>
|
||||
|
||||
<view class="card form-card">
|
||||
<view class="form-card-header">
|
||||
<view class="form-card-title">填写收货地址</view>
|
||||
<view class="select-address-entry" @click="chooseExistingAddress">
|
||||
<text class="select-address-text" style="margin-bottom: 4rpx;">选择现有地址 </text>
|
||||
<u-icon name="arrow-right" size="14" color="#BD3124"></u-icon>
|
||||
</view>
|
||||
</view>
|
||||
<view class="form-row">
|
||||
<text class="label">收货人</text>
|
||||
<input v-model="form.realName" class="input" placeholder="请填写收货人" placeholder-style="color:#b2b2b2;" />
|
||||
@@ -190,6 +197,7 @@ export default {
|
||||
this.fetchRealnameStatus()
|
||||
},
|
||||
onShow() {
|
||||
this.handleChooseAddress()
|
||||
const done = uni.getStorageSync('countyClaimAuthDone')
|
||||
const needAutoSubmit = uni.getStorageSync('countyClaimNeedAutoSubmit')
|
||||
if (done && (this.waitSubmitAfterRealname || needAutoSubmit)) {
|
||||
@@ -219,6 +227,41 @@ export default {
|
||||
goBack() {
|
||||
uni.navigateBack()
|
||||
},
|
||||
chooseExistingAddress() {
|
||||
uni.setStorageSync('sourceAddress', {
|
||||
realName: this.form.realName || '',
|
||||
phone: this.form.phone || '',
|
||||
userAddress: `${this.address.province || ''}${this.address.city || ''}${this.address.district || ''}${this.form.detail || ''}`,
|
||||
province: this.address.province || '',
|
||||
city: this.address.city || '',
|
||||
district: this.address.district || '',
|
||||
detail: this.form.detail || ''
|
||||
})
|
||||
this.$yrouter.push({
|
||||
path: '/pages/user/address/AddressManagement/index',
|
||||
query: {
|
||||
choosMode: 1
|
||||
}
|
||||
})
|
||||
},
|
||||
handleChooseAddress() {
|
||||
const chooseAddress = uni.getStorageSync('chooseAddress') || {}
|
||||
if (!chooseAddress.id) return
|
||||
uni.setStorageSync('chooseAddress', {})
|
||||
this.fillAddressForm(chooseAddress)
|
||||
},
|
||||
fillAddressForm(address = {}) {
|
||||
this.form.realName = address.realName || address.real_name || ''
|
||||
this.form.phone = address.phone || ''
|
||||
this.form.detail = address.detail || ''
|
||||
this.address = {
|
||||
province: address.province || '',
|
||||
city: address.city || '',
|
||||
district: address.district || '',
|
||||
city_id: address.city_id || address.cityId || address.city_id
|
||||
}
|
||||
this.addressText = `${this.address.province} ${this.address.city} ${this.address.district}`.trim()
|
||||
},
|
||||
getCityList() {
|
||||
getCity().then(res => {
|
||||
this.district = res.data || []
|
||||
@@ -585,6 +628,31 @@ export default {
|
||||
padding: 0 24rpx 24rpx;
|
||||
}
|
||||
|
||||
.form-card-header {
|
||||
min-height: 88rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
border-bottom: 2rpx dashed #e5e5e5;
|
||||
}
|
||||
|
||||
.form-card-title {
|
||||
color: #262626;
|
||||
font-size: 30rpx;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.select-address-entry {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
color: #BD3124;
|
||||
}
|
||||
|
||||
.select-address-text {
|
||||
font-size: 26rpx;
|
||||
margin-right: 8rpx;
|
||||
}
|
||||
|
||||
.form-row {
|
||||
min-height: 92rpx;
|
||||
display: flex;
|
||||
|
||||
@@ -284,8 +284,7 @@ export default {
|
||||
return [1, 2, -1].includes(Number(item.status)) && !!item.prizeName
|
||||
},
|
||||
getInvalidReason(item) {
|
||||
if (Number(item.claimStatus) === -1) return '奖品过期未领取'
|
||||
return '订单取消'
|
||||
return item.invalidReason || ''
|
||||
},
|
||||
formatPrizeText(item = {}) {
|
||||
const prizeName = item.prizeName || '神秘奖品'
|
||||
|
||||
@@ -309,6 +309,10 @@ export default {
|
||||
// console.log(searchMap);
|
||||
const filterMap = searchMap.filter(el => el.cityName.includes(this.keyword))
|
||||
if(filterMap.length === 0) {
|
||||
uni.showToast({
|
||||
title: '未找到该城市,请重新输入城市名称',
|
||||
icon: 'none'
|
||||
})
|
||||
return
|
||||
} else {
|
||||
this.asideIndex = filterMap[0].index
|
||||
|
||||
Reference in New Issue
Block a user