Commit 41149810 authored by huangyuanyuan's avatar huangyuanyuan

机票订单

parent 86abd42d
This source diff could not be displayed because it is too large. You can view the blob instead.
...@@ -22,7 +22,7 @@ ...@@ -22,7 +22,7 @@
"vuex": "^3.0.1" "vuex": "^3.0.1"
}, },
"devDependencies": { "devDependencies": {
"@vue/cli-plugin-babel": "^3.0.4", "@vue/cli-plugin-babel": "^3.4.1",
"@vue/cli-plugin-pwa": "^3.0.4", "@vue/cli-plugin-pwa": "^3.0.4",
"@vue/cli-service": "^3.0.4", "@vue/cli-service": "^3.0.4",
"stylus": "^0.54.5", "stylus": "^0.54.5",
......
<template> <template>
<div class="AirlineTicketOrder"> <div class="AirlineTicketOrder">
<el-row> <el-form class="form" ref="form" :model="form" label-width="100px">
<el-col :span="20" :offset="2">
<el-form ref="form" :model="form" label-width="100px"> <el-form-item label="订单号">
<el-input size="small" v-model="form.id" placeholder="请输入订单号"></el-input>
<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-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 value-format="yyyy-MM-dd" size="mini" type="date" placeholder="下单开始时间" v-model="form.startTime"></el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="结束时间 | "> <el-form-item label="开始时间">
<el-date-picker value-format="yyyy-MM-dd" size="mini" type="date" placeholder="下单开始时间" v-model="form.endTime"></el-date-picker> <el-date-picker size="small"
v-model="form.time"
value-format="yyyy-MM-dd"
type="daterange"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期">
</el-date-picker>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" size="mini">查询</el-button> <el-button @click="List" style="background:#EE4454;color:#fff" size="mini">查询</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-row>
<el-col :span="20" :offset="2">
<div class="changestatus">
<span :class="{'span_active':form.status==0}" @click="ChangeStatus(0)">全部订单</span>
<span :class="{'span_active':form.status==3}" @click="ChangeStatus(3)">待付款</span>
<span :class="{'span_active':form.status==1}" @click="ChangeStatus(1)">正常</span>
<span :class="{'span_active':form.status==2}" @click="ChangeStatus(2)">取消</span>
</div>
<el-table <el-table :header-cell-style="getRowClass"
v-loading="loading" v-loading="loading"
:data="tableData" :data="tableData"
stripe stripe
style="width: 100%"> style="width: 100%;box-sizing:border-box">
<el-table-column <el-table-column
prop="id" prop="id"
label="订单ID"> label="订单ID">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="contactName" label="机票信息">
label="联系人姓名"> <template slot-scope="scope">
<p>
<span v-if="scope.row.airModel.ticketType==2" class="ticket_num"></span>
<span>{{scope.row.airModel.goStartCityName}}-{{scope.row.airModel.goEndCityName}}</span>
<!-- -->
</p>
<p v-if="scope.row.airModel.ticketType==2">
<span class="ticket_num"></span>
<span>{{scope.row.airModel.backStartCityName}}-{{scope.row.airModel.backEndCityName}}</span>
<!-- -->
</p>
</template>
</el-table-column>
<el-table-column
label="旅客">
<template slot-scope="scope">
<el-tooltip class="item" effect="dark" placement="bottom-start">
<span slot="content" v-for="(guest,index) in scope.row.guestList" :key="guest.name">{{guest.name}}<span v-if="index<scope.row.guestList.length-1"></span></span>
<p>
<span v-for="(guest,index) in scope.row.guestList" :key="guest.name" >
<span v-if="index<3">{{guest.name}}<span v-if="index<scope.row.guestList.length-1"></span> </span></span>
<span v-if="scope.row.guestList.length>2"><span style="text-decoration:underline">{{scope.row.guestList.length}}</span></span>
</p>
</el-tooltip>
</template>
</el-table-column>
<el-table-column
label="行程有效期">
<template slot-scope="scope">
<p>
{{scope.row.airModel.goFlightTime}} {{scope.row.airModel.goStartHouseTime}}
</p>
</template>
</el-table-column>
<el-table-column
prop="preferPrice"
label="实付金额">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="contactMobile" prop="refund"
label="联系人电话"> label="退款金额">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="status" label="状态">
label="订单状态"> <template slot-scope="scope">
<p style="cursor:pointer">
<span v-if="scope.row.status==2">取消</span>
<span style="color:#EE4454" v-if="scope.row.status==3">待付款</span>
<span v-if="scope.row.status==1">正常</span>
</p>
<p @click="OrderDes(scope.row)" style="color:#DDDDDD;cursor:pointer">订单详情</p>
</template>
</el-table-column> </el-table-column>
<el-table-column label="操作"> <el-table-column label="操作">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button v-show="scope.row.status==3" <!-- <el-button v-show="scope.row.status==3"
size="mini" size="mini"
type="primary" type="primary"
@click="handleEdit(scope.$index, scope.row)">修改订单</el-button> @click="handleEdit(scope.$index, scope.row)">修改订单</el-button> -->
<el-button v-show="scope.row.status==3" <el-button v-show="scope.row.status==3"
size="mini" size="mini" style="border:1px solid #EE4454;color:#EE4454"
type="danger"
@click="handlePay(scope.$index, scope.row)">去付款</el-button> @click="handlePay(scope.$index, scope.row)">去付款</el-button>
<el-button v-show="scope.row.status==1 && scope.row.refundStatus==1"
size="mini" @click="TuiKuan(scope.$index, scope.row)" type="primary">退款</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
...@@ -89,6 +133,7 @@ export default { ...@@ -89,6 +133,7 @@ export default {
data () { data () {
return { return {
form:{ form:{
id:'',
status:0, status:0,
startTime:'', startTime:'',
endTime:'', endTime:'',
...@@ -108,6 +153,43 @@ export default { ...@@ -108,6 +153,43 @@ export default {
this.List(); this.List();
}, },
methods: { methods: {
// 退款
TuiKuan(index,row){
this.$confirm('是否确认退款?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.apiJavaPost('/api/dmc/airticket/SetB2BAirtickOrderApplyForRefund',{AirOrderId:row.id},res=>{
// console.log(res);
if(res.data.resultCode==1){
this.$message.success("请求成功!")
}
},null)
})
},
OrderDes(item){
this.$router.push({
path: `/OrderDetails/${item.id}`
})
},
getRowClass({ row, column, rowIndex, columnIndex }) {
if (rowIndex == 0) {
return 'background:#dddddd'
} else {
return ''
}
},
ChangeStatus(num){
this.form.status=num;
this.List();
},
handlePay(index,row){ handlePay(index,row){
// console.log("row",row) // console.log("row",row)
this.$router.push({ this.$router.push({
...@@ -126,6 +208,11 @@ export default { ...@@ -126,6 +208,11 @@ export default {
}, },
List(){ List(){
this.loading=true; this.loading=true;
// console.log(this.form)
if(this.form.time){
this.form.startTime=this.form.time[0];
this.form.endTime=this.form.time[1];
}
this.apiJavaPost('/api/dmc/airticket/GetB2BAirtickOrderPageList',this.form,res=>{ this.apiJavaPost('/api/dmc/airticket/GetB2BAirtickOrderPageList',this.form,res=>{
// console.log(res); // console.log(res);
this.loading=false; this.loading=false;
...@@ -142,6 +229,42 @@ export default { ...@@ -142,6 +229,42 @@ export default {
</script> </script>
<style> <style>
.AirlineTicketOrder .el-table__header{
background: #DDDDDD;
}
.AirlineTicketOrder .ticket_num{
padding:6px 8px;
border-radius: 50%;
background: #EE4454;
color: #fff;
margin-right:6px;
}
.AirlineTicketOrder .changestatus{
padding: 20px 5px;
box-sizing: border-box;
}
.AirlineTicketOrder .changestatus .span_active{
border:1px solid #EE4454;
color: #EE4454;
}
.AirlineTicketOrder .changestatus span{
display: inline-block;
width:97px;
height:36px;
line-height: 36px;
text-align: center;
margin:0 6px;
background:rgba(255,255,255,1);
border:1px solid #DDDDDD;
cursor: pointer;
}
.AirlineTicketOrder .form{
margin-bottom: 10px;
padding:15px 8%;
box-shadow:0px 4px 8px 0px rgba(107,107,107,0.18);
background: #fff;
}
.AirlineTicketOrder .el-pagination .btn-next{ .AirlineTicketOrder .el-pagination .btn-next{
height:28px; height:28px;
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
<el-col :span="5"> <el-col :span="5">
<div class="city" style="margin-bottom:15px"> <div class="city" style="margin-bottom:15px">
<span>出发地 | </span> <span>出发地 | </span>
<el-select style="width:75%" v-model="choose_info.departure_city" filterable placeholder="请选择"> <el-select style="width:70%" 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 cfd" v-for="item in cfd"
...@@ -21,7 +21,7 @@ ...@@ -21,7 +21,7 @@
</div> </div>
<div class="city"> <div class="city">
<span>目的地 | </span> <span>目的地 | </span>
<el-select style="width:75%" v-model="choose_info.arrival_city" filterable placeholder="请选择"> <el-select style="width:70%" 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 cfd" v-for="item in cfd"
......
...@@ -139,6 +139,13 @@ ...@@ -139,6 +139,13 @@
<el-button @click="ConfirmedPersonNum" size="mini" style="background:#EE4454;color:#fff">确认</el-button> <el-button @click="ConfirmedPersonNum" size="mini" style="background:#EE4454;color:#fff">确认</el-button>
<el-button size="mini" style="background:#EE4454;color:#fff">取消</el-button> <el-button size="mini" style="background:#EE4454;color:#fff">取消</el-button>
</div> </div>
<div style="position:absolute;right:5px">
<span>专员:</span>
<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-select>
</div>
</div> </div>
<el-form :model="personNum" ref="personNum" label-width="100px" class="demo-ruleForm"> <el-form :model="personNum" ref="personNum" label-width="100px" class="demo-ruleForm">
...@@ -249,11 +256,13 @@ export default { ...@@ -249,11 +256,13 @@ export default {
userInfo:this.getLocalStorage(), userInfo:this.getLocalStorage(),
customer:{}, customer:{},
countroylist:[], countroylist:[],
SellInfoList:[],
} }
}, },
mounted () { mounted () {
this.GetDes(); this.GetDes();
this.GetCountroy() this.GetCountroy()
this.SellInfo();
}, },
methods: { methods: {
// 国籍 // 国籍
...@@ -273,7 +282,7 @@ export default { ...@@ -273,7 +282,7 @@ export default {
//获取订单详情 //获取订单详情
GetDes(){ GetDes(){
this.apiJavaPost('/api/dmc/airticket/getB2BAirticketInfo',{AirTicketId:this.AirTicketId},res=>{ this.apiJavaPost('/api/dmc/airticket/getB2BAirticketInfo',{AirTicketId:this.AirTicketId},res=>{
console.log("订单",res) // console.log("订单",res)
this.getlistSigel=res.data.data; this.getlistSigel=res.data.data;
this.getlistSigel.synum=this.getlistSigel.airTicketScatterNum-this.getlistSigel.useScatterNum; this.getlistSigel.synum=this.getlistSigel.airTicketScatterNum-this.getlistSigel.useScatterNum;
...@@ -398,6 +407,22 @@ export default { ...@@ -398,6 +407,22 @@ export default {
}); });
}, },
// 服务专员
SellInfo(){
this.apipost(
"sell_get_GetCustomerToSellInfo", {},
res => {
console.log(res)
if (res.data.resultCode == 1) {
this.SellInfoList = res.data.data;
this.personNum.enterID=this.SellInfoList[0].EmployeeId;
}
},
err => {
}
);
},
} }
} }
...@@ -561,6 +586,7 @@ font-size: 14px; ...@@ -561,6 +586,7 @@ font-size: 14px;
display: flex; display: flex;
justify-content: flex-start; justify-content: flex-start;
font-size: 14px; font-size: 14px;
position: relative;
} }
.ticket_list .time{ .ticket_list .time{
color: #333333; color: #333333;
......
This diff is collapsed.
...@@ -226,11 +226,9 @@ export default { ...@@ -226,11 +226,9 @@ export default {
clearInterval(this.timer); clearInterval(this.timer);
let numall =parseInt(this.Commoditydetails.timeMillisecond / 1000); let numall =parseInt(this.Commoditydetails.timeMillisecond / 1000);
// let numall =10;
this.timer = setInterval(() => { this.timer = setInterval(() => {
numall--; numall--;
if (numall <= 0) { if (numall <= 0) {
console.log(111);
clearInterval(this.timer); clearInterval(this.timer);
this.order_exit='2'; this.order_exit='2';
this.order_exit_info="订单支付超时,请重新下单!" this.order_exit_info="订单支付超时,请重新下单!"
......
...@@ -226,7 +226,7 @@ export default { ...@@ -226,7 +226,7 @@ export default {
.list_content p{ .list_content p{
padding:4px 0; padding:4px 0;
} }
p{ .list_content p{
margin:0; margin:0;
} }
.list_content .time{ .list_content .time{
...@@ -350,7 +350,7 @@ p{ ...@@ -350,7 +350,7 @@ p{
height:175px; height:175px;
padding:10px; padding:10px;
bottom: -10px; bottom: -10px;
left: 16%; left: 18%;
border-radius: 4px; border-radius: 4px;
box-sizing: border-box; box-sizing: border-box;
} }
......
...@@ -77,7 +77,7 @@ ...@@ -77,7 +77,7 @@
<div> <div>
<div class="city" style="width:220px;display:inline-block;"> <div class="city" style="width:220px;display:inline-block;">
<span>舱位选择 | </span> <span>舱位选择 | </span>
<el-select style="width:68%" v-model="choose_info.freightSpace" placeholder="请选择"> <el-select style="width:65%" v-model="choose_info.freightSpace" 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"
...@@ -802,9 +802,14 @@ li{ ...@@ -802,9 +802,14 @@ li{
border-right:1px solid #dddddd; border-right:1px solid #dddddd;
} }
.li p{ .li p{
padding: 6px 0; margin:0;
padding:0;
} }
.second p{
margin:0;
padding:0;
}
.date_list>div{ .date_list>div{
text-align: center; text-align: center;
...@@ -846,10 +851,6 @@ li{ ...@@ -846,10 +851,6 @@ li{
font-weight:400; font-weight:400;
color:rgba(51,51,51,1); color:rgba(51,51,51,1);
} }
p{
margin: 0;
padding: 0;
}
.list{ .list{
padding:10px 6px; padding:10px 6px;
box-sizing: border-box; box-sizing: border-box;
......
...@@ -13,8 +13,9 @@ export default { ...@@ -13,8 +13,9 @@ 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.214:8082"//主域名 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";
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"
......
...@@ -133,7 +133,16 @@ export default new Router({ ...@@ -133,7 +133,16 @@ export default new Router({
meta: { meta: {
title: "发票信息" title: "发票信息"
} }
},
{
path: "/AirlineTicketOrder",
name: "AirlineTicketOrder",
component: resolve =>
require(["@/components/Ticket/AirlineTicketOrder"], resolve),
meta: {
title: "机票订单"
} }
},
] ]
}, },
...@@ -173,15 +182,7 @@ export default new Router({ ...@@ -173,15 +182,7 @@ export default new Router({
title: "支付" title: "支付"
} }
}, },
{
path: "/AirlineTicketOrder",
name: "AirlineTicketOrder",
component: resolve =>
require(["@/components/Ticket/AirlineTicketOrder"], resolve),
meta: {
title: "机票订单"
}
},
{ {
path: "/EditTicketOrder/:id", path: "/EditTicketOrder/:id",
name: "EditTicketOrder", name: "EditTicketOrder",
...@@ -190,7 +191,17 @@ export default new Router({ ...@@ -190,7 +191,17 @@ export default new Router({
meta: { meta: {
title: "修改机票订单" title: "修改机票订单"
} }
},
{
path: "/OrderDetails/:id",
name: "OrderDetails",
component: resolve =>
require(["@/components/Ticket/OrderDetails"], 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