This commit is contained in:
2024-08-22 12:47:21 +08:00
commit dedb40f497
373 changed files with 5393 additions and 0 deletions

View File

@@ -0,0 +1 @@
var e=getApp();Page({data:{disabled:!1,nav_select:!1,name:"",region:"",phone:"",detail:"",error:"",order_goods_id:0,info:{}},onLoad:function(e){this.data.order_goods_id=e.order_goods_id,this.getOrderDetail(e.order_goods_id)},goodsDetail:function(e){var t=e.currentTarget.dataset.id;wx.navigateTo({url:"../goods/index?goods_id="+t})},getOrderDetail:function(t){var a=this;e._get("user.order_goods/getOrderGoods",{order_goods_id:t},(function(e){e.data.info.aftermarket_apply_date=a.formatDate(1e3*e.data.info.aftermarket_apply_time),e.data.info.aftermarket_dispose_date=a.formatDate(1e3*e.data.info.aftermarket_dispose_time),a.setData(e.data)}))},formatDate:function(e){var t=new Date(e),a=t.getFullYear(),r=t.getMonth()+1;r=r<10?"0"+r:r;var o=t.getDate();o=o<10?"0"+o:o;var d=t.getHours();d=d<10?"0"+d:d;var i=t.getMinutes(),n=t.getSeconds();return a+"-"+r+"-"+o+" "+d+":"+(i=i<10?"0"+i:i)+":"+(n=n<10?"0"+n:n)},saveData:function(t){var a=this,r=t.detail.value;if(r.order_goods_id=a.data.order_goods_id,!a.validation(r))return e.showError(a.data.error),!1;a.setData({disabled:!0}),e._post_form("user.order_goods/submitAftermarket",r,(function(t){if(console.log(t),1!=t.code)return e.showError(t.msg),!1;a.getOrderDetail(a.data.order_goods_id)}),!1,(function(){a.setData({disabled:!1})}))},validation:function(e){return""===e.refund_reason?(this.data.error="退款原因不能为空",!1):20!=this.data.info.order.delivery_status||""!==e.deliver_no||(this.data.error="快递单号不能为空",!1)},bindRegionChange:function(e){this.setData({region:e.detail.value})}});

View File

@@ -0,0 +1 @@
{"navigationBarTitleText":"售后详情","usingComponents":{"shortcut":"/components/shortcut/shortcut"}}

View File

