- 申请退货

- 和物流
This commit is contained in:
sin 2019-04-27 16:31:07 +08:00
parent 983f00ab40
commit 6e92e7162c
6 changed files with 99 additions and 42 deletions

View File

@ -133,9 +133,9 @@ export function getCartCalcSkuPrice(skuId) {
// 物流信息 // 物流信息
export function getLogisticsInfo(params) { export function getOrderLogisticsInfo(params) {
return request({ return request({
url: '/order-api/users/order_logistics/logistics_info', url: '/order-api/users/order_logistics/info_order',
method: 'get', method: 'get',
params: { params: {
...params, ...params,
@ -143,6 +143,16 @@ export function getLogisticsInfo(params) {
}); });
} }
export function getLogisticsInfo(logisticsId) {
return request({
url: '/order-api/users/order_logistics/info',
method: 'GET',
params: {
logisticsId,
},
});
}
// 退货信息 // 退货信息

View File

@ -147,7 +147,7 @@ const routes = [
} }
}, },
{ {
path: '/user/aftersale/track/:id', path: '/user/aftersale/track/:id/:serviceNumber',
component: () => import('../page/user/aftersale/track'), component: () => import('../page/user/aftersale/track'),
meta: { meta: {
title: '进度详情' title: '进度详情'

View File

@ -1,16 +1,32 @@
<template> <template>
<div> <div>
<headerNav title="服务单详情"/> <headerNav title="服务单详情"/>
<van-steps :active="active">
<van-step>提交申请</van-step>
<van-step>客服审核</van-step>
<van-step>客户确认</van-step>
<van-step>仓库收货</van-step>
<van-step>完成</van-step>
</van-steps>
<van-cell class="logistics" to="/user/aftersale/track/1" title="您的服务单435703816的商品已收到" <div v-if="serviceType === 1">
label="2018-08-31 21:04:03" is-link/> <van-steps :active="active">
<van-step>提交申请</van-step>
<van-step>客服审核</van-step>
<van-step>客户确认</van-step>
<van-step>仓库收货</van-step>
<van-step>完成</van-step>
</van-steps>
<van-cell class="logistics"
:to="`/user/aftersale/track/${lastLogisticsInfo.id}/${serviceNumber}`"
:title="lastLogisticsDetail.logisticsInformation"
:label="lastLogisticsDetail.logisticsTimeText" is-link/>
</div>
<div v-if="serviceType === 2">
<van-steps v-if="serviceType === 2" :active="active">
<van-step>提交申请</van-step>
<van-step>客服审核</van-step>
<van-step>客户确认</van-step>
<van-step>仓库收货</van-step>
<van-step>完成</van-step>
</van-steps>
</div>
<div style="height:15px;"></div> <div style="height:15px;"></div>
<div v-for="(product,i) in products" :key="i"> <div v-for="(product,i) in products" :key="i">
@ -21,7 +37,8 @@
<van-cell-group> <van-cell-group>
<van-cell title="服务单号" :value="serviceNumber"/> <van-cell title="服务单号" :value="serviceNumber"/>
<van-cell title="申请时间" :value="applyTime"/> <van-cell title="申请时间" :value="applyTime"/>
<van-cell title="服务类型" :value="serviceType"/> <van-cell title="服务类型" :value="serviceTypeText"/>
<van-cell title="退款金额" :value="refundPrice / 100"/>
</van-cell-group> </van-cell-group>
<div style="height:15px;"></div> <div style="height:15px;"></div>
@ -45,6 +62,10 @@
serviceNumber: -1, serviceNumber: -1,
applyTime: '-1', applyTime: '-1',
serviceType: '', serviceType: '',
serviceTypeText: '',
refundPrice: 0,
lastLogisticsInfo: {},
lastLogisticsDetail: {},
products: [ products: [
{ {
imageURL: 'https://pop.nosdn.127.net/19e33c9b-6c22-4a4b-96da-1cb7afb32712', imageURL: 'https://pop.nosdn.127.net/19e33c9b-6c22-4a4b-96da-1cb7afb32712',
@ -59,10 +80,20 @@
const { orderId } = this.$route.params; const { orderId } = this.$route.params;
getOrderReturnInfo(orderId).then(res => { getOrderReturnInfo(orderId).then(res => {
console.log('getOrderReturnInfo success', res) console.log('getOrderReturnInfo success', res)
const { returnInfo, orderItems } = res; const { returnInfo, orderItems, lastLogisticsInfo } = res;
this.serviceType = returnInfo.serviceTypeText this.lastLogisticsInfo = lastLogisticsInfo
if (lastLogisticsInfo && lastLogisticsInfo.lastLogisticsDetail) {
const lastLogisticsDetail = lastLogisticsInfo.lastLogisticsDetail;
this.lastLogisticsDetail = {
...lastLogisticsDetail,
logisticsTimeText: moment(lastLogisticsDetail.logisticsTime).format("YYYY-MM-DD HH:mm"),
}
}
this.serviceType = returnInfo.serviceType
this.serviceTypeText = returnInfo.serviceTypeText
this.serviceNumber = returnInfo.serviceNumber this.serviceNumber = returnInfo.serviceNumber
this.applyTime = moment(returnInfo.createTime).format("YYYY-MM-DD HH:mm") this.applyTime = moment(returnInfo.createTime).format("YYYY-MM-DD HH:mm")
this.refundPrice = returnInfo.refundPrice
this.products = orderItems.map(item => { this.products = orderItems.map(item => {
return { return {
...item, ...item,

View File

@ -1,32 +1,48 @@
<template> <template>
<div style="background: #f7f7f7;"> <div style="background: #f7f7f7;">
<headerNav title="进度详情"/> <headerNav title="进度详情"/>
<van-cell-group> <van-cell-group>
<van-cell title="服务单号" value="18081609422771742" /> <van-cell title="服务单号" :value="serviceNumber"/>
</van-cell-group> </van-cell-group>
<van-steps direction="vertical" :active="0" active-color="#f60" style="margin-top: 15px;"> <van-steps direction="vertical" :active="0" active-color="#f60" style="margin-top: 15px;">
<van-step> <van-step v-for="(item, itemIndex) in details" :key="detailIndex">
<h3>您的服务单435703816的商品已收到</h3> <h3>{{item.logisticsInformation}}</h3>
<p>2016-07-12 12:40</p> <p>{{item.logisticsTimeText}}</p>
</van-step> </van-step>
<van-step> </van-steps>
<h3>城市物流状态2</h3>
<p>2016-07-11 10:00</p>
</van-step>
<van-step>
<h3>快件已发货</h3>
<p>2016-07-10 09:30</p>
</van-step>
</van-steps>
</div> </div>
</template> </template>
<script> <script>
export default {
} import moment from 'moment';
import { getLogisticsInfo } from '../../../api/order';
export default {
data() {
return {
serviceNumber: '',
details: [],
}
},
mounted() {
console.log(this.$route.params)
const { id, serviceNumber } = this.$route.params;
this.serviceNumber = serviceNumber
getLogisticsInfo(id).then(res => {
const { details } = res;
this.details = details.map(item => {
return {
...item,
logisticsTimeText: moment(item.logisticsTime).format("YYYY-MM-DD HH:mm")
}
})
})
},
}
</script> </script>
<style> <style>

View File

@ -8,7 +8,7 @@
</van-steps> </van-steps>
<van-cell v-if="orderInfo.status >= 2 " <van-cell v-if="orderInfo.status >= 2 "
class="logistics" class="logistics"
to="/user/order/logistics/1" :to="`/user/order/logistics/${orderInfo.id}`"
:title="latestLogisticsDetail.logisticsInformation" :title="latestLogisticsDetail.logisticsInformation"
:label="latestLogisticsDetail.logisticsTimeText" :label="latestLogisticsDetail.logisticsTimeText"
icon="logistics" icon="logistics"

View File

@ -24,7 +24,7 @@
</template> </template>
<script> <script>
import { getLogisticsInfo } from '../../../api/order'; import { getOrderLogisticsInfo } from '../../../api/order';
export default { export default {
data() { data() {
@ -36,7 +36,7 @@
}, },
mounted() { mounted() {
const { id } = this.$route.params; const { id } = this.$route.params;
getLogisticsInfo({ getOrderLogisticsInfo({
orderId: id, orderId: id,
}).then(res => { }).then(res => {
const { orderId, orderNo, logistics } = res; const { orderId, orderNo, logistics } = res;