Browse Source

add organize detail api

organize
刘嘉炜 3 years ago
parent
commit
b19132c30a
  1. 13
      src/components/organize_order/organize_order.vue
  2. 12
      src/subpackage/device/pages/order_details/order_details.vue
  3. 157
      src/subpackage/order/pages/organize/detail/detail.vue

13
src/components/organize_order/organize_order.vue

@ -85,11 +85,14 @@ export default {
methods:{
toOrderDetails(){
let { orderInfo } = this
let _query = {}
_query["stadium_id"] = orderInfo.stadium_id
_query["order_no"] = orderInfo.order_no
_query["order_type"] = 10
util.routeTo(`/subpackage/device/pages/order_details/order_details?query=${util.jsonStr(_query)}`,'nT');
// let _query = {}
// _query["stadium_id"] = orderInfo.stadium_id
// _query["order_no"] = orderInfo.order_no
// _query["order_type"] = 10
// util.routeTo(`/subpackage/device/pages/order_details/order_details?query=${util.jsonStr(_query)}`,'nT');
util.routeTo(`/subpackage/order/pages/organize/detail/detail?stadium_id=${orderInfo.stadium_id}&order_no=${orderInfo.order_no}`,'nT');
// this.$emit('orderDetailChange');
},
clickSendAmount(){

12
src/subpackage/device/pages/order_details/order_details.vue

@ -6,7 +6,7 @@
<reservation-people-detail :orderInfo="pageInfo" v-if="pageInfo.order_type == 1" @recoverBtn="peopleRecoverBtn" @okChange="okChange"></reservation-people-detail>
</block>
<timing-detail :orderInfo="pageInfo" @completeBtn="completeBtn" @refreshPage="refreshPage" v-if="optionsQuery.order_type==1"></timing-detail>
<organize-detail :orderInfo="pageInfo" v-if="optionsQuery.order_type==10"></organize-detail>
<!-- <organize-detail :orderInfo="pageInfo" v-if="optionsQuery.order_type==10"></organize-detail> -->
<!-- 次卡订场退款弹窗 -->
<view class="refund-mask" v-if="isOrderRefund" @click="isOrderRefund = false">
@ -54,7 +54,7 @@
if(optionsQuery.order_type == 3)return '预约订单详情'; //PM: 2021/4/19
if(optionsQuery.order_type == 4)return '储值卡订单详情';
if(optionsQuery.order_type == 5)return '积分商城订单详情';
if(optionsQuery.order_type == 10)return '约玩订单详情';
// if(optionsQuery.order_type == 10)return '';
return '订单详情'
},
...mapState(['brandInfo']),
@ -136,10 +136,10 @@
stadium_id,
order_no
}
if(orderType == 10){
// postData['stadium_id'] = "151"
// postData['order_no'] = "JS20210506171239462527"
}
// if(orderType == 10){
// // postData['stadium_id'] = "151"
// // postData['order_no'] = "JS20210506171239462527"
// }
deviceServer.get({
url: this.getApiUrl(orderType),
data: postData,

157
src/subpackage/order/pages/organize/detail/detail.vue

@ -3,23 +3,23 @@
<!-- 地址&订单信息 -->
<view class="od-box od-order">
<view class="oo-stadium">
<image></image>
<view>欧轩智能场馆(羽毛球永泰店)</view>
<image mode="aspectFit" :src="orderLabel.BrandAndStadiumLogo || ''"></image>
<view>{{ orderLabel.BrandAndStadiumName || '-' }}</view>
</view>
<view class="ob-line">
<view class="ol-left">
<view class="ol-name">订单编号</view>
<view class="ol-txt">
<view class="ot-txt">2352534645764747</view>
<view class="ot-txt">{{ orderInfo.order_no || '-' }}</view>
</view>
</view>
<view class="ol-status">已完成</view>
<view class="ol-status" :class="[originalOrder.pay_status == 0 ?'ol-active':'']">{{ orderStatus(originalOrder.pay_status) }}</view>
</view>
<view class="ob-line">
<view class="ol-left">
<view class="ol-name">创建时间</view>
<view class="ol-txt">
<view class="ot-txt">2019-06-06 12:00:06</view>
<view class="ot-txt">{{ orderInfo.created_at || '-' }}</view>
</view>
</view>
</view>
@ -27,7 +27,7 @@
<view class="ol-left">
<view class="ol-name">用户昵称</view>
<view class="ol-txt">
<view class="ot-txt">你的小甜心</view>
<view class="ot-txt">{{ orderInfo.user_nickname|| '-' }}</view>
</view>
</view>
</view>
@ -35,7 +35,7 @@
<view class="ol-left">
<view class="ol-name">约玩类型</view>
<view class="ol-txt">
<view class="ot-txt ot-green">参与约玩</view>
<view class="ot-txt ot-green">{{ organizeType(orderInfo.type || '') }}</view>
</view>
</view>
</view>
@ -48,7 +48,7 @@
<view class="ol-left">
<view class="ol-name">姓名</view>
<view class="ol-txt">
<view class="ot-txt">小李广中</view>
<view class="ot-txt">{{ orderInfo.actual_name || '-' }}</view>
</view>
</view>
</view>
@ -56,38 +56,26 @@
<view class="ol-left">
<view class="ol-name">身份证号码</view>
<view class="ol-txt">
<view class="ot-txt">522424200004071234</view>
<view class="ot-txt">{{ orderInfo.id_card || '-' }}</view>
</view>
</view>
</view>
</view>
<!-- 约玩报名信息 -->
<view class="od-box od-sign-info">
<view class="ob-tit">约玩报名信息</view>
<view class="ob-list">
<view class="ob-item" v-for="i in 8" :key="i">
<image></image>
<view>永爱倒特永爱倒特</view>
</view>
</view>
<view class="osi-expand" @click="isExpand = !isExpand">
<image :class="[isExpand?'active':'']" mode="aspectFit" src="/subpackage/order/static/images/down_arrow.png"></image>
</view>
</view>
<!-- 约玩信息 -->
<view class="od-box od-mes">
<view class="ob-tit">约玩信息</view>
<view class="om-theme">
<view>个人</view>
<text>欧轩网络科技有限公司神秘大雁山环岛骑行游玩户外露营活动</text>
<text>{{ orderInfo.theme || '-' }}</text>
</view>
<view class="ob-line">
<view class="ol-left">
<view class="ol-name">约玩项目</view>
<view class="ol-txt">
<view class="ot-txt">篮球</view>
<view class="ot-txt">{{ originalOrder.venue_type_name || '-' }}</view>
</view>
</view>
</view>
@ -95,7 +83,7 @@
<view class="ol-left">
<view class="ol-name">报名费用</view>
<view class="ol-txt">
<view class="ot-txt">¥50.00</view>
<view class="ot-txt">¥{{orderInfo.price_per_person || 0}}</view>
</view>
</view>
</view>
@ -103,7 +91,7 @@
<view class="ol-left">
<view class="ol-name">约玩时间</view>
<view class="ol-txt">
<view class="ot-txt">2022年5月17日(周五)</view>
<view class="ot-txt">{{ originalOrder.date || '-' }} {{ originalOrder.duration || '-' }}</view>
</view>
</view>
</view>
@ -112,16 +100,32 @@
<view class="ol-name">预定场次</view>
<view class="ol-txt">
<view class="ot-list">
<view class="ol-item">1号场 10:00-13:00</view>
<view class="ol-item">1号场 10:00-13:00</view>
<view class="ol-item">1号场 10:00-13:00</view>
<view class="ol-item">1号场 10:00-13:00</view>
<view class="ol-item" v-for="(e, i) in originalOrder.sessions" :key="i">
{{ e.venue_name || '-' }} {{ e.duration || '-' }}
</view>
</view>
</view>
</view>
</view>
</view>
<!-- 约玩报名信息 -->
<view class="od-box od-sign-info" v-if="originalOrder.pay_status==2&&orderInfo.type=='Main'">
<view class="ob-tit">约玩报名信息</view>
<view class="ob-list">
<block v-for="(e, i) in orderInfo.sub_order_data" :key="i">
<view class="ob-item" v-if="isExpand || i < 10">
<image mode="aspectFit" :src="e.user_avatar_url || ''"></image>
<view>{{ e.user_nickname || '-' }}</view>
</view>
</block>
</view>
<view class="osi-expand" @click="isExpand = !isExpand" v-if="orderInfo.sub_order_data>=10">
<image :class="[isExpand?'active':'']" mode="aspectFit" src="/subpackage/order/static/images/down_arrow.png"></image>
</view>
</view>
<!-- 差价 -->
<view class="od-box od-spread">
<view class="os-line">
@ -144,34 +148,33 @@
</view>
<!-- 折扣信息 -->
<view class="od-box od-pay-info">
<view class="od-box od-pay-info" v-if="originalOrder.pay_status != 0">
<view class="opi-line">
<view>金额小计</view>
<view>¥6</view>
<view>¥{{ originalOrder.amount || 0 }}</view>
</view>
<view class="opi-line">
<view>积分抵扣</view>
<view>¥6</view>
<view>¥{{ originalOrder.deduction_amount || 0 }}</view>
</view>
<view class="opi-line">
<view>折扣金额</view>
<view>¥6</view>
<view>¥{{ originalOrder.discount_amount || 0 }}</view>
</view>
<view class="opi-line">
<view>优惠券优惠</view>
<view>¥6</view>
<view>¥{{ originalOrder.coupons_amount || 0 }}</view>
</view>
<view class="opi-total">合计支付<text>5</text></view>
<view class="opi-total">合计支付<text>{{ originalOrder.pay_amount || 0 }}</text></view>
</view>
<!-- 支付信息 -->
<view class="od-box">
<view class="od-box" v-if="originalOrder.pay_status == 1 || originalOrder.pay_status == 2">
<view class="ob-tit">支付信息</view>
<view class="ob-line">
<view class="ol-left">
<view class="ol-name">支付方式</view>
<view class="ol-txt">
<view class="ot-txt">微信支付</view>
<view class="ot-txt">{{ zh_pay_type(originalOrder.pay_type) || '-' }}</view>
</view>
</view>
</view>
@ -179,7 +182,7 @@
<view class="ol-left">
<view class="ol-name">支付时间</view>
<view class="ol-txt">
<view class="ot-txt">2019年6月18日 10:30:40</view>
<view class="ot-txt">{{ originalOrder.pay_time || '-' }}</view>
</view>
</view>
</view>
@ -187,7 +190,44 @@
<view class="ol-left">
<view class="ol-name">微信交易号</view>
<view class="ol-txt">
<view class="ot-txt">424736746998493847989434</view>
<view class="ot-txt">{{ originalOrder.trade_no || '-' }}</view>
</view>
</view>
</view>
</view>
<!-- 退款信息 -->
<view class="od-box" v-if="originalOrder.pay_status == 4">
<view class="ob-tit">退款信息</view>
<view class="ob-line">
<view class="ol-left">
<view class="ol-name">退款时间</view>
<view class="ol-txt">
<view class="ot-txt">{{ originalOrder.refund_time || '-' }}</view>
</view>
</view>
</view>
<view class="ob-line">
<view class="ol-left">
<view class="ol-name">退款编号</view>
<view class="ol-txt">
<view class="ot-txt">{{ originalOrder.refund_no || '-' }}</view>
</view>
</view>
</view>
<view class="ob-line">
<view class="ol-left">
<view class="ol-name">退款金额</view>
<view class="ol-txt">
<view class="ot-txt">{{ originalOrder.refund_amount || '-' }}</view>
</view>
</view>
</view>
<view class="ob-line">
<view class="ol-left">
<view class="ol-name">退款说明</view>
<view class="ol-txt">
<view class="ot-txt">{{ originalOrder.refund_reason || '-' }}</view>
</view>
</view>
</view>
@ -200,6 +240,18 @@ import { ORDER_API } from '../../../js/api';
import server from '../../../js/server';
import util from '../../../../../utils/util';
export default {
computed: {
orderLabel(){
let { orderInfo } = this;
if(orderInfo&&orderInfo.label)return orderInfo.label || {};
return {}
},
originalOrder(){
let { orderInfo } = this;
if(orderInfo&&orderInfo.original_order)return orderInfo.original_order || {};
return {}
}
},
data(){
return {
isExpand: false,
@ -213,6 +265,24 @@ export default {
})
},
methods: {
//
zh_pay_type: util.order_pay_type_txt,
organizeType(type = ''){
// type Main/Sub
const _obj = {
'Main': '发起的约玩',
'Sub': '参与的约玩',
}
return _obj[`${type}`] || '-'
},
orderStatus(status = ''){
const _obj = {/* */
'1': '已付款',
'2': '已完成',
'4': '已退款',
}
return _obj[`${status}`] || '-';
},
getOrderInfo({
order_no = '',
stadium_id = '',
@ -298,6 +368,9 @@ export default {
margin-left: 12upx;
font-size: 28upx;
color: #9A9A9D;
&.ol-active{
color: $themeColor;
}
}
}
}
@ -313,7 +386,6 @@ export default {
margin-right: 14upx;
width: 40upx;
height: 40upx;
background-color: skyblue;
}
>view{
line-height: 40upx;
@ -431,7 +503,6 @@ export default {
width: 100upx;
height: 100upx;
border-radius: 50%;
background-color: purple;
}
>view{
@include textHide(1);

Loading…
Cancel
Save