@@ -0,0 +1,85 @@
<view class="container">
<view class="common-header-xian"></view>
<view class="order-cont b-f m-top20">
<view class="padding-box b-f">
<view class="order-header dis-flex">
<view class="flex-box t-l">
<text class="title">商品详情</text>
</view>
</view>
</view>
<view class="padding-box b-f">
<view class="order-cont dis-flex">
<view class="order-num"></view>
<view class="order-time">
<text>{{order.create_time}}</text>
</view>
</view>
</view>
</view>
<view class="padding-box b-f">
<view bindtap="goodsDetail" class="dis-flex flow-shopList b-f" data-id="{{info.goods_id}}">
<view class="flow-list-left">
<image mode="scaleToFill" src="{{info.image.file_path}}"></image>
</view>
<view class="flow-list-right">
<text class="h4 twolist-hidden">{{info.goods_name}}</text>
<text class="p f-22 col-7">{{info.goods_attr}}</text>
<view class="flow-list-cont">
<text class="flow-cont">¥{{info.goods_price}}</text>
<text class="small">×{{info.total_num}}</text>
</view>
<view></view>
</view>
</view>
</view>
<form bindsubmit="saveData" wx:if="{{info.refund_status==0}}">
<view class="address-cont-title b-f b-b">
<view class="list address-box dis-flex b-b">
<view class="left-name">
<text class="f-30">退款原因</text>
</view>
<view class="right-cont flex-box">
<input name="refund_reason" placeholder="请输入退款原因" value=""></input>
</view>
</view>
<view class="list address-box dis-flex" wx:if="{{info.order.delivery_status.value==20}}">
<view class="left-name">
<text class="f-30">快递单号</text>
</view>
<view class="right-cont flex-box">
<input name="deliver_no" placeholder="请输入快递单号" value=""></input>
</view>
</view>
</view>
<view class="address-cont-title b-f b-b"></view>
<view class="padding-box m-top20 profile-btn">
<button disabled="{{disabled}}" formType="submit">提交</button>
</view>
</form>
<view class="flow-all-money b-f padding-box m-top20" wx:if="{{info.refund_status>0}}">
<view class="dis-flex flow-all-list-cont1">
<text class="col-16">退款单号: {{info.refund_no}}</text>
</view>
<view class="dis-flex flow-all-list-cont1">
<text class="col-16">退款原因: {{info.refund_reason}}</text>
</view>
<view class="dis-flex flow-all-list-cont1" wx:if="{{info.deliver_no.length>0}}">
<text class="col-16" selectable="{{true}}">快递单号: {{info.deliver_no}}</text>
</view>
<view class="dis-flex flow-all-list-cont1">
<text class="col-16" selectable="{{true}}" wx:if="{{info.refund_status==1}}">退款状态: 已申请</text>
<text class="col-16" selectable="{{true}}" wx:if="{{info.refund_status==2}}">退款状态: 已退款 </text>
</view>
<view class="dis-flex flow-all-list-cont1">
<text class="col-16" selectable="{{true}}">申请时间: {{info.aftermarket_apply_date}}</text>
</view>
<view class="dis-flex flow-all-list-cont1" wx:if="{{info.refund_status==2}}">
<text class="col-16" selectable="{{true}}">完成时间: {{info.aftermarket_dispose_date}} </text>
</view>
<view class="dis-flex flow-all-list-cont1" wx:if="{{info.refund_status==2}}">
<text class="col-16" selectable="{{true}}">退款金额: ¥{{info.refund_price}} </text>
</view>
</view>
</view>
<shortcut></shortcut>

View File

@@ -0,0 +1 @@
.profile-list .admin{color:#333;font-size:30rpx;padding-left:15px}.address-box .left-name{width:85px}.address-cont-title .list{padding:24rpx;width:auto}.tui-picker-detail text{padding:0 10rpx}.infoText{display:block;line-height:56rpx}picker-view{background-color:#fff;bottom:0;height:480rpx;padding:0;position:fixed;width:100%}picker-view-column view{align-items:center;display:-webkit-flex;display:flex;font-size:28rpx;height:100%;justify-content:center;line-height:28rpx;vertical-align:middle}.animation-element-wrapper{height:100%;left:0;top:0;z-index:21}.animation-element,.animation-element-wrapper{display:-webkit-flex;display:flex;position:fixed;width:100%}.animation-element{background-color:#fff;bottom:0;height:570rpx}.animation-button{align-items:center;height:100rpx;line-height:100rpx;margin-top:20rpx;top:20rpx;width:400rpx}.address-text{color:#999;display:-webkit-inline-flex;display:inline-flex;font-family:Arial,Helvetica,sans-serif;font-size:30rpx;height:50rpx;line-height:50rpx;margin-top:20rpx;position:fixed;text-align:center}.left-bt{left:30rpx}.right-bt{color:#ec5151;right:30rpx}.line{background-color:#eee;display:block;height:1rpx;margin-top:89rpx;position:fixed;width:100%}.address-box .right-cont input{color:#444;font-size:30rpx;width:100%}.bargain-commont-bg{background:rgba(0,0,0,.6);bottom:0;left:0;position:fixed;right:0;top:0;z-index:20}.f-34{font-size:34rpx}.f-32{font-size:32rpx}.f-31{font-size:31rpx}.f-28{font-size:28rpx}.f-26{font-size:26rpx}.f-24{font-size:24rpx}.f-22{font-size:22rpx}.b-r{border-right:1rpx solid #eee}.b-b{border-bottom:1rpx solid #eee}.b-t{border-top:1rpx solid #eee}.m-top4{margin-top:4rpx}.m-top10{margin-top:10rpx}.m-top20{margin-top:25rpx}.m-top35{margin-top:35rpx}.flow-list .header{background:#fff;border-bottom:1rpx solid #f1f1f1;padding:15rpx 0;position:relative}.flow-list .header text{font-size:32rpx;padding-left:80rpx}.flow-list .header image{height:37rpx;left:15px;margin-top:-18rpx;position:absolute;top:50%;width:34rpx}.order-header{border-bottom:1rpx solid #f1f1f1;padding:15rpx 0}.order-header text{font-size:28rpx}.order-header text.title{color:#333}.order-cont{justify-content:space-between}.order-cont .order-num text,.order-cont .time{color:#888}.order-cont .order-num text,.order-cont .order-time text{color:#777;font-size:26rpx}.flow-all-list-cont1{font-size:32rpx;padding:10rpx 0}

View File

@@ -0,0 +1 @@
var t=getApp();Page({data:{dataType:"all",data:[]},onLoad:function(t){this.data.dataType=t.type||"all",this.setData({dataType:this.data.dataType})},onShow:function(){this.getOrderList(this.data.dataType)},formatDate:function(t){var e=new Date(t),a=e.getFullYear(),r=e.getMonth()+1;r=r<10?"0"+r:r;var d=e.getDate();d=d<10?"0"+d:d;var o=e.getHours();o=o<10?"0"+o:o;var n=e.getMinutes(),i=e.getSeconds();return a+"-"+r+"-"+d+" "+o+":"+(n=n<10?"0"+n:n)+":"+(i=i<10?"0"+i:i)},getOrderList:function(e){var a=this;t._get("user.order_goods/getOrderGoodsList",{dataType:e},(function(t){t.data.length&&wx.pageScrollTo({scrollTop:0});for(var e=0;e<t.data.length;e++)t.data[e].aftermarket_apply_date=a.formatDate(1e3*t.data[e].aftermarket_apply_time);a.setData(t)}))},bindHeaderTap:function(t){this.setData({dataType:t.target.dataset.type}),this.getOrderList(t.target.dataset.type)},cancelOrder:function(e){var a=this,r=e.currentTarget.dataset.id;wx.showModal({title:"提示",content:"确认取消订单?",success:function(e){e.confirm&&t._post_form("user.order/cancel",{order_id:r},(function(t){a.getOrderList(a.data.dataType)}))}})},receipt:function(e){var a=this,r=e.currentTarget.dataset.id;wx.showModal({title:"提示",content:"确认收到商品?",success:function(e){e.confirm&&t._post_form("user.order/receipt",{order_id:r},(function(t){a.getOrderList(a.data.dataType)}))}})},detail:function(t){var e=t.currentTarget.dataset.id;wx.navigateTo({url:"../aftermarket/create?order_goods_id="+e})},orderDetail:function(t){var e=t.currentTarget.dataset.id;wx.navigateTo({url:"../order/detail?order_id="+e})},onPullDownRefresh:function(){wx.stopPullDownRefresh()}});

View File

@@ -0,0 +1 @@
{"navigationBarTitleText":"售后订单","usingComponents":{}}

View File

@@ -0,0 +1,78 @@
<view class="container m-b5">
<view class="goods-detail-box">
<view class="header f-28 col-3">
<view catchtap="bindHeaderTap" class="{{dataType==='all'?'active':''}}" data-type="all">全部售后</view>
<view bindtap="bindHeaderTap" class="{{dataType==='apply'?'active':''}}" data-type="apply">已申请</view>
<view bindtap="bindHeaderTap" class="{{dataType==='complete'?'active':''}}" data-type="complete">已完成</view>
</view>
<scroll-view scrollY="{{true}}">
<view class="wrapper">
<view wx:if="{{data.length}}">
<view class="m-top20 " wx:for="{{data}}" wx:key="this">
<view class="order-box b-f">
<view class="order-header dis-flex">
<view class="flex-box t-l">
<text class="title">商品信息</text>
</view>
<view class="flex-box t-r">
<text class="cont" wx:if="{{item.refund_status==2}}">已完成</text>
<text class="cont" wx:if="{{item.refund_status==1}}">已申请</text>
</view>
</view>
</view>
<view class="order-box b-f">
<view class="order-cont dis-flex">
<view class="order-num">
<text>退款单号:{{item.refund_no}}</text>
</view>
<view class="order-time">
<text>{{item.create_time}}</text>
</view>
</view>
</view>
<view class="order-box order-img_list">
<view class="order-shop">
<view bindtap="detail" class="order-list-box dis-flex" data-id="{{item.order_goods_id}}">
<view class="left">
<view class="dis-flex">
<view class="order-shop-left">
<image src="{{item.image.file_path}}"></image>
</view>
</view>
</view>
<view class="right p-r">
<text class="goods-number">共1件</text>
<text class="iconfont icon-xiangyoujiantou user-orderJtou"></text>
</view>
</view>
</view>
</view>
<view class="order-box b-f">
<view class="order-btn dis-flex">
<view class="order-left">
<view class="text">
<text>申请时间:</text>
<text class="">{{item.aftermarket_apply_date}}</text>
</view>
</view>
<view class="order-right">
<view class="dis-flex">
<view class="flex-box">
<view bindtap="orderDetail" class="btn-main" data-id="{{item.order_id}}">订单详情</view>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
<view wx:else>
<view class="yoshop-notcont">
<text class="iconfont icon-ziyuan"></text>
<text class="cont">亲,您还没有售后信息哦!</text>
</view>
</view>
</view>
</scroll-view>
</view>
</view>

View File

@@ -0,0 +1 @@
.header{background:#fff;border-bottom:1rpx solid #e4e4e4;display:-webkit-flex;display:flex;height:44px;line-height:44px;position:fixed;top:0;width:100%;z-index:100}.header view{flex:1;text-align:center}.header .active{color:#fd4a5f}.wrapper{margin-top:54px}.order-box{padding:0 15px}.order-header{padding-top:10rpx}.order-header .title{color:#333;font-size:30rpx}.order-header .cont{color:#fd4a5f;font-size:30rpx}.order-cont{justify-content:space-between;padding:15rpx 0}.order-cont .order-num text,.order-cont .order-time text{color:#777;font-size:26rpx}.order-shop{padding:16rpx 0}.order-shop-left,.order-shop-left image{background:#fff;display:inline-block;height:160rpx;margin-right:15rpx;width:160rpx}.order-shop .num{float:right}.order-btn{padding:18rpx 0}.order-btn .order-left{flex:3}.order-btn .order-left .text,.order-btn .order-left text{font-size:30rpx}.order-btn .order-left .text{color:#777}.order-btn .order-right{flex:1.5}.order-list-box .left{flex:4;overflow:hidden;position:relative}.order-list-box .right{flex:1}.goods-number{color:#777;font-size:28rpx;position:absolute;right:12px;top:35%}.btn-default{border:1rpx solid #ccc;border-radius:4px;color:#555}.btn-default,.btn-main{float:right;font-size:28rpx;padding:6rpx 20rpx}.btn-main{border:1rpx solid #fd4a5f;border-radius:4px;color:#fd4a5f;margin-left:10rpx}.user-orderJtou{color:#888;font-size:24rpx;margin-top:-20rpx;position:absolute;right:0;top:50%}.order-img_list{background:#fff;border-bottom:1rpx solid #f1f1f1;border-top:1rpx solid #f1f1f1}.order-right-name{color:#555;font-size:30rpx;left:180rpx;line-height:1.6;margin-top:-46rpx;position:absolute;top:50%;width:100%}