Commit 8ab08c8f authored by huangyuanyuan's avatar huangyuanyuan

update

parent 89b4e8b0
<template>
<div class="AirlineTicketOrder">
<el-row>
<el-col :span="20" :offset="2">
<el-form ref="form" :model="form" label-width="100px">
<el-form-item label="订单状态:">
<el-select v-model="form.status" filterable size="mini">
<el-option label="全部" :value=0></el-option>
<el-option label="正常" :value=1></el-option>
<el-option label="取消" :value=2></el-option>
<el-option label="代付款" :value=3></el-option>
</el-select>
</el-form-item>
<el-form-item label="下单开始时间:">
<el-date-picker size="mini" type="date" placeholder="下单开始时间" v-model="form.startTime"></el-date-picker>
</el-form-item>
<el-form-item label="下单结束时间:">
<el-date-picker size="mini" type="date" placeholder="下单开始时间" v-model="form.endTime"></el-date-picker>
</el-form-item>
<el-form-item>
<el-button type="primary" size="mini">查询</el-button>
</el-form-item>
</el-form>
<el-table
v-loading="loading"
:data="tableData"
stripe
style="width: 100%">
<el-table-column
prop="id"
label="订单id">
</el-table-column>
<el-table-column
prop="contactName"
label="联系人姓名">
</el-table-column>
<el-table-column
prop="contactMobile"
label="联系人电话">
</el-table-column>
<el-table-column
prop="status"
label="订单状态">
</el-table-column>
<el-table-column label="操作">
<template slot-scope="scope">
<el-button
size="mini"
type="danger"
@click="handleEdit(scope.$index, scope.row)">修改订单</el-button>
</template>
</el-table-column>
</el-table>
<div style="text-align:right;margin:10px 0;">
<el-pagination
@current-change="Currentchange"
background
layout="prev, pager, next"
:total="total">
</el-pagination>
</div>
</el-col>
</el-row>
</div>
</template>
<script>
export default {
data () {
return {
form:{
status:0,
startTime:'',
endTime:'',
pageIndex:1,
pageSize:15,
},
tableData:[],
total:0,
loading:false,
}
},
mounted() {
},
created(){
this.List();
},
methods: {
Currentchange(val){
this.form.pageIndex=val;
this.List();
},
handleEdit(index,row){
// console.log("row",row)
this.$router.push({
path: `/EditTicketOrder/${row.id}`
})
},
List(){
this.loading=true;
this.apiJavaPost('/api/dmc/airticket/GetB2BAirtickOrderPageList',this.form,res=>{
// console.log(res);
this.loading=false;
if(res.data.resultCode==1){
this.tableData=res.data.data.pageData;
this.total=res.data.data.count;
}
},null)
},
}
}
</script>
<style>
.AirlineTicketOrder .el-pager{
margin-top:6px;
}
.AirlineTicketOrder .el-form-item{
display: inline-block;
margin:10px 5px;
}
</style>
......@@ -232,12 +232,15 @@ export default {
}
</script>
<style>
.choose_back .msg .el-input__icon{
line-height: 0;
}
.msg .el-select{
.choose_back .msg .el-select{
width: 130px;
height: 100%;
}
.msg .el-select>.el-input{
.choose_back .msg .el-select>.el-input{
width: 100%;
}
.msg .el-button{
......@@ -281,16 +284,11 @@ export default {
padding-left: 6px;
box-sizing: border-box
}
.msg .el-input{
width: 145px;
height: 100%;
}
.msg .el-input.is-active .el-input__inner, .el-input__inner:focus{
border-color: none;
}
.msg .el-date-editor.el-input, .el-date-editor.el-input__inner{
width: 145px;
}
.msg .el-input__inner{
border: none;
height: 100%;
......
<template>
<div>
<!-- <div class="baner_top">
<el-row :gutter="20">
<el-col :span="24" :offset="2">
</el-col>
</el-row>
</div> -->
<el-row :gutter="20" style="background:#f5f5f5">
<el-col :span="18" :offset="3">
<!-- 订单详情 -->
<div class="ticket_list">
<el-col :span="9" style="position:relative">
<div class="bz">去程</div>
<div class="padd">
<p style="font-size:16px;color:#333333;padding-top:10px">{{getlistSigel.flightDate}}
{{getlistSigel.goStartCityName}} - {{getlistSigel.goEndCityName}}
</p>
<p style="font-size:12px;color:#666666">
<img style="width:18px;height:18px;margin:0 5px" :src="getlistSigel.airlineUrl" alt="">
<span>{{getlistSigel.airlineName}}</span>
<span>{{getlistSigel.alCode}} </span>
</p>
<div class="xcxq">
<el-col :span="8" style="text-align:right">
<p class="time">{{getlistSigel.goStartHouseTime}}</p>
<p>{{getlistSigel.goStartAirPlace}}</p>
</el-col>
<el-col :span="8" style="text-align:center">
<p>
{{getlistSigel.goTotalTime}}
</p>
<p class="line"></p>
<p v-if="getlistSigel.goTransfer">{{getlistSigel.goTransfer}}转机</p>
</el-col>
<el-col :span="8" style="text-align:left">
<p class="time">{{getlistSigel.goEndHouseTime}}</p>
<p>{{getlistSigel.goEndAirPlace}}</p>
</el-col>
</div>
</div>
</el-col>
<el-col :span="9" style="border-right:1px dashed #AAAAAA;position:relative">
<div class="bz">返程</div>
<div class="padd">
<p style="font-size:16px;color:#333333;padding-top:10px">{{getlistSigel.backDate}}
{{getlistSigel.backStartCityName}} - {{getlistSigel.backEndCityName}}
</p>
<p style="font-size:12px;color:#666666">
<img style="width:18px;height:18px;margin:0 5px" :src="getlistSigel.airlineUrl" alt="">
<span>{{getlistSigel.airlineName}}</span>
<span>{{getlistSigel.alCode}} </span>
</p>
<div class="xcxq">
<el-col :span="8" style="text-align:right">
<p class="time">{{getlistSigel.backStartHouseTime}}</p>
<p>{{getlistSigel.goStartAirPlace}}</p>
</el-col>
<el-col :span="8" style="text-align:center">
<p>
{{getlistSigel.backTotalTime}}
</p>
<p class="line"></p>
<p v-if="getlistSigel.goTransfer">{{getlistSigel.backTransfer}}转机</p>
</el-col>
<el-col :span="8" style="text-align:left">
<p class="time">{{getlistSigel.backEndHouseTime}}</p>
<p>{{getlistSigel.backEndAirPlace}}</p>
</el-col>
</div>
</div>
</el-col>
<el-col class="w31" :span="6">
<p style="padding-top:20px">
<span>订单金额</span>
<span style="float:right;color:#FF680B;font-size:20px">{{personNum.preferPrice}}</span>
</p>
<P style="font-size:12px;margin-top:12px">
成人票:
<span style="float:right;">{{getlistSigel.scatterB2BPrice }} x {{personNum.manNum}}</span>
</P>
<P style="font-size:12px;">
儿童票:
<span style="float:right;">{{getlistSigel.scatterB2BPrice }} x {{personNum.chirdNum}}</span>
</P>
<P style="font-size:12px;">
老人票:
<span style="float:right;">{{getlistSigel.scatterB2BPrice }} x {{personNum.oldPeopleNum}}</span>
</P>
</el-col>
</div>
<!-- 填写订单 -->
<div class="tx_order" style="margin-top:20px">
<div class="tx">
<div style="margin-top:4px">
乘机人信息
</div>
</div>
<el-form :model="personNum" ref="personNum" label-width="100px" class="demo-ruleForm">
<div class="tx_list" style="margin:10px 0" v-for="(item,index) in personNum.guestList" :key="index">
<el-col :span="4">
<div class="index">
<p><span style="font-weight:700">{{index+1}}</span></p>
<!-- //1 成年 2小孩 3婴儿 4老人 -->
<p style="background:#49C0A1;color:#fff">
<span v-if="item.ageType=='1'">成年</span>
<span v-if="item.ageType=='2'">小孩</span>
<span v-if="item.ageType=='3'">婴儿</span>
<span v-if="item.ageType=='4'">老人</span>
</p>
</div>
</el-col>
<el-col :span="20">
<el-form-item label="乘机人" :prop="'guestList.'+index+'.name'" :rules="[{required: true, message: '姓名不能为空', trigger: 'blur'}]">
<el-input size="mini" v-model="item.name"></el-input>
</el-form-item>
<el-form-item label="护照信息" :prop="'guestList.'+index+'.passportNo'" :rules="[{ required: true, message: '请输入护照信息', trigger: 'blur' }]">
<el-input size="mini" v-model="item.passportNo"></el-input>
</el-form-item>
<el-form-item label="出生日期" :prop="'guestList.'+index+'.birthday'" :rules="[{ type: 'string', required: true, message: '请选择日期', trigger: 'change' }]">
<el-date-picker size="mini" value-format="yyyy-MM-dd" type="date" placeholder="选择日期" v-model="item.birthday" style="width: 100%;"></el-date-picker>
</el-form-item>
<el-form-item label="性别" :prop="'guestList.'+index+'.sex'" :rules="[{ required: true, message: '请选择性别', trigger: 'change' }]">
<el-radio-group v-model="item.sex">
<el-radio :label=1 :value=1></el-radio>
<el-radio :label=2 :value=2></el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="国籍">
<el-select size="mini" v-model="item.nationality" filterable placeholder="请选择国籍">
<el-option v-for="(item,key) in countroylist" :key="key" :label="item.Name" :value="item.ID"></el-option>
</el-select>
</el-form-item>
<el-form-item label="手机号" :prop="'guestList.'+index+'.mobilePhone'" :rules="[{required: true, message: '电话号码不能为空', trigger: 'blur'}]">
<el-input size="mini" v-model="item.mobilePhone"></el-input>
</el-form-item>
</el-col>
</div>
</el-form>
</div>
<!-- 联系人 -->
<div class="lxr_info" style="margin-top:20px;background:#fff;">
<p class="lxr">联系人信息</p>
<el-form style="width:90%" :model="personNum" ref="personNum" label-width="100px" class="demo-ruleForm">
<el-form-item label="联系人" prop="contactName" :rules="{ required: true, message: '请输入联系人姓名', trigger: 'blur' }">
<el-input size="mini" v-model="personNum.contactName"></el-input>
</el-form-item>
<el-form-item label="手机号" prop="contactMobile" :rules="{ required: true, message: '请输入联系电话', trigger: 'blur' }">
<el-input size="mini" v-model="personNum.contactMobile"></el-input>
</el-form-item>
<el-form-item label="邮箱" prop="contactEmail" :rules="[{ required: true, message: '请输入邮箱地址', trigger: 'blur' },{ type: 'email', message: '请输入正确的邮箱地址', trigger: ['blur', 'change'] }]">
<el-input size="mini" v-model="personNum.contactEmail"></el-input>
</el-form-item>
<el-form-item style="width:99%" label="备注">
<el-input size="mini" v-model="personNum.remarks"></el-input>
</el-form-item>
</el-form>
</div>
</el-col>
</el-row>
<!-- 提交订单 -->
<div class='tjorder'>
<div style="width:80%;margin:0 auto;color:#cccccc;position:relative">
<p style="font-size:14px;padding:4px 50px;text-align:right;">条款和限制<span style="color:#49C0A1">《网上购票须知》</span> </p>
<p class="total" style="margin-top:12px">
<span>总价</span>
<span style="font-size:20px;font-weight:400;color:rgba(255,255,255,1);margin:0 15px;">{{personNum.preferPrice}}</span>
<span @click="submitForm('personNum')" style="cursor: pointer;;height:32px;background:rgba(238,68,84,1);border-radius:4px;color:#fff;padding:4px 15px">同意以上协议条款,提交订单</span>
</p>
</div>
</div>
</div>
</template>
<script>
import moment from 'moment'
export default {
components: {
},
data () {
return {
personnums:true,
personNum:{
manNum:0,
chirdNum:0,
babyNum:0,
oldPeopleNum:0,
guestList:[],
preferPrice:0,//应收总金额,
contactMobile:'',
contactEmail:'',
contactName:'',
},
AirOrderId:this.$route.params.id,
ruleForm:{},
getlistSigel:{},
flightList:[],
userInfo:this.getLocalStorage(),
customer:{},
countroylist:[],
}
},
mounted () {
this.GetDes();
this.GetCountroy()
this.GetTicketDes();
},
methods: {
// 国籍
GetCountroy(){
this.apipost(
"b2b_get_GetCountryForSMAirTick", {},
res => {
// console.log(res)
if (res.data.resultCode == 1) {
this.countroylist = res.data.data;
}
},
err => {
}
);
},
//获取订单详情
GetDes(){
this.apiJavaPost('/api/dmc/airticket/getB2BAirticketInfo',{AirOrderId:this.AirOrderId},res=>{
// console.log("机票详情",res)
this.getlistSigel=res.data.data;
this.getlistSigel.synum=this.getlistSigel.airTicketScatterNum-this.getlistSigel.useScatterNum;
},null)
},
//获取机票订单详情
GetTicketDes(){
this.apiJavaPost('/api/dmc/airticket/GetB2BAirtickOrderInfo',{AirOrderId:this.AirOrderId},res=>{
console.log("获取机票订单详情",res)
this.personNum=res.data.data;
},null)
},
submitForm(addMsg) {
console.log("this.personNum",this.personNum);
this.$refs[addMsg].validate((valid) => {
if(valid) {
this.personNum.customerId=this.userInfo.accountId;
this.apiJavaPost('/api/dmc/airticket/SetB2BAirticketOrder',this.personNum,res=>{
if(res.data.resultCode==1){
this.$message.success(res.data.message);
this.personNum={};
this.$router.push({ path: `/ticket/Pay/${res.data.data}`})
}else{
this.$message.error(res.data.message)
}
console.log("下单",res);
},null)
} else {
return false;
}
});
},
}
}
</script>
<style>
.w31{
/* background: #58a; */
/* background: radial-gradient(circle at 0 25px, transparent 15px, #58a 16px) top left,
radial-gradient(circle at 100px 25px, transparent 15px, #58a 16px) right top;
background-size: 50% 100%;
background-repeat: no-repeat; */
}
.ticket_list .padd{
padding-left:25px;
box-sizing: border-box;
}
.ticket_list .el-col-9{
padding-left:0!important;
padding-right:15px;
padding-bottom:15px;
box-sizing: border-box;
}
.w31 p{
margin:6px 0;
}
.ticket_list .yu{
float:right;
background: rgb(255, 104, 11);
color: #fff;
display: inline-block;
width: 35px;
height: 35px;
text-align: center;
line-height: 35px;
border-radius: 50%;
}
.tjorder p{
margin: 0;
}
.total{
position: absolute;
right: 0;
}
.tjorder{
height:80px;
background:rgba(51,51,51,1);
margin: 20px 0;
}
.lxr_info .el-form-item{
display: inline-block;
width:33%;
margin-bottom: 5px;
}
.lxr{
height:36px;
background:rgba(221,221,221,1);
line-height: 36px;
padding:0 6px;
font-size: 14px;
}
.person_num>span{
display: inline-block;
width:100px;
text-align: center;
height: 36px;
line-height: 36px;
}
.el-form-item__error{
top:80%;
}
.tx_list:nth-last-child(1){
border:none;
}
.tx_list{
padding:10px 0;
overflow: auto;
border-bottom:1px dashed #AAAAAA;
}
.tx_order .index p{
margin:0;
padding:4px 0;
}
.tx_order .index{
margin-top:10px;
width:59px;
font-size: 12px;
text-align:center;
background:rgba(255,255,255,1);
border:1px solid rgba(73,192,161,1);
}
.tx_order .el-form-item{
display: inline-block;
width:30%;
margin-bottom: 5px;
}
.tx_order .tx .number{
display: inline-block;
background: #fff;
margin:0 6px;
padding:4px 6px;
box-sizing: border-box;
border-radius: 4px;
font-size: 12px;
}
.tx_order{
margin:15px 0;
background:#fff;
}
.tx_order .tx{
padding:4px;
box-sizing: border-box;
background:rgba(221,221,221,1);
display: flex;
justify-content: flex-start;
font-size: 14px;
}
.ticket_list .time{
color: #333333;
}
.bz{
position: absolute;
width:20px;
font-size: 12px;
text-align: center;
color: #fff;
background:rgba(73,192,161,1);
}
.ticket_list .line{
width: 100%;
height: 1px;
background:rgba(153,153,153,1);
}
.xcxq p{
margin: 0;
margin: 6px 0;
}
.xcxq{
position: relative;
background:rgba(245,245,245,1);
overflow: auto;
font-size: 12px;
margin-top:20px;
}
.ticket_list{
background: #fff;
display: flex;
justify-content: space-around;
box-shadow:0px 4px 8px 0px rgba(107,107,107,0.18);
margin-top: 15px;
/* padding: 15px; */
box-sizing: border-box;
}
.baner_top{
width:100%;
background: #fff;
height: 50px;
box-shadow:0px 1px 0px 0px rgba(238,238,238,1);
}
</style>
......@@ -270,7 +270,7 @@ export default {
//获取订单详情
GetDes(){
this.apiJavaPost('/api/dmc/airticket/getB2BAirticketInfo',{AirTicketId:this.AirTicketId},res=>{
// console.log("订单",res)
console.log("订单",res)
this.getlistSigel=res.data.data;
this.getlistSigel.synum=this.getlistSigel.airTicketScatterNum-this.getlistSigel.useScatterNum;
......@@ -307,6 +307,7 @@ export default {
airProductId:this.personNum.airProductId,//机票产品id
birthday:'',//出生日期
mobilePhone:'',
eName:'',
name:"",
nationality:2,
passportNo:"",//护照号码
......@@ -399,6 +400,13 @@ export default {
}
</script>
<style>
.w31{
/* background: #58a; */
/* background: radial-gradient(circle at 0 25px, transparent 15px, #58a 16px) top left,
radial-gradient(circle at 100px 25px, transparent 15px, #58a 16px) right top;
background-size: 50% 100%;
background-repeat: no-repeat; */
}
.ticket_list .padd{
padding-left:25px;
box-sizing: border-box;
......
<template>
<div class="pay_vue">
<el-row :gutter="18">
<el-row v-show="order_exit=='1'" :gutter="18">
<el-col :span="18" :offset="3">
<!-- 头部 -->
<div class="head">
<p style="font-size:14px">订单提交成功!剩余支付时间
<span style="color:#FF680B;font-size:18px">{{time_15}}</span>
<span style="text-align:center;float:right">应付金额
<span style="color:#FF680B;font-size:18px">1259</span>
<span style="color:#FF680B;font-size:18px">{{Commoditydetails.preferPrice}}</span>
</span>
</p>
<p style="font-size:12px">请您在
......@@ -16,12 +16,16 @@
</div>
<div class="payvue_content">
<p class="ordernum">订单号</p>
<div class="ordernum">
订单号 : {{Commoditydetails.airOrderId}}
<div class="triangle_border_left"></div>
</div>
<p style="text-align:center">支付金额
<span style="color:#FF680B;font-size:18px">1259</span>
<span style="color:#FF680B;font-size:18px">{{Commoditydetails.preferPrice}}</span>
</p>
<el-row style="margin-top:15px">
<el-col class="position" style="padding-right:50px" :span="12">
<el-row style="margin-top:15px" v-loading="codeLoading">
<el-col class="position" style="padding-right:50px" :span="12">
<div style="float:right" class="pay_img">
<div class="w21">
<img class="title_img" src="../../assets/img/ticket/zfb.png" alt="">
......@@ -33,187 +37,388 @@
</p>
</div>
</div>
<div v-show="pay_imgcode" style="text-align:center">
<img class="pay_imgcode" src="../../assets/img/ticket/weixin.png" alt="">
<p>二维码有效时限
<span style="color:#FF680B;font-size:14px">{{time_zfb_5}}</span>
</p>
</div>
</div>
</el-col>
<!-- <el-col class="position" style="padding-left:50px" :span="12">
<div class="pay_img">
<div class="w21">
<img class="title_img" src="../../assets/img/ticket/weixin.png" alt="">
<div class="title_content">
<p>微信</p>
<p>
<span @click="Code('1')" style="cursor:pointer;color:#FF680B;font-size:14px">点击生成二维码</span>
打开支付宝扫码支付
</p>
</div>
</div>
<div v-show="pay_imgcode" style="text-align:center">
<img class="pay_imgcode" src="../../assets/img/ticket/weixin.png" alt="">
<div v-show="zfbpay_imgcode" style="text-align:center">
<img class="pay_imgcode" :src="codeInfo.CodeURL" alt="">
<p style="color:#FF680B;cursor:pointer" @click="Code('3')" v-show="code_ts!=''">{{code_ts}}</p>
<p>二维码有效时限
<span style="color:#FF680B;font-size:14px">{{time_zfb_5}}</span>
</p>
</div>
</div>
</el-col> -->
</el-col>
<el-col class="position" style="padding-left:50px" :span="12">
<div class="pay_img">
<div class="w21">
<img class="title_img" src="../../assets/img/ticket/weixin.png" alt="">
<div class="title_content">
<p>微信</p>
<p>
<span @click="Code('1')" style="cursor:pointer;color:#FF680B;font-size:14px">点击生成二维码</span>
打开微信扫码支付
</p>
</div>
</div>
<div v-show="wxpay_imgcode" style="text-align:center">
<img class="pay_imgcode" :src="codeInfo.CodeURL" alt="">
<p style="color:#FF680B;cursor:pointer" @click="Code('1')" v-show="code_ts!=''">{{code_ts}}</p>
<p>二维码有效时限
<span style="color:#FF680B;font-size:14px">{{time_zfb_5}}</span>
</p>
</div>
</div>
</el-col>
</el-row>
</div>
</el-col>
</el-row>
<!-- 订单自动取消 -->
<div v-show="order_exit=='2'" style="margin:20px auto;text-align:center">
<span>{{order_exit_info}}</span>
<router-link to="/TicketList" style="color:#ee4454;text-decoration:underline">返回重新下单>></router-link>
</div>
<div class="orderPay" v-show="order_exit=='3'">
<div class="div_1">
<img src="../../assets/img/ticket/gou.png" alt="">
<img src="../../assets/img/ticket/fail.png" alt="">
<div style="padding-left:80px;box-sizing: border-box;width:100%">
<p style="font-size:24px;color:#333;font-weight:700">订单支付成功!</p>
<p style="font-size:12px;color:#333">如有疑问 可致电028-565464646,点击
<router-link to="/AirlineTicketOrder" style="color:#ee4454;text-decoration:underline">查看订单>></router-link>
</p>
</div>
</div>
<div class="div_2">
<p>
<span>支付金额:¥12545</span>
<span>支付平台:支付宝</span>
</p>
<p>
<span>订单编号:584569846568</span>
<span>下单时间:2019-02-02</span>
</p>
</div>
<!-- <el-button size="mini" style="background:rgba(238,68,84,1);border-radius:4px;color:#fff">返回首页</el-button> -->
<img class="back" src="../../assets/img/ticket/back.png" alt="">
</div>
</div>
</template>
<script>
import moment from 'moment'
export default {
data() {
return {
pay_imgcode:false,
time_15:0,
time_zfb_5:0,
code:{
OrderSource:"",
body:"",
attach:'',
total_fee:'',
payway:'',
},
// AirOrderId:this.$route.params.id,
zfbpay_imgcode: false,
wxpay_imgcode: false,
time_15: 0,
time_zfb_5: 0,
code: {
OrderSource: 0,
body: "",
attach: "",
total_fee: "",
payway: ""
},
AirOrderId: this.$route.params.id,
Commoditydetails: {},
codeInfo:{},
order_exit:'1',
order_exit_info:"",
order_status:false,
timer:"",
code_yxq:0,
code_timer:'',
code_ts:"",
codeLoading:false,
PayOrder:"",
Pay_timer:"",
};
},
created() {
this.Time15();
this.TimeDjs();
// this.Time15()
},
methods: {
Code(str){
console.log(str)
this.code.payway=str;
this.pay_imgcode=true;
this.apipost(
"OnlinePay_post_GetCodeUrl",this.code,
res => {
console.log(res)
if (res.data.resultCode == 1) {
TimeDjs() {
this.apiJavaPost(
"/api/dmc/airticket/GetB2BAirtickOrderPayInfo",
{ AirOrderId: this.AirOrderId },
res => {
// console.log("huoqu", res);
if (res.data.resultCode == 1) {
this.Commoditydetails = res.data.data;
this.code.OrderSource=this.Commoditydetails.orderResourceId;
this.code.total_fee=this.Commoditydetails.preferPrice+'';
this.code.body=this.Commoditydetails.description;
this.code.attach=`${this.Commoditydetails.costType}|${this.Commoditydetails.customerName}|${this.AirOrderId}|${this.Commoditydetails.customerId}|${this.Commoditydetails.outBranchId}`
this.Time15();
}else if (res.data.resultCode == 0){
this.order_exit='2';
this.order_exit_info=res.data.message;
}
else{
this.$message.error(res.data.message)
}
},
null
);
},
Code(str) {
this.codeLoading=true;
this.code_ts="";
this.zfbpay_imgcode = false;
this.wxpay_imgcode = false;
this.code.payway = str;
this.apipost(
"OnlinePay_post_GetCodeUrl",
this.code,
res => {
this.codeLoading=false;
if (res.data.resultCode == 1) {
this.codeInfo=res.data.data;
console.log("codeInfo",this.codeInfo)
this.code_yxq=moment(this.codeInfo.ExpireDate).format('x')-moment(this.codeInfo.NowDate).format('x');
this.PayOrder=this.codeInfo.OrderID;
clearInterval(this.Pay_timer);
this.Time5();
this.PayStatus();
if (str == "1") {
//微信
this.wxpay_imgcode = true;
} else if (str == "3") {
//支付宝
this.zfbpay_imgcode = true;
}
}
// 获取支付状态
this.apiJavaPost(
"/api/dmc/airticket/SetB2BAirtickOrderPayStatus",
{ AirOrderId: this.AirOrderId },
res => {
if (res.data.resultCode == 1) {
}else{
this.$message.error(res.data.message)
}
},
err => {
null);
}
},
err => {}
);
},
Time15() {
clearInterval(this.timer);
let numall =parseInt(this.Commoditydetails.timeMillisecond / 1000);
// let numall =10;
this.timer = setInterval(() => {
numall--;
if (numall <= 0) {
console.log(111);
clearInterval(this.timer);
this.order_exit='2';
this.order_exit_info="订单支付超时,请重新下单!"
}
this.time_15 = this.s_to_hs(numall);
}, 1000);
},
// 验证是否支付成功
PayStatus(){
this.Pay_timer = setInterval(() => {
this.apipost(
"ticket_get_GetAirPayMoneyIsSuccess",
{PayOrder:this.PayOrder},
res => {
console.log("res支付状态",res)
// res.data.resultCode =1;
if (res.data.resultCode == 1) {
clearInterval(this.Pay_timer);
this.order_exit='3';
}
);
// this.Time5();
},
Time15(){
clearInterval(timer);
let timer;
let numall=15*60*1000;
timer=setInterval(()=>{
numall--;
if(numall<=0){
clearInterval(timer);
}
this.time_15=this.s_to_hs(numall)
},1000)
},
Time5(){
clearInterval(timer);
let timer;
let numall=5*60*1000;
timer=setInterval(()=>{
numall--;
if(numall<=0){
clearInterval(timer);
}
this.time_zfb_5=this.s_to_hs(numall)
},1000)
},
s_to_hs(s){
//计算分钟
//算法:将秒数除以60,然后下舍入,既得到分钟数
var h;
h = Math.floor(s/60/1000);
//计算秒
//算法:取得秒%60的余数,既得到秒数
s = s%60;
//将变量转换为字符串
h += '';
s += '';
//如果只有一位数,前面增加一个0
h = (h.length==1)?'0'+h:h;
s = (s.length==1)?'0'+s:s;
return h+'分'+s+"秒";
}
},
err => {}
);
}, 1000);
},
s_to_hs(s) {
//计算分钟
//算法:将秒数除以60,然后下舍入,既得到分钟数
var h;
h = Math.floor(s / 60);
//计算秒
//算法:取得秒%60的余数,既得到秒数
s = s % 60;
//将变量转换为字符串
h += "";
s += "";
//如果只有一位数,前面增加一个0
h = h.length == 1 ? "0" + h : h;
s = s.length == 1 ? "0" + s : s;
return h + "分" + s + "秒";
},
Time5() {
clearInterval(this.code_timer);
let numall = this.code_yxq /1000;
this.code_timer = setInterval(() => {
numall--;
if (numall <= 0) {
this.code_ts="二维码有效时限过期,点击重新生成"
clearInterval(this.code_timer);
}
this.time_zfb_5 = this.s_to_hs(numall);
}, 1000);
},
}
};
</script>
<style>
.position{
box-sizing: border-box;
.orderPay .div_2 p span:nth-child(2){
float: right;
}
.payvue_content .pay_img .pay_imgcode{
display: block;
margin:15px auto;
width:216px;
height:216px;
border:1px solid rgba(221,221,221,1);
.orderPay .div_2 {
margin-top: 20px;
width: 320px;
}
.payvue_content .pay_img .w21 .title_content{
padding-left: 70px;
box-sizing: border-box;
overflow: auto;
.orderPay .div_2 p{
padding:6px 0;
margin:20px 0;
font-size: 12px;
color:#333;
border-bottom:1px solid rgba(221,221,221,1);
}
.orderPay .div_1 img{
width: 54px;
height:54px;
position: absolute;
}
.orderPay .div_1{
position: relative;
box-sizing: border-box;
}
.payvue_content .pay_img .w21{
.orderPay{
padding-top:130px;
padding-left:150px;
margin:30px auto;
width:1039px;
height:553px;
position: relative;
box-shadow:0px 4px 38px 0px rgba(107,107,107,0.2);
box-sizing: border-box;
}
.orderPay .back{
position: absolute;
width: 384px;
height: 289px;
right:10px;
top:110px;
}
.payvue_content .pay_img .title_img{
width: 47px;
height: 47px;
border-radius: 50%;
position: absolute;
.position {
box-sizing: border-box;
}
.payvue_content .pay_img{
width:338px;
background:rgba(255,255,255,1);
box-shadow:0px 0px 6px 0px rgba(107,107,107,0.2);
padding:28px;
box-sizing: border-box;
.payvue_content .pay_img .pay_imgcode {
display: block;
margin: 15px auto;
width: 216px;
height: 216px;
}
.payvue_content .ordernum{
width:203px;
height:35px;
line-height:35px;
background: #49C0A1;
font-size:14px;
font-weight:400;
color:rgba(255,255,255,1);
padding-left:16px;
box-sizing: border-box;
.payvue_content .pay_img .w21 .title_content {
padding-left: 70px;
box-sizing: border-box;
overflow: auto;
}
.pay_vue p{
margin:0;
.payvue_content .pay_img .w21 {
position: relative;
}
.pay_vue .head{
padding:4px 0;
.payvue_content .pay_img .title_img {
width: 47px;
height: 47px;
border-radius: 50%;
position: absolute;
}
.payvue_content{
margin-top:15px;
padding-bottom: 25px;
padding-top:16px;
background:rgba(255,255,255,1);
box-shadow:0px 4px 38px 0px rgba(107,107,107,0.2);
.payvue_content .pay_img {
width: 338px;
background: rgba(255, 255, 255, 1);
box-shadow: 0px 0px 6px 0px rgba(107, 107, 107, 0.2);
padding: 28px 10px;
box-sizing: border-box;
}
.payvue_content .ordernum {
position: relative;
width: 203px;
height: 35px;
line-height: 35px;
background: #49c0a1;
font-size: 14px;
font-weight: 400;
color: rgba(255, 255, 255, 1);
padding-left: 16px;
box-sizing: border-box;
margin-left:-7px;
border-right-color: transparent;
}
.payvue_content .triangle_border_left{
width:0;
height:0;
border-width:17px 17px 17px 0;
border-style:solid;
border-color:transparent #30a19b transparent transparent;/*透明 灰 透明 透明 */
position: absolute;
right:0;
top:0px;
}
.payvue_content .ordernum:after { /*书签的夹角*/
content: '';
position: absolute;
top: 35px;
left: 0px;
border: 3px solid #49c0a1;
border-left-color: transparent;
border-bottom-color: transparent;
}
.pay_vue p {
margin: 0;
}
.pay_vue .head {
padding: 4px 0;
}
.payvue_content {
min-height:479px;
position: relative;
margin-top: 15px;
padding-bottom: 25px;
padding-top: 16px;
background: rgba(255, 255, 255, 1);
box-shadow: 0px 4px 38px 0px rgba(107, 107, 107, 0.2);
}
</style>
......@@ -377,16 +377,13 @@ p{
padding-bottom: 2px;
box-sizing: border-box
}
.el-input{
width: 145px;
.msg .el-input{
height: 100%;
}
.el-input.is-active .el-input__inner, .el-input__inner:focus{
.msg .el-input.is-active .el-input__inner, .el-input__inner:focus{
border-color: none;
}
.el-date-editor.el-input, .el-date-editor.el-input__inner{
width: 145px;
}
.msg .el-input__inner{
border: none;
height: 100%;
......
......@@ -517,7 +517,7 @@ export default {
getList(){
this.apiJavaPost('/api/dmc/airticket/getB2BAirticketList',this.choose_info,res=>{
console.log("机票列表",res)
// console.log("机票列表",res)
this.datalist=res.data.data.pageData;
if(this.datalist.length>0){
this.datalist.forEach(item=>{
......@@ -593,6 +593,9 @@ export default {
<style>
@import '../../assets/global/font.css';
@import '../../assets/css/reset.css';
.ticket_1 .msg .el-input__icon{
line-height: 0;
}
.ticket_1 .msg .number{
width:150px;
height:34px;
......
......@@ -6,8 +6,8 @@
margin-top:10px;
}
.header .ckxx{
width:38px;
height:38px;
width:39px;
height:39px;
background:rgba(73,192,161,1);
border-radius:50%;
color:#fff;
......@@ -134,6 +134,7 @@ color:rgba(51,51,51,1);
<el-menu default-active="" class="el-menu-demo small" mode="horizontal" background-color="rgba(0,0,0,0)" active-text-color="#EF4455">
<el-menu-item index="1" @click="goUrl('PsCenter',false)"><a href="javascript:void(0);">个人主页</a></el-menu-item>
<el-menu-item index="2" @click="goUrl('PsOrder',false)"><a href="javascript:void(0);">订单管理</a></el-menu-item>
<el-menu-item index="6" @click="goUrl('AirlineTicketOrder',false)"><a href="javascript:void(0);">机票订单</a></el-menu-item>
<el-menu-item index="3"><a href="javascript:void(0);">经营管理</a></el-menu-item>
<el-menu-item index="4" @click="goUrl('PsSystem',false)"><a href="javascript:void(0);">系统管理</a></el-menu-item>
<el-menu-item index="5" @click="goUrl('PsAccBalance',false)"><a href="javascript:void(0);">账户余额</a></el-menu-item>
......@@ -239,10 +240,12 @@ export default {
},
goUrl(path,bl){
// console.log("path",path)
// console.log("bl",bl)
localStorage.homePage = bl;
if(path=='heel'){
sessionStorage.setItem("defaultKey",'2-1');
this.$emit('forword', '2-1')
}
sessionStorage.setItem("Homepage",bl);
this.$store.commit('HomePage',bl)
// console.log(" this.homePage.", this.homePage)
this.$router.push({name:path});
}
}
......
......@@ -29,15 +29,6 @@ Vue.http = Vue.prototype.$http = axios
Vue.commonUtils = Vue.prototype.$commonUtils=commonUtils
Vue.prototype.$echarts = echarts
router.beforeEach((to, from, next) => {
let ticket=to.path.substring(1, 7);
if(ticket=="ticket"){
sessionStorage.setItem("Homepage",'ticket');
store.commit('HomePage','ticket')
}else{
sessionStorage.setItem("Homepage",'true');
store.commit('HomePage','true')
}
if (to.meta.title) {
if(localStorage.g && localStorage.g!='undefined'){
......
......@@ -162,7 +162,25 @@ export default new Router({
meta: {
title: '支付'
}
},
{
path: '/AirlineTicketOrder',
name: 'AirlineTicketOrder',
component: resolve => require(['@/components/Ticket/AirlineTicketOrder'], resolve),
meta: {
title: '机票订单'
}
},
{
path: '/EditTicketOrder/:id',
name: 'EditTicketOrder',
component: resolve => require(['@/components/Ticket/EditTicketOrder'], resolve),
meta: {
title: '修改机票订单'
}
}
]
}
]
......
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