You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

244 lines
8.3 KiB

<template>
<view class="curriculum-info">
<view class="ci-box ci-user">
<view class="cu-stadium">
<view>{{ orderInfo.source || '-' }}</view>
<view>{{ orderInfo.order_status_text || '-' }}</view>
</view>
<view class="cu-line">手机号码{{ orderInfo.student_phone || '-' }}</view>
<view class="cu-line">用户昵称{{ orderInfo.user_info&&orderInfo.user_info.user_nickname || '-' }}</view>
<view class="cu-line">学员信息{{ orderInfo.student_name || '-' }}{{ orderInfo.student_gender || '-' }}</view>
</view>
<view class="ci-box ci-info">
<view class="ci-tit">课程信息</view>
<view class="ci-course-name">课程名称{{ orderInfo.course_name || '-' }}</view>
<a-line :value="orderInfo.course_kind || '-'">
<block slot="name">课程类型</block>
</a-line>
<a-line :value="'¥' + orderInfo.price || '-'">
<block slot="name">课程价格</block>
</a-line>
<a-line :value="orderInfo.course_period_nums || '-'">
<block slot="name">总课时</block>
</a-line>
<a-line :value="orderInfo.number || '-'">
<block slot="name">购买课时</block>
</a-line>
<a-line :value="course_period_nums_give">
<block slot="name">
{{ orderInfo.course_period_nums_give >= 0 ? '赠送课时:':'扣减课时:'}}
</block>
</a-line>
<a-line :value="orderInfo.end_time || '-'">
<block slot="name">有效期至</block>
</a-line>
<a-line :value="orderInfo.course_period">
<block slot="name">课时时长</block>
</a-line>
<a-line :value="orderInfo.course_coach_type_text || '-'">
<block slot="name">上课教练</block>
</a-line>
<a-line :value="orderInfo.course_content || '-'">
<block slot="name">课程内容</block>
</a-line>
<a-line :value="orderInfo.is_include_venue_price?'是(不含场地费用)':'否'">
<block slot="name">上课是否需要场地</block>
</a-line>
</view>
<view class="ci-box pay-info">
<view class="pi-line">
<view class="pl-key">金额小计</view><view class="pl-value">¥{{ orderInfo.amount || 0 }}</view>
</view>
<view class="pi-line">
<view class="pl-key">积分抵扣</view><view class="pl-value">¥{{ orderInfo.deduction_amount || 0 }}</view>
</view>
<view class="pi-line">
<view class="pl-key">折扣金额</view><view class="pl-value">¥{{ orderInfo.discount_amount || 0 }}</view>
</view>
<view class="pi-line">
<view class="pl-key">优惠券优惠</view><view class="pl-value">¥{{ orderInfo.coupons_amount || 0 }}</view>
</view>
<view class="pi-total">
<text>合计支付</text>{{ orderInfo.pay_amount || 0 }}
</view>
</view>
<view class="ci-box payment-info">
<view class="ci-tit">支付信息</view>
<a-line :value="orderInfo.created_at || '-'">
<block slot="name">下单时间</block>
</a-line>
<a-line :value="orderInfo.order_no || '-'">
<block slot="name">订单编号</block>
</a-line>
<a-line :value="orderInfo.pay_time || '-'">
<block slot="name">支付时间</block>
</a-line>
<a-line :value="getPayType(orderInfo.pay_type)">
<block slot="name">支付方式</block>
</a-line>
<a-line :value="orderInfo.trade_no || '-'">
<block slot="name">交易流水</block>
</a-line>
<block v-if="orderInfo.order_status == 3">
<a-line :value="orderInfo.refund_no || '-'">
<block slot="name">退款单号:</block>
</a-line>
<a-line :value="orderInfo.refund_time || '-'">
<block slot="name">退款时间:</block>
</a-line>
<a-line :value="'¥' + (orderInfo.refund_amount || '0')">
<block slot="name">退款金额:</block>
</a-line>
</block>
</view>
</view>
</template>
<script>
import a_line from '../../../../../components/order_list/a_line/a_line.vue';
import util from '../../../../../utils/util';
import { ORDER_API } from '../../../js/api';
import server from '../../../js/server';
export default {
computed: {
course_period_nums_give(){
let { orderInfo } = this;
let _num = orderInfo.course_period_nums_give || 0;
return (_num + '').replace('-', '')
}
},
// ('订单状态 0-待付款 1-进行中 2-已结束 3-已退款 4-已取消')
components: {
'a-line': a_line,
},
data(){
return {
orderInfo: {
user_info: {}
}
}
},
onLoad(options){
this.getInfo(options.order_no);
},
methods: {
getInfo(order_no){
server.get({
url: ORDER_API.venueCourse_orderInfo,
data: { order_no },
failMsg: '加载失败!'
})
.then(res=>{
this.orderInfo = res || {};
})
},
getPayType: util.order_pay_type_txt,
// getPayType(type){
// // [0微信支付,1支付宝支付,2会员换卡支付, 3商家主动]
// let _obj = {
// 0: '微信支付',
// 1: '支付宝支付',
// 2: '会员换卡支付',
// 3: '商家主动',
// }
// return _obj[type] || '-'
// }
}
}
</script>
<style lang="scss">
@import '~style/public.scss';
.curriculum-info{
padding: 24upx;
.ci-box{
margin-bottom: 24upx;
padding: 30upx;
border-radius: 10upx;
background-color: #fff;
}
.ci-user{
.cu-stadium{
margin-bottom: 24upx;
@include centerFlex(space-between);
>view{
&:first-child{
line-height: 44upx;
font-size: 32upx;
color: #1A1A1A;
@include textHide(1);
}
&+view{
flex-shrink: 0;
font-size: 28upx;
line-height: 40upx;
color: $themeColor;
}
}
}
.cu-line{
line-height: 48upx;
font-size: 28upx;
color: #1A1A1A;
@include textHide(1);
}
}
.ci-tit{
margin-bottom: 20upx;
line-height: 40upx;
font-size: 28upx;
color: #9c9c9f;
}
.ci-info{
.ci-course-name{
line-height: 52upx;
font-weight: 500;
font-size: 28upx;
color: #1a1a1a;
@include textHide(1);
}
}
}
.pay-info{
.pi-line{
margin-bottom: 24upx;
@include centerFlex(space-between);
.pl-key{
flex-shrink: 0;
line-height: 40upx;
font-size: 28upx;
color: #1a1a1a;
}
.pl-value{
font-size: 24upx;
line-height: 34upx;
color: #1a1a1a;
@include textHide(1);
}
}
.pi-total{
text-align: right;
font-size: 32upx;
font-weight: 500;
color: #1a1a1a;
@include textHide(1);
>text{
font-size: 28upx;
font-weight: 400;
color: #9a9a9d;
}
}
}
</style>