Commit 9c3828d6 authored by 潘永坪's avatar 潘永坪

联票电子门票bug处理

parent 67339ada
......@@ -386,7 +386,7 @@ export default {
break
case 8:return '全部退货退款'
break
case 9:return '取消'
case 9:return '取消'
break
case 10:return '已完成 '
break
......@@ -523,40 +523,42 @@ export default {
}
this.$request('order/userOrder/findOrderDetail',data).then((res)=>{
if(res.code=='00'){
this.orderInfo=res.data
let orderInfo=res.data
this.orderInfo.childs.forEach(item=>{
//防止代码bug进入catch里面,一直请求接口影响性能
try{
this.orderInfo=res.data
let orderInfo=res.data
this.orderInfo.childs.forEach(item=>{
//默认不显示使用须知
item.showUseknow=false
//默认不显示退票详情
item.showRefundDetail=false
if(item.isFetch=='1'){
item.showUseknow=false
//默认不显示退票详情
item.showRefundDetail=false
if(item.isFetch=='1'){
//为了提高性能,游玩时间等于今天才获取排号信息
if(item.playDate.substr(0,10)==this.$commonjs.today()){
if(item.playDate.substr(0,10)==this.$commonjs.today()){
//获取排号信息
this.getSortInfo(item)
//每两分钟刷新一次
this.numberFlag=setInterval(()=>{
this.getSortInfo(item)
//每两分钟刷新一次
this.numberFlag=setInterval(()=>{
this.getSortInfo(item)
},120*1000)
},120*1000)
}
}
}
//subOrderType 子订单类型(0-胖丁分销,1-扫码购,2-自助机,3-组合,4-扫码牌,5-预订,6-反扫,7-收银机,8-码同步,9-押金,94-公众号,96-胖丁分销,99-酒店自营)
//exchangeMode 验证方式:1胖丁二维码,2第三方二维码,3短信,4身份证
if(item.subOrderType!=4&&item.subOrderType!=5){
if(item.playDate.substr(0,10)==this.$commonjs.today()){
if(item.exchangeMode==4||item.exchangeMode==5){
//subOrderType 子订单类型(0-胖丁分销,1-扫码购,2-自助机,3-组合,4-扫码牌,5-预订,6-反扫,7-收银机,8-码同步,9-押金,94-公众号,96-胖丁分销,99-酒店自营)
//exchangeMode 验证方式:1胖丁二维码,2第三方二维码,3短信,4身份证
if(item.subOrderType!=4&&item.subOrderType!=5){
if(item.playDate.substr(0,10)==this.$commonjs.today()){
if(item.exchangeMode==4||item.exchangeMode==5){
//多个二维码
this.getCodeList(item)
this.getCodeList(item)
}
}
}
if(item.exchangeMode==1){
if(item.exchangeMode==1){
//一个二维码
this.getCode(item)
this.getCode(item)
}
}
}
//根据退款状态修改退款列表的退款名称
item.orderRefundList.forEach((item2,index)=>{
//根据退款状态修改退款列表的退款名称
item.orderRefundList.forEach((item2,index)=>{
if(item2.refundStatus==0){
item2['refundStatusName'] = '退款中'
}else if(item2.refundStatus==1){
......@@ -574,18 +576,18 @@ export default {
}else if(item2.refundStatus==7){
item2['refundStatusName'] = '退票失败'
}
})
})
})
if(orderInfo.isRefund==3){
if(orderInfo.isRefund==3){
// 退票规则以子订单为准
this.orderInfo.childs.forEach(item=>{
if(item.orderStatus==2||item.orderStatus==7){
this.orderInfo.childs.forEach(item=>{
if(item.orderStatus==2||item.orderStatus==7){
//等于2出票成功,7部分退货退款
if(item.isRefund==2){
//随时可退
this.subRefundBtn=true
//增加字段用于弹窗展示该产品是否可退
item.ifRefund=true
//增加字段用于弹窗展示该产品是否可退
item.ifRefund=true
}
if(item.isRefund==1){
//1为条件退
......@@ -614,12 +616,10 @@ export default {
//refundDateType退款时间0之前1之后2至(用于区间)
if(item2.refundDateType==0){
console.log(nowTimeNumber)
console.log(refundTimeNumber)
if(nowTimeNumber<refundTimeNumber){
this.subRefundBtn=true
//增加字段用于弹窗展示该产品是否可退
item.ifRefund=true
//增加字段用于弹窗展示该产品是否可退
item.ifRefund=true
}else{
this.subRefundBtn=false
}
......@@ -627,8 +627,8 @@ export default {
if(item2.refundDateType==1){
if(nowTimeNumber>refundTimeNumber){
this.subRefundBtn=true
//增加字段用于弹窗展示该产品是否可退
item.ifRefund=true
//增加字段用于弹窗展示该产品是否可退
item.ifRefund=true
}else{
this.subRefundBtn=false
}
......@@ -643,8 +643,8 @@ export default {
}
if(refundTime<nowTime<refundEndTime){
this.subRefundBtn=true
//增加字段用于弹窗展示该产品是否可退
item.ifRefund=true
//增加字段用于弹窗展示该产品是否可退
item.ifRefund=true
}else{
this.subRefundBtn=false
}
......@@ -652,73 +652,79 @@ export default {
}
})
}
}
})
}else{
}
})
}else{
// 退票规则以主订单为准
if(orderInfo.orderStatus==2||orderInfo.orderStatus==7){
if(orderInfo.orderStatus==2||orderInfo.orderStatus==7){
//等于2出票成功,7部分退货退款
if(orderInfo.isRefund==2){
if(orderInfo.isRefund==2){
//随时可退
this.mainRefundBtn=true
}
if(orderInfo.isRefund==1){
this.mainRefundBtn=true
}
if(orderInfo.isRefund==1){
//1为条件退
orderInfo.orderRefundRuleList.forEach(item=>{
orderInfo.orderRefundRuleList.forEach(item=>{
//refundVisitorApply游客是否能自己申请退(0不能1可以)
if(item.refundVisitorApply==1){
if(item.refundVisitorApply==1){
//当前时间戳
let nowTimeNumber=new Date().getTime()
//退票时间戳
let refundTime=''
if(item.refundDay){
let nowTimeNumber=new Date().getTime()
//退票时间戳
let refundTime=''
if(item.refundDay){
//1使用日期前
if(item.refundTimeRule==1){
let playDate = this.getNewDate(orderInfo.playDate,-item.refundDay)
refundTime = playDate+' '+item.refundTime
}
//2过期后
if(item.refundTimeRule==2){
let playDate = this.getNewDate(orderInfo.playDate,item.refundDay)
refundTime = playDate+' '+item.refundTime
}
}else{
refundTime = orderInfo.playDate+' '+item.refundTime
}
let refundTimeNumber=new Date(refundTime.replace(/-/g, '/')).getTime()
//refundDateType退款时间0之前1之后2至(用于区间)
if(item.refundDateType==0){
if(nowTimeNumber<refundTimeNumber){
this.mainRefundBtn=true
if(item.refundTimeRule==1){
let playDate = this.getNewDate(orderInfo.playDate,-item.refundDay)
refundTime = playDate+' '+item.refundTime
}
//2过期后
if(item.refundTimeRule==2){
let playDate = this.getNewDate(orderInfo.playDate,item.refundDay)
refundTime = playDate+' '+item.refundTime
}
}else{
this.mainRefundBtn=false
refundTime = orderInfo.playDate+' '+item.refundTime
}
}
if(item.refundDateType==1){
if(nowTimeNumber>refundTimeNumber){
this.mainRefundBtn=true
}else{
this.mainRefundBtn=false
let refundTimeNumber=new Date(refundTime.replace(/-/g, '/')).getTime()
//refundDateType退款时间0之前1之后2至(用于区间)
if(item.refundDateType==0){
if(nowTimeNumber<refundTimeNumber){
this.mainRefundBtn=true
}else{
this.mainRefundBtn=false
}
}
}
if(item.refundDateType==2){
let refundEndTime=''
if(item.refundDay){
let playDate = this.getNewDate(orderInfo.playDate,-item.refundDay)
refundEndTime = playDate+' '+item.refundEndTime
}else{
refundEndTime = orderInfo.playDate+' '+item.refundEndTime
if(item.refundDateType==1){
if(nowTimeNumber>refundTimeNumber){
this.mainRefundBtn=true
}else{
this.mainRefundBtn=false
}
}
if(refundTime<nowTime<refundEndTime){
this.mainRefundBtn=true
}else{
this.mainRefundBtn=false
if(item.refundDateType==2){
let refundEndTime=''
if(item.refundDay){
let playDate = this.getNewDate(orderInfo.playDate,-item.refundDay)
refundEndTime = playDate+' '+item.refundEndTime
}else{
refundEndTime = orderInfo.playDate+' '+item.refundEndTime
}
if(refundTime<nowTime<refundEndTime){
this.mainRefundBtn=true
}else{
this.mainRefundBtn=false
}
}
}
}
})
})
}
}
}
}catch(e){
uni.showToast({
title: e,
icon: 'none'
})
}
}else{
uni.showToast({
......@@ -839,40 +845,48 @@ export default {
this.$request('distribution/distribution/getNewFetchInfo',data).then((res)=>{
if(res.code=='00'){
if(res.data.length>0){
//显示排号信息
item.showSortInfo=true
let dataObj=res.data[0]
//子产品获取公司Id,用于重排号传参
if(dataObj.pays.length>0){
item.companyIdCopy = dataObj.pays[0].companyId
}
//由于页面不显示历史排号,所以只取第一个最新的排号信息
item.sorts=dataObj.sorts.slice(0,1)||[]
if(item.sorts[0].sortFair==4||item.sorts[0].sortFair==5){
//时间判断,用于返程或第一次取号时,是否可以显示取号按钮
let presentTime = new Date().getTime()
let time1=new Date((item.sorts[0].createDate).replace(/-/g, '/')).getTime()
let time2=parseInt((item.sorts[0].config.paReturnTripTime)*60*1000)
let takeNumberTime=time1+time2
if(presentTime>takeNumberTime){
this.canTakeNumber =true
}else{
//倒计时
//1.先计算时间差多少秒
let number=parseInt((takeNumberTime-presentTime)/1000)
this.countFlag=setInterval(()=>{
number-=1
if(number<0){
this.canTakeNumber =true
clearInterval(this.countFlag)
return
}
this.minute=parseInt(number/60)
this.second=parseInt(number-this.minute*60)
},1000)
}
}
this.$forceUpdate()
//防止代码bug进入catch里面,一直请求接口影响性能
try{
//显示排号信息
item.showSortInfo=true
let dataObj=res.data[0]
//子产品获取公司Id,用于重排号传参
if(dataObj.pays.length>0){
item.companyIdCopy = dataObj.pays[0].companyId
}
//由于页面不显示历史排号,所以只取第一个最新的排号信息
item.sorts=dataObj.sorts.slice(0,1)||[]
if(item.sorts[0].sortFair==4||item.sorts[0].sortFair==5){
//时间判断,用于返程或第一次取号时,是否可以显示取号按钮
let presentTime = new Date().getTime()
let time1=new Date((item.sorts[0].createDate).replace(/-/g, '/')).getTime()
let time2=parseInt((item.sorts[0].config.paReturnTripTime)*60*1000)
let takeNumberTime=time1+time2
if(presentTime>takeNumberTime){
this.canTakeNumber =true
}else{
//倒计时
//1.先计算时间差多少秒
let number=parseInt((takeNumberTime-presentTime)/1000)
this.countFlag=setInterval(()=>{
number-=1
if(number<0){
this.canTakeNumber =true
clearInterval(this.countFlag)
return
}
this.minute=parseInt(number/60)
this.second=parseInt(number-this.minute*60)
},1000)
}
}
this.$forceUpdate()
}catch(e){
uni.showToast({
title: e,
icon: 'none'
})
}
}
}else{
uni.showToast({
......@@ -883,7 +897,7 @@ export default {
}).catch((err)=>{
this.numberTimer=setTimeout(()=>{
this.getSortInfo(item)
},1000)
},2000)
})
},
//---点击重新取号,显示弹窗
......
......@@ -416,7 +416,7 @@ export default {
}
},
onLoad(option) {
this.companyId = option.companyId || ''
this.companyId=this.$commonjs.getCompanyId(option)|| ''
this.groupId=option.groupId||''
this.groupChannelId=option.groupChannelId||''
this.orderSource=option.orderSource||''
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment