123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235 |
- <template>
- <view>
- <view class="after-sales-detail">
- <view class="after-sales-header">
- <view class="after-sales-status white lg">
- {{afterSale.status_text}}
- </view>
- </view>
- <view class="return-address-contain flex bg-white m-t-20">
- <view class="address-title">退货地址:</view>
- <view class="sm address flex-1">{{afterSale.shop.address}}, {{afterSale.shop.contact}},
- {{afterSale.shop.mobile}}</view>
- <view class="xs copy-btn flex-none row-center" @tap="onCopy">复制</view>
- </view>
- <view class="goods-container bg-white m-t-20">
- <view class="m-l-20">
- <shop-title :shop="{name: afterSale.shop_name, id: afterSale.sid}"></shop-title>
- </view>
- <view class="goods-item flex">
- <view class="goods-img">
- <u-image width="180rpx" height="180rpx" border-radius="10rpx"
- :src="afterSale.order_goods.image"></u-image>
- </view>
- <view class="goods-info flex-1 m-l-24">
- <view class="line-2">{{afterSale.order_goods.goods_name}}</view>
- <view class="m-t-10 xs line-1 muted">{{afterSale.order_goods.spec_value}}</view>
- <view class="flex row-between m-t-20">
- <price-format :price="afterSale.order_goods.goods_price" :first-size="30" :second-size="30"
- :subscript-size="30" />
- <view>x{{afterSale.order_goods.goods_num}}</view>
- </view>
- </view>
- </view>
- </view>
- <view class="return-goods-container bg-white m-t-20">
- <view class="return-goods-item flex sm">
- <view class="return-title">退款方式:</view>
- <view class="return-explain">{{afterSale.refund_type_text}}</view>
- </view>
- <view class="return-goods-item flex sm m-t-20">
- <view class="return-title">退款原因:</view>
- <view class="return-explain">{{afterSale.refund_reason}}</view>
- </view>
- <view class="return-goods-item flex sm m-t-20">
- <view class="return-title">退款金额:</view>
- <view class="return-explain primary">¥{{afterSale.refund_price}}</view>
- </view>
- <view class="return-goods-item flex sm m-t-20">
- <view class="return-title">退款编号:</view>
- <view class="return-explain">{{afterSale.sn}}</view>
- </view>
- <view class="return-goods-item flex sm m-t-20">
- <view class="return-title">申请时间:</view>
- <view class="return-explain">{{afterSale.create_time}}</view>
- </view>
- </view>
- <view class="btn-group fixed bg-white flex row-right" v-if="afterSale.status != 6">
- <view class="m-r-20 btn br60" @tap="confirmDialog=true">撤销申请</view>
- <router-link :to="{path: '/bundle/pages/apply_refund/apply_refund', query: {after_sale_id: afterSale.id,
- order_id: afterSale.order_goods.order_id,
- item_id: afterSale.order_goods.item_id}}">
- <view class="m-r-20 btn br60 primary" v-if="(afterSale.status == 4 || afterSale.status == 1)">重新申请
- </view>
- </router-link>
- <router-link
- :to="{path: '/bundle/pages/input_express_info/input_express_info', query: {id: afterSale.id}}">
- <view class="m-r-20 btn br60" v-if="afterSale.status == 2">
- 填写快递单号
- </view>
- </router-link>
- </view>
- </view>
- <u-modal v-model="confirmDialog" confirm-text="确定" :showCancelButton="true" :confirm-color="colorConfig.primary"
- @confirm="cancelApplyFun">
- <view class="flex-col col-center tips-dialog" style="padding: 30rpx 0;">
- <image class="icon-lg" src="/static/images/icon_warning.png"></image>
- <view class="m-t-30">是否要撤销申请?</view>
- </view>
- </u-modal>
- </view>
- </template>
- <script>
- import {
- afterSaleDetail,
- cancelApply
- } from "@/api/user";
- import {
- trottle,
- copy
- } from "@/utils/tools.js";
- export default {
- data() {
- return {
- afterSale: {
- shop: {},
- order_goods: {}
- },
- confirmDialog: false
- };
- },
- onLoad(options) {
- },
- onShow() {
- this.id = this.$Route.query.id
- this.afterSaleDetailFun();
- },
- methods: {
- onCopy() {
- const {
- afterSale
- } = this;
- const {
- address,
- contact,
- mobile
- } = afterSale.shop;
- copy(`${address},${contact},${mobile}`)
- },
- cancelApplyFun() {
- cancelApply({
- id: this.id
- }).then(res => {
- if (res.code == 1) {
-
- uni.$emit("refreshsale")
- this.$toast({
- title: res.msg
- }, {
- tab: 3,
- url: 1
- });
- }
- });
- },
- afterSaleDetailFun() {
- afterSaleDetail({
- id: this.id
- }).then(res => {
- if (res.code == 1) {
- this.afterSale = res.data
- }
- });
- }
- }
- };
- </script>
- <style lang="scss">
- .after-sales-detail {
- padding-bottom: calc(120rpx + env(safe-area-inset-bottom));
- .after-sales-header {
- .after-sales-status {
- padding: 48rpx 30rpx;
- background-color: #555555;
- }
- .after-sales-explain {
- padding: 20rpx 30rpx 24rpx;
- }
- }
- .return-goods-container {
- padding: 20rpx 24rpx 55rpx;
-
- .return-goods-item {
- line-height: 40rpx;
- }
- }
- .btn-group {
- padding: 0rpx 24rpx;
- position: fixed;
- left: 0;
- right: 0;
- bottom: 0;
- height: 100rpx;
- padding-bottom: env(safe-area-inset-bottom);
- box-sizing: content-box;
- .btn {
- padding: 10rpx 34rpx;
- border: 1px solid #999999;
- &.primary {
- border-color: $-color-primary;
- }
- }
- }
- .goods-container {
- .goods-item {
- padding: 25rpx 24rpx;
- .goods-info {
- min-width: 500rpx;
- }
- }
- }
- }
- .return-address-contain {
- padding: 20rpx 24rpx 28rpx 30rpx;
- .address {
- flex: 1;
- line-height: 38rpx;
- }
- .address-title {
- width: 150rpx;
- align-self: flex-start;
- line-height: 40rpx;
- }
- .copy-btn {
- background-color: #F4F4F4;
- color: #555555;
- padding: 3rpx 16rpx;
- margin-left: 12rpx;
- border-radius: 4rpx;
- }
- }
- .tips-dialog {
- height: 230rpx;
- width: 100%;
- }
- </style>
|