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 @@
"vuex": "^3.0.1"
},
"devDependencies": {
"@vue/cli-plugin-babel": "^3.0.4",
"@vue/cli-plugin-babel": "^3.4.1",
"@vue/cli-plugin-pwa": "^3.0.4",
"@vue/cli-service": "^3.0.4",
"stylus": "^0.54.5",
......
<template>
<div class="AirlineTicketOrder">
<el-row>
<el-col :span="20" :offset="2">
<el-form ref="form" :model="form" label-width="100px">
<el-form-item label="订单状态 | ">
<el-select v-model="form.status" filterable size="mini">
<el-option label="全部" :value=0></el-option>
<el-option label="正常" :value=1></el-option>
<el-option label="取消" :value=2></el-option>
<el-option label="待付款" :value=3></el-option>
</el-select>
</el-form-item>
<el-form-item label="订单号 | ">
<el-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 class="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>
<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-form-item label="开始时间">
<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-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>
<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"
:data="tableData"
stripe
style="width: 100%">
style="width: 100%;box-sizing:border-box">
<el-table-column
prop="id"
label="订单ID">
</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
prop="contactMobile"
label="联系人电话">
prop="refund"
label="退款金额">
</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 label="操作">
<template slot-scope="scope">
<el-button v-show="scope.row.status==3"
<!-- <el-button v-show="scope.row.status==3"
size="mini"
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"
size="mini"
type="danger"
size="mini" style="border:1px solid #EE4454;color:#EE4454"
@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>
</el-table-column>
</el-table>
......@@ -89,6 +133,7 @@ export default {
data () {
return {
form:{
id:'',
status:0,
startTime:'',
endTime:'',
......@@ -108,6 +153,43 @@ export default {
this.List();
},
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){
// console.log("row",row)
this.$router.push({
......@@ -126,6 +208,11 @@ export default {
},
List(){
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=>{
// console.log(res);
this.loading=false;
......@@ -142,6 +229,42 @@ export default {
</script>
<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{
height:28px;
......
......@@ -9,7 +9,7 @@
<el-col :span="5">
<div class="city" style="margin-bottom:15px">
<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
v-for="item in cfd"
......@@ -21,7 +21,7 @@
</div>
<div class="city">
<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
v-for="item in cfd"
......
......@@ -139,6 +139,13 @@
<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 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>
<el-form :model="personNum" ref="personNum" label-width="100px" class="demo-ruleForm">
......@@ -249,11 +256,13 @@ export default {
userInfo:this.getLocalStorage(),
customer:{},
countroylist:[],
SellInfoList:[],
}
},
mounted () {
this.GetDes();
this.GetCountroy()
this.SellInfo();
},
methods: {
// 国籍
......@@ -273,7 +282,7 @@ export default {
//获取订单详情
GetDes(){
this.apiJavaPost('/api/dmc/airticket/getB2BAirticketInfo',{AirTicketId:this.AirTicketId},res=>{
console.log("订单",res)
// console.log("订单",res)
this.getlistSigel=res.data.data;
this.getlistSigel.synum=this.getlistSigel.airTicketScatterNum-this.getlistSigel.useScatterNum;
......@@ -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;
display: flex;
justify-content: flex-start;
font-size: 14px;
position: relative;
}
.ticket_list .time{
color: #333333;
......
This diff is collapsed.
......@@ -226,11 +226,9 @@ export default {
clearInterval(this.timer);
let numall =parseInt(this.Commoditydetails.timeMillisecond / 1000);
// let numall =10;
this.timer = setInterval(() => {
numall--;
if (numall <= 0) {
console.log(111);
clearInterval(this.timer);
this.order_exit='2';
this.order_exit_info="订单支付超时,请重新下单!"
......
......@@ -226,7 +226,7 @@ export default {
.list_content p{
padding:4px 0;
}
p{
.list_content p{
margin:0;
}
.list_content .time{
......@@ -350,7 +350,7 @@ p{
height:175px;
padding:10px;
bottom: -10px;
left: 16%;
left: 18%;
border-radius: 4px;
box-sizing: border-box;
}
......
......@@ -77,7 +77,7 @@
<div>
<div class="city" style="width:220px;display:inline-block;">
<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
v-for="item in cawei"
......@@ -802,9 +802,14 @@ li{
border-right:1px solid #dddddd;
}
.li p{
padding: 6px 0;
margin:0;
padding:0;
}
.second p{
margin:0;
padding:0;
}
.date_list>div{
text-align: center;
......@@ -846,10 +851,6 @@ li{
font-weight:400;
color:rgba(51,51,51,1);
}
p{
margin: 0;
padding: 0;
}
.list{
padding:10px 6px;
box-sizing: border-box;
......
......@@ -13,8 +13,9 @@ export default {
Vue.prototype.domainManager = function() {
// var domainUrl = "http://test_reborn.oytour.com";//主域名
//var domainUrl = "http://reborn.oytour.com"; //主域名
// var domainUrl = "http://192.168.2.214:8082"//主域名
let domainUrl = "https://reborn.oytour.com"; //刘东主域名
var domainUrl = "http://192.168.2.16:8083"//主域名
// let domainUrl = "https://reborn.oytour.com"; //刘东主域名
// let domainUrl = "https://reborn.oytour.com";
if (this.isOnline()) {
if(window.location.host.indexOf('viitto.com')!=-1)
domainUrl = "http://test.viitto.com"
......
......@@ -133,7 +133,16 @@ export default new Router({
meta: {
title: "发票信息"
}
},
{
path: "/AirlineTicketOrder",
name: "AirlineTicketOrder",
component: resolve =>
require(["@/components/Ticket/AirlineTicketOrder"], resolve),
meta: {
title: "机票订单"
}
},
]
},
......@@ -173,15 +182,7 @@ export default new Router({
title: "支付"
}
},
{
path: "/AirlineTicketOrder",
name: "AirlineTicketOrder",
component: resolve =>
require(["@/components/Ticket/AirlineTicketOrder"], resolve),
meta: {
title: "机票订单"
}
},
{
path: "/EditTicketOrder/:id",
name: "EditTicketOrder",
......@@ -190,7 +191,17 @@ export default new Router({
meta: {
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