|
|
@ -31,19 +31,26 @@ |
|
|
</view> |
|
|
</view> |
|
|
<view class="refund-info"> |
|
|
<view class="refund-info"> |
|
|
<view class="refund-info-content"> |
|
|
<view class="refund-info-content"> |
|
|
<view>退款原因: <text style="font-weight: 700;color:#00231C;">{{item.refundTypeStatus == 1?'商家原因':item.refundTypeStatus == 2?'配送原因':item.refundTypeStatus == 3?'商家/配送都有原因(需要退配送费)':item.refundTypeStatus == 4?'平台退款':""}}</text></view> |
|
|
<view class="refund-main"> |
|
|
|
|
|
<view class="refund-text"> |
|
|
<view>退款类型: <text style="font-weight: 700;color:#00231C;">{{item.refundType == 1?'退商品':item.refundType == 2?'退配送费':item.refundType == 3?'全额退款':""}}</text></view> |
|
|
<view>退款原因: <text style="font-weight: 700;color:#00231C;">{{item.refundTypeStatus == 1?'商家原因':item.refundTypeStatus == 2?'配送原因':item.refundTypeStatus == 3?'商家/配送都有原因(需要退配送费)':item.refundTypeStatus == 4?'平台退款':""}}</text></view> |
|
|
<view class="refund-reason-row"> |
|
|
|
|
|
退款/售后原因: |
|
|
<view>退款类型: <text style="font-weight: 700;color:#00231C;">{{item.refundType == 1?'退商品':item.refundType == 2?'退配送费':item.refundType == 3?'全额退款':""}}</text></view> |
|
|
<text class="refund-reason-text">{{item.reason || '无'}}</text> |
|
|
<view class="refund-reason-row"> |
|
|
</view> |
|
|
退款/售后原因: |
|
|
<view class="refund-pictures-row" v-if="getPictureList(item.pictures).length > 0"> |
|
|
<text class="refund-reason-text">{{item.reason || '无'}}</text> |
|
|
<view class="refund-pictures-label">退款/售后原因图片:</view> |
|
|
</view> |
|
|
<view class="refund-pictures"> |
|
|
<view class="refund-pictures-row" v-if="getPictureList(item.pictures).length > 0"> |
|
|
<image class="refund-picture" v-for="(picture,pictureIndex) in getPictureList(item.pictures)" |
|
|
<view class="refund-pictures-label">退款/售后原因图片:</view> |
|
|
:key="pictureIndex" :src="picture" mode="aspectFill" |
|
|
<view class="refund-pictures"> |
|
|
@tap.stop="previewRefundImage(item.pictures,pictureIndex)"></image> |
|
|
<image class="refund-picture" v-for="(picture,pictureIndex) in getPictureList(item.pictures)" |
|
|
|
|
|
:key="pictureIndex" :src="picture" mode="aspectFill" |
|
|
|
|
|
@tap.stop="previewRefundImage(item.pictures,pictureIndex)"></image> |
|
|
|
|
|
</view> |
|
|
|
|
|
</view> |
|
|
|
|
|
</view> |
|
|
|
|
|
<view class="refund-contact"> |
|
|
|
|
|
<view class="contact-btn" @tap.stop="openContactPopup(item)">联系</view> |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
<view style="text-align: right;">退款金额: <text style="color:red;font-size: 34rpx;font-weight: 700;">¥{{item.refundAmount}}</text></view> |
|
|
<view style="text-align: right;">退款金额: <text style="color:red;font-size: 34rpx;font-weight: 700;">¥{{item.refundAmount}}</text></view> |
|
|
@ -146,6 +153,10 @@ |
|
|
<text class="product-popup-label">规格</text> |
|
|
<text class="product-popup-label">规格</text> |
|
|
<text class="product-popup-spec-text">{{item1.specs | delNode}}</text> |
|
|
<text class="product-popup-spec-text">{{item1.specs | delNode}}</text> |
|
|
</view> |
|
|
</view> |
|
|
|
|
|
<view class="product-popup-price-row"> |
|
|
|
|
|
<text>单价:¥{{item1.price != null ? item1.price : 0}}</text> |
|
|
|
|
|
<text v-if="item1.packageFee != null && item1.packageFee !== ''" class="product-popup-package-fee">餐盒费:¥{{item1.packageFee}}</text> |
|
|
|
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
<view class="product-popup-quantity"> |
|
|
<view class="product-popup-quantity"> |
|
|
<view class="product-popup-quantity-num">x{{item1.quantity}}</view> |
|
|
<view class="product-popup-quantity-num">x{{item1.quantity}}</view> |
|
|
@ -158,6 +169,26 @@ |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
</uni-popup> |
|
|
</uni-popup> |
|
|
|
|
|
<uni-popup ref="contactPopup" background-color="transparent"> |
|
|
|
|
|
<view class="contact-popup"> |
|
|
|
|
|
<view class="contact-popup-title">联系</view> |
|
|
|
|
|
<view class="contact-popup-item" v-if="contactItem.mallOrder && contactItem.mallOrder.receiverPhone" |
|
|
|
|
|
@tap="makeCall(contactItem.mallOrder.receiverPhone)"> |
|
|
|
|
|
<text>联系用户</text> |
|
|
|
|
|
<text class="contact-popup-phone">{{contactItem.mallOrder.receiverPhone}}</text> |
|
|
|
|
|
</view> |
|
|
|
|
|
<view class="contact-popup-item" v-if="contactItem.mallOrder && contactItem.mallOrder.shopPhone" |
|
|
|
|
|
@tap="makeCall(contactItem.mallOrder.shopPhone)"> |
|
|
|
|
|
<text>联系商家</text> |
|
|
|
|
|
<text class="contact-popup-phone">{{contactItem.mallOrder.shopPhone}}</text> |
|
|
|
|
|
</view> |
|
|
|
|
|
<view class="contact-popup-item" v-if="contactItem.mallOrder && contactItem.mallOrder.deliveryType == 1 && contactItem.mallDeliveryOrder && contactItem.mallDeliveryOrder.workerPhone" |
|
|
|
|
|
@tap="makeCall(contactItem.mallDeliveryOrder.workerPhone)"> |
|
|
|
|
|
<text>联系配送员</text> |
|
|
|
|
|
<text class="contact-popup-phone">{{contactItem.mallDeliveryOrder.workerPhone}}</text> |
|
|
|
|
|
</view> |
|
|
|
|
|
</view> |
|
|
|
|
|
</uni-popup> |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
</template> |
|
|
</template> |
|
|
@ -181,7 +212,8 @@ |
|
|
orderDetail:{}, |
|
|
orderDetail:{}, |
|
|
returnData:[], |
|
|
returnData:[], |
|
|
returnCount:0, |
|
|
returnCount:0, |
|
|
submitLoading:false |
|
|
submitLoading:false, |
|
|
|
|
|
contactItem:{} |
|
|
} |
|
|
} |
|
|
}, |
|
|
}, |
|
|
filters:{ |
|
|
filters:{ |
|
|
@ -253,6 +285,10 @@ |
|
|
phoneNumber: phone |
|
|
phoneNumber: phone |
|
|
}); |
|
|
}); |
|
|
}, |
|
|
}, |
|
|
|
|
|
openContactPopup(item){ |
|
|
|
|
|
this.contactItem = item || {}; |
|
|
|
|
|
this.$refs.contactPopup.open('bottom'); |
|
|
|
|
|
}, |
|
|
getReturnCount(){ |
|
|
getReturnCount(){ |
|
|
let that = this |
|
|
let that = this |
|
|
if(this.type == 'worker'){ |
|
|
if(this.type == 'worker'){ |
|
|
@ -445,6 +481,61 @@ |
|
|
font-size: 28rpx; |
|
|
font-size: 28rpx; |
|
|
line-height: 50rpx; |
|
|
line-height: 50rpx; |
|
|
} |
|
|
} |
|
|
|
|
|
.refund-main { |
|
|
|
|
|
display: flex; |
|
|
|
|
|
align-items: flex-start; |
|
|
|
|
|
} |
|
|
|
|
|
.refund-text { |
|
|
|
|
|
flex: 1; |
|
|
|
|
|
min-width: 0; |
|
|
|
|
|
} |
|
|
|
|
|
.refund-contact { |
|
|
|
|
|
width: 120rpx; |
|
|
|
|
|
flex-shrink: 0; |
|
|
|
|
|
margin-left: 16rpx; |
|
|
|
|
|
} |
|
|
|
|
|
.contact-btn { |
|
|
|
|
|
height: 50rpx; |
|
|
|
|
|
border-radius: 14rpx; |
|
|
|
|
|
background: rgba(0, 35, 28, 1); |
|
|
|
|
|
color: rgba(166, 255, 234, 1); |
|
|
|
|
|
font-size: 24rpx; |
|
|
|
|
|
font-weight: 700; |
|
|
|
|
|
line-height: 50rpx; |
|
|
|
|
|
text-align: center; |
|
|
|
|
|
} |
|
|
|
|
|
.contact-popup { |
|
|
|
|
|
width: 100%; |
|
|
|
|
|
padding: 34rpx 28rpx 48rpx; |
|
|
|
|
|
box-sizing: border-box; |
|
|
|
|
|
border-radius: 32rpx 32rpx 0 0; |
|
|
|
|
|
background: #fff; |
|
|
|
|
|
} |
|
|
|
|
|
.contact-popup-title { |
|
|
|
|
|
margin-bottom: 18rpx; |
|
|
|
|
|
color: #00231C; |
|
|
|
|
|
font-size: 34rpx; |
|
|
|
|
|
font-weight: 900; |
|
|
|
|
|
text-align: center; |
|
|
|
|
|
} |
|
|
|
|
|
.contact-popup-item { |
|
|
|
|
|
display: flex; |
|
|
|
|
|
align-items: center; |
|
|
|
|
|
height: 88rpx; |
|
|
|
|
|
padding: 0 24rpx; |
|
|
|
|
|
margin-top: 16rpx; |
|
|
|
|
|
border-radius: 18rpx; |
|
|
|
|
|
background: #F5F8F5; |
|
|
|
|
|
color: #00231C; |
|
|
|
|
|
font-size: 28rpx; |
|
|
|
|
|
font-weight: 700; |
|
|
|
|
|
} |
|
|
|
|
|
.contact-popup-phone { |
|
|
|
|
|
flex: 1; |
|
|
|
|
|
color: #55716a; |
|
|
|
|
|
font-size: 26rpx; |
|
|
|
|
|
text-align: right; |
|
|
|
|
|
} |
|
|
.refund-reason-row { |
|
|
.refund-reason-row { |
|
|
line-height: 42rpx; |
|
|
line-height: 42rpx; |
|
|
} |
|
|
} |
|
|
@ -665,6 +756,21 @@ |
|
|
word-break: break-all; |
|
|
word-break: break-all; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
.product-popup-price-row { |
|
|
|
|
|
display: flex; |
|
|
|
|
|
flex-wrap: wrap; |
|
|
|
|
|
margin-top: 12rpx; |
|
|
|
|
|
color: #f04438; |
|
|
|
|
|
font-size: 24rpx; |
|
|
|
|
|
font-weight: 800; |
|
|
|
|
|
line-height: 34rpx; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
.product-popup-package-fee { |
|
|
|
|
|
margin-left: 18rpx; |
|
|
|
|
|
color: #65736f; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
.product-popup-quantity { |
|
|
.product-popup-quantity { |
|
|
width: 92rpx; |
|
|
width: 92rpx; |
|
|
height: 92rpx; |
|
|
height: 92rpx; |
|
|
|