|
@@ -20,6 +20,19 @@ onLoad((options: any) => {
|
|
|
refundNumber.value = options.refundNumber
|
|
refundNumber.value = options.refundNumber
|
|
|
getDetail(options.refundNumber)
|
|
getDetail(options.refundNumber)
|
|
|
})
|
|
})
|
|
|
|
|
+const columns = ref(['快递寄送', '自行配送'])
|
|
|
|
|
+const value = ref('')
|
|
|
|
|
+const trackingNumber = ref('')
|
|
|
|
|
+const submitLoading = ref(false)
|
|
|
|
|
+
|
|
|
|
|
+const logisticsTypeMap: Record<number, string> = { 0: '快递寄送', 1: '自行配送' }
|
|
|
|
|
+const isLogisticsSubmitted = computed(() =>
|
|
|
|
|
+ refundOrderInfo.value?.refundGoodsType != null && !!refundOrderInfo.value?.trackingNumber,
|
|
|
|
|
+)
|
|
|
|
|
+
|
|
|
|
|
+function handleConfirm({ value: selectedValue }: { value: string }) {
|
|
|
|
|
+ value.value = selectedValue
|
|
|
|
|
+}
|
|
|
async function getDetail(refundNumber: string) {
|
|
async function getDetail(refundNumber: string) {
|
|
|
const res = await api.xsb.refundDetails({ data: { refundNumber } })
|
|
const res = await api.xsb.refundDetails({ data: { refundNumber } })
|
|
|
refundOrderInfo.value = res.data
|
|
refundOrderInfo.value = res.data
|
|
@@ -40,86 +53,35 @@ function handleGOCoupon() {
|
|
|
}
|
|
}
|
|
|
router.push({ name: 'xsb-coupon', params: { couponId: refundOrderInfo.value?.couponBaseInfoDTO?.allowanceId, activeTab: refundOrderInfo.value?.isAll ? '0' : '1' } })
|
|
router.push({ name: 'xsb-coupon', params: { couponId: refundOrderInfo.value?.couponBaseInfoDTO?.allowanceId, activeTab: refundOrderInfo.value?.isAll ? '0' : '1' } })
|
|
|
}
|
|
}
|
|
|
|
|
+async function handleSubmitLogistics() {
|
|
|
|
|
+ if (!value.value) {
|
|
|
|
|
+ return useGlobalToast().show('请选择退货方式')
|
|
|
|
|
+ }
|
|
|
|
|
+ const refundLogisticsType = value.value === '快递寄送' ? 0 : 1
|
|
|
|
|
+ if (refundLogisticsType === 0 && !trackingNumber.value.trim()) {
|
|
|
|
|
+ return useGlobalToast().show('请输入快递单号')
|
|
|
|
|
+ }
|
|
|
|
|
+ submitLoading.value = true
|
|
|
|
|
+ try {
|
|
|
|
|
+ await api.xsb.submitRefundLogistics({
|
|
|
|
|
+ data: {
|
|
|
|
|
+ refundNumber: refundNumber.value,
|
|
|
|
|
+ refundLogisticsType,
|
|
|
|
|
+ trackingNumber: trackingNumber.value.trim(),
|
|
|
|
|
+ },
|
|
|
|
|
+ })
|
|
|
|
|
+ useGlobalToast().show('提交成功')
|
|
|
|
|
+ getDetail(refundNumber.value)
|
|
|
|
|
+ }
|
|
|
|
|
+ finally {
|
|
|
|
|
+ submitLoading.value = false
|
|
|
|
|
+ }
|
|
|
|
|
+}
|
|
|
</script>
|
|
</script>
|
|
|
|
|
|
|
|
<template>
|
|
<template>
|
|
|
<page-meta :page-style="showTime ? 'overflow: hidden;' : '' " />
|
|
<page-meta :page-style="showTime ? 'overflow: hidden;' : '' " />
|
|
|
<view v-if="refundOrderInfo" class="page-xsb px24rpx pt20rpx">
|
|
<view v-if="refundOrderInfo" class="page-xsb px24rpx pt20rpx">
|
|
|
- <!-- <view class="mb24rpx rounded-16rpx bg-white p24rpx">
|
|
|
|
|
- <view class="text-32rpx text-#222 font-semibold">
|
|
|
|
|
- 待填写配送信息
|
|
|
|
|
- </view>
|
|
|
|
|
- <view class="mt20rpx text-24rpx text-#AAAAAA">
|
|
|
|
|
- 申请已通过,请在47时59分内,填写配送信息并支付配送费
|
|
|
|
|
- </view>
|
|
|
|
|
- </view> -->
|
|
|
|
|
- <!-- <view class="mb24rpx rounded-16rpx bg-white p24rpx">
|
|
|
|
|
- <view class="text-32rpx text-#222 font-semibold">
|
|
|
|
|
- 配送信息
|
|
|
|
|
- </view>
|
|
|
|
|
- <view class="mt24rpx flex items-center justify-between" @click="showTime = true">
|
|
|
|
|
- <view class="text-28rpx">
|
|
|
|
|
- <text class="text-#FF4D3A">
|
|
|
|
|
- *
|
|
|
|
|
- </text>
|
|
|
|
|
- <text class="text-#222">
|
|
|
|
|
- 取件时间
|
|
|
|
|
- </text>
|
|
|
|
|
- </view>
|
|
|
|
|
- <view class="flex items-center text-#AAAAAA">
|
|
|
|
|
- 请选择时间 <wd-icon name="chevron-right" size="22px" />
|
|
|
|
|
- </view>
|
|
|
|
|
- </view>
|
|
|
|
|
- <view class="mt24rpx flex items-center justify-between">
|
|
|
|
|
- <view class="text-28rpx">
|
|
|
|
|
- <text class="text-#FF4D3A">
|
|
|
|
|
- *
|
|
|
|
|
- </text>
|
|
|
|
|
- <text class="text-#222">
|
|
|
|
|
- 取件地址
|
|
|
|
|
- </text>
|
|
|
|
|
- </view>
|
|
|
|
|
- <view class="flex items-center text-#222">
|
|
|
|
|
- 富力中心A座3401
|
|
|
|
|
- </view>
|
|
|
|
|
- </view>
|
|
|
|
|
- <view class="mt24rpx flex items-center justify-between">
|
|
|
|
|
- <view />
|
|
|
|
|
- <view class="flex items-center text-#222">
|
|
|
|
|
- 杨先生 189****4678
|
|
|
|
|
- </view>
|
|
|
|
|
- </view>
|
|
|
|
|
- <view class="mt24rpx flex items-center justify-between">
|
|
|
|
|
- <view class="text-28rpx">
|
|
|
|
|
- <text class="text-#FF4D3A">
|
|
|
|
|
- *
|
|
|
|
|
- </text>
|
|
|
|
|
- <text class="text-#222">
|
|
|
|
|
- 退货方式
|
|
|
|
|
- </text>
|
|
|
|
|
- </view>
|
|
|
|
|
- <view class="flex items-center text-#222">
|
|
|
|
|
- 上门取件
|
|
|
|
|
- </view>
|
|
|
|
|
- </view>
|
|
|
|
|
- <view class="mt24rpx h2rpx w-full bg-#F0F0F0" />
|
|
|
|
|
- <view class="mt28rpx text-28rpx text-#222 font-semibold">
|
|
|
|
|
- 请支付配送费 <text class="text-32rpx text-#FF4D3A">
|
|
|
|
|
- ¥12
|
|
|
|
|
- </text>
|
|
|
|
|
- </view>
|
|
|
|
|
- <view class="mt24rpx text-24rpx text-#AAAAAA">
|
|
|
|
|
- <view> 1.因个人原因退货,需客户承担商品返还商家的运费</view>
|
|
|
|
|
- <view class="mt20rpx">
|
|
|
|
|
- 2.请确保商品不影响二次销售,否则商家会拒绝收货
|
|
|
|
|
- </view>
|
|
|
|
|
- </view>
|
|
|
|
|
- <view class="mt24rpx w-full">
|
|
|
|
|
- <wd-button block>
|
|
|
|
|
- 立即支付
|
|
|
|
|
- </wd-button>
|
|
|
|
|
- </view>
|
|
|
|
|
- </view> -->
|
|
|
|
|
<view v-if="refundOrderInfo.omsOrderRefundRecords" class="rounded-16rpx bg-white p24rpx">
|
|
<view v-if="refundOrderInfo.omsOrderRefundRecords" class="rounded-16rpx bg-white p24rpx">
|
|
|
<view class="text-32rpx text-#222 font-semibold">
|
|
<view class="text-32rpx text-#222 font-semibold">
|
|
|
{{ refundOrderInfo.omsOrderRefundRecords[0].auditStatusDescribe }}
|
|
{{ refundOrderInfo.omsOrderRefundRecords[0].auditStatusDescribe }}
|
|
@@ -171,6 +133,87 @@ function handleGOCoupon() {
|
|
|
</view>
|
|
</view>
|
|
|
</view> -->
|
|
</view> -->
|
|
|
</view>
|
|
</view>
|
|
|
|
|
+ <view v-if="refundOrderInfo.refundType === 2 && (isLogisticsSubmitted || refundOrderInfo.returnMoneySts === refundStatus.PendingReturn)" class="mt20rpx rounded-16rpx bg-white p24rpx">
|
|
|
|
|
+ <template v-if="isLogisticsSubmitted">
|
|
|
|
|
+ <view>
|
|
|
|
|
+ <view class="mt-20rpx text-28rpx font-semibold">
|
|
|
|
|
+ 配送信息
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <view class="mt-20rpx flex items-center">
|
|
|
|
|
+ <view class="text-28rpx">
|
|
|
|
|
+ 退货方式:
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <view class="text-28rpx text-#AAA">
|
|
|
|
|
+ {{ logisticsTypeMap[refundOrderInfo.refundGoodsType!] }}
|
|
|
|
|
+ </view>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <view v-if="refundOrderInfo.refundGoodsType === 0" class="mt-20rpx flex items-center">
|
|
|
|
|
+ <view class="text-28rpx">
|
|
|
|
|
+ 快递单号:
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <view class="text-28rpx text-#AAA">
|
|
|
|
|
+ {{ refundOrderInfo.trackingNumber }}
|
|
|
|
|
+ </view>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ </template>
|
|
|
|
|
+ <template v-else>
|
|
|
|
|
+ <view class="text-28rpx font-semibold">
|
|
|
|
|
+ 商家收货信息
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <view class="flex items-center justify-between">
|
|
|
|
|
+ <view class="text-24rpx">
|
|
|
|
|
+ <view class="mt-20rpx flex items-center">
|
|
|
|
|
+ <view>收货人:</view>
|
|
|
|
|
+ <view class="text-#AAA">
|
|
|
|
|
+ {{ refundOrderInfo.shopLiaison }}
|
|
|
|
|
+ </view>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <view class="mt-20rpx flex items-center">
|
|
|
|
|
+ <view>联系电话:</view>
|
|
|
|
|
+ <view class="text-#AAA">
|
|
|
|
|
+ {{ refundOrderInfo.shopPhone }}
|
|
|
|
|
+ </view>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <view class="mt-20rpx flex">
|
|
|
|
|
+ <view class="flex-shrink-0">
|
|
|
|
|
+ 收货地址:
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <view class="text-#AAA">
|
|
|
|
|
+ {{ refundOrderInfo.shopAddress }}
|
|
|
|
|
+ </view>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <view @click="copyToClipboard(`收货人:${refundOrderInfo.shopLiaison}\n联系电话:${refundOrderInfo.shopPhone}\n收货地址:${refundOrderInfo.shopAddress}`)">
|
|
|
|
|
+ <wd-icon name="file-copy" size="22px" />
|
|
|
|
|
+ </view>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <view class="mt24rpx h2rpx w-full bg-#F0F0F0" />
|
|
|
|
|
+ <view>
|
|
|
|
|
+ <view class="mt-20rpx text-28rpx font-semibold">
|
|
|
|
|
+ 配送信息
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <wd-picker v-model="value" :columns="columns" label="退货方式:" clearable align-right @confirm="handleConfirm" />
|
|
|
|
|
+ <view v-if="value === '快递寄送'" class="flex items-center border-b-[#F0F0F0]">
|
|
|
|
|
+ <view class="text-28rpx">
|
|
|
|
|
+ 快递单号:
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <wd-input v-model="trackingNumber" no-border placeholder="请输入快递单号" />
|
|
|
|
|
+ </view>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <view class="mt-20rpx text-24rpx">
|
|
|
|
|
+ 1.退货产生的运费请与商家自行协商
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <view class="mt-12rpx text-24rpx">
|
|
|
|
|
+ 2.请确保商品不影响二次销售,否则商家会拒绝收货
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <view class="mt-20rpx flex items-center justify-center">
|
|
|
|
|
+ <wd-button class="h-80rpx w-full" :loading="submitLoading" @click="handleSubmitLogistics">
|
|
|
|
|
+ 提交
|
|
|
|
|
+ </wd-button>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ </template>
|
|
|
|
|
+ </view>
|
|
|
<view class="mt20rpx rounded-16rpx bg-white p24rpx">
|
|
<view class="mt20rpx rounded-16rpx bg-white p24rpx">
|
|
|
<view class="text-28rpx font-semibold">
|
|
<view class="text-28rpx font-semibold">
|
|
|
优惠券处理
|
|
优惠券处理
|
|
@@ -466,6 +509,11 @@ function handleGOCoupon() {
|
|
|
</view>
|
|
</view>
|
|
|
</template>
|
|
</template>
|
|
|
|
|
|
|
|
-<style scoped>
|
|
|
|
|
-
|
|
|
|
|
|
|
+<style scoped lang="scss">
|
|
|
|
|
+:deep(.wd-picker) {
|
|
|
|
|
+ .wd-cell {
|
|
|
|
|
+ padding-left: 0 !important;
|
|
|
|
|
+ padding-right: 0 !important;
|
|
|
|
|
+ }
|
|
|
|
|
+}
|
|
|
</style>
|
|
</style>
|