Commit 2ef323c9 authored by huangyuanyuan's avatar huangyuanyuan

11

parent 0a57a597
...@@ -11,10 +11,10 @@ ...@@ -11,10 +11,10 @@
<el-select style="width:80%" v-model="choose_info.departure_city" filterable placeholder="请选择"> <el-select style="width:80%" v-model="choose_info.departure_city" filterable placeholder="请选择">
<el-option :value=0 label="不限"></el-option> <el-option :value=0 label="不限"></el-option>
<el-option <el-option
v-for="item in cawei" v-for="item in cfd"
:key="item.id" :key="item.ID"
:label="item.title" :label="item.Name"
:value="item.id"> :value="item.ID">
</el-option> </el-option>
</el-select> </el-select>
</div> </div>
...@@ -23,10 +23,10 @@ ...@@ -23,10 +23,10 @@
<el-select style="width:80%" v-model="choose_info.arrival_city" filterable placeholder="请选择"> <el-select style="width:80%" v-model="choose_info.arrival_city" filterable placeholder="请选择">
<el-option :value=0 label="不限"></el-option> <el-option :value=0 label="不限"></el-option>
<el-option <el-option
v-for="item in cawei" v-for="item in cfd"
:key="item.id" :key="item.ID"
:label="item.title" :label="item.Name"
:value="item.id"> :value="item.ID">
</el-option> </el-option>
</el-select> </el-select>
</div> </div>
...@@ -65,10 +65,14 @@ ...@@ -65,10 +65,14 @@
<span>婴儿 | </span> <span>婴儿 | </span>
<el-input-number size="mini" v-model="choose_info.ye" @change="handleChange" :min="0" :max="10" label="描述文字"></el-input-number> <el-input-number size="mini" v-model="choose_info.ye" @change="handleChange" :min="0" :max="10" label="描述文字"></el-input-number>
</div> </div>
<el-button @click="Search" size="small">搜索</el-button> <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> <div>
<div class="city" style="width:200px;display:inline-block;margin-right:10px"> <div class="city" style="width:200px;display:inline-block;">
<span>舱位选择 | </span> <span>舱位选择 | </span>
<el-select v-model="choose_info.freightSpace" placeholder="请选择"> <el-select v-model="choose_info.freightSpace" placeholder="请选择">
<el-option <el-option
...@@ -79,7 +83,7 @@ ...@@ -79,7 +83,7 @@
</el-option> </el-option>
</el-select> </el-select>
</div> </div>
<div class="city" style="width:250px;display:inline-block"> <div class="city" style="width:250px;display:inline-block;margin:0 10px">
<span>航空公司 | </span> <span>航空公司 | </span>
<el-select style="width:180px" filterable v-model="choose_info.airLineID" placeholder="请选择"> <el-select style="width:180px" filterable v-model="choose_info.airLineID" placeholder="请选择">
<el-option :value=0 label="不限"></el-option> <el-option :value=0 label="不限"></el-option>
...@@ -87,6 +91,7 @@ ...@@ -87,6 +91,7 @@
:key="item.AirLineId"></el-option> :key="item.AirLineId"></el-option>
</el-select> </el-select>
</div> </div>
<el-button @click="Search" size="small">搜索</el-button>
</div> </div>
</el-col> </el-col>
</el-row> </el-row>
...@@ -118,6 +123,7 @@ export default { ...@@ -118,6 +123,7 @@ export default {
cr:0, cr:0,
child:0, child:0,
ye:0, ye:0,
lr:0,
}, },
startweek:"", startweek:"",
...@@ -135,6 +141,7 @@ export default { ...@@ -135,6 +141,7 @@ export default {
input10:"", input10:"",
value:"", value:"",
airlineList:[], airlineList:[],
cfd:[],
} }
}, },
...@@ -143,9 +150,22 @@ export default { ...@@ -143,9 +150,22 @@ export default {
}, },
created(){ created(){
this.initAirlines(); this.initAirlines();
this.CFD();
this.$emit("ChooseInfo",this.choose_info) this.$emit("ChooseInfo",this.choose_info)
}, },
methods: { methods: {
CFD(){
this.apipost(
"dict_post_Destination_GetCityList", {},
res => {
if (res.data.resultCode == 1) {
this.cfd=res.data.data;
}
},
err => {
}
);
},
// 航空公司下拉框 // 航空公司下拉框
initAirlines() { initAirlines() {
this.apipost( this.apipost(
...@@ -199,13 +219,13 @@ export default { ...@@ -199,13 +219,13 @@ export default {
handleChange(){}, handleChange(){},
Search(){ Search(){
this.choose_info.airTicketScatterNum=this.choose_info.cr+this.choose_info.child+this.choose_info.ye; this.choose_info.airTicketScatterNum=this.choose_info.cr+this.choose_info.child+this.choose_info.ye;
console.log(this.choose_info,'choose_info');
this.$emit("ChooseInfo",this.choose_info) this.$emit("ChooseInfo",this.choose_info)
sessionStorage.setItem("ChooseInfo",JSON.stringify(this.choose_info));
this.$router.push({ this.$router.push({
path: 'TicketList', path: 'TicketList'
query:this.choose_info
}) })
} }
} }
......
<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">
<div>
<p style="font-size:16px;color:#333333">{{getlistSigel.flightDate}}
{{getlistSigel.goStartAirPlace}} - {{getlistSigel.goEndAirPlace}}
</p>
<p style="font-size:12px;color:#666666">
<img style="width:15px;height:15px;color:#000000" src="" alt="">
<span>{{getlistSigel.airlineName}}</span>
<span>{{getlistSigel.alCode}} </span>
</p>
<div class="xcxq">
<div class="bz"></div>
<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;">
<div>
<p style="font-size:16px;color:#333333">{{getlistSigel.backDate}}
{{getlistSigel.backStartAirPlace}} - {{getlistSigel.backEndAirPlace}}
</p>
<p style="font-size:12px;color:#666666">
<img style="width:15px;height:15px;color:#000000" src="" alt="">
<span>{{getlistSigel.airlineName}}</span>
<span>{{getlistSigel.alCode}} </span>
</p>
<div class="xcxq">
<div class="bz"></div>
<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>订单金额
<span class="yu">{{getlistSigel.synum}}</span>
</p>
<p>
<span>票价</span>
<span style="float:right;color:#FF680B;font-size:20px">{{getlistSigel.b2BPrice}}</span>
</p>
<P>
成人票:
<span style="float:right;">{{personNum.manNum}}</span>
</P>
</el-col>
</div>
<!-- 填写订单 -->
<div class="tx_order" style="margin-top:20px">
<div class="tx">
<div style="margin-top:8px">
乘机人信息
</div>
<div v-show="!personnums" class="person_num">
<span>成人</span>
<span>{{personNum.manNum}}</span>
<span>儿童</span>
<span>{{personNum.chirdNum}}</span>
<span>婴儿</span>
<span>{{personNum.babyNum}}</span>
<span>老人</span>
<span>{{personNum.oldPeopleNum}}</span>
<el-button @click="personnums=true" size="mini" style="background:#EE4454;color:#fff;">修改人数</el-button>
</div>
<div v-show="personnums">
<div class="number" style="margin-left:15px">
<span>成人 | </span>
<el-input-number size="mini" v-model="personNum.manNum" :min="0" :max="10" label="描述文字"></el-input-number>
</div>
<div class="number">
<span>儿童 | </span>
<el-input-number size="mini" v-model="personNum.chirdNum" :min="0" :max="10" label="描述文字"></el-input-number>
</div>
<div class="number">
<span>婴儿 | </span>
<el-input-number size="mini" v-model="personNum.babyNum" :min="0" :max="10" label="描述文字"></el-input-number>
</div>
<div class="number">
<span>老人 | </span>
<el-input-number size="mini" v-model="personNum.oldPeopleNum" :min="0" :max="10" label="描述文字"></el-input-number>
</div>
<el-button @click="ConfirmedPersonNum" size="mini" style="background:#EE4454;color:#fff">确认</el-button>
<el-button size="mini" style="background:#EE4454;color:#fff">取消</el-button>
</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: 'date', required: true, message: '请选择日期', trigger: 'change' }]">
<el-date-picker size="mini" 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="男" value="1"></el-radio>
<el-radio label="女" 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 label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-form-item>
<el-form-item label="手机号">
<el-input size="mini" v-model="item.mobilePhone"></el-input>
</el-form-item>
</el-col>
</div>
</el-form>
</div>
<!-- 联系人 -->
<div v-show="!personnums" class="lxr_info" style="margin-top:20px;background:#fff;">
<p class="lxr">联系人信息</p>
<el-form style="width:90%" :model="ruleForm" ref="ruleForm" label-width="100px" class="demo-ruleForm">
<el-form-item label="联系人" prop="name" :rules="{ required: true, message: '请输入姓名', trigger: 'blur' }">
<el-input size="mini" v-model="ruleForm.name"></el-input>
</el-form-item>
<el-form-item label="手机号" prop="name" :rules="{ required: true, message: '请输入护照信息', trigger: 'blur' }">
<el-input size="mini" v-model="ruleForm.name"></el-input>
</el-form-item>
<el-form-item label="邮箱" prop="name" :rules="{ required: true, message: '请输入出生日期', trigger: 'blur' }">
<el-input size="mini" v-model="ruleForm.name"></el-input>
</el-form-item>
<el-form-item style="width:99%" label="备注" prop="name">
<el-input size="mini" v-model="ruleForm.name"></el-input>
</el-form-item>
</el-form>
</div>
</el-col>
</el-row>
<!-- 提交订单 -->
<div class='tjorder' v-show="!personnums">
<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;">¥480</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>
export default {
components: {
},
data () {
return {
personnums:true,
personNum:{
manNum:0,
chirdNum:0,
babyNum:0,
oldPeopleNum:0,
guestList:[],
},
AirTicketId:this.$route.params.id,
ruleForm:{},
getlistSigel:{},
flightList:[]
}
},
mounted () {
this.GetDes();
},
methods: {
//获取订单详情
GetDes(){
this.apiJavaPost('/api/dmc/airticket/getB2BAirticketInfo',{AirTicketId:this.AirTicketId},res=>{
console.log("机票订单详情",res)
this.getlistSigel=res.data.data;
this.getlistSigel.synum=this.getlistSigel.airTicketScatterNum-this.getlistSigel.useScatterNum;
this.flightList=this.getlistSigel.flightList;
},null)
},
// 确认订单人数
ConfirmedPersonNum(){
if(this.personNum.manNum==0 && this.personNum.chirdNum==0 && this.personNum.oldPeopleNum==0){
this.$message.error("乘机人数至少1人!")
return;
}
this.personNum.guestNum=this.personNum.manNum+this.personNum.chirdNum+this.personNum.oldPeopleNum+this.personNum.babyNum;
this.personNum.seatNum=this.personNum.manNum+this.personNum.chirdNum+this.personNum.oldPeopleNum;
this.personNum.guestList=[];
// 成年
for(let i=0;i<this.personNum.manNum;i++){
let info={
ageType:'1',//1 成年 2小孩 3婴儿 4老人
airOrderId:'',//机票订单id
airProductId:'',//机票产品id
birthday:'',//出生日期
eName:'',
mobilePhone:'',
name:"",
nationality:'',
passportNo:"",//护照号码
sex:'',
}
this.personNum.guestList.push(info);
}
console.log(this.personNum.guestList,'guestList');
// 小孩
for(let i=0;i<this.personNum.chirdNum;i++){
let info={
ageType:'2',//1 成年 2小孩 3婴儿 4老人
airOrderId:'',//机票订单id
airProductId:'',//机票产品id
birthday:'',//出生日期
eName:'',
mobilePhone:'',
name:"",
nationality:'',
passportNo:"",//护照号码
sex:'',
}
this.personNum.guestList.push(info);
}
// 3婴儿
for(let i=0;i<this.personNum.babyNum;i++){
let info={
ageType:'3',//1 成年 2小孩 3婴儿 4老人
airOrderId:'',//机票订单id
airProductId:'',//机票产品id
birthday:'',//出生日期
eName:'',
mobilePhone:'',
name:"",
nationality:'',
passportNo:"",//护照号码
sex:'',
}
this.personNum.guestList.push(info);
}
// 4老人
for(let i=0;i<this.personNum.oldPeopleNum;i++){
let info={
ageType:'4',//1 成年 2小孩 3婴儿 4老人
airOrderId:'',//机票订单id
airProductId:'',//机票产品id
birthday:'',//出生日期
eName:'',
mobilePhone:'',
name:"",
nationality:'',
passportNo:"",//护照号码
sex:'',
}
this.personNum.guestList.push(info);
}
// console.log(num);
console.log(this.personNum);
this.personnums=false;
},
PlaceOrder(formName){
console.log(this.personNum);
},
submitForm(addMsg) { //提交创建、修改表单
this.$refs[addMsg].validate((valid) => {
if(valid) {
//this.addNotice(_type)
} else {
return false;
}
});
},
}
}
</script>
<style>
.w31 p{
margin:8px 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;
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:30px;
height:30px;
line-height: 30px;
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: 4px 0;
}
.xcxq{
position: relative;
background:rgba(245,245,245,1);
overflow: auto;
font-size: 12px;
}
.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;
}
/* .ticket_list .left{
width:40%;
padding-right: 15px;
border-right:1px dashed #AAAAAA;
box-sizing: border-box;
}
.ticket_list .right{
box-sizing: border-box;
width:59%;
padding:0 40px;
} */
.baner_top{
width:100%;
background: #fff;
height: 50px;
box-shadow:0px 1px 0px 0px rgba(238,238,238,1);
}
</style>
...@@ -175,7 +175,7 @@ export default { ...@@ -175,7 +175,7 @@ export default {
methods: { methods: {
JXYH(){ JXYH(){
this.apiJavaPost('/api/dmc/airticket/getB2BAirticketList',this.Youhui,res=>{ this.apiJavaPost('/api/dmc/airticket/getB2BAirticketList',this.Youhui,res=>{
console.log("Youhui",res) // console.log("Youhui",res)
this.yhList=res.data.data.pageData; this.yhList=res.data.data.pageData;
},null) },null)
}, },
...@@ -188,6 +188,8 @@ export default { ...@@ -188,6 +188,8 @@ export default {
console.log("ChooseInfo",val) console.log("ChooseInfo",val)
if(val){ if(val){
this.Choose_Info=val; this.Choose_Info=val;
this.Choose_Info.airTicketScatterNum=this.Choose_Info.cr+this.Choose_Info.lr+this.Choose_Info.child;
} }
}, },
loadSize(){ loadSize(){
......
...@@ -16,10 +16,10 @@ ...@@ -16,10 +16,10 @@
<el-select style="width:80%" v-model="choose_info.departure_city" filterable placeholder="请选择"> <el-select style="width:80%" v-model="choose_info.departure_city" filterable 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 cfd"
:key="item.id" :key="item.ID"
:label="item.title" :label="item.Name"
:value="item.id"> :value="item.ID">
</el-option> </el-option>
</el-select> </el-select>
</div> </div>
...@@ -28,10 +28,10 @@ ...@@ -28,10 +28,10 @@
<el-select style="width:80%" v-model="choose_info.arrival_city" filterable placeholder="请选择"> <el-select style="width:80%" v-model="choose_info.arrival_city" filterable 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 cfd"
:key="item.id" :key="item.ID"
:label="item.title" :label="item.Name"
:value="item.id"> :value="item.ID">
</el-option> </el-option>
</el-select> </el-select>
</div> </div>
...@@ -70,10 +70,14 @@ ...@@ -70,10 +70,14 @@
<span>婴儿 | </span> <span>婴儿 | </span>
<el-input-number size="mini" v-model="choose_info.ye" @change="handleChange" :min="0" :max="10" label="描述文字"></el-input-number> <el-input-number size="mini" v-model="choose_info.ye" @change="handleChange" :min="0" :max="10" label="描述文字"></el-input-number>
</div> </div>
<el-button @click="Search" size="small">搜索</el-button> <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> <div>
<div class="city" style="width:200px;display:inline-block;margin-right:10px"> <div class="city" style="width:200px;display:inline-block;">
<span>舱位选择 | </span> <span>舱位选择 | </span>
<el-select v-model="choose_info.freightSpace" placeholder="请选择"> <el-select v-model="choose_info.freightSpace" placeholder="请选择">
<el-option :value="zero" label="不限"></el-option> <el-option :value="zero" label="不限"></el-option>
...@@ -85,7 +89,7 @@ ...@@ -85,7 +89,7 @@
</el-option> </el-option>
</el-select> </el-select>
</div> </div>
<div class="city" style="width:250px;display:inline-block"> <div class="city" style="width:250px;display:inline-block;margin:0 10px">
<span>航空公司 | </span> <span>航空公司 | </span>
<el-select style="width:180px" filterable v-model="choose_info.airLineID" placeholder="请选择"> <el-select style="width:180px" filterable v-model="choose_info.airLineID" placeholder="请选择">
<el-option :value="zero" label="不限"></el-option> <el-option :value="zero" label="不限"></el-option>
...@@ -93,6 +97,7 @@ ...@@ -93,6 +97,7 @@
:key="item.AirLineId"></el-option> :key="item.AirLineId"></el-option>
</el-select> </el-select>
</div> </div>
<el-button @click="Search" size="small">搜索</el-button>
</div> </div>
</el-col> </el-col>
</el-row> </el-row>
...@@ -126,7 +131,7 @@ ...@@ -126,7 +131,7 @@
</div> </div>
<div style="margin-top:22px"> <div style="margin-top:22px">
<v-calendar ref="children" v-for="(item,index) in classArray" :key="index" :dateData= "item" :month="tomonth" :day = "item[0].dateStr" @ChildrenSelect="ListenChildren"> <v-calendar ref="child" v-for="(item,index) in classArray" :key="index" :dateData= "item" :month="tomonth" :day = "item[0].dateStr" @ChildrenSelect="ListenChildren">
</v-calendar> </v-calendar>
</div> </div>
...@@ -256,8 +261,14 @@ ...@@ -256,8 +261,14 @@
<span v-if="item.freightSpace==3">经济舱</span> <span v-if="item.freightSpace==3">经济舱</span>
</p> </p>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="4">
<el-button style="color:#FF6633;border:1px solid #FF6633;margin-top:10px" size="small">购买</el-button> <p style="font-size:12px;margin:10px 0;">剩余机位</p>
<p>{{item.synum}}</p>
</el-col>
<el-col :span="4">
<el-button @click="Purchase(item)" style="color:#FF6633;border:1px solid #FF6633;margin-top:10px" size="small">
购买
</el-button>
</el-col> </el-col>
</el-col> </el-col>
</el-row> </el-row>
...@@ -284,12 +295,14 @@ export default { ...@@ -284,12 +295,14 @@ export default {
}, },
data () { data () {
return { return {
zero:0 || "0", zero:0,
classArray:[], classArray:[],
Choose_Info:{}, Choose_Info:{},
today:moment().format("YYYY-MM-DD HH:mm:ss"), today:moment().format("YYYY-MM-DD HH:mm:ss"),
datalist:[], datalist:[],
datainfo:{}, datainfo:{
qFlightDateStart:moment().format("YYYY-MM-DD HH:mm:ss")
},
dateList:[], dateList:[],
changeday:moment().format("YYYY-MM-DD HH:mm:ss"), changeday:moment().format("YYYY-MM-DD HH:mm:ss"),
other:false, other:false,
...@@ -312,13 +325,17 @@ export default { ...@@ -312,13 +325,17 @@ export default {
qFlightDateEnd:"", qFlightDateEnd:"",
flight_number:"", flight_number:"",
airLineID:0, airLineID:0,
ticketType:0, ticketType:2,
lineId:0, lineId:0,
isPayOrder:0, isPayOrder:0,
departure_city:0, departure_city:0,
arrival_city:0, arrival_city:0,
freightSpace:1, freightSpace:1,
airTicketScatterNum:0, airTicketScatterNum:0,
cr:0,
child:0,
ye:0,
lr:0,
}, },
startweek:"", startweek:"",
...@@ -336,38 +353,45 @@ export default { ...@@ -336,38 +353,45 @@ export default {
input10:"", input10:"",
value:"", value:"",
airlineList:[], airlineList:[],
cfd:[],
} }
}, },
mounted () { mounted () {
}, },
created(){ created(){
// this.getList() this.choose_info=JSON.parse(sessionStorage.getItem("ChooseInfo"));
// this.Datelist();
console.log("this.params_str",this.params_str)
if(this.params_str){
this.choose_info=this.params_str;
}
if(this.params_str.qFlightDateStart){
this.datainfo.qFlightDateStart=this.params_str.qFlightDateStart+" 00:00:00"
}else{
this.datainfo.qFlightDateStart=moment().format('YYYY-MM-DD HH:mm:ss');
}
this.getList(); this.getList();
this.Datelist(); this.Datelist();
this.OtherDate(); this.OtherDate();
this.initAirlines(); this.initAirlines();
this.CFD(); this.CFD();
}, },
methods: { methods: {
Purchase(item){
let isLogin=this.$store.state.isLogin;
if(isLogin==0){
this.$message.error("请先登录!")
this.$router.push({
path: '/login'
})
}else{
this.$router.push({
path: `/FillItinerary/${item.id}`
})
}
},
// 出发地 // 出发地
CFD(){ CFD(){
this.apipost( this.apipost(
"dict_post_Destination_GetCityList", {}, "dict_post_Destination_GetCityList", {},
res => { res => {
console.log(res)
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
this.cfd=res.data.data;
} }
}, },
err => { err => {
...@@ -428,7 +452,7 @@ export default { ...@@ -428,7 +452,7 @@ export default {
Search(){ Search(){
this.getList(); this.getList();
this.Datelist(); this.Datelist();
sessionStorage.setItem("ChooseInfo",JSON.stringify(this.choose_info));
}, },
...@@ -454,14 +478,16 @@ export default { ...@@ -454,14 +478,16 @@ export default {
this.other_date.flithtMonthDate=this.tomonth; this.other_date.flithtMonthDate=this.tomonth;
} }
this.OtherDate(); this.OtherDate();
// this.$refs.children.getYearMonthDay(); console.log(this.$refs.child)
this.$refs.child[0].getYearMonthDay();
}, },
// 其他日期 // 其他日期
OtherDate(){ OtherDate(){
this.apiJavaPost('/api/dmc/airticket/getB2BAirticketForMonthMinPrice',this.other_date,res=>{ this.apiJavaPost('/api/dmc/airticket/getB2BAirticketForMonthMinPrice',this.other_date,res=>{
let list=res.data.data; let list=res.data.data;
this.creatCalendar(list) this.creatCalendar(list);
// this.$refs.children.getYearMonthDay();
},null) },null)
}, },
AfterDate(){ AfterDate(){
...@@ -477,7 +503,7 @@ export default { ...@@ -477,7 +503,7 @@ export default {
}, },
Datelist(){ Datelist(){
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.dateList=res.data.data; this.dateList=res.data.data;
},null) },null)
...@@ -485,8 +511,14 @@ export default { ...@@ -485,8 +511,14 @@ export default {
getList(){ getList(){
this.apiJavaPost('/api/dmc/airticket/getB2BAirticketList',this.choose_info,res=>{ this.apiJavaPost('/api/dmc/airticket/getB2BAirticketList',this.choose_info,res=>{
// console.log("机票列表",res) console.log("机票列表",res)
this.datalist=res.data.data.pageData; this.datalist=res.data.data.pageData;
if(this.datalist.length>0){
this.datalist.forEach(item=>{
item.synum=item.airTicketScatterNum-item.useScatterNum;
})
}
},null) },null)
}, },
creatCalendar(list){ // 创建日历 creatCalendar(list){ // 创建日历
......
...@@ -48,7 +48,9 @@ ...@@ -48,7 +48,9 @@
<!-- <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"><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="5"><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="2"><a href="javascript:void(0);">酒店</a></el-menu-item> <el-menu-item index="2"><a href="javascript:void(0);">酒店</a></el-menu-item>
<el-menu-item index="4"><a href="javascript:void(0);">餐厅</a></el-menu-item> <el-menu-item index="4"><a href="javascript:void(0);">餐厅</a></el-menu-item>
......
...@@ -69,6 +69,7 @@ ...@@ -69,6 +69,7 @@
</div> </div>
</template> </template>
<script> <script>
import moment from 'moment'
import bus from '../../plugins/event-bus' import bus from '../../plugins/event-bus'
export default { export default {
props:{ props:{
...@@ -88,7 +89,7 @@ export default { ...@@ -88,7 +89,7 @@ export default {
},mounted(){ },mounted(){
},created(){ },created(){
this.getYearMonthDay(); // this.getYearMonthDay();
},methods:{ },methods:{
selectDate(index){ selectDate(index){
if(this.$data.daysData[index].day == 0) { if(this.$data.daysData[index].day == 0) {
...@@ -110,9 +111,11 @@ export default { ...@@ -110,9 +111,11 @@ export default {
bus.$emit('chosen-tripdate', this.currentDay.substring(0,7) + '-' + clickDay) bus.$emit('chosen-tripdate', this.currentDay.substring(0,7) + '-' + clickDay)
}, },
getYearMonthDay(){ getYearMonthDay(){
// console.log("day",this.day); let day=moment(this.day).add(1, 'month').format('YYYY-MM-DD');
let currentYear = this.currentDay.substring(0,4); //当前年份 // let day=this.day;
let currentMonth = this.currentDay.substring(5,7); //当前月份 let currentYear = day.substring(0,4); //当前年份
let currentMonth =day.substring(5,7); //当前月份
// console.log("currentYear",currentYear)
// console.log("currentMonth",currentMonth) // console.log("currentMonth",currentMonth)
let date = new Date(); let date = new Date();
let strDate = date.getDate(); let strDate = date.getDate();
...@@ -136,9 +139,8 @@ export default { ...@@ -136,9 +139,8 @@ export default {
var dateObject = new Date(currentDay); var dateObject = new Date(currentDay);
var firstDay = dateObject.getDay();//得到每个月1号是周几 var firstDay = dateObject.getDay();//得到每个月1号是周几
for (var i in this.priceData) { for (var i in this.priceData) {
var price = this.priceData[i]; let price = this.priceData[i];
var dayIndex = price.dateStr.substring(price.dateStr.length-2,price.dateStr.length); var dayIndex = price.dateStr.substring(price.dateStr.length-2,price.dateStr.length);
// console.log(dayIndex)
var dayDict = daysData[Number(dayIndex)-1]; var dayDict = daysData[Number(dayIndex)-1];
dayDict.price = price.price; dayDict.price = price.price;
if(dayIndex<strDate&&strMonth==currentMonth){ if(dayIndex<strDate&&strMonth==currentMonth){
......
...@@ -138,6 +138,14 @@ export default new Router({ ...@@ -138,6 +138,14 @@ export default new Router({
meta: { meta: {
title: '机票列表' title: '机票列表'
} }
},
{
path: '/FillItinerary/:id',
name: 'FillItinerary',
component: resolve => require(['@/components/Ticket/FillItinerary'], resolve),
meta: {
title: '行程填写'
}
} }
] ]
} }
......
...@@ -68,7 +68,7 @@ export default { ...@@ -68,7 +68,7 @@ export default {
path='/heel' path='/heel'
} }
if(index=='3'){ if(index=='3'){
path='/TicketList' path='/TicketHome'
} }
if (path != "") { if (path != "") {
this.$router.push({ path }); this.$router.push({ path });
......
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