Commit 375109dc authored by huangyuanyuan's avatar huangyuanyuan

update

parent 884403e9
...@@ -59,7 +59,7 @@ export default { ...@@ -59,7 +59,7 @@ export default {
<style> <style>
@import './assets/global/font.css'; @import './assets/global/font.css';
@import '//at.alicdn.com/t/font_863923_3d1f1rd9oj6.css'; @import '//at.alicdn.com/t/font_863923_v9ubqse9sl.css';
@import './assets/global/global.css'; @import './assets/global/global.css';
body,html{ body,html{
padding: 0px; padding: 0px;
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
<el-form-item label="订单号"> <el-form-item label="订单号">
<el-input size="small" v-model="form.id" placeholder="请输入订单号"></el-input> <el-input size="small" v-model="form.id" placeholder="请输入订单号"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="开始时间"> <el-form-item label="下单时间">
<el-date-picker size="small" <el-date-picker size="small"
v-model="form.time" v-model="form.time"
value-format="yyyy-MM-dd" value-format="yyyy-MM-dd"
...@@ -35,8 +35,9 @@ ...@@ -35,8 +35,9 @@
stripe stripe
style="width: 100%;box-sizing:border-box"> style="width: 100%;box-sizing:border-box">
<el-table-column <el-table-column
prop="id" width="150"
label="订单ID"> prop="id"
label="订单ID">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
label="机票信息"> label="机票信息">
...@@ -83,6 +84,10 @@ ...@@ -83,6 +84,10 @@
<el-table-column <el-table-column
prop="refund" prop="refund"
label="退款金额"> label="退款金额">
</el-table-column>
<el-table-column
prop="createTime"
label="下单时间">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
...@@ -169,10 +174,13 @@ export default { ...@@ -169,10 +174,13 @@ export default {
type: 'warning' type: 'warning'
}).then(() => { }).then(() => {
this.apiJavaPost('/api/dmc/airticket/SetB2BAirtickOrderApplyForRefund',{AirOrderId:row.id},res=>{ this.apiJavaPost('/api/dmc/airticket/SetB2BAirtickOrderApplyForRefund',{AirOrderId:row.id},res=>{
// console.log(res);
if(res.data.resultCode==1){ if(res.data.resultCode==1){
this.$message.success("请求成功!") this.$message.success("请求成功!")
this.List(); this.List();
}else{
this.Error(res.data.message);
} }
...@@ -227,6 +235,8 @@ export default { ...@@ -227,6 +235,8 @@ export default {
if(res.data.resultCode==1){ if(res.data.resultCode==1){
this.tableData=res.data.data.pageData; this.tableData=res.data.data.pageData;
this.total=res.data.data.count; this.total=res.data.data.count;
}else{
this.Error(res.data.message);
} }
...@@ -259,8 +269,9 @@ export default { ...@@ -259,8 +269,9 @@ export default {
.AirlineTicketOrder .changestatus span{ .AirlineTicketOrder .changestatus span{
display: inline-block; display: inline-block;
width:97px; width:97px;
height:36px; height:34px;
line-height: 36px; font-size: 12px;
line-height: 34px;
text-align: center; text-align: center;
margin:0 6px; margin:0 6px;
background:rgba(255,255,255,1); background:rgba(255,255,255,1);
......
<template>
<div class="choose_back">
<el-row class="msg">
<div style="margin-bottom:10px">
<el-radio v-model="choose_info.ticketType" :label=1>单程</el-radio>
<el-radio v-model="choose_info.ticketType" :label=2>往返</el-radio>
</div>
<el-col :span="5">
<div class="city" style="margin-bottom:15px">
<span>出发地 | </span>
<el-select style="width:70%" v-model="choose_info.departure_city" filterable placeholder="请选择">
<el-option :value=0 label="不限"></el-option>
<el-option
v-for="item in cfd"
:key="item.ID"
:label="item.Name"
:value="item.ID">
</el-option>
</el-select>
</div>
<div class="city">
<span>目的地 | </span>
<el-select style="width:70%" v-model="choose_info.arrival_city" filterable placeholder="请选择">
<el-option :value=0 label="不限"></el-option>
<el-option
v-for="item in cfd"
:key="item.ID"
:label="item.Name"
:value="item.ID">
</el-option>
</el-select>
</div>
</el-col>
<el-col :span="6">
<div class="city" style="margin-bottom:15px">
<span>出发 | </span>
<el-date-picker @change="changeStart"
v-model="choose_info.qFlightDateStart"
type="date" style="width:80%"
placeholder="选择日期">
</el-date-picker>
<!-- <span>{{startweek}}</span> -->
</div>
<div class="city" style="display:inline-block;">
<span>舱位选择 | </span>
<el-select style="width:70%" v-model="choose_info.freightSpace" placeholder="请选择">
<el-option :value=0 label="不限"></el-option>
<el-option
v-for="item in cawei"
:key="item.id"
:label="item.title"
:value="item.id">
</el-option>
</el-select>
</div>
<!-- <div class="city">
<span>归期 | </span>
<el-date-picker @change="changeEnd"
v-model="choose_info.qFlightDateEnd"
type="date" style="width:80%"
placeholder="选择日期">
</el-date-picker>
</div> -->
</el-col>
<el-col :span="13">
<div style="margin-bottom:15px">
<div class="number">
<span>成人 | </span>
<el-input-number size="mini" v-model="choose_info.cr" @change="handleChange" :min="0" :max="10" label="描述文字"></el-input-number>
</div>
<div class="number">
<span>儿童 | </span>
<el-input-number size="mini" v-model="choose_info.child" @change="handleChange" :min="0" :max="10" label="描述文字"></el-input-number>
</div>
<div class="number">
<span>婴儿 | </span>
<el-input-number size="mini" v-model="choose_info.ye" @change="handleChange" :min="0" :max="10" label="描述文字"></el-input-number>
</div>
<div class="number">
<span>老人 | </span>
<el-input-number size="mini" v-model="choose_info.lr" @change="handleChange" :min="0" :max="10" label="描述文字"></el-input-number>
</div>
</div>
<div>
<div class="city" style="width:250px;display:inline-block;margin:0 10px">
<span>航空公司 | </span>
<el-select style="width:160px" filterable v-model="choose_info.airLineID" placeholder="请选择">
<el-option :value=0 label="不限"></el-option>
<el-option v-for="item in airlineList" :label="item.AlName" :value="item.AirLineId"
:key="item.AirLineId"></el-option>
</el-select>
</div>
<el-button @click="Search" size="small">搜索</el-button>
</div>
</el-col>
</el-row>
</div>
</template>
<script>
import moment from 'moment'
export default {
components: {
},
data () {
return {
choose_info:{
pageIndex:1,
pageSize:10,
id:0,
qFlightDateStart:moment().format('YYYY-MM-DD'),
qFlightDateEnd:"",
flight_number:"",
airLineID:0,
ticketType:0,
lineId:0,
isPayOrder:0,
departure_city:0,
arrival_city:0,
freightSpace:0,
airTicketScatterNum:0,
cr:0,
child:0,
ye:0,
lr:0,
},
startweek:"",
endweek:"",
bannerHeight:"282px",
radio:"",
value10:"",
cawei:[
{title:"头等舱",id:1},
{title:"商务舱",id:2},
{title:"经济舱",id:3}
],
value1:"",
num1:"",
input10:"",
value:"",
airlineList:[],
cfd:[],
}
},
mounted () {
},
created(){
this.initAirlines();
this.CFD();
this.$emit("ChooseInfo",this.choose_info)
},
methods: {
CFD(){
this.apipost(
"dict_post_Destination_GetCityList", {},
res => {
if (res.data.resultCode == 1) {
this.cfd=res.data.data;
}
},
err => {
}
);
},
// 航空公司下拉框
initAirlines() {
this.apipost(
"airline_post_GetList", {},
res => {
// console.log(res)
if (res.data.resultCode == 1) {
this.airlineList = res.data.data;
}
},
err => {
}
);
},
Weekday(num){
if(num==1){
return "周一"
}
if(num==2){
return "周二"
}
if(num==3){
return "周三"
}
if(num==4){
return "周四"
}
if(num==5){
return "周五"
}
if(num==6){
return "周六"
}
if(num==7){
return "周日"
}
},
changeStart(val){
let num=moment(val,'YYYY-MM-DD').format('E');
this.startweek=this.Weekday(num);
this.choose_info.qFlightDateStart=moment(val).format('YYYY-MM-DD');
},
changeEnd(val){
let num=moment(val,'YYYY-MM-DD').format('E');
this.endweek=this.Weekday(num);
this.choose_info.qFlightDateEnd=moment(val).format('YYYY-MM-DD');
},
// moment("2018-10-29",'YYYY-MM-DD').format('E')
handleChange(){},
Search(){
this.choose_info.airTicketScatterNum=this.choose_info.cr+this.choose_info.child+this.choose_info.ye;
this.$emit("ChooseInfo",this.choose_info)
sessionStorage.setItem("ChooseInfo",JSON.stringify(this.choose_info));
this.$router.push({
path: 'TicketList'
})
}
}
}
</script>
<style>
.choose_back .msg .el-input__icon{
line-height: 0;
}
.choose_back .msg .el-select{
width: 130px;
height: 100%;
}
.choose_back .msg .el-select>.el-input{
width: 100%;
}
.choose_back .msg .el-button{
width:77px;
height:32px;
background:rgba(238,68,84,1);
border-radius:4px;
color: #ffffff;
border: none;
}
.choose_back .msg .el-input-number .el-input{
width: 95px;
}
.choose_back .msg .number{
width:150px;
height:34px;
background:rgba(255,255,255,1);
border:1px solid rgba(216,218,220,1);
border-radius:4px;
padding-left: 6px;
box-sizing: border-box;
display: inline-block;
margin-right: 20px;
}
.choose_back .msg .el-input-number{
width:95px;
height: 100%;
}
.choose_back .msg{
color: #000000;
font-size: 12px;
margin-top: 15px;
}
.choose_back .msg .city{
padding:4px 0;
width:80%;
height:36px;
line-height: 28px;
background:rgba(255,255,255,1);
border:1px solid rgba(216,218,220,1);
border-radius:4px;
padding-bottom: 2px;
padding-left: 6px;
box-sizing: border-box
}
.choose_back .msg .el-input.is-active .el-input__inner, .el-input__inner:focus{
border-color: none;
}
.choose_back .msg .el-input__inner{
border: none;
height: 100%;
}
</style>
\ No newline at end of file
...@@ -249,7 +249,7 @@ export default { ...@@ -249,7 +249,7 @@ export default {
//获取机票订单详情 //获取机票订单详情
GetTicketDes(){ GetTicketDes(){
this.apiJavaPost('/api/dmc/airticket/GetB2BAirtickOrderInfo',{AirOrderId:this.AirOrderId},res=>{ this.apiJavaPost('/api/dmc/airticket/GetB2BAirtickOrderInfo',{AirOrderId:this.AirOrderId},res=>{
console.log("获取机票订单详情",res) // console.log("获取机票订单详情",res)
this.personNum=res.data.data; this.personNum=res.data.data;
...@@ -257,7 +257,6 @@ export default { ...@@ -257,7 +257,6 @@ export default {
}, },
submitForm(addMsg) { submitForm(addMsg) {
console.log("this.personNum",this.personNum);
this.$refs[addMsg].validate((valid) => { this.$refs[addMsg].validate((valid) => {
if(valid) { if(valid) {
this.personNum.customerId=this.userInfo.accountId; this.personNum.customerId=this.userInfo.accountId;
...@@ -270,7 +269,6 @@ export default { ...@@ -270,7 +269,6 @@ export default {
}else{ }else{
this.$message.error(res.data.message) this.$message.error(res.data.message)
} }
console.log("下单",res);
},null) },null)
......
...@@ -141,8 +141,8 @@ ...@@ -141,8 +141,8 @@
</div> </div>
<div style="position:absolute;right:5px"> <div style="position:absolute;right:5px">
<span>专员:</span> <span>专员:</span>
<el-select size="small" v-model="personNum.enterID" filterable placeholder="请选择专员"> <el-select size="small" v-model="personNum.enterID" filterable placeholder="请选择专员">
<el-option v-for="(item,key) in SellInfoList" :key="key" :label="item.EmName" :value="item.EmployeeId"></el-option> <el-option v-for="item in SellInfoList" :key="item.EmployeeId" :label="item.EmName" :value="item.EmployeeId"></el-option>
</el-select> </el-select>
</div> </div>
...@@ -247,7 +247,7 @@ export default { ...@@ -247,7 +247,7 @@ export default {
contactMobile:'', contactMobile:'',
contactEmail:'', contactEmail:'',
contactName:'', contactName:'',
enterID:0,
}, },
AirTicketId:this.$route.params.id, AirTicketId:this.$route.params.id,
ruleForm:{}, ruleForm:{},
...@@ -265,6 +265,11 @@ export default { ...@@ -265,6 +265,11 @@ export default {
this.SellInfo(); this.SellInfo();
}, },
methods: { methods: {
// selectenterID(val){
// console.log("val",val)
// // this.personNum.enterID=val;
// this.$set(this.personNum,val,this.personNum.enterID);
// },
// 国籍 // 国籍
GetCountroy(){ GetCountroy(){
this.apipost( this.apipost(
...@@ -272,7 +277,7 @@ export default { ...@@ -272,7 +277,7 @@ export default {
res => { res => {
// console.log(res) // console.log(res)
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
this.countroylist = res.data.data; this.countroylist = res.data.data;
} }
}, },
err => { err => {
...@@ -396,7 +401,7 @@ export default { ...@@ -396,7 +401,7 @@ export default {
}else{ }else{
this.$message.error(res.data.message) this.$message.error(res.data.message)
} }
console.log("下单",res); // console.log("下单",res);
},null) },null)
...@@ -412,10 +417,12 @@ export default { ...@@ -412,10 +417,12 @@ export default {
this.apipost( this.apipost(
"sell_get_GetCustomerToSellInfo", {}, "sell_get_GetCustomerToSellInfo", {},
res => { res => {
console.log(res) // console.log(res)
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
this.SellInfoList = res.data.data; this.SellInfoList = res.data.data;
this.personNum.enterID=this.SellInfoList[0].EmployeeId; this.personNum.enterID=this.SellInfoList[0].EmployeeId;
}else{
this.Error(res.data.message);
} }
}, },
err => { err => {
......
...@@ -147,8 +147,8 @@ ...@@ -147,8 +147,8 @@
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
<el-form-item label="国籍"> <el-form-item label="国籍">
<el-select :disabled="disabled" size="mini" v-model="item.nationality" filterable placeholder="请选择国籍"> <el-select :disabled="disabled" size="mini" v-model="item.nationality" filterable placeholder="请选择国籍" style="height:28px">
<el-option v-for="(item,key) in countroylist" :key="key" :label="item.Name" :value="item.ID"></el-option> <el-option v-for="(item,key) in countroylist" :key="key" :label="item.Name" :value="item.ID"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="手机号" :prop="'guestList.'+index+'.mobilePhone'" :rules="[{required: true, message: '电话号码不能为空', trigger: 'blur'}]"> <el-form-item label="手机号" :prop="'guestList.'+index+'.mobilePhone'" :rules="[{required: true, message: '电话号码不能为空', trigger: 'blur'}]">
...@@ -208,6 +208,7 @@ export default { ...@@ -208,6 +208,7 @@ export default {
contactMobile:'', contactMobile:'',
contactEmail:'', contactEmail:'',
contactName:'', contactName:'',
enterID:0,
}, },
AirOrderId:this.$route.params.id, AirOrderId:this.$route.params.id,
...@@ -220,7 +221,7 @@ export default { ...@@ -220,7 +221,7 @@ export default {
SellInfoList:[], SellInfoList:[],
} }
}, },
mounted () { created () {
this.GetDes(); this.GetDes();
this.GetCountroy() this.GetCountroy()
this.GetTicketDes(); this.GetTicketDes();
...@@ -245,8 +246,13 @@ export default { ...@@ -245,8 +246,13 @@ export default {
GetDes(){ GetDes(){
this.apiJavaPost('/api/dmc/airticket/getB2BAirticketInfo',{AirOrderId:this.AirOrderId},res=>{ this.apiJavaPost('/api/dmc/airticket/getB2BAirticketInfo',{AirOrderId:this.AirOrderId},res=>{
// console.log("机票详情",res) // console.log("机票详情",res)
this.getlistSigel=res.data.data; if (res.data.resultCode == 1) {
this.getlistSigel.synum=this.getlistSigel.airTicketScatterNum-this.getlistSigel.useScatterNum; this.getlistSigel=res.data.data;
this.getlistSigel.synum=this.getlistSigel.airTicketScatterNum-this.getlistSigel.useScatterNum;
}else{
this.$message.error(res.data.message);
}
},null) },null)
...@@ -254,16 +260,17 @@ export default { ...@@ -254,16 +260,17 @@ export default {
//获取机票订单详情 //获取机票订单详情
GetTicketDes(){ GetTicketDes(){
this.apiJavaPost('/api/dmc/airticket/GetB2BAirtickOrderInfo',{AirOrderId:this.AirOrderId},res=>{ this.apiJavaPost('/api/dmc/airticket/GetB2BAirtickOrderInfo',{AirOrderId:this.AirOrderId},res=>{
if (res.data.resultCode == 1) {
this.personNum=res.data.data; this.personNum=res.data.data;
console.log("获取机票订单详情",this.personNum) }
else{
this.$message.error(res.data.message);
}
},null) },null)
}, },
submitForm(addMsg) { submitForm(addMsg) {
console.log("this.personNum",this.personNum);
this.$refs[addMsg].validate((valid) => { this.$refs[addMsg].validate((valid) => {
if(valid) { if(valid) {
this.personNum.customerId=this.userInfo.accountId; this.personNum.customerId=this.userInfo.accountId;
...@@ -276,7 +283,6 @@ export default { ...@@ -276,7 +283,6 @@ export default {
}else{ }else{
this.$message.error(res.data.message) this.$message.error(res.data.message)
} }
console.log("下单",res);
},null) },null)
...@@ -292,10 +298,11 @@ export default { ...@@ -292,10 +298,11 @@ export default {
this.apipost( this.apipost(
"sell_get_GetCustomerToSellInfo", {}, "sell_get_GetCustomerToSellInfo", {},
res => { res => {
console.log(res)
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
this.SellInfoList = res.data.data; this.SellInfoList = res.data.data;
this.personNum.enterID=this.SellInfoList[0].EmployeeId; this.personNum.enterID=this.SellInfoList[0].EmployeeId;
}else{
this.$message.error(res.data.message);
} }
}, },
err => { err => {
...@@ -308,6 +315,9 @@ export default { ...@@ -308,6 +315,9 @@ export default {
} }
</script> </script>
<style> <style>
.OrderDetails .el-input--mini .el-input__inner{
height: 28px!important;
}
.OrderDetails .el-radio__input.is-disabled+span.el-radio__label{ .OrderDetails .el-radio__input.is-disabled+span.el-radio__label{
color:#606266; color:#606266;
} }
......
<template>
<div>
<div class="orderPay">
<div class="div_1">
<img src="../../assets/img/ticket/gou.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,点击
<a style="color:#ee4454;text-decoration:underline">查看订单>></a></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>
export default {
}
</script>
<style>
.orderPay .div_2 p span:nth-child(2){
float: right;
}
.orderPay .div_2 {
margin-top: 20px;
width: 320px;
}
.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;
}
.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;
}
.back{
position: absolute;
width: 384px;
height: 289px;
right:10px;
top:110px;
}
</style>
...@@ -156,7 +156,6 @@ export default { ...@@ -156,7 +156,6 @@ export default {
"/api/dmc/airticket/GetB2BAirtickOrderPayInfo", "/api/dmc/airticket/GetB2BAirtickOrderPayInfo",
{ AirOrderId: this.AirOrderId }, { AirOrderId: this.AirOrderId },
res => { res => {
console.log("huoqu", res);
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
this.Commoditydetails = res.data.data; this.Commoditydetails = res.data.data;
this.code.OrderSource=this.Commoditydetails.orderResourceId; this.code.OrderSource=this.Commoditydetails.orderResourceId;
...@@ -170,7 +169,7 @@ export default { ...@@ -170,7 +169,7 @@ export default {
} }
else{ else{
this.$message.error(res.data.message) this.Error(res.data.message);
} }
}, },
null null
...@@ -189,11 +188,8 @@ export default { ...@@ -189,11 +188,8 @@ export default {
this.codeLoading=false; this.codeLoading=false;
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
this.codeInfo=res.data.data; 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.code_yxq=moment(this.codeInfo.ExpireDate).format('x')-moment(this.codeInfo.NowDate).format('x');
console.log((this.code_yxq/1000));
console.log(this.CodeVialdTime);
if((this.code_yxq/1000)>this.CodeVialdTime){ if((this.code_yxq/1000)>this.CodeVialdTime){
this.CodeVialdTime=(this.code_yxq/1000); this.CodeVialdTime=(this.code_yxq/1000);
} }
...@@ -238,6 +234,7 @@ export default { ...@@ -238,6 +234,7 @@ export default {
this.CodeVialdTime--; this.CodeVialdTime--;
if (this.CodeVialdTime <= 0) { if (this.CodeVialdTime <= 0) {
clearInterval(this.timer); clearInterval(this.timer);
clearInterval(this.Pay_timer);
this.order_exit='2'; this.order_exit='2';
this.order_exit_info="订单支付超时,请重新下单!" this.order_exit_info="订单支付超时,请重新下单!"
} }
...@@ -253,7 +250,6 @@ export default { ...@@ -253,7 +250,6 @@ export default {
"ticket_get_GetAirPayMoneyIsSuccess", "ticket_get_GetAirPayMoneyIsSuccess",
{PayOrder:this.PayOrder}, {PayOrder:this.PayOrder},
res => { res => {
console.log("res支付状态",res)
// res.data.resultCode =1; // res.data.resultCode =1;
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
clearInterval(this.Pay_timer); clearInterval(this.Pay_timer);
......
<template> <template>
<div> <div class="ticket_home">
<div class="banner" :height="bannerHeight" style="width:100%"> <div class="banner" :height="bannerHeight" style="width:100%">
<img src="../../assets/img/ticket/banner.png" alt=""> <img src="../../assets/img/ticket/banner.png" alt="">
<div class="choose"> <div class="choose">
<div class="choose_w"> <div class="choose_w">
<div class="choose_1"> <div class="choose_1">
<v-choose @ChooseInfo="ChooseInfo"></v-choose> <div class="choose_back">
<el-row class="msg">
<div style="margin-bottom:10px">
<el-radio v-model="choose_info.ticketType" :label=1>单程</el-radio>
<el-radio v-model="choose_info.ticketType" :label=2>往返</el-radio>
</div>
<el-col :span="5">
<div class="city" style="margin-bottom:15px">
<span>出发地 <i class="iconfont icon-vertical_line"></i> </span>
<el-select clearable style="width:65%" v-model="choose_info.departure_city" filterable placeholder="请选择">
<el-option :value=0 label="不限"></el-option>
<el-option
v-for="item in cfd"
:key="item.ID"
:label="item.Name"
:value="item.ID">
</el-option>
</el-select>
</div>
<div class="city">
<span>目的地 <i class="iconfont icon-vertical_line"></i> </span>
<el-select clearable style="width:65%" v-model="choose_info.arrival_city" filterable placeholder="请选择">
<el-option :value=0 label="不限"></el-option>
<el-option
v-for="item in cfd"
:key="item.ID"
:label="item.Name"
:value="item.ID">
</el-option>
</el-select>
</div>
</el-col>
<el-col :span="5">
<div class="city" style="margin-bottom:15px">
<span>出发 <i class="iconfont icon-vertical_line"></i> </span>
<el-date-picker
value-format="yyyy-MM-dd"
v-model="choose_info.qFlightDateStart"
type="date" style="width:75%"
placeholder="选择日期">
</el-date-picker>
<!-- <span>{{startweek}}</span> -->
</div>
<div class="city" style="display:inline-block;">
<span>舱位选择 <i class="iconfont icon-vertical_line"></i> </span>
<el-select clearable style="width:60%" v-model="choose_info.freightSpace" placeholder="请选择">
<el-option :value=0 label="不限"></el-option>
<el-option
v-for="item in cawei"
:key="item.id"
:label="item.title"
:value="item.id">
</el-option>
</el-select>
</div>
<!-- <div class="city">
<span>归期 | </span>
<el-date-picker @change="changeEnd"
v-model="choose_info.qFlightDateEnd"
type="date" style="width:80%"
placeholder="选择日期">
</el-date-picker>
</div> -->
</el-col>
<el-col :span="14">
<div style="margin-bottom:15px">
<div class="number">
<span>成人 <i class="iconfont icon-vertical_line"></i> </span>
<el-input-number size="mini" v-model="choose_info.cr" :min="0" :max="10" label="描述文字"></el-input-number>
</div>
<div class="number">
<span>儿童 <i class="iconfont icon-vertical_line"></i> </span>
<el-input-number size="mini" v-model="choose_info.child" :min="0" :max="10" label="描述文字"></el-input-number>
</div>
<div class="number">
<span>婴儿 <i class="iconfont icon-vertical_line"></i> </span>
<el-input-number size="mini" v-model="choose_info.ye" :min="0" :max="10" label="描述文字"></el-input-number>
</div>
<div class="number">
<span>老人 <i class="iconfont icon-vertical_line"></i> </span>
<el-input-number size="mini" v-model="choose_info.lr" :min="0" :max="10" label="描述文字"></el-input-number>
</div>
</div>
<div>
<div class="city" style="width:250px;display:inline-block;margin-right:10px">
<span>航空公司 <i class="iconfont icon-vertical_line"></i> </span>
<el-select clearable style="width:160px" filterable v-model="choose_info.airLineID" placeholder="请选择">
<el-option :value=0 label="不限"></el-option>
<el-option v-for="item in airlineList" :label="item.AlName" :value="item.AirLineId"
:key="item.AirLineId"></el-option>
</el-select>
</div>
<el-button @click="Search" size="small">搜索</el-button>
</div>
</el-col>
</el-row>
</div>
</div> </div>
</div> </div>
...@@ -26,7 +125,7 @@ ...@@ -26,7 +125,7 @@
<el-col :span="18" :offset="3" style="height:100%"> <el-col :span="18" :offset="3" style="height:100%">
<el-row style="height:100%"> <el-row style="height:100%">
<el-col :span="5" style="height:100%"> <el-col :span="5" style="height:100%">
<div class="carousel_small"> <div class="carousel_small" @click="DepartureCity(1145)">
<img style="width:100%" src="../../assets/img/ticket/sllk.png" alt=""> <img style="width:100%" src="../../assets/img/ticket/sllk.png" alt="">
<div class="info"> <div class="info">
<div class="table_cell"> <div class="table_cell">
...@@ -37,7 +136,7 @@ ...@@ -37,7 +136,7 @@
</div> </div>
</div> </div>
<div class="carousel_small"> <div class="carousel_small" @click="DepartureCity(6708)">
<img style="width:100%" src="../../assets/img/ticket/md.png" alt=""> <img style="width:100%" src="../../assets/img/ticket/md.png" alt="">
<div class="info"> <div class="info">
<div class="table_cell"> <div class="table_cell">
...@@ -49,7 +148,7 @@ ...@@ -49,7 +148,7 @@
</div> </div>
</el-col> </el-col>
<el-col :span="9" style="height:100%"> <el-col :span="9" style="height:100%">
<div class="carousel_large"> <div class="carousel_large" @click="DepartureCity(653)">
<img style="width:100%;height: 100%;" src="../../assets/img/ticket/rb.png" alt=""> <img style="width:100%;height: 100%;" src="../../assets/img/ticket/rb.png" alt="">
<div class="info"> <div class="info">
<div class="table_cell"> <div class="table_cell">
...@@ -61,7 +160,7 @@ ...@@ -61,7 +160,7 @@
</div> </div>
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<div class="carousel_small"> <div class="carousel_small" @click="DepartureCity(622)">
<img style="width:100%" src="../../assets/img/ticket/bld.png" alt=""> <img style="width:100%" src="../../assets/img/ticket/bld.png" alt="">
<div class="info"> <div class="info">
<div class="table_cell"> <div class="table_cell">
...@@ -71,7 +170,7 @@ ...@@ -71,7 +170,7 @@
</div> </div>
</div> </div>
<div class="carousel_small"> <div class="carousel_small" @click="DepartureCity(421)">
<img style="width:100%" src="../../assets/img/ticket/xg.png" alt=""> <img style="width:100%" src="../../assets/img/ticket/xg.png" alt="">
<div class="info"> <div class="info">
<div class="table_cell"> <div class="table_cell">
...@@ -83,7 +182,7 @@ ...@@ -83,7 +182,7 @@
</div> </div>
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<div class="carousel_small"> <div class="carousel_small" @click="DepartureCity(1221)">
<img style="width:100%" src="../../assets/img/ticket/teq.png" alt=""> <img style="width:100%" src="../../assets/img/ticket/teq.png" alt="">
<div class="info"> <div class="info">
<div class="table_cell"> <div class="table_cell">
...@@ -92,8 +191,8 @@ ...@@ -92,8 +191,8 @@
</div> </div>
</div> </div>
</div> </div>
<div class="carousel_small"> <div class="carousel_small" @click="DepartureCity(1319)">
<img style="width:100%" src="../../assets/img/ticket/yd.png" alt=""> <img style="width:100%" src="../../assets/img/ticket/yd.png" alt="">
<div class="info"> <div class="info">
<div class="table_cell"> <div class="table_cell">
...@@ -150,228 +249,361 @@ ...@@ -150,228 +249,361 @@
</div> </div>
</template> </template>
<script> <script>
import Choose from '@/components/Ticket/Choose.vue' import moment from 'moment'
export default { export default {
components: { data() {
"v-choose":Choose
},
data () {
return { return {
carousel_height:"0px", carousel_height: "0px",
bannerHeight:"282px", bannerHeight: "282px",
Choose_Info:{}, Youhui: {
Youhui:{ isDiscounts: 1,
isDiscounts:1,
}, },
yhList:[], yhList: [],
} choose_info: {
pageIndex: 1,
pageSize: 10,
id: 0,
qFlightDateStart: moment().format("YYYY-MM-DD"),
qFlightDateEnd: "",
flight_number: "",
airLineID: 0,
ticketType: 0,
lineId: 0,
isPayOrder: 0,
departure_city: 0,
arrival_city: 0,
freightSpace: 0,
airTicketScatterNum: 0,
cr: 0,
child: 0,
ye: 0,
lr: 0
},
startweek: "",
endweek: "",
radio: "",
value10: "",
cawei: [
{ title: "头等舱", id: 1 },
{ title: "商务舱", id: 2 },
{ title: "经济舱", id: 3 }
],
value1: "",
num1: "",
input10: "",
value: "",
airlineList: [],
cfd: []
};
}, },
mounted() { mounted() {
this.loadSize() this.loadSize();
}, },
created(){ created() {
// this.MDD();
this.JXYH(); this.JXYH();
this.initAirlines();
this.CFD();
}, },
methods: { methods: {
GoUrl(item){ DepartureCity(num) {
// console.log(item) this.choose_info.departure_city=num;
this.$router.push({ this.Search();
path: `/ticket/FillItinerary/${item.id}` },
}) CFD() {
}, this.apipost(
JXYH(){ "dict_post_Destination_GetCityList",
this.apiJavaPost('/api/dmc/airticket/getB2BAirticketList',this.Youhui,res=>{ {},
// console.log("Youhui",res) res => {
this.yhList=res.data.data.pageData; if (res.data.resultCode == 1) {
},null) this.cfd = res.data.data;
}, }
MDD() {
this.apiJavaPost('/api/dmc/airticket/getB2BAirticketList',this.Choose_Info,res=>{
// console.log("mudidi",res)
},null)
},
ChooseInfo(val){
// console.log("ChooseInfo",val)
if(val){
this.Choose_Info=val;
this.Choose_Info.airTicketScatterNum=this.Choose_Info.cr+this.Choose_Info.lr+this.Choose_Info.child;
}
}, },
loadSize(){ err => {}
let w=document.body.clientWidth * 0.75; );
this.carousel_height=w*0.269+"px"; },
// 航空公司下拉框
} initAirlines() {
this.apipost(
"airline_post_GetList",
{},
res => {
// console.log(res)
if (res.data.resultCode == 1) {
this.airlineList = res.data.data;
}
},
err => {}
);
},
Search() {
this.choose_info.airTicketScatterNum =
this.choose_info.cr + this.choose_info.child + this.choose_info.ye;
sessionStorage.setItem("ChooseInfo", JSON.stringify(this.choose_info));
this.$router.push({
path: "TicketList"
});
},
GoUrl(item) {
// console.log(item)
this.$router.push({
path: `/ticket/FillItinerary/${item.id}`
});
},
JXYH() {
this.apiJavaPost(
"/api/dmc/airticket/getB2BAirticketList",
this.Youhui,
res => {
// console.log("Youhui",res)
this.yhList = res.data.data.pageData;
},
null
);
},
loadSize() {
let w = document.body.clientWidth * 0.75;
this.carousel_height = w * 0.269 + "px";
}
} }
} };
</script> </script>
<style> <style>
@import '../../assets/global/font.css'; @import "../../assets/global/font.css";
@import '//at.alicdn.com/t/font_863923_3d1f1rd9oj6.css'; @import "//at.alicdn.com/t/font_863923_3d1f1rd9oj6.css";
@import '../../assets/global/global.css'; @import "../../assets/global/global.css";
@import '../../assets/css/reset.css'; @import "../../assets/css/reset.css";
.allyh{ .ticket_home{
display: inline-block; font-family: 'PingFang';
width:128px; }
.choose_back .msg .el-input-number--mini{
line-height: 30px;
}
.choose_back .msg .el-input__icon{
line-height: 0;
}
.choose_back .msg .el-select{
width: 130px;
height: 100%;
}
.choose_back .msg .el-select>.el-input{
width: 100%;
}
.choose_back .msg .el-button{
width:77px;
height:32px;
background:rgba(238,68,84,1);
border-radius:4px;
color: #ffffff;
border: none;
}
.choose_back .msg .el-input-number .el-input{
width: 95px;
}
.choose_back .msg .number{
width:170px;
height:34px; height:34px;
line-height: 34px;
background:rgba(255,255,255,1); background:rgba(255,255,255,1);
border:1px solid rgba(51,51,51,1); border:1px solid rgba(216,218,220,1);
margin:15px 0; border-radius:4px;
font-size: 14px; padding-left: 6px;
cursor: pointer; box-sizing: border-box;
display: inline-block;
margin-right: 20px;
}
.choose_back .msg .el-input-number{
width:95px;
height: 100%;
}
.choose_back .msg{
color: #000000;
font-size: 12px;
margin-top: 15px;
} }
.list_content p{ .choose_back .msg .city{
padding:4px 0; padding:4px 0;
width:80%;
height:36px;
line-height: 28px;
background:rgba(255,255,255,1);
border:1px solid rgba(216,218,220,1);
border-radius:4px;
padding-bottom: 2px;
padding-left: 6px;
box-sizing: border-box
} }
.list_content p{
margin:0; .choose_back .msg .el-input.is-active .el-input__inner, .el-input__inner:focus{
} border-color: none;
.list_content .time{
font-size:14px;
font-family:MicrosoftYaHei;
font-weight:400;
color:#333;
}
.list_content .money{
float: right;
font-size:24px;
font-family:MicrosoftYaHei-Bold;
font-weight:bold;
color:rgba(255,102,51,1);
}
.list_content .des{
font-size:20px;
font-family:MicrosoftYaHei-Bold;
font-weight:bold;
color:rgba(51,51,51,1);
}
.jxyh{
height:89px;
background:rgba(237,247,248,1);
font-weight:400;
color:rgba(6,6,6,1);
font-size:24px;line-height:89px;
text-align:center;
}
.list_content{
width:100%;
padding-left: 120px;
box-sizing: border-box;
} }
.yh{
display: flex;
justify-content: space-between;
flex-wrap: wrap;
overflow: auto;
padding:10px;
box-sizing: border-box;
.choose_back .msg .el-input__inner{
border: none;
height: 100%;
} }
.yh>div{
margin:6px 0;
width:45%;
padding:10px; .allyh {
box-sizing: border-box; display: inline-block;
position: relative; width: 128px;
height: 34px;
line-height: 34px;
background: rgba(255, 255, 255, 1);
border: 1px solid rgba(51, 51, 51, 1);
margin: 15px 0;
font-size: 14px;
cursor: pointer;
} }
.yh>div:hover{ .list_content p {
box-shadow:0px 4px 8px 0px rgba(107,107,107,0.27); padding: 4px 0;
transition: all linear 0.5s;
} }
.yh>div>img{ .list_content p {
position: absolute; margin: 0;
width:100px;
height: 100px;
} }
.banner_img .info{ .list_content .time {
position: absolute; font-size: 14px;
top: 0; font-family: MicrosoftYaHei;
width: 100%; font-weight: 400;
height: 100%; color: #333;
display: table;
} }
.banner_img .info .table_cell{ .list_content .money {
display: table-cell; float: right;
vertical-align: middle; font-size: 24px;
text-align: center; font-family: MicrosoftYaHei-Bold;
color: #ffffff; font-weight: bold;
color: rgba(255, 102, 51, 1);
} }
.carousel_large,.carousel_small{ .list_content .des {
padding:0 6px; font-size: 20px;
box-sizing: border-box; font-family: MicrosoftYaHei-Bold;
position: relative; font-weight: bold;
color: rgba(51, 51, 51, 1);
}
.jxyh {
height: 89px;
background: rgba(237, 247, 248, 1);
font-weight: 400;
color: rgba(6, 6, 6, 1);
font-size: 24px;
line-height: 89px;
text-align: center;
}
.list_content {
width: 100%;
padding-left: 120px;
box-sizing: border-box;
}
.yh {
display: flex;
justify-content: space-between;
flex-wrap: wrap;
overflow: auto;
padding: 10px;
box-sizing: border-box;
}
.yh > div {
margin: 6px 0;
width: 45%;
padding: 10px;
box-sizing: border-box;
position: relative;
} }
.carousel_small{ .yh > div:hover {
height: 50%; box-shadow: 0px 4px 8px 0px rgba(107, 107, 107, 0.27);
transition: all linear 0.5s;
} }
.carousel_large{ .yh > div > img {
height:100%; position: absolute;
width: 100px;
height: 100px;
}
.banner_img .info {
position: absolute;
top: 0;
width: 100%;
height: 100%;
display: table;
}
.banner_img .info .table_cell:hover{
cursor: pointer;
}
.banner_img .info .table_cell {
display: table-cell;
vertical-align: middle;
text-align: center;
color: #ffffff;
}
.carousel_large,
.carousel_small {
padding: 0 6px;
box-sizing: border-box;
position: relative;
}
.carousel_small {
height: 50%;
}
.carousel_large {
height: 100%;
} }
.el-col-5 { .el-col-5 {
height: 100%; height: 100%;
} }
.banner_two .carousel{ .banner_two .carousel {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
} }
.banner_two .carousel_small{ .banner_two .carousel_small {
/* width: 194px; /* width: 194px;
height: 132px; */ height: 132px; */
margin-bottom: 10px; margin-bottom: 10px;
} }
.banner_two .carousel_small img{ .banner_two .carousel_small img {
width: 100%; width: 100%;
height: 100%; height: 100%;
} }
.banner_two{ .banner_two {
width: 100%; width: 100%;
margin-bottom:15px; margin-bottom: 15px;
/* height: 461px; */ /* height: 461px; */
} }
.banner {
.banner{ position: relative;
position: relative;
} }
.banner img{ .banner img {
width: 100%; width: 100%;
font-size: 0; font-size: 0;
} }
.choose{ .choose {
position: absolute; position: absolute;
width: 100%; width: 100%;
height:175px; height: 175px;
bottom: -10px; bottom: -10px;
} }
.choose_w{ .choose_w {
width: 1350px; width: 1350px;
height: 100%; height: 100%;
margin:0 auto; margin: 0 auto;
background: rgba(255, 255, 255, 0.24); background: rgba(255, 255, 255, 0.24);
border-radius: 4px; border-radius: 4px;
box-sizing: border-box; box-sizing: border-box;
padding:10px; padding: 10px;
box-shadow:0px 2px 29px 0px rgba(107,107,107,0.27); box-shadow: 0px 2px 29px 0px rgba(107, 107, 107, 0.27);
} }
.choose_1{ .choose_1 {
width: 100%; width: 100%;
height: 100%; height: 100%;
margin:0 auto; margin: 0 auto;
border-radius: 4px; border-radius: 4px;
padding: 8px; padding: 8px;
box-sizing: border-box; box-sizing: border-box;
background:rgba(255,255,255,1); background: rgba(255, 255, 255, 1);
border-radius:0px 4px 4px 4px; border-radius: 0px 4px 4px 4px;
} }
</style> </style>
<template> <template>
<div v-loading="loading" element-loading-text="加载中"> <div style="min-height:100%;" @click="other=false" v-loading="loading" element-loading-text="加载中">
<div class="ticket_1" style="background:rgba(255,255,255,1);box-shadow:0px 4px 8px 0px rgba(107,107,107,0.18);padding-bottom:15px"> <div class="ticket_1" style="background:rgba(255,255,255,1);box-shadow:0px 4px 8px 0px rgba(107,107,107,0.18);padding-bottom:15px">
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="20" :offset="2"> <el-col :span="20" :offset="2">
<el-row class="msg"> <div style="margin-top:10px">
<div style="margin-bottom:10px"> <el-radio v-model="choose_info.ticketType" :label=1>单程</el-radio>
<el-radio v-model="choose_info.ticketType" :label=1>单程</el-radio> <el-radio v-model="choose_info.ticketType" :label=2>往返</el-radio>
<el-radio v-model="choose_info.ticketType" :label=2>往返</el-radio> </div>
</div> <el-row class="msg" style="margin-top: 15px;">
<el-col :span="5"> <el-col :span="5">
<div class="city" style="margin-bottom:15px"> <div class="city">
<span>出发地 | </span> <span>出发地 | </span>
<el-select style="width:80%" v-model="choose_info.departure_city" filterable placeholder="请选择"> <el-select v-model="choose_info.departure_city" clearable filterable placeholder="请选择">
<el-option :value="zero" label="不限"></el-option> <el-option :value="zero" label="不限"></el-option>
<el-option <el-option
v-for="item in cfd" v-for="item in cfd"
:key="item.ID" :key="item.ID"
:label="item.Name" :label="item.Name"
:value="item.ID"> :value="item.ID">
</el-option> </el-option>
</el-select> </el-select>
</div> </div>
<div class="city">
<span>目的地 | </span> </el-col>
<el-select style="width:80%" v-model="choose_info.arrival_city" filterable placeholder="请选择">
<el-option :value="zero" label="不限"></el-option> <el-col :span="5">
<el-option <div class="city">
v-for="item in cfd"
:key="item.ID"
:label="item.Name"
:value="item.ID">
</el-option>
</el-select>
</div>
</el-col>
<el-col :span="6">
<div class="city" style="margin-bottom:15px">
<span>出发 | </span>
<el-date-picker @change="changeStart"
v-model="choose_info.qFlightDateStart"
type="date"
placeholder="选择日期">
</el-date-picker>
</div>
<div class="city" style="display:inline-block;">
<span>舱位选择 | </span> <span>舱位选择 | </span>
<el-select style="width:80%" v-model="choose_info.freightSpace" placeholder="请选择"> <el-select v-model="choose_info.freightSpace" clearable placeholder="请选择">
<el-option :value="zero" label="不限"></el-option> <el-option :value="zero" label="不限"></el-option>
<el-option <el-option
v-for="item in cawei" v-for="item in cawei"
...@@ -56,18 +38,10 @@ ...@@ -56,18 +38,10 @@
:value="item.id"> :value="item.id">
</el-option> </el-option>
</el-select> </el-select>
</div> </div>
<!-- <div class="city"> </el-col>
<span>归期 | </span> <el-col :span="11">
<el-date-picker @change="changeEnd" <div style="margin-bottom:15px">
v-model="choose_info.qFlightDateEnd"
type="date"
placeholder="选择日期">
</el-date-picker>
</div> -->
</el-col>
<el-col :span="13">
<div style="margin-bottom:15px">
<div class="number"> <div class="number">
<span>成人 | </span> <span>成人 | </span>
<el-input-number size="mini" v-model="choose_info.cr" @change="handleChange" :min="0" :max="10" label="描述文字"></el-input-number> <el-input-number size="mini" v-model="choose_info.cr" @change="handleChange" :min="0" :max="10" label="描述文字"></el-input-number>
...@@ -85,21 +59,54 @@ ...@@ -85,21 +59,54 @@
<el-input-number size="mini" v-model="choose_info.lr" @change="handleChange" :min="0" :max="10" label="描述文字"></el-input-number> <el-input-number size="mini" v-model="choose_info.lr" @change="handleChange" :min="0" :max="10" label="描述文字"></el-input-number>
</div> </div>
</div> </div>
<div> </el-col>
<div class="city" style="width:250px;display:inline-block;margin:0 10px"> <el-col :span="2">
<el-button @click="Search" size="small">搜索</el-button>
</el-col>
</el-row>
<el-row class="msg">
<el-col :span="5">
<div class="city">
<span>目的地 | </span>
<el-select v-model="choose_info.arrival_city" clearable filterable placeholder="请选择">
<el-option :value="zero" label="不限"></el-option>
<el-option
v-for="item in cfd"
:key="item.ID"
:label="item.Name"
:value="item.ID">
</el-option>
</el-select>
</div>
</el-col>
<el-col :span="5">
<div class="city" style="margin-bottom:15px">
<span>出发 | </span>
<el-date-picker @change="changeStart"
value-format="yyyy-MM-dd"
v-model="choose_info.qFlightDateStart"
type="date" style="width:80%"
placeholder="选择日期">
</el-date-picker>
<!-- <span>{{startweek}}</span> -->
</div>
</el-col>
<el-col :span="5">
<div class="city">
<span>航空公司 | </span> <span>航空公司 | </span>
<el-select style="width:68%" filterable v-model="choose_info.airLineID" placeholder="请选择"> <el-select filterable clearable v-model="choose_info.airLineID" placeholder="请选择">
<el-option :value="zero" label="不限"></el-option> <el-option :value="zero" label="不限"></el-option>
<el-option v-for="item in airlineList" :label="item.AlName" :value="item.AirLineId" <el-option v-for="item in airlineList" :label="item.AlName" :value="item.AirLineId"
:key="item.AirLineId"></el-option> :key="item.AirLineId"></el-option>
</el-select> </el-select>
</div> </div>
<el-button @click="Search" size="small">搜索</el-button> </el-col>
</div>
</el-col>
</el-row> </el-row>
</el-col> </el-col>
</el-row> </el-row>
...@@ -112,7 +119,7 @@ ...@@ -112,7 +119,7 @@
<el-col :span="20" :offset="2"> <el-col :span="20" :offset="2">
<div class="date_list"> <div class="date_list">
<div @click="BeforeDate" style="color:#dddddd;font-size:20px" class="margin common">&lt;</div> <div @click="BeforeDate" style="color:#dddddd;font-size:20px" class="margin common">&lt;</div>
<div class="li" :class="{'active_data':index==4}" v-for="(item,index) in dateList" :key="index"> <div @click="GetClickDate(item)" class="li" :class="{'active_data':index==4}" v-for="(item,index) in dateList" :key="index">
<div> <div>
<p class="font_12" style="color:#FF680B">{{item.price}}</p> <p class="font_12" style="color:#FF680B">{{item.price}}</p>
<p class="font_12">{{item.monthTime}} {{item.week}}</p> <p class="font_12">{{item.monthTime}} {{item.week}}</p>
...@@ -120,21 +127,22 @@ ...@@ -120,21 +127,22 @@
</div> </div>
<div @click="AfterDate" style="color:#dddddd;font-size:20px" class="margin common">&gt;</div> <div @click="AfterDate" style="color:#dddddd;font-size:20px" class="margin common">&gt;</div>
<div class="font_12" style="margin-top:30px;color:#FF680B;width:6%;position:relative"> <div class="font_12" style="margin-top:20px;color:#FF680B;width:6%;position:relative">
<span @click="OtherToggle" style="cursor:pointer">其他日期</span> <span @click.stop="other=!other" style="cursor:pointer">其他日期</span>
<div class="otherdate" v-show="other"> <div ref="otherdate" class="otherdate" v-show="other">
<div style="font-size:16px;padding:10px"> <div style="font-size:16px;padding:10px">
<el-col :span="8"><span @click="ChangeMonth(1)" class="month_circle">&lt;</span> </el-col> <el-col :span="8"><span @click="ChangeMonth(1)" class="month_circle">&lt;</span> </el-col>
<el-col :span="8">{{tomonth}}</el-col> <el-col :span="8">{{tomonth}}</el-col>
<el-col :span="8"><span @click="ChangeMonth(2)" class="month_circle">&gt;</span></el-col> <el-col :span="8"><span @click="ChangeMonth(2)" class="month_circle">&gt;</span></el-col>
</div>
<div style="margin-top:22px">
<v-calendar ref="child" v-for="(item,index) in classArray" :key="index" v-bind:dateData="classArray" :day ="tomonth" v-on:SelectChild="SelectChild">
</v-calendar>
</div>
</div> </div>
<div style="margin-top:22px">
<v-calendar ref="child" v-for="(item,index) in classArray" :key="index" v-bind:dateData="classArray" :day ="tomonth" v-on:SelectChild="SelectChild">
</v-calendar>
</div>
</div>
</div> </div>
</div> </div>
</el-col> </el-col>
...@@ -143,13 +151,21 @@ ...@@ -143,13 +151,21 @@
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="20" :offset="2"> <el-col :span="20" :offset="2">
<el-row class="px" style="margin-bottom:10px"> <el-row class="px" style="margin-bottom:10px">
<el-col :span="16" style="color:rgba(51,51,51,1);font-size:16px;padding-left:6px"> </el-col> <div style="text-align:right">
<el-col :span="8" style="font-size:12px;color:rgba(102,102,102,1);float:right"> <span :class="choose_info.timeSort==1 || choose_info.timeSort==0?'time_asc':'time_des'">时间排序
<el-col :span="6">直飞优选</el-col> <span class="caret-wrapper">
<el-col :span="6">时间排序</el-col> <!-- :class="type==1?'_active':''" -->
<el-col :span="6">总耗时</el-col> <i @click="Time(1)" class="sort-caret ascending"></i>
<el-col :span="6">价格</el-col> <i @click="Time(2)" class="sort-caret descending"></i>
</el-col> </span>
</span>
<span :class="choose_info.priceSort==1 || choose_info.priceSort==0?'price_asc':'price_des'" style="margin:0 20px;">价格
<span class="caret-wrapper">
<i @click="PriceSort(1)" class="sort-caret ascending"></i>
<i @click="PriceSort(2)" class="sort-caret descending"></i>
</span>
</span>
</div>
</el-row> </el-row>
<el-row class="list" v-for="(item,index) in datalist" :key="index"> <el-row class="list" v-for="(item,index) in datalist" :key="index">
...@@ -177,7 +193,7 @@ ...@@ -177,7 +193,7 @@
<p class="time">{{item.goStartHouseTime}}</p> <p class="time">{{item.goStartHouseTime}}</p>
<p class="adress">{{item.goStartAirPlace}}</p> <p class="adress">{{item.goStartAirPlace}}</p>
</el-col> </el-col>
<el-col :span="6" style="text-align:center"> <el-col :span="6" style="text-align:center;padding:0 10px;box-sizing:border-box">
<p style="font-size:12px;color:rgba(102,102,102,1);">{{item.goTotalTime}}</p> <p style="font-size:12px;color:rgba(102,102,102,1);">{{item.goTotalTime}}</p>
<p class="fg"></p> <p class="fg"></p>
<p class="adress" v-if="item.goTransfer"><span class="green">{{item.goTransfer}}</span>转机</p> <p class="adress" v-if="item.goTransfer"><span class="green">{{item.goTransfer}}</span>转机</p>
...@@ -200,7 +216,7 @@ ...@@ -200,7 +216,7 @@
<p class="time">{{item.backStartHouseTime}}</p> <p class="time">{{item.backStartHouseTime}}</p>
<p class="adress">{{item.backStartAirPlace}}</p> <p class="adress">{{item.backStartAirPlace}}</p>
</el-col> </el-col>
<el-col :span="6" style="text-align:center"> <el-col :span="6" style="text-align:center;padding:0 10px;box-sizing:border-box">
<p style="font-size:12px;color:rgba(102,102,102,1);">{{item.backTotalTime}}</p> <p style="font-size:12px;color:rgba(102,102,102,1);">{{item.backTotalTime}}</p>
<p class="fg"></p> <p class="fg"></p>
<p class="adress" v-if="item.backTransfer"><span class="green">{{item.backTransfer}}</span>转机</p> <p class="adress" v-if="item.backTransfer"><span class="green">{{item.backTransfer}}</span>转机</p>
...@@ -281,7 +297,7 @@ ...@@ -281,7 +297,7 @@
</el-col> </el-col>
</el-col> </el-col>
</el-row> </el-row>
<el-pagination class="pagination" style="text-align:right" <el-pagination class="pagination" style="text-align:right;margin:15px 0"
@current-change="CurrentChange" @current-change="CurrentChange"
background background
layout="prev, pager, next" layout="prev, pager, next"
...@@ -301,18 +317,15 @@ ...@@ -301,18 +317,15 @@
</template> </template>
<script> <script>
import moment from 'moment' import moment from 'moment'
import Choose from '@/components/Ticket/Choose.vue'
import calendar from '@/components/mall/newcalendar.vue' import calendar from '@/components/mall/newcalendar.vue'
export default { export default {
components: { components: {
"v-choose":Choose,
"v-calendar":calendar "v-calendar":calendar
}, },
data () { data () {
return { return {
zero:0, zero:0,
classArray:[], classArray:[],
Choose_Info:{},
today:moment().format("YYYY-MM-DD HH:mm:ss"), today:moment().format("YYYY-MM-DD HH:mm:ss"),
datalist:[], datalist:[],
datainfo:{ datainfo:{
...@@ -351,6 +364,8 @@ export default { ...@@ -351,6 +364,8 @@ export default {
child:0, child:0,
ye:0, ye:0,
lr:0, lr:0,
timeSort:0,
priceSort:0,
}, },
startweek:"", startweek:"",
...@@ -378,17 +393,30 @@ export default { ...@@ -378,17 +393,30 @@ export default {
}, },
created(){ created(){
this.choose_info=JSON.parse(sessionStorage.getItem("ChooseInfo"));
this.datainfo.qFlightDateStart=moment(this.choose_info.qFlightDateStart).format("YYYY-MM-DD HH:mm:ss")
this.getList(); this.loading=true;
// this.getList();
this.Datelist(); this.Datelist();
this.OtherDate(); this.OtherDate();
this.initAirlines(); this.initAirlines();
this.CFD(); this.CFD();
this.choose_info=JSON.parse(sessionStorage.getItem("ChooseInfo"));
this.choose_info.priceSort=0;
this.choose_info.timeSort=0;
this.datainfo.qFlightDateStart=moment(this.choose_info.qFlightDateStart).format("YYYY-MM-DD HH:mm:ss")
}, },
methods: { methods: {
PriceSort(num){
this.choose_info.priceSort=num;
this.choose_info.timeSort=0;
this.getList();
},
Time(num){
this.choose_info.priceSort=0;
this.choose_info.timeSort=num;
this.getList();
},
SelectChild(item){ SelectChild(item){
this.datainfo.qFlightDateStart=moment(item.date_str).format("YYYY-MM-DD HH:mm:ss") this.datainfo.qFlightDateStart=moment(item.date_str).format("YYYY-MM-DD HH:mm:ss")
this.other=false; this.other=false;
...@@ -399,7 +427,7 @@ export default { ...@@ -399,7 +427,7 @@ export default {
Purchase(item){ Purchase(item){
let isLogin=this.$store.state.isLogin; let isLogin=this.$store.state.isLogin;
if(isLogin==0){ if(isLogin==0){
this.$message.error("请先登录!") this.Error("请先登录!");
this.$router.push({path: `/login?type=1`}) this.$router.push({path: `/login?type=1`})
}else{ }else{
this.$store.commit('HomePage','ticket') this.$store.commit('HomePage','ticket')
...@@ -488,6 +516,7 @@ export default { ...@@ -488,6 +516,7 @@ export default {
OtherToggle(){ OtherToggle(){
this.other=!this.other; this.other=!this.other;
}, },
ChangeMonth(num){ ChangeMonth(num){
if(num==1){ if(num==1){
...@@ -521,14 +550,19 @@ export default { ...@@ -521,14 +550,19 @@ export default {
this.choose_info.qFlightDateStart=moment(this.changeday).format('YYYY-MM-DD'); this.choose_info.qFlightDateStart=moment(this.changeday).format('YYYY-MM-DD');
this.Datelist(); this.Datelist();
}, },
// 获取点击时间
GetClickDate(item){
this.datainfo.qFlightDateStart=moment(item.timeStr).format("YYYY-MM-DD HH:mm:ss")
this.Datelist();
this.choose_info.qFlightDateStart=item.timeStr;
},
Datelist(){ Datelist(){
this.loading=true;
// console.log("this.datainfo",this.datainfo)
this.apiJavaPost('/api/dmc/airticket/getB2BAirticketForMinPrice',this.datainfo,res=>{ this.apiJavaPost('/api/dmc/airticket/getB2BAirticketForMinPrice',this.datainfo,res=>{
// console.log(res); // console.log(res);
this.loading=false;
this.dateList=res.data.data;
this.dateList=res.data.data;
this.getList();
},null) },null)
}, },
...@@ -537,8 +571,11 @@ export default { ...@@ -537,8 +571,11 @@ export default {
this.getList(); this.getList();
}, },
getList(){ getList(){
this.loading=true;
this.apiJavaPost('/api/dmc/airticket/getB2BAirticketList',this.choose_info,res=>{ this.apiJavaPost('/api/dmc/airticket/getB2BAirticketList',this.choose_info,res=>{
// console.log("机票列表",res) this.loading=false;
if(res.data.resultCode==1){
this.datalist=res.data.data.pageData; this.datalist=res.data.data.pageData;
this.count=res.data.data.count; this.count=res.data.data.count;
if(this.datalist.length>0){ if(this.datalist.length>0){
...@@ -546,6 +583,10 @@ export default { ...@@ -546,6 +583,10 @@ export default {
item.synum=item.airTicketScatterNum-item.useScatterNum; item.synum=item.airTicketScatterNum-item.useScatterNum;
}) })
} }
}else{
this.Error(res.data.message);
}
},null) },null)
}, },
...@@ -615,6 +656,54 @@ export default { ...@@ -615,6 +656,54 @@ export default {
<style> <style>
@import '../../assets/global/font.css'; @import '../../assets/global/font.css';
@import '../../assets/css/reset.css'; @import '../../assets/css/reset.css';
.ticketlist_content .time_asc .ascending{
border-bottom-color: rgba(238,68,84,1);
}
.ticketlist_content .time_des .descending{
border-top-color: rgba(238,68,84,1);
}
.ticketlist_content .price_asc .ascending{
border-bottom-color: rgba(238,68,84,1);
}
.ticketlist_content .price_des .descending{
border-top-color: rgba(238,68,84,1);
}
.caret-wrapper .sort-caret.ascending:hover{
border-bottom-color: rgba(238,68,84,1);
}
.sort-caret.descending:hover {
border-top-color: rgba(238,68,84,1);
}
.sort_active{
border-top-color: #409eff;
}
.sort-caret.ascending {
border-bottom-color: #c0c4cc;
top: 5px;
}
.sort-caret {
width: 0;
height: 0;
border: 5px solid transparent;
position: absolute;
left: 7px;
}
.sort-caret.descending {
border-top-color: #c0c4cc;
bottom: 7px;
}
.caret-wrapper {
display: inline-flex;
flex-direction: column;
align-items: center;
height: 34px;
width: 24px;
vertical-align: middle;
cursor: pointer;
overflow: initial;
position: relative;
}
.ticketlist_content .pagination{ .ticketlist_content .pagination{
margin:10px 0; margin:10px 0;
} }
...@@ -629,9 +718,12 @@ export default { ...@@ -629,9 +718,12 @@ export default {
} }
.ticket_1 .msg .el-select{ .ticket_1 .msg .el-select{
width: 130px; width: 180px;
height: 100%; height: 100%;
} }
.ticket_1 .msg .el-input-number--mini{
line-height: 30px;
}
.ticket_1 .msg .el-select>.el-input{ .ticket_1 .msg .el-select>.el-input{
width: 100%; width: 100%;
} }
...@@ -664,11 +756,10 @@ export default { ...@@ -664,11 +756,10 @@ export default {
.ticket_1 .msg{ .ticket_1 .msg{
color: #000000; color: #000000;
font-size: 12px; font-size: 12px;
margin-top: 15px;
} }
.ticket_1 .msg .city{ .ticket_1 .msg .city{
padding:4px 0; padding:4px 0;
width:80%; width:270px;
height:36px; height:36px;
line-height: 28px; line-height: 28px;
background:rgba(255,255,255,1); background:rgba(255,255,255,1);
...@@ -796,7 +887,7 @@ li{ ...@@ -796,7 +887,7 @@ li{
width:2%; width:2%;
} }
.margin{ .margin{
margin-top:25px; margin-top:15px;
cursor: pointer; cursor: pointer;
} }
.date_list div:nth-last-child(3) div{ .date_list div:nth-last-child(3) div{
...@@ -824,6 +915,9 @@ li{ ...@@ -824,6 +915,9 @@ li{
text-align: center; text-align: center;
} }
.date_list>div:hover{
cursor: pointer;
}
.date_list{ .date_list{
background:rgba(248,248,248,1); background:rgba(248,248,248,1);
border:1px solid rgba(221,221,221,1); border:1px solid rgba(221,221,221,1);
...@@ -837,6 +931,7 @@ li{ ...@@ -837,6 +931,7 @@ li{
.ticketlist_content{ .ticketlist_content{
padding-top:20px; padding-top:20px;
background:rgba(245,245,245,1); background:rgba(245,245,245,1);
min-height: 300px;
} }
.green{ .green{
color:rgba(15,181,144,1); color:rgba(15,181,144,1);
...@@ -848,7 +943,7 @@ li{ ...@@ -848,7 +943,7 @@ li{
} }
.second .num{ .second .num{
position: absolute; position: absolute;
right: 30%; right: 10px;
font-size:12px; font-size:12px;
top: 0; top: 0;
} }
......
...@@ -87,7 +87,7 @@ color:rgba(51,51,51,1); ...@@ -87,7 +87,7 @@ color:rgba(51,51,51,1);
<!-- <el-menu-item index="2-3">单团</el-menu-item> <!-- <el-menu-item index="2-3">单团</el-menu-item>
<el-menu-item index="2-4">私人订制</el-menu-item> --> <el-menu-item index="2-4">私人订制</el-menu-item> -->
</el-submenu> </el-submenu>
<!-- <el-menu-item index="3" @click="goUrl('TicketHome',true)"><a href="javascript:void(0);">机票</a></el-menu-item> --> <el-menu-item index="3" @click="goUrl('TicketHome',true)"><a href="javascript:void(0);">机票</a></el-menu-item>
<!-- <el-menu-item index="5"><a href="javascript:void(0);">机票</a></el-menu-item> <!-- <el-menu-item index="5"><a href="javascript:void(0);">机票</a></el-menu-item>
...@@ -117,7 +117,7 @@ color:rgba(51,51,51,1); ...@@ -117,7 +117,7 @@ color:rgba(51,51,51,1);
</el-col> </el-col>
<el-col :span="4" :offset="14" class="Info"> <el-col :span="4" :offset="14" class="Info">
<div class="ckxx">乘客信息</div> <div class="ckxx">乘客<br/>信息</div>
<div class="fg"></div> <div class="fg"></div>
<div class="zf">支付</div> <div class="zf">支付</div>
</el-col> </el-col>
...@@ -164,7 +164,6 @@ export default { ...@@ -164,7 +164,6 @@ export default {
} }
}, },
created(){ created(){
console.log(this.defaultKey)
}, },
computed: { computed: {
user(){ user(){
...@@ -206,7 +205,6 @@ export default { ...@@ -206,7 +205,6 @@ export default {
methods: { methods: {
handleSelect(key, keyPath) { handleSelect(key, keyPath) {
console.log(key)
this.defaultKey=key; this.defaultKey=key;
sessionStorage.setItem("defaultKey",this.defaultKey); sessionStorage.setItem("defaultKey",this.defaultKey);
this.$emit('forword', key) this.$emit('forword', key)
...@@ -234,8 +232,6 @@ export default { ...@@ -234,8 +232,6 @@ export default {
this.$store.commit('HomePage','true') this.$store.commit('HomePage','true')
localStorage.removeItem("userInfo"); localStorage.removeItem("userInfo");
sessionStorage.setItem("Homepage",'true'); sessionStorage.setItem("Homepage",'true');
// localStorage.homePage = 'true';
// console.log(" this.homePage.", this.homePage)
this.$router.push({name:path,query:{'type':t}}) this.$router.push({name:path,query:{'type':t}})
}, },
goUrl(path,bl){ goUrl(path,bl){
......
...@@ -162,7 +162,6 @@ ...@@ -162,7 +162,6 @@
msg.attach = this.payType + '|' +obj.contactName+'|'+ obj.orderId+'|'+obj.customerId+'|'+obj.outBranchId msg.attach = this.payType + '|' +obj.contactName+'|'+ obj.orderId+'|'+obj.customerId+'|'+obj.outBranchId
msg.total_fee = this.payMoney msg.total_fee = this.payMoney
msg.payway = this.payWay msg.payway = this.payWay
console.log(msg)
if(this.payType==''){ if(this.payType==''){
this.$message.warning('请选择费用类型!') this.$message.warning('请选择费用类型!')
return return
......
...@@ -52,11 +52,11 @@ ...@@ -52,11 +52,11 @@
margin: 10px 0; margin: 10px 0;
color: #ff4646; color: #ff4646;
} }
.dayList:hover{ .dayList.yesPrice:hover{
background: #FF680B; background: #FF680B;
color:#fff!important; color:#fff!important;
} }
.dayList:hover .price{ .dayList.yesPrice:hover .price{
color:#fff; color:#fff;
} }
......
...@@ -12,6 +12,7 @@ import echarts from 'echarts' ...@@ -12,6 +12,7 @@ import echarts from 'echarts'
import VueLazyload from 'vue-lazyload' import VueLazyload from 'vue-lazyload'
import htmlToPdf from './assets/utils/htmlToPdf' import htmlToPdf from './assets/utils/htmlToPdf'
import commonUtils from './assets/utils/commonUtils' import commonUtils from './assets/utils/commonUtils'
// 使用Vue.use()方法就会调用工具方法中的install方法 // 使用Vue.use()方法就会调用工具方法中的install方法
Vue.use(htmlToPdf) Vue.use(htmlToPdf)
Vue.use(VueLazyload) Vue.use(VueLazyload)
......
...@@ -13,9 +13,12 @@ export default { ...@@ -13,9 +13,12 @@ export default {
Vue.prototype.domainManager = function() { Vue.prototype.domainManager = function() {
// var domainUrl = "http://test_reborn.oytour.com";//主域名 // var domainUrl = "http://test_reborn.oytour.com";//主域名
//var domainUrl = "http://reborn.oytour.com"; //主域名 //var domainUrl = "http://reborn.oytour.com"; //主域名
var domainUrl = "http://192.168.2.16:8083"//主域名 // var domainUrl = "http://192.168.2.16:8083"//主域名
// let domainUrl = "https://reborn.oytour.com"; //刘东主域名 // let domainUrl = "https://reborn.oytour.com"; //刘东主域名
// let domainUrl = "https://reborn.oytour.com"; // let domainUrl = "https://reborn.oytour.com";
var domainUrl = "http://test.viitto.com"
if (this.isOnline()) { if (this.isOnline()) {
if(window.location.host.indexOf('viitto.com')!=-1) if(window.location.host.indexOf('viitto.com')!=-1)
domainUrl = "http://test.viitto.com" domainUrl = "http://test.viitto.com"
...@@ -27,7 +30,9 @@ export default { ...@@ -27,7 +30,9 @@ export default {
DomainUrl: domainUrl, DomainUrl: domainUrl,
//常用提交数据URL //常用提交数据URL
PostUrl: domainUrl + "/api/common/post", PostUrl: domainUrl + "/api/common/post",
javaUrl: "http://192.168.2.16:9000", // javaUrl: "http://192.168.2.16:9000",
javaUrl: "http://47.96.12.235:9001",//测试接口
LocalFileStreamDownLoadUrl: domainUrl + "/api/file/GetFileFromWebApi", LocalFileStreamDownLoadUrl: domainUrl + "/api/file/GetFileFromWebApi",
}; };
return obj; return obj;
......
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