Commit 90ab3d22 authored by 华国豪's avatar 华国豪 🙄
parents ca3c2ec7 3e3504cb
......@@ -22,7 +22,15 @@
</li>
</ul>
</div>
<div style="width: 100%; overflow-x: auto;padding-bottom: 10px; " class="ownScrollbarStyle">
<div style="width: 100%; overflow-x: auto;padding-bottom: 10px; " class="HotelQueryList">
<div class="hotelProductManage2_tableBox">
<span style="color:#000000;background-color: #ff3737;padding:2px 4px;border-radius:5px" >红日</span>
<span style="color:#000000;background-color: #ff99cc;padding:2px 4px;border-radius:5px" >旺季</span>
<span style="color:#000000;background-color: #bcd6ee;padding:2px 4px;border-radius:5px" >平季</span>
<span style="color:#000000;background-color: #DDDDDD;padding:2px 4px;border-radius:5px">淡季</span>
<span style="color:#000000;background-color: #02F78E;padding:2px 4px;border-radius:5px" >特别价</span>
</div>
<table border="0" cellspacing="1" cellpadding="0" class="HouseTypeList" v-if="isShow">
<tr>
<th width="300">酒店名称</th>
......@@ -43,13 +51,20 @@
<div style="min-width:300px; text-align:left;padding-left:5px;">{{item.HotelName}}</div>
</td>
<td>
<div class="Hotel_kong" style="min-width:60px;">空房</div>
<div class="Hotel_kong">价格</div>
<div class="Hotel_kong" style="min-width:60px;">总/用/剩</div>
<div class="Hotel_kong">超定</div>
</td>
<td v-for="subItem in item.subList">
<div class="Hotel_kong Com_hoteldiv" :class="{'noKucun':subItem.Status==0}">{{subItem.RemainingInventory}}</div>
<td v-for="subItem in item.subList">
<div class="Hotel_kong Com_hoteldiv" :class="{'noKucun':subItem.Status==0,'classHong':subItem.InventoryType==1,
'classWang':subItem.InventoryType==2,'classPing':subItem.InventoryType==3,'classDan':subItem.InventoryType==4,'classTe':subItem.InventoryType==5}">
{{subItem.CostPrice}}</div>
<div class="Hotel_kong Com_hoteldiv">
{{subItem.Inventory}}/{{subItem.UseInventory}}/{{subItem.RemainingInventory}}</div>
<div class="Hotel_kong Com_hoteldiv">
<span v-if="subItem.UseInventory-subItem.Inventory>0" style="color:red;">{{subItem.UseInventory-subItem.Inventory}}</span>
<span v-if="subItem.UseInventory-subItem.Inventory>0" style="color:red;">
{{subItem.UseInventory-subItem.Inventory}}
</span>
</div>
</td>
</tr>
......@@ -84,6 +99,7 @@
res => {
if (res.data.resultCode == 1) {
this.dataList = res.data.data;
console.log("this.datalist",this.dataList);
this.isShow=true;
console.log(this.dataList,'dataList');
} else {
......@@ -129,7 +145,30 @@
var weekDay = ["天", "一", "二", "三", "四", "五", "六"];
var myDate = new Date(Date.parse(dateStr));
return weekDay[myDate.getDay()]
}
},
//获取颜色状态
// getClass(status) {
// var classStr = "";
// switch (status) {
// case 1:
// classStr = "classHong";
// break;
// case 2:
// classStr = "classWang";
// break;
// case 3:
// classStr = "classPing";
// break;
// case 4:
// classStr = "classDan";
// break;
// case 5:
// classStr = "classTe";
// break;
// }
// return classStr;
// },
},
mounted() {
this.GetHotelList();
......@@ -139,9 +178,25 @@
</script>
<style>
.classHong{
background-color: rgb(255, 55, 55);
}
.classWang{
background-color: rgb(255, 153, 204);
}
.classPing{
background-color: rgb(188, 214, 238);
}
.classDan{
background-color: rgb(221, 221, 221);
}
.classTe{
background-color: rgb(2, 247, 142);
}
.HouseTypeList {
background: #ccc;
width:100%;
margin-top:20px;
}
.Com_hoteldiv{
min-width: 40px;
......@@ -174,4 +229,7 @@
.HouseTypeList tr td {
font-size: 12px;
}
.hotelProductManage2_tableBox span{
margin:0 10px 10px 0;
}
</style>
<style>
.TravelticketManager_list {
padding: 20px 0 0 0;
}
.TravelticketManager ._ol_info {
font-size: 12px;
width: 100%;
overflow-x: auto;
height: 100%;
}
.TravelticketManager ._ol_color {
font-size: 12px;
width: 100%;
margin-bottom: 20px;
}
.TravelticketManager ._ol_color li {
float: left;
padding: 0 15px;
display: flex;
align-items: center;
}
.TravelticketManager ._ol_color li ._cl {
border-radius: 3px;
display: inline-block;
width: 5px;
height: 12px;
margin-right: 5px;
}
.TravelticketManager ._red {
background-color: #e95252;
}
.TravelticketManager ._red_text {
color: #e95252;
}
.TravelticketManager ._green {
background-color: #47bf8c;
}
.TravelticketManager ._green_text {
color: #47bf8c;
}
.TravelticketManager ._blu {
background-color: #2aaef2;
}
.TravelticketManager ._blu_text {
color: #2aaef2;
}
.TravelticketManager ._ol_list {
min-height: 500px;
}
.TravelticketManager ._ol_list>li {
align-items: center;
border: 1px solid #dddddd;
margin: 20px 0 0px 15px;
position: relative;
overflow: hidden;
transition: linear all 0.5s;
background-color: #fff;
}
.TravelticketManager ._ol_list>li:hover {
box-shadow: 0px 0px 20px rgba(191, 191, 191, 1);
transition: all linear 0.5s;
}
.TravelticketManager ._oll_tit {
color: #333333;
font-size: 14px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.TravelticketManager ._oll_tit span {
display: inline-block;
padding: 1px 10px;
font-size: 12px;
border: solid 1px #ff9000;
color: #ff9000;
border-radius: 4px;
}
.TravelticketManager ._oll_line {
max-width: 5px;
min-width: 5px;
height: 107px;
z-index: 50;
position: absolute;
top: 0;
left: 5px;
background: rgba(233, 82, 82, 1);
border-top-left-radius: 4px;
border-bottom-left-radius: 4px;
display: inline-block;
}
.TravelticketManager ._oll_line._o_green {
background: #47bf8c;
}
.TravelticketManager ._oll_line._o_blu {
background: #2aaef2;
}
.TravelticketManager ._oll_info {
padding-left: 20px;
overflow: hidden;
}
.TravelticketManager ._oll_img {
height: 50px;
width: 50px;
margin-top: 15px;
border-radius: 50%;
margin-left: 20px;
}
.TravelticketManager ._oll_adrr {
color: white;
font-size: 12px;
margin-top: 8px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
display: inline-block;
padding: 4px 9px;
background-color: #2aaef2;
border-radius: 2px;
}
.wangfan {
color: #2aaef2 !important;
font-size: 12px !important;
display: inline-block !important;
padding: 4px 9px !important;
background-color: white !important;
border-radius: 9px !important;
border: 1px solid #2aaef2 !important;
width: auto !important;
height: auto !important;
}
.wangfan.hollowFixedBtn:hover {
color: #ffffff;
border-color: #2aaef2;
background-color: #2aaef2;
}
.wangfan.hollowFixedBtn {
cursor: pointer;
}
.TMM_CNY {
height: 100%;
display: flex;
align-items: center;
color: #333333;
font-size: 14px;
/* padding-left: 40px; */
min-width: 100px;
}
.TMM_CNY span {
color: #47bf8c;
font-size: 16px;
margin-left: 1px;
}
._Seat {
height: 100%;
display: flex;
border-right: 1px dashed #dcdfe6;
}
.SeatList {
width: 120px;
height: 60px;
background-color: #f9f9f9;
margin: 9px 15px 0 0;
}
.SeatList>ul>li:nth-child(1) {
margin-left: 16px;
}
.SeatList>ul>li {
float: left;
text-align: center;
margin: 5px 10px 0 0;
}
.SeatList>ul>li:last-child {
margin-right: 0;
}
.SeatList .iconfont {
color: #d1d1d1;
display: inline-block;
margin-top: 5px;
}
.SeatList ._num1 {
font-size: 16px;
color: #333333;
font-family: PingFangSC-Semibold, sans-serif;
}
.SeatList ._num2 {
font-size: 16px;
color: #47bf8c;
font-family: PingFangSC-Semibold, sans-serif;
}
.SeatList ._num3 {
font-size: 16px;
color: #e95252;
font-family: PingFangSC-Semibold, sans-serif;
}
.SeatList ._wz {
color: #666666;
}
.SeatList ._yiyong {
cursor: pointer;
text-decoration: underline;
}
.TKM_raduis>ul {
display: -webkit-box;
align-items: center;
padding-left: 25px;
margin-top: 17px;
}
.TKM_raduis>ul>li:not(._head) {
height: 24px;
width: 24px;
border-radius: 50%;
background-color: #47bf8c;
color: white;
text-align: center;
line-height: 24px;
margin-right: 16px;
}
.TKM_raduis>ul>li:not(._head) {
background-color: #bcbcbc;
color: #909090;
}
._ol_list li ._head {
display: flex;
align-items: center;
}
._ol_list li ._head img {
height: 26px;
width: 26px;
border-radius: 50%;
margin: 0 5px 0 15px;
}
._ol_list li._head span {
padding-left: 7px;
display: inline-block;
margin-right: 25px;
}
._jztime {
color: #666666;
margin: 0 12px;
min-width: 100px;
}
._jztime .PingFangSC {
font-size: 12px;
}
._jztime ._text {
font-size: 12px;
}
._btn._ttm_page {
height: 100%;
display: flex;
align-items: center;
}
._btn._ttm_page .hollowFixedBtn {
padding: 6px 11px;
width: 60px;
margin-right: 10px;
font-size: 12px;
}
.TravelticketManager .el-pagination {
border: none !important;
}
._command_box {}
._command_tb {
width: -webkit-fill-available;
margin-top: 10px;
margin-left: 15px;
text-align: left;
}
._command_tb tr:first-child {
background-color: #cbe9fa;
}
._command_tb tr th {
font-size: 12px;
color: #387ea5;
padding: 8px;
}
._command_tb tr td:first-child {
color: #387ea5;
}
._command_tb tr td {
color: #333333;
padding: 8px;
font-size: 12px;
background-color: #e0f4ff;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
._command_tb thead,
._command_tb tbody tr {
display: table;
width: 100%;
table-layout: fixed;
}
._command_tb tbody {
display: block;
overflow-y: scroll;
}
._tripDetails {
padding: 0;
box-shadow: 0px 1px 3px 0px #dedede;
}
._tripDetails .popper__arrow::after {
border-bottom-color: #ededed !important;
}
._tripDetails table {
padding: 10px 0 0 20px;
background-color: #ededed;
border-collapse: collapse;
border: 1px solid #d2d2d2;
font-size: 12px;
}
._tripDetails table th {
background-color: #ededed;
padding: 5px;
}
._tripDetails table td {
background-color: #ffffff;
padding: 9px 15px;
color: #333333;
border: 1px solid #d2d2d2;
}
._tripDetails table td._d_name {
background-color: #ededed;
}
._tripDetails table ._color_666 {
color: #666666;
}
._tripDetails table tr._color_666 th {
padding: 9px 15px;
}
._trip_CNY {
width: auto !important;
padding: 10px !important;
background-color: #ffffff;
}
._trip_CNY table {
background-color: #ededed;
border-collapse: collapse;
}
._trip_CNY table ._rb_bor {
border-right: 1px dashed #d3d3d3;
border-bottom: 1px dashed #d3d3d3;
}
._trip_CNY table ._lb_bor {
border-right: 1px dashed #d3d3d3;
border-top: 1px dashed #d3d3d3;
}
._trip_CNY table ._rt_bor {
border-left: 1px dashed #d3d3d3;
border-bottom: 1px dashed #d3d3d3;
}
._trip_CNY table ._lt_bor {
border-left: 1px dashed #d3d3d3;
border-top: 1px dashed #d3d3d3;
}
._trip_CNY table td {
padding: 15px;
text-align: left;
}
._trip_CNY table td ._CNY_name {
display: inline-block;
width: 21px;
height: 21px;
font-size: 12px;
color: #ffffff;
background-color: #2aaef2;
line-height: 21px;
text-align: center;
border-radius: 50%;
}
._trip_CNY table td ._CNY_num {
color: #333333;
position: relative;
top: 2px;
}
._CNY p {
color: #333333;
cursor: pointer;
text-decoration: underline;
font-size: 14px;
}
.TravelticketManager ._ol_info::-webkit-scrollbar {
/*滚动条整体样式*/
width: 4px;
/*高宽分别对应横竖滚动条的尺寸*/
height: 8px;
}
.TravelticketManager ._ol_info::-webkit-scrollbar-thumb {
/*滚动条里面小方块*/
border-radius: 4px;
-webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.2);
background: #c9c9c9;
}
.TravelticketManager ._ol_info::-webkit-scrollbar-track {
/*滚动条里面轨道*/
-webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.2);
border-radius: 4px;
background: #ededed;
}
._command_tb tbody::-webkit-scrollbar {
width: 4px;
height: 1px;
}
._command_tb tbody::-webkit-scrollbar-thumb {
border-radius: 4px;
-webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.2);
background: #c9c9c9;
}
._command_tb tbody::-webkit-scrollbar-thumb {
-webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.2);
border-radius: 4px;
background: #ededed;
}
.TravelticketManager .upload-demo {
text-align: center;
}
._bg_gre {
background-color: #47bf8c !important;
color: white !important;
}
.TravelticketManager .icon-img_plane {
font-size: 12px;
-webkit-transform: scale(0.8);
}
.TravelticketManager .departName {
text-align: right;
}
.TravelticketManager .arrivalName {
text-align: left;
}
.TravelticketManager ._destination .el-button:focus {
background-color: #2aaef2 !important;
color: #fff !important;
}
.TravelticketManager .travelTo {
position: relative;
top: -2px;
}
.TravelticketManager .icon-arrow1 {
font-size: 12px;
}
.TravelticketManager .multiple_input .el-input {
height: auto !important;
}
.TravelticketManager .el-button--primary {
padding: 5px;
margin-right: 1px;
}
.TravelticketManager .ticketUl li {
display: inline-block;
}
.TravelticketManager .travelBtm {
width: 100%;
height: 70px;
border-top: 1px dashed #dadada;
text-align: right;
padding: 15px 300px 0 0;
}
.TravelticketManager .orderDan {
height: 150px;
padding: 30px 0 0 30px;
}
.TravelticketManager .orderBtList {
margin-top: 20px;
}
.TravelticketManager .query-box ul .el-input {
width: 150px;
}
.TravelticketManager .vmiddle {
display: flex;
align-items: Center;
height: 78px;
}
.TM_btm {
margin-left: 0 !important;
}
.TravelticketManager .TICK_Code {
position: absolute;
left: 25px;
top: 5px;
}
.TravelticketManager .TCID_cont {
height: 28px;
line-height: 28px;
border-top: 1px dashed #ccc;
text-indent: 20px;
}
.Ticket_TCID {
margin-right: 2px;
}
.TravelticketManager .disClick {
background-color: #d1d1d1;
color: #fff;
border: 1px solid #d1d1d1;
}
/*航班详情*/
.TravelticketManager .FlightDivDetails {
width: 100%;
height: 65px;
overflow: auto;
}
.TravelticketManager ._flightList {
text-align: left;
font-size: 12px;
margin-bottom: 5px;
padding-right: 5px;
}
/*航班号*/
.TravelticketManager .FlightNumber {
color: #ff0066;
font-weight: bold;
}
</style>
<template>
<div class="flexOne TravelticketManager">
<div class="query-box">
<ul>
<li>
<span class="hotel_name">
<em>起飞时间</em>
<el-date-picker class="w150" v-model="Query.QNeedDateStart" type="date" value-format="yyyy-MM-dd"
placeholder="" :picker-options="pickerBeginDateBefore">
</el-date-picker>
<el-date-picker class="w150" v-model="Query.QNeedDateEnd" type="date" value-format="yyyy-MM-dd"
placeholder="" :picker-options="pickerBeginDateAfter">
</el-date-picker>
</span>
</li>
<li>
<span class="hotel_name">
<em>航空公司</em>
<el-select v-model="Query.AirLineID" filterable :placeholder="$t('system.ph_in')" class="w150">
<el-option :label="$t('pub.unlimitedSel')" :value="selectDefauleValue"></el-option>
<el-option v-for="item in AirLineList" :label='item.AlName' :value='item.AirLineId' :key='item.AirLineId'>
</el-option>
</el-select>
</span>
</li>
<li>
<span class="hotel_name">
<em>航班号</em>
<el-input v-model="Query.Flight_number" type="text" @keyup.native.enter="getList" placeholder="请输入航班号">
</el-input>
</span>
</li>
<li>
<button class="hollowFixedBtn" type="button"
@click="resetPageIndex(),getList()">{{$t('pub.searchBtn')}}</button>
<button class="normalBtn" type="button" @click="isShowNeed=true,isShowOrder=false" style="display:none;">提需求</button>
</li>
</ul>
</div>
<div class="TravelticketManager_list">
<ul class="_ol_color clearfix">
<li><span class="_red _cl"></span><span
class="_red_text">{{$t('Airticket.Air_redType')}}</span>{{$t('Airticket.Air_firstClass')}}</li>
<li><span class="_green _cl"></span><span
class="_green_text">{{$t('Airticket.Air_greenType')}}</span>{{$t('Airticket.Air_businessClass')}}</li>
<li><span class="_blu _cl"></span><span
class="_blu_text">{{$t('Airticket.Air_blueType')}}</span>{{$t('Airticket.Air_EconomyClass')}}</li>
</ul>
<div class="_ol_info">
<ul class="_ol_list" v-loading="loading">
<li v-for="(item,index) in dataList" :data-id="item.ID">
<el-row :gutter="10">
<el-col :span="3" class="vmiddle">
<span class="_oll_line" v-if="item.FreightSpace==1"></span>
<span class="_oll_line _o_green" v-if="item.FreightSpace==2"></span>
<span class="_oll_line _o_blu" v-if="item.FreightSpace==3"></span>
<div>
<span class="TICK_Code">编号:{{item.ID}}</span>
<img class="_oll_img" v-if="item.AirlineUrl" :src="item.AirlineUrl" :onerror="defaultImg" />
<img class="_oll_img" v-else src="../../../assets/img/bg_z1@2x.png" />
</div>
<div class="_oll_info">
<el-tooltip class="item" effect="dark" :content="item.AirlineName" placement="top-start"
popper-class="max-w250">
<p class="_oll_tit"> {{item.AirlineName}} </p>
</el-tooltip>
<span class="_oll_adrr">{{item.FreightSpaceStr}}</span>
</div>
</el-col>
<el-col :span="4" class="vmiddle">
<div class="FlightDivDetails">
<div class="_flightList" v-for="subItem in item.flightList">
<span class="FlightNumber">{{subItem.Flight_number}}</span>
<span>{{subItem.FlightDate}} {{subItem.Departure_time}}</span>
<span>({{subItem.DIATA}}){{subItem.DepartureName}}</span>
<span v-if="subItem.StopoverName">-</span>
<span v-if="subItem.StopoverName">({{subItem.StopoverIATA}}){{subItem.StopoverName}}</span>
<span v-if="subItem.ArrivalCityName">-</span>
<span v-if="subItem.ArrivalCityName">({{subItem.AIATA}}){{subItem.ArrivalCityName}}</span>
</div>
</div>
</el-col>
<el-col :span="1" class="vmiddle">
<div v-if="item.UnionList!=null&& item.UnionList.length>0" class="_destination">
<el-popover popper-class="_tripDetails" width="100" trigger="click">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr class="_color_666">
<th>联运城市</th>
</tr>
<tr v-for="(unionItem,x) in item.UnionList">
<td> {{unionItem.CityName}} </td>
</tr>
</table>
<el-button slot="reference" class="hollowFixedBtn wangfan">联运</el-button>
</el-popover>
</div>
</el-col>
<el-col :span="2" class="vmiddle">
<div class="TMM_CNY">
成本:<span class="PingFangSC">{{item.CostPrice}}</span>
</div>
</el-col>
<el-col :span="3" class="vmiddle">
<div class="_Seat">
<div class="SeatList">
<ul class="clearfix">
<li>
<span class="iconfont icon-img_yizi"></span>
</li>
<li>
<p class="_num1">{{item.TicketNum==null?'0':item.TicketNum}}</p>
<p class="_wz">{{$t('Airticket.Air_reservation')}}</p>
</li>
<li>
<p class="_num2">{{item.SurplusNum==null?'0':item.SurplusNum}}</p>
<p class="_wz">{{$t('Airticket.Air_yvwei')}}</p>
</li>
</ul>
</div>
</div>
</el-col>
<el-col :span="4" class="vmiddle">
<div class="TKM_raduis">
<ul>
<li :class="item.FirstDeposit?'_bg_gre':''">
<el-tooltip effect="dark" :content="item.FirstDeposit" placement="top" popper-class="max-w250"
v-if="item.FirstDeposit">
<span>1</span>
</el-tooltip>
<span v-else>1</span>
</li>
<li :class="item.SecondDeposit?'_bg_gre':''">
<el-tooltip effect="dark" :content="item.SecondDeposit" placement="top" popper-class="max-w250"
v-if="item.SecondDeposit">
<span>2</span>
</el-tooltip>
<span v-else>2</span>
</li>
<li :class="item.ThirdDeposit?'_bg_gre':''">
<el-tooltip effect="dark" :content="item.ThirdDeposit" placement="top" popper-class="max-w250"
v-if="item.ThirdDeposit">
<span>3</span>
</el-tooltip>
<span v-else>3</span>
</li>
<li :class="item.FourthDeposit?'_bg_gre':''">
<el-tooltip effect="dark" :content="item.FourthDeposit" placement="top" popper-class="max-w250"
v-if="item.FourthDeposit">
<span>4</span>
</el-tooltip>
<span v-else>4</span>
</li>
<li :class="item.FourthDeposit?'_bg_gre':''">
<el-tooltip effect="dark" :content="item.FinalPayment" placement="top" popper-class="max-w250"
v-if="item.FinalPayment">
<span></span>
</el-tooltip>
<span v-else></span>
</li>
</ul>
</div>
</el-col>
<el-col :span="2" class="vmiddle">
<div class="_head">
<img v-if="item.CreateUrl" :src="item.CreateUrl" :onerror="defaultImg" />
<img v-else src="../../../assets/img/default_head_img.jpg" />
<span>{{item.CreateName}}</span>
</div>
</el-col>
<el-col :span="3" class="vmiddle">
<div class="_jztime">
<p class="PingFangSC">航班日期:{{item.FlightDate}}</p>
<p class="PingFangSC">截止日期:{{item.TicketDeadlineStr}}</p>
</div>
</el-col>
<el-col :span="2" class="vmiddle">
<div class="_btn _ttm_page">
<span v-if="item.SurplusNum>0">
<button class="normalBtn TM_btm" type="button"
@click="isShowOrder=true,isShowNeed=false,bindAirticket.AirticketId=item.ID,bindAirticket.TotalNum=item.SurplusNum,GetPlaceHolder()">立即采购</button>
</span>
</div>
</el-col>
</el-row>
<el-row :gutter="0">
<el-col :span="8">
<div class="TCID_cont PingFangSC">
团期:
<span v-show="item.TCIDList.length==0">暂无</span>
<span class="Ticket_TCID" v-for="subItem in item.TCIDList">{{subItem}}</span>
</div>
</el-col>
<el-col :span="16">
<div class="TCID_cont">
PNR:{{item.PNR}}
</div>
</el-col>
</el-row>
</li>
</ul>
<div class="noData" v-show="noData">
{{$t('system.content_noData')}}
</div>
<el-pagination background @current-change="handleCurrentChange" :current-page.sync="Query.currentPage"
layout="total,prev, pager, next, jumper" :page-size=Query.pageSize :total=Query.total>
</el-pagination>
<div class="combottomDiv" v-if="isShowNeed">
<div class="combottomTitle">机票需求单</div>
<el-form label-width="100px">
<el-col :span="5">
<el-form-item label="需求类型">
<el-select class="w150" filterable placeholder="请选择" v-model="addNeedMsg.NeedSubType">
<el-option :label="$t('pub.unlimitedSel')" :value="selectDefauleValue"></el-option>
<el-option v-for='item in TicketNeedTypeList' :key="item.Id" :label="item.Name" :value="item.Id">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="出发地">
<el-select class="w150" filterable placeholder="请选择" v-model="addNeedMsg.MainId">
<el-option :label="$t('pub.unlimitedSel')" :value="selectDefauleValue"></el-option>
<el-option v-for="item in CityList" :label='item.Name' :value='item.ID' :key='item.ID'>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="目的地">
<el-select class="w150" filterable placeholder="请选择" v-model="addNeedMsg.SubId">
<el-option :label="$t('pub.unlimitedSel')" :value="selectDefauleValue"></el-option>
<el-option v-for="item in CityList" :label='item.Name' :value='item.ID' :key='item.ID'>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="出发日期">
<el-date-picker class="w150" type="date" value-format="yyyy-MM-dd" placeholder="起飞时间"
v-model="addNeedMsg.NeedDate">
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="是否中转">
<el-switch :active-value="AcceptTransferDefault" :inactive-value="NotAcceptTransferDefault"
v-model="addNeedMsg.IsAcceptTransfer"></el-switch>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="人数">
<el-input v-model="addNeedMsg.UseNum" @keyup.native="checkInteger(addNeedMsg,'UseNum')" type="text"
class="w150" placeholder="请输入人数"></el-input>
</el-form-item>
</el-col>
<el-col :span="5">
<button type="button" class="normalBtn" style="margin:5px 0 0 55px;" @click="SetNeed()">发送</button>
<button type="button" class="hollowFixedBtn" @click="isShowNeed=false">取消</button>
</el-col>
</el-form>
</div>
<div class="combottomDiv" style="height:150px;" v-if="isShowOrder">
<div class="combottomTitle">采购</div>
<el-col :span="3">
<el-input v-model="bindAirticket.PurchaseAmount"
@keyup.native="checkInteger(bindAirticket,'PurchaseAmount')" type="text" class="w150"
:placeholder="UseNum_placeholder"></el-input>
</el-col>
<el-col :span="5">
<button type="button" class="normalBtn" :class="{'disClick':!isSubmit}"
@click="SetTicketPurchase()">确定</button>
<button type="button" class="hollowFixedBtn"
@click="isShowOrder=false,bindAirticket.PurchaseAmount=''">取消</button>
</el-col>
</div>
</div>
</div>
</div>
</template>
<script>
export default {
data() {
return {
Query: {
//页码
pageIndex: 1,
//每页显示条数
pageSize: 6,
//总条数
total: 0,
//出发城市编号
Departure_city: 0,
//到达城市编号
Arrival_city: 0,
//是否往返
TicketType: 0,
//起飞时间
QNeedDateStart: "",
//起飞结束日期
QNeedDateEnd: "",
//航空公司编号
AirLineID: 0,
//航班号
Flight_number: "",
//余位大于0
IsSurplusNumGreaterThan: false,
currentPage: 1,
//起飞状态
FlyState: "0",
},
//下拉框默认值
selectDefauleValue: 0,
//防止重复提交
isSubmit: true,
//默认图片
defaultImg: 'this.src="' + require("../../../assets/img/bg_z1@2x.png") + '"',
//是否显示加载层
loading: false,
//显示需求单
isShowNeed: false,
//显示立即采购输入框
isShowOrder: false,
//是否有数据
noData: false,
//数据列表
dataList: [],
//城市列表
CityList: [],
//机票类型列表
TicketTypeList: [],
//航空公司
AirLineList: [],
//需求类型
TicketNeedTypeList: [],
//接受中转
AcceptTransferDefault: 1,
//不接受中转
NotAcceptTransferDefault: 0,
//绑定机票参数
bindAirticket: {
UseNum: "",
AirticketId: 0,
TotalNum: 0
},
//绑定框提示
UseNum_placeholder: "",
//需求单参数
addNeedMsg: {
//出发城市
MainId: 0,
//到达城市
SubId: 0,
//是否接受中转
IsAcceptTransfer: "",
//需求类型
NeedType: 4,
//需求子类型(询票1,预定2,出票3 )
NeedSubType: 0,
//需求时间
NeedDate: "",
//使用人数
UseNum: "",
//描述
Describe: ""
},
pickerBeginDateBefore: {
disabledDate: time => {
let endTime = new Date(this.Query.QNeedDateEnd);
return endTime.getTime() < time.getTime();
}
},
pickerBeginDateAfter: {
disabledDate: time => {
let startTime = new Date(this.Query.QNeedDateStart);
return startTime.getTime() >= time.getTime();
}
}
};
},
methods: {
getList() {
this.loading = true;
this.apipost(
"AirTicket_get_GetPageList",
this.Query,
res => {
if (res.data.resultCode == 1) {
this.Query.total = res.data.data.count;
this.noData = !this.Query.total > 0;
this.dataList = res.data.data.pageData;
} else {
this.Warning(res.data.message);
}
this.loading = false;
},
err => {}
);
},
GetPlaceHolder() {
this.UseNum_placeholder =
"最多绑定" + this.bindAirticket.TotalNum + "个机位";
},
//翻页功能按钮
handleCurrentChange(val) {
this.Query.pageIndex = val;
this.getList();
},
//查询初始化页码
resetPageIndex() {
this.Query.pageIndex = 1;
this.Query.currentPage = 1;
},
//初始化城市
initCity() {
this.apipost(
"dict_post_Destination_GetCityList",
this.Query,
res => {
if (res.data.resultCode == 1) {
this.CityList = res.data.data;
}
},
err => {}
);
},
//初始化机票类型
initTicketType() {
this.apipost(
"AirTicket_Get_GetTicketTypeList",
this.Query,
res => {
if (res.data.resultCode == 1) {
this.TicketTypeList = res.data.data;
}
},
err => {}
);
},
//初始化航空公司下拉
initAirline() {
this.apipost(
"airline_post_GetList", {},
res => {
if (res.data.resultCode == 1) {
this.AirLineList = res.data.data;
}
},
err => {}
);
},
//添加修改机票绑定
SetTicketPurchase(id) {
if (this.isSubmit) {
this.isSubmit = false;
if (this.bindAirticket.PurchaseAmount == "") {
this.bindAirticket.PurchaseAmount = 0;
}
if (this.bindAirticket.PurchaseAmount == 0) {
this.Warning("请输入要采购的数量");
this.bindAirticket.PurchaseAmount = "";
this.isSubmit = true;
return false;
}
if (this.bindAirticket.PurchaseAmount > this.bindAirticket.TotalNum) {
this.Warning("绑定的数量不能超过总剩余的机位数");
this.isSubmit = true;
return false;
}
this.apipost(
"TravelAirTicket_Post_SetPurchase",
this.bindAirticket,
res => {
if (res.data.resultCode == 1) {
this.getList();
this.Success("采购成功");
this.bindAirticket.PurchaseAmount = "";
this.isShowNeed = false;
this.isShowOrder = false;
this.isSubmit = true;
} else {
this.Error(res.data.message);
this.isSubmit = true;
}
},
err => {}
);
}
},
//获取需求类型
getNeedType() {
this.apipost(
"AirticketNeed_get_GetNeedTypeList", {},
res => {
if (res.data.resultCode == 1) {
this.TicketNeedTypeList = res.data.data;
}
},
null
);
},
//提需求
SetNeed() {
var that = this;
let startItem = {};
startItem = that.CityList.find(item => {
return item.ID === that.addNeedMsg.MainId;
});
let ArrivalCityItem = {};
ArrivalCityItem = that.CityList.find(item => {
return item.ID === that.addNeedMsg.SubId;
});
let needItem = {};
needItem = that.TicketNeedTypeList.find(item => {
return item.Id === that.addNeedMsg.TicketNeedType;
});
var Describe = "";
if (needItem != undefined) {
Describe += needItem.Name + " ";
}
if (startItem != undefined) {
Describe += "从" + startItem.Name;
}
if (ArrivalCityItem != undefined) {
Describe += "到" + ArrivalCityItem.Name + "的机票";
}
if (this.IsAcceptTransfer == 1) {
Describe += ",可接受中转";
} else {
Describe += ",不接受中转";
}
that.addNeedMsg.Describe = Describe;
var newMsg = {
//需求类型(4-机票)
NeedType: 4,
//主表资源编号
MainId: that.addNeedMsg.MainId,
//子表编号
SubId: that.addNeedMsg.SubId,
//需求时间
NeedDate: that.addNeedMsg.NeedDate,
//需求子类型
NeedSubType: that.addNeedMsg.NeedSubType,
//使用人数
UseNum: that.addNeedMsg.UseNum,
//描述
Describe: Describe
};
this.apipost(
"AirticketNeed_post_Set",
newMsg,
res => {
if (res.data.resultCode == 1) {
this.getList();
this.isShowNeed = false;
this.isShowOrder = false;
this.Success("处理成功");
this.addNeedMsg.MainId = 0;
this.addNeedMsg.SubId = 0;
this.addNeedMsg.NeedDate = "";
this.addNeedMsg.IsAcceptTransfer = 0;
} else {
this.Warning(res.data.message);
}
},
err => {}
);
}
},
mounted() {
this.initCity();
this.getNeedType();
this.initTicketType();
this.initAirline();
this.getList();
}
};
</script>
\ No newline at end of file
......@@ -6,6 +6,7 @@
.busInfo .bus_Notice {
color: #e95252;
margin: 20px 0;
text-align: left;
}
.busInfo .bus_Title {
......@@ -66,16 +67,12 @@
color: #ff4400;
}
/* .busInfo .carPlanOne span {
.BusinfoSpan {
display: inline-block;
margin-right: 3px;
margin:5px 4px 5px 0;
} */
.BusinfoSpan{
display: inline-block;
margin-right: 3px;
margin:5px 4px 5px 0;
margin: 5px 4px 5px 0;
}
.busInfo .carPlanOne .el-input .el-input__inner,
.el-select .el-input {
height: 28px;
......@@ -123,16 +120,18 @@
.busAddbtn:hover i {
color: #e95252;
}
.carPlanOne .w320{
margin:5px 0;
.carPlanOne .w320 {
margin: 5px 0;
}
</style>
<template>
<div class="flexOne busInfo">
<div class="bus_Notice">注:此处不和任何团队行程做绑定,如需下载车配表,请在车辆绑定团队以后再行下载</div>
<table class="singeRowTable">
<tr>
<td colspan="6">{{title}}</td>
<td colspan="7" style="text-align:left;padding-left:5px;">{{title}}</td>
</tr>
<tr>
<th>进出点</th>
......@@ -141,6 +140,7 @@
<th>领队</th>
<th>导游</th>
<th>团号</th>
<th>车辆类型</th>
</tr>
<tr>
<td>{{InOut}}</td>
......@@ -151,6 +151,13 @@
<td>
<p class="busInfoP" @click="goUrlT('TravelControlList',TCNUMS,'团控列表')">{{TCNUMS}}</p>
</td>
<td>
<el-select class="w150" placeholder="请选择" v-model="PostData.BusType">
<el-option :key="0" :value="0" label="请选择"></el-option>
<el-option v-for="item in BusTypeList" :key="item.Id" :label="item.newName" :value="item.Id">
</el-option>
</el-select>
</td>
</tr>
</table>
<div style="width: 100%; overflow-x: auto;margin-top:20px;" class="ownScrollbarStyle">
......@@ -201,11 +208,12 @@
:class="{'spanCked':subItem.UseType==childItem.Id,'disSpan':forbidInput==true}"
@click="UseTypeClick(childItem.Id,index,subIndex);getBusPrice(subItem)">{{childItem.Name}}</span>
</span>
<span style="width:30px;display:inline-block;" >
<span style="width:30px;display:inline-block;">
<a v-if="subIndex>0" @click="DeleteSubItem(item,subIndex)" style="color:blue;cursor:pointer">删除</a>
</span>
<span style="display:inline-block;width:30px;margin-left:5px;">
<span class="busAddbtn" v-if="subIndex==item.DetailList.length-1" @click="AddSubItem(item)" style="margin-bottom:10px;">
<span class="busAddbtn" v-if="subIndex==item.DetailList.length-1" @click="AddSubItem(item)"
style="margin-bottom:10px;">
<i class="iconfont icon-img_haha"></i>
</span>
</span>
......@@ -232,8 +240,8 @@
</td>
<td>
<div class="w180">
<el-select clearable class="w150" filterable placeholder="请选择" v-model="item.BusType"
:disabled="forbidInput" @change='getBusPrice(item)'>
<el-select class="w150" filterable placeholder="请选择" v-model="item.BusType" :disabled="forbidInput"
@change='getBusPrice(item)'>
<el-option :key="0" :value="0" label="请选择"></el-option>
<el-option v-for="item in BusTypeList" :key="item.Id" :label="item.newName" :value="item.Id">
</el-option>
......@@ -336,7 +344,7 @@
BusCode: "",
DriverName: "",
DriverTel: "",
BusType: "",
BusType: 0,
CarrierNum: "",
BusNum: "",
StartDate: "",
......@@ -459,56 +467,11 @@
getBusPrice(obj) {
let money = 0
if (obj.BusType) {
let checkObj = this.BusTypeList.find(item => item.Id === obj.BusType)
let checkObj = this.BusTypeList.find(item => item.Id === obj.BusType);
if (checkObj) {
if (obj.AirportPickUp == 0) {
switch (obj.UseType) {
case 1:
money = checkObj.AllDayPrice
break;
case 2:
money = checkObj.HalfDayPrice
break;
case 3:
money = checkObj.HourPrice * obj.UseTime
break;
default:
money = 0
break;
}
} else if (obj.AirportPickUp == 1) {
switch (obj.UseType) {
case 1:
money = checkObj.AllDayPrice + checkObj.ReceivePrice
break;
case 2:
money = checkObj.HalfDayPrice + checkObj.ReceivePrice
break;
case 3:
money = checkObj.HourPrice * obj.UseTime + checkObj.ReceivePrice
break;
default:
money = checkObj.ReceivePrice
break;
}
} else {
switch (obj.UseType) {
case 1:
money = checkObj.AllDayPrice + checkObj.SendPrice
break;
case 2:
money = checkObj.HalfDayPrice + checkObj.SendPrice
break;
case 3:
money = checkObj.HourPrice * obj.UseTime + checkObj.SendPrice
break;
default:
money = checkObj.SendPrice
break;
}
}
money = checkObj.AllDayPrice;
}
obj.CostPrice = money
obj.CostPrice = money;
}
},
AddSubItem(item) {
......@@ -519,9 +482,8 @@
AirportPickUp: 0
});
},
DeleteSubItem(item,index)
{
item.DetailList.splice(index,1);
DeleteSubItem(item, index) {
item.DetailList.splice(index, 1);
},
/*获取车辆类型列表*/
getBusTypeList() {
......@@ -561,71 +523,36 @@
},
response => {
if (response.data.resultCode == 1) {
this.PlanTableData = response.data.data;
this.PlanTableData = response.data.data.PlanList;
this.PlanTableData.forEach(x => {
if (x.BookGroup == '' || x.BookGroup == null) {
x.BookGroup = this.$route.query.NewCombinationNum;
}
})
console.log(this.PlanTableData,'planTabledata');
}
},
null
);
},
/*保存车辆基本信息*/
SaveData() {
this.PostData.PlanList = this.PlanTableData;
this.PostData.CarrierNum = parseInt(this.PostData.CarrierNum);
this.PostData.UseDays = parseInt(this.PostData.UseDays);
this.disButton = true;
this.PostData.PlanList.forEach(x => {
if (x.CostPrice == "") {
x.CostPrice = 0;
}
});
if (this.PostData.PlanList.length > 0) {
this.PostData.PlanList.forEach((x, index) => {
x.AirportPickUp = 0;
if (index == 0) {
x.AirportPickUp = 1;
} else if (index == this.PostData.PlanList.length - 1) {
x.AirportPickUp = 2;
}
});
}
this.apipost(
"bus_post_Set",
this.PostData,
res => {
this.disButton = false;
if (res.data.resultCode == 1) {
this.Success("保存成功!");
this.goUrl("busManage");
} else {
this.Error(res.data.message);
});
this.PostData=response.data.data;
}
},
null
);
},
SaveList(type) {
this.PlanTableData.forEach(item => {
item.OrderState = type
})
this.apipost('bus_get_SetPlan', this.PlanTableData, res => {
this.PostData.PlanList=this.PlanTableData;
this.apipost('bus_get_SetPlan', this.PostData, res => {
if (res.data.resultCode == 1) {
this.Success("保存成功!");
this.MsgBus.$emit('msg')
this.getData();
this.createTableData();
} else {
this.Error(res.data.message);
}
}, err => {})
},
//用车类型点击事件
UseTypeClick(value, index,subIndex) {
UseTypeClick(value, index, subIndex) {
if (this.forbidInput == true) {
return;
}
......@@ -688,27 +615,6 @@
null
);
},
getData() {
this.apipost(
"bus_get_Get", {
ID: this.BusId
},
response => {
if (response.data.resultCode == 1) {
this.PostData = response.data.data;
if (this.PostData.PlanList.length > 0) {
this.PostData.PlanList.forEach((x, index) => {
if (index == this.PostData.PlanList.length - 1) {
x.AirportPickUp = 1;
}
});
}
this.PlanTableData = this.PostData.PlanList;
}
},
null
);
},
goUrl(path) {
this.$router.push({
path: path
......@@ -724,21 +630,7 @@
}
})
},
submitForm(addMsg) {
//提交创建、修改表单
let that = this;
that.$refs[addMsg].validate(valid => {
if (valid) {
that.SaveData(addMsg);
} else {
return false;
}
});
},
resetForm(formName) {
//弹出框取消 初始化谈框内表单
this.$refs[formName].resetFields();
},
//计算总成本
CalculatePrice() {
var CoastPrice = this.$commonUtils.CaluJsonArraySum(
......@@ -756,7 +648,7 @@
newPlanData.DriverTel = oldPlanData.DriverTel;
newPlanData.BusNum = oldPlanData.BusNum;
newPlanData.BusCompany = oldPlanData.BusCompany;
newPlanData.PayType = oldPlanData.PayType;
newPlanData.PayType = oldPlanData.PayType;
newPlanData.BookGroup = oldPlanData.BookGroup;
}
},
......@@ -766,17 +658,13 @@
this.GeAccommodationTypeList();
this.BusId = this.$route.query.id;
this.title = this.$route.query.title;
this.TCNUMS = this.$route.query.TCNUMS,
this.InOut = this.$route.query.InOut,
this.RealityNum = this.$route.query.RealityNum,
this.totalFlySeat = this.$route.query.TotalNumber + '/' + this.$route.query.RealityYSeatNum + '/' +
this.$route.query.RealityESeatNum + '/' + this.$route.query.RealityFSeatNum
this.LeaderName = this.$route.query.LeaderName,
this.GuideName = this.$route.query.GuideName
if (this.BusId > 0) {
this.getData();
}
this.TCNUMS = this.$route.query.TCNUMS;
this.InOut = this.$route.query.InOut;
this.RealityNum = this.$route.query.RealityNum;
this.totalFlySeat = this.$route.query.TotalNumber + '/' + this.$route.query.RealityYSeatNum + '/' + this.$route
.query.RealityESeatNum + '/' + this.$route.query.RealityFSeatNum;
this.LeaderName = this.$route.query.LeaderName;
this.GuideName = this.$route.query.GuideName;
this.parametersData.TCID = this.$route.query.TCID;
this.parametersData.StartDate = this.$route.query.StartDate;
this.parametersData.DayNum = this.$route.query.DayNum;
......@@ -788,4 +676,5 @@
this.getSupplierList();
}
};
</script>
\ No newline at end of file
</script>
<template>
<div>
<div class="query-box" style="border-bottom: none;">
<ul>
<!--<li><span><em>线路</em>
<el-select v-model="msg.LineId" filterable :placeholder="$t('pub.pleaseSel')" @change="getLineTeamList(msg.LineId)">
<el-option label="不限" value='-1'></el-option>
<el-option
v-for="item in LineList"
:label='item.LineName'
:value='item.LineID'
:key='item.LineID'>
</el-option>
</el-select>
</span>
</li>-->
<li><span><em>系列</em>
<el-select v-model="msg.LineteamId" filterable :placeholder="$t('pub.pleaseSel')">
<el-option label="不限" value='-1'></el-option>
<el-option
v-for="item in LineTeamList"
:label='item.LtName'
:value='item.LtID'
:key='item.LtID'>
</el-option>
</el-select>
</span>
</li>
<li>
<span>
<em>团号</em><el-input v-model='msg.TCNUM' ></el-input>
</span>
</li>
<li><span><em>日期</em><el-date-picker v-model='msg.StartDate' class='w135' value-format="yyyy-MM-dd" type="date"></el-date-picker>
-
<el-date-picker v-model='msg.EndDate' class='w135' value-format="yyyy-MM-dd" type="date"></el-date-picker>
</span>
</li>
<li><span><em>状态</em></span><el-select v-model='msg.PriceStatus'>
<el-option label='正常' value='0' key='0'></el-option>
<el-option label='取消' value='1' key='1'></el-option>
</el-select>
</li>
<div>
<div class="query-box" style="border-bottom: none;">
<ul>
<li><span><em>系列</em>
<el-select v-model="msg.LineteamId" filterable :placeholder="$t('pub.pleaseSel')">
<el-option label="不限" value='-1'></el-option>
<el-option v-for="item in LineTeamList" :label='item.LtName' :value='item.LtID' :key='item.LtID'>
</el-option>
</el-select>
</span>
</li>
<li>
<span>
<em>团号</em>
<el-input v-model='msg.TCNUM'></el-input>
</span>
</li>
<li><span><em>日期</em>
<el-date-picker v-model='msg.StartDate' class='w135' value-format="yyyy-MM-dd" type="date"></el-date-picker>
-
<el-date-picker v-model='msg.EndDate' class='w135' value-format="yyyy-MM-dd" type="date"></el-date-picker>
</span>
</li>
<li><span><em>状态</em></span>
<el-select v-model='msg.PriceStatus'>
<el-option label='正常' value='0' key='0'></el-option>
<el-option label='取消' value='1' key='1'></el-option>
</el-select>
</li>
<li>
<input type="button" class="normalBtn" value="查询" @click="getList();resetPageIndex()"/>
</li>
</ul>
</div>
<div class="mt10 fz14 color333 busIconStyle">
车辆状态&nbsp;&nbsp;&nbsp;已确定:<span style="color:#4BCA81 ;"></span>未确定:<span style="color: #ff6600;">O</span>未分配:<span style="color:#E95252 ;">X</span>
</div>
<div style="width: 100%; overflow-x: auto;padding-bottom: 10px; margin-top: 10px; " class="ownScrollbarStyle">
<table border="0" cellspacing="1" cellpadding="0" class="busStatisticsTalbe" v-loading='loading'>
<tr>
<th width="150">序号</th>
<th width="120">出发地</th>
<th width="150">航班时间</th>
<th width="150">公司团号</th>
<th width="120">线路负责人</th>
<th width="80">进出点</th>
<th width="120">机位总数/(Y/E/F)</th>
<th width="80">领队</th>
<th width="150">导游</th>
<th width="150">车型</th>
<th v-for='item in thLengthTitle'>{{item}}</th>
<th width="150">车辆状态</th>
<th width="150">车费总计</th>
<th width="80">配车天数</th>
<th width="120">操作</th>
</tr>
<tbody v-for="(outItem,outindex) in list" :class="{splitTrCss:outindex%2!=0}">
<template v-for="(item,index) in outItem.StaticsReportList">
<tr>
<td :rowspan="2*outItem.StaticsReportList.length" v-if='index==0'>
<div class="w100">{{outItem.NewCombinationNum}}</div>
<!-- <div style="max-width: 100px; min-width: 50px; ">{{outindex+1}}</div>
<div v-if='outItem.StaticsReportList.length>1' class="w100">合团号:{{outItem.NewCombinationNum}}</div> -->
</td>
<td><div class="w80">
{{item.StartCityNames}}
</div>
</td>
<td><div class="w120">
{{item.FlightDate}}
<el-popover popper-class="busStatistics_tripDetails" width="550" trigger="click">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr class="_color_666" style="text-align:center;">
<th width="60">{{$t('Airticket.Air_segment')}}</th>
<th width="80">{{$t('system.query_flightNum')}}</th>
<th width="150">起飞时间</th>
<th width="150">到达时间</th>
<th width="100">经停城市</th>
</tr>
<tr v-for="(ds,din) in item.FlightList" :key="din" style="text-align:center;">
<td class="_d_name _color_666">
<span v-if="din==0">{{$t('Airticket.Air_go')}}</span>
<span v-else-if="din==item.FlightList.length-1">{{$t('Airticket.Air_returnTrip')}}</span>
<span v-else-if="din>0 && din!=item.FlightList.length-1">{{$t('Airticket.Air_transit')}}</span>
</td>
<td>
<div>{{ds.Flight_number}}</div>
<div style="margin-top:5px;">{{ds.AlName}}</div>
</td>
<td>
<div>{{ds.FlightDate}} {{ds.Departure_time}}</div>
<div style="margin-top:5px;">{{ds.dName}}</div>
</td>
<td>
<div>{{ds.FlightArrivalTime}} {{ds.Arrival_time}}</div>
<div style="margin-top:5px;">{{ds.aName}}</div>
</td>
<td>{{ds.StopoverName}}</td>
</tr>
</table>
<el-button slot="reference" class="normalBtn mt5" style='height:24px; padding: 0 10px; background: #2AAEF2; border-color: #2AAEF2;'>详情</el-button>
</el-popover>
</div></td>
<td><div class="w120 link">
<p @click="goUrlT('productQuery',item.TCNUMS,'产品查询')">{{item.TCNUMS}}</p>
</div></td>
<td><div class="w120">{{item.CreateByName}}</div></td>
<td><div class="w80">{{item.InOut}}</div></td>
<td><div class="w120 link">
<p @click="goUrlT('RegistrationList',item.TCIDS,'报名清单')">{{item.TotalSeat}}/{{item.CommonReport.HouseStatistics.RealityYSeatNum}}/{{item.CommonReport.HouseStatistics.RealityESeatNum}}/{{item.CommonReport.HouseStatistics.RealityFSeatNum}}</p>
</div></td>
<td><div class="w80">{{item.LeaderName}}</div></td>
<td><div class="w80">{{item.GuideName}}</div></td>
<td><div class="w80">{{GetCheType(item.CommonReport.BusList)}}</div></td>
<td v-for="(x,ww) in item.CommonReport.BusList" style="vertical-align: top;">
<div class="w150" >
<p class="pDateStyle">{{x.PlanDateStr}}</p>
<p class="pDateStyle" v-if="x.AirportPickUp==1&&ww==0">接机</p>
<p class="pDateStyle" v-else-if="x.AirportPickUp==2&&ww==item.CommonReport.BusList.length-1">送机</p>
<p class="pDateStyle fbold fz16" v-else-if="x.AirportPickUp==0">
<span style="color: #E95252;" v-if="x.OrderState==-1">X</span>
<span style="color: #4BCA81;" v-else-if="x.OrderState>-1"></span>
<li>
<input type="button" class="normalBtn" value="查询" @click="getList();resetPageIndex()" />
</li>
</ul>
</div>
<div class="mt10 fz14 color333 busIconStyle">
车辆状态&nbsp;&nbsp;&nbsp;已确定:<span style="color:#4BCA81 ;"></span>未确定:<span
style="color: #ff6600;">O</span>未分配:<span style="color:#E95252 ;">X</span>
</div>
<div style="width: 100%; overflow-x: auto;padding-bottom: 10px; margin-top: 10px; " class="ownScrollbarStyle">
<table border="0" cellspacing="1" cellpadding="0" class="busStatisticsTalbe" v-loading='loading'>
<tr>
<th class="w100">序号</th>
<th width="110">出发地</th>
<th width="150">航班时间</th>
<th width="150">公司团号</th>
<th width="100">线路负责人</th>
<th width="70">进出点</th>
<th width="80">机位总数<br />(Y/E/F)</th>
<th width="80">领队</th>
<th width="80">导游</th>
<th width="150">车型</th>
<th width="100" v-for='item in thLengthTitle'>{{item}}</th>
<th width="150">车辆状态</th>
<th width="150">车费总计</th>
<th width="80">配车天数</th>
<th width="120">操作</th>
</tr>
<tbody v-for="(outItem,outindex) in list" :class="{splitTrCss:outindex%2!=0}">
<template v-for="(item,index) in outItem.StaticsReportList">
<tr>
<td :rowspan="2*outItem.StaticsReportList.length" v-if='index==0'>
<div class="w100">{{outItem.NewCombinationNum}}</div>
</td>
<td>
<div class="w80">
{{item.StartCityNames}}
</div>
</td>
<td>
<div class="w120">
{{item.FlightDate}}
<el-popover popper-class="busStatistics_tripDetails" width="550" trigger="click">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr class="_color_666" style="text-align:center;">
<th width="60">{{$t('Airticket.Air_segment')}}</th>
<th width="80">{{$t('system.query_flightNum')}}</th>
<th width="150">起飞时间</th>
<th width="150">到达时间</th>
<th width="100">经停城市</th>
</tr>
<tr v-for="(ds,din) in item.FlightList" :key="din" style="text-align:center;">
<td class="_d_name _color_666">
<span v-if="din==0">{{$t('Airticket.Air_go')}}</span>
<span v-else-if="din==item.FlightList.length-1">{{$t('Airticket.Air_returnTrip')}}</span>
<span
v-else-if="din>0 && din!=item.FlightList.length-1">{{$t('Airticket.Air_transit')}}</span>
</td>
<td>
<div>{{ds.Flight_number}}</div>
<div style="margin-top:5px;">{{ds.AlName}}</div>
</td>
<td>
<div>{{ds.FlightDate}} {{ds.Departure_time}}</div>
<div style="margin-top:5px;">{{ds.dName}}</div>
</td>
<td>
<div>{{ds.FlightArrivalTime}} {{ds.Arrival_time}}</div>
<div style="margin-top:5px;">{{ds.aName}}</div>
</td>
<td>{{ds.StopoverName}}</td>
</tr>
</table>
<el-button slot="reference" class="normalBtn mt5"
style='height:24px; padding: 0 10px; background: #2AAEF2; border-color: #2AAEF2;'>详情</el-button>
</el-popover>
</div>
</td>
<td>
<div class="w120 link">
<p @click="goUrlT('productQuery',item.TCNUMS,'产品查询')">{{item.TCNUMS}}</p>
</div>
</td>
<td>
<div class="w80">{{item.CreateByName}}</div>
</td>
<td>
<div class="w80">{{item.InOut}}</div>
</td>
<td>
<div class="w100 link">
<p @click="goUrlT('RegistrationList',item.TCIDS,'报名清单')">
{{item.TotalSeat}}/{{item.CommonReport.HouseStatistics.RealityYSeatNum}}/{{item.CommonReport.HouseStatistics.RealityESeatNum}}/{{item.CommonReport.HouseStatistics.RealityFSeatNum}}
</p>
</div>
</td>
<td>
<div class="w80">{{item.LeaderName}}</div>
</td>
<td>
<div class="w80">{{item.GuideName}}</div>
</td>
<td>
<div class="w80">{{item.CommonReport.BusList[0].MainBusTypeStr}} </div>
</td>
<td v-for="(x,ww) in item.CommonReport.BusList" style="vertical-align: top;">
<div class="w100">
<p class="pDateStyle">{{x.PlanDateStr}}</p>
<p class="pDateStyle" v-if="ww==0">
<template v-for="childItem in x.DetailList">
{{childItem.AirportPickUpStr!=""?childItem.AirportPickUpStr:"接机"}}<br/>
</template>
</p>
</div>
</td>
<td v-for="is in item.isCha"></td>
<td><div class="w80 fbold fz16">
<span style="color: #E95252;" v-if="item.CommonReport.BusOrderState==-1">X</span>
<span style="color: #ff6600;" v-else-if="item.CommonReport.BusOrderState==0">O</span>
<span style="color: #4BCA81;" v-else-if="item.CommonReport.BusOrderState==1"></span></div></td>
<td>
<div class="w150">
{{GetTotalPrice(item.CommonReport.BusList,item.CommonReport.HouseStatistics.RealityNum)}}
</div>
</td>
<td><div class="w100">
{{GetPeiChe(item.CommonReport.BusList)}}
</div></td>
<td :rowspan="2*outItem.StaticsReportList.length" v-if='index==0'>
<div class="w100 link">
<span @click="goUrlX('BusInfo',item,outItem,'车配信息')">详情</span>
<span @click="DownLoadFile(item,outItem.NewCombinationNum)">下载</span>
</div>
</td>
</tr>
<tr>
<td :colspan="colspanTotal" style="text-align: left!important;padding-left: 20px;">
<div class="link">
<p @click="goUrlT('productQuery',item.TCNUMS,'产品查询')">{{item.Titles}}</p>
<div v-show="item.DMCRemark!=''" class="colorE95252">地接备注:{{item.DMCRemark}}</div>
<div v-show="item.OPRemark!=''" class="colorE95252"> OP备注(对外):{{item.OPRemark}}</div>
<div v-show="item.OPInnerRemark!=''" class="colorE95252">OP备注(对内):{{item.OPInnerRemark}}</div>
</div>
</td>
</tr>
</template>
</tbody>
</table>
</div>
<el-pagination background @current-change="handleCurrentChange" :current-page.sync="currentPage" layout="total,prev, pager, next, jumper" :page-size=msg.pageSize :total=total></el-pagination>
</div>
<p class="pDateStyle" v-else-if="ww==item.CommonReport.BusList.length-1">
<template v-for="childItem in x.DetailList">
{{childItem.AirportPickUpStr!=""?childItem.AirportPickUpStr:"送机"}}<br/>
</template></p>
<p class="pDateStyle fbold fz16" v-else-if="x.AirportPickUp==0">
<span style="color: #E95252;" v-if="x.OrderState==-1">X</span>
<span style="color: #4BCA81;" v-else-if="x.OrderState>-1"></span>
</p>
</div>
</td>
<td v-for="is in item.isCha"></td>
<td>
<div class="w80 fbold fz16">
<span style="color: #E95252;" v-if="item.CommonReport.BusOrderState==-1">X</span>
<span style="color: #ff6600;" v-else-if="item.CommonReport.BusOrderState==0">O</span>
<span style="color: #4BCA81;" v-else-if="item.CommonReport.BusOrderState==1"></span></div>
</td>
<td>
<div class="w150">
{{GetTotalPrice(item.CommonReport.BusList,item.CommonReport.HouseStatistics.RealityNum)}}
</div>
</td>
<td>
<div class="w100">
{{GetPeiChe(item.CommonReport.BusList)}}
</div>
</td>
<td :rowspan="2*outItem.StaticsReportList.length" v-if='index==0'>
<div class="w100 link">
<span @click="goUrlX('BusInfo',item,outItem,'车配信息')">详情</span>
<span @click="DownLoadFile(item,outItem.NewCombinationNum)">下载</span>
</div>
</td>
</tr>
<tr>
<td :colspan="colspanTotal" style="text-align: left!important;padding-left: 20px;">
<div class="link">
<p @click="goUrlT('productQuery',item.TCNUMS,'产品查询')">{{item.Titles}}</p>
<div v-show="item.DMCRemark!=''" class="colorE95252">地接备注:{{item.DMCRemark}}</div>
<div v-show="item.OPRemark!=''" class="colorE95252"> OP备注(对外):{{item.OPRemark}}</div>
<div v-show="item.OPInnerRemark!=''" class="colorE95252">OP备注(对内):{{item.OPInnerRemark}}</div>
</div>
</td>
</tr>
</template>
</tbody>
</table>
</div>
<el-pagination background @current-change="handleCurrentChange" :current-page.sync="currentPage"
layout="total,prev, pager, next, jumper" :page-size="msg.pageSize" :total="total"></el-pagination>
</div>
</template>
<script>
export default {
data () {
return {
loading:false,
currentPage:1,
total:0,
msg:{
pageIndex:1,
pageSize:10,
SelectType:4,
LineId: 14,
LineteamId: "-1",
StartDate:'',
EndDate:'',
PriceStatus:"0"
},
LineList: [],
LineTeamList: [],
thLengthTitle:[],
list:[],
colspanTotal:0,
isCha:0,
}
export default {
data() {
return {
loading: false,
currentPage: 1,
total: 0,
msg: {
pageIndex: 1,
pageSize: 10,
SelectType: 4,
LineId: 14,
LineteamId: "-1",
StartDate: '',
EndDate: '',
PriceStatus: "0"
},
LineList: [],
LineTeamList: [],
thLengthTitle: [],
list: [],
colspanTotal: 0,
isCha: 0,
}
},
methods: {
DownLoadFile(item,NewCombinationNum) {
console.log(item)
let msg = {
TCIDS: item.TCIDS
};
this.GetLocalFile("bus_get_NewDownLoadBusConfig", msg, "バス手配依頼書"+NewCombinationNum + ".xls");
},
getLineList() {
this.apipost("line_post_GetAllList", {}, res => {
if (res.data.resultCode == 1) {
this.LineList = res.data.data;
} else {
this.$message.error(res.data.message);
}
});
},
GetTotalPrice(obj,PeopleNum){//车费总价
let totalPrice=0;
obj.forEach(busInfo => {
if(busInfo.CostPrice!=undefined){
totalPrice+=busInfo.CostPrice*(Number(busInfo.TransferNum)+1)*PeopleNum;
// totalPrice+=parseFloat(busInfo.CostPrice);
}
});
return totalPrice;
},
GetPeiChe(obj){//配车信息
let jieji="";
let songji="";
let DayNum=0;
let newObj = [];
obj.forEach((x,index) => {
if (!x.isCha) {
newObj.push(x);
}
})
obj.forEach((busInfo,index) => {
if(busInfo.AirportPickUp==1&&index==0){
jieji=busInfo.AirportPickUpStr;
}
else if(busInfo.AirportPickUp==2&&index==(obj.length-1)){
songji=busInfo.AirportPickUpStr;
}
if(busInfo.AirportPickUp==0){
if(busInfo.OrderState>-1){
DayNum+=1;
}
}
});
if(parseInt(DayNum)>0){
jieji += "+"+DayNum+"天"
}
if(songji.length>0){
jieji += "+"+songji
}
return jieji;
},
GetCheType(obj){//车型信息
let jieji="";
methods: {
DownLoadFile(item, NewCombinationNum) {
let msg = {
TCIDS: item.TCIDS
};
this.GetLocalFile("bus_get_NewDownLoadBusConfig", msg, "バス手配依頼書" + NewCombinationNum + ".xls");
},
getLineList() {
this.apipost("line_post_GetAllList", {}, res => {
if (res.data.resultCode == 1) {
this.LineList = res.data.data;
} else {
this.$message.error(res.data.message);
}
});
},
GetTotalPrice(obj, PeopleNum) { //车费总价
let totalPrice = 0;
obj.forEach(busInfo => {
if (busInfo.CostPrice != undefined) {
totalPrice += busInfo.CostPrice * (Number(busInfo.TransferNum) + 1) * PeopleNum;
}
});
return totalPrice;
},
GetPeiChe(obj) { //配车信息
let jieji = "";
let songji = "";
let allStr = "";
let DayNum = 0;
obj.forEach((busInfo, index) => {
if (index == 0) {
busInfo.DetailList.forEach(subItem => {
if (subItem.AirportPickUpStr != "") {
jieji += subItem.AirportPickUpStr + ",";
} else {
jieji += "接机,";
}
let DayNum=0;
obj.forEach((busInfo,index) => {
});
if(busInfo.AirportPickUp==0&&busInfo.OrderState>-1){
if(jieji.length==0)
{jieji=busInfo.ResultBusTypeStr}
}
});
return jieji;
},
//获取系列列表
getLineTeamList(lineId) {
this.LineTeamList = [];
this.apipost(
"team_post_GetList",
{
lineID: 14,
isTOOP: 1
},
res => {
if (res.data.resultCode == 1) {
this.msg.LineteamId = "-1";
this.LineTeamList = res.data.data;
} else if (index == (obj.length - 1)) {
busInfo.DetailList.forEach(subItem => {
if (subItem.AirportPickUpStr != "") {
songji += subItem.AirportPickUpStr + ",";
} else {
songji += "送机,";
}
});
} else {
if (busInfo.OrderState > -1) {
DayNum += 1;
}
}
});
if (parseInt(DayNum) > 0) {
allStr += jieji.substring(0, jieji.lastIndexOf(',')) + "+" + DayNum + "天"
}
);
},
goUrlX(path, obj,outItem,title){
this.$router.push({
name: path,
query: {
"TCID": obj.TCIDS,
StartDate: obj.StartDateStr,
DayNum: obj.DayNum,
TotalNumber: obj.TotalSeat, //机位总数
RealityYSeatNum:obj.CommonReport.HouseStatistics.RealityYSeatNum,
RealityESeatNum:obj.CommonReport.HouseStatistics.RealityESeatNum,
RealityFSeatNum:obj.CommonReport.HouseStatistics.RealityFSeatNum,
LeaderName:obj.LeaderName,
GuideName:obj.GuideName,
NewCombinationNum: outItem.NewCombinationNum,
blank: 'y',
title:obj.Titles,
TCNUMS:obj.TCNUMS,
InOut:obj.InOut,
RealityNum:obj.CommonReport.HouseStatistics.RealityNum,
tab: title
}
})
},
goUrlR(path,obj,title){
this.$router.push({ name:path,query:{"ID":obj,blank:'y',tab:title}})
},
goUrlT(path,obj,title){
this.$router.push({ name:path,query:{"id":obj,blank:'y',tab:title}})
},
goUrl(path,obj,title){
this.$router.push({ name:path,query:{"id":obj.TCIDS,'TCNUM':obj.TCNUMS,'flightTotal':obj.TotalSeat,'GuestNum':obj.CommonReport.HouseStatistics.RealityNum,'NewCombinationNum':obj.NewCombinationNum,blank:'y',tab:title}})
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
},
resetPageIndex() {
this.msg.pageIndex = 1;
this.currentPage = 1;
},
getList(){
this.loading=true
this.apipost('dmcstatistics_post_GetUniteCombinationNumService',this.msg,res=>{
if(res.data.resultCode==1){
this.loading=false
this.total=res.data.data.count
this.list=res.data.data.pageData.data
this.thLengthTitle=[]
this.colspanTotal=res.data.data.pageData.columnsCount+12
for(let i=1;i<=res.data.data.pageData.columnsCount;i++){
this.thLengthTitle.push('第'+i+'天')
}
this.list.forEach(outItem=>{
outItem.StaticsReportList.forEach(item=>{
if(item.CommonReport.BusList.length<res.data.data.pageData.columnsCount){
item.isCha=res.data.data.pageData.columnsCount-item.CommonReport.BusList.length
}else{
item.isCha = 0;
}
})
})
}else{
this.loading=false
this.$message.error(res.data.message)
}
},err=>{})
},
if (songji.length > 0) {
allStr += "+" + songji.substring(0, songji.lastIndexOf(','))
}
return allStr;
},
GetCheType(obj) { //车型信息
let jieji = "";
let DayNum = 0;
obj.forEach((busInfo, index) => {
if (busInfo.AirportPickUp == 0 && busInfo.OrderState > -1) {
if (jieji.length == 0) {
jieji = busInfo.ResultBusTypeStr
}
}
});
return jieji;
},
//获取系列列表
getLineTeamList(lineId) {
this.LineTeamList = [];
this.apipost(
"team_post_GetList", {
lineID: 14,
isTOOP: 1
},
res => {
if (res.data.resultCode == 1) {
this.msg.LineteamId = "-1";
this.LineTeamList = res.data.data;
}
}
);
},
goUrlX(path, obj, outItem, title) {
this.$router.push({
name: path,
query: {
"TCID": obj.TCIDS,
StartDate: obj.StartDateStr,
DayNum: obj.DayNum,
TotalNumber: obj.TotalSeat, //机位总数
RealityYSeatNum: obj.CommonReport.HouseStatistics.RealityYSeatNum,
RealityESeatNum: obj.CommonReport.HouseStatistics.RealityESeatNum,
RealityFSeatNum: obj.CommonReport.HouseStatistics.RealityFSeatNum,
LeaderName: obj.LeaderName,
GuideName: obj.GuideName,
NewCombinationNum: outItem.NewCombinationNum,
blank: 'y',
title: obj.Titles,
TCNUMS: obj.TCNUMS,
InOut: obj.InOut,
RealityNum: obj.CommonReport.HouseStatistics.RealityNum,
tab: title
}
})
},
goUrlR(path, obj, title) {
this.$router.push({
name: path,
query: {
"ID": obj,
blank: 'y',
tab: title
}
})
},
goUrlT(path, obj, title) {
this.$router.push({
name: path,
query: {
"id": obj,
blank: 'y',
tab: title
}
})
},
goUrl(path, obj, title) {
this.$router.push({
name: path,
query: {
"id": obj.TCIDS,
'TCNUM': obj.TCNUMS,
'flightTotal': obj.TotalSeat,
'GuestNum': obj.CommonReport.HouseStatistics.RealityNum,
'NewCombinationNum': obj.NewCombinationNum,
blank: 'y',
tab: title
}
})
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
},
resetPageIndex() {
this.msg.pageIndex = 1;
this.currentPage = 1;
},
getList() {
this.loading = true
this.apipost('dmcstatistics_post_GetUniteCombinationNumService', this.msg, res => {
this.loading = false;
if (res.data.resultCode == 1) {
this.total = res.data.data.count;
this.list = res.data.data.pageData.data;
this.thLengthTitle = [];
this.colspanTotal = res.data.data.pageData.columnsCount + 12;
for (let i = 1; i <= res.data.data.pageData.columnsCount; i++) {
this.thLengthTitle.push('第' + i + '天');
}
this.list.forEach(outItem => {
outItem.StaticsReportList.forEach(item => {
if (item.CommonReport.BusList.length < res.data.data.pageData.columnsCount) {
item.isCha = res.data.data.pageData.columnsCount - item.CommonReport.BusList.length;
} else {
item.isCha = 0;;
}
})
})
} else {
this.$message.error(res.data.message);
}
}, err => {})
},
},
mounted() {
let myDate = new Date();
let nowDate =
let myDate = new Date();
let nowDate =
myDate.getFullYear() +
"-" +
parseInt(myDate.getMonth() + 1) +
"-" +
myDate.getDate();
this.msg.StartDate = nowDate;
this.getList()
// this.getLineList()
this.getLineTeamList()
this.msg.StartDate = nowDate;
this.getList();
this.getLineTeamList();
},
}
</script>
}
</script>
<style>
.splitTrCss td{background: #eee!important;}
.busIconStyle>span{margin-right: 20px; font-weight: bold;}
.busStatisticsTalbe{ background: #ccc;}
.busStatisticsTalbe tr th{background: #E6E6E6;height:40px; font-size: 12px; color: #333;}
.busStatisticsTalbe tr{background: #fff;text-align: center; height: 40px;}
.busStatisticsTalbe tr td{font-size: 12px;}
.busStatisticsTalbe tr td .pDateStyle{border-bottom: 1px solid #ccc; min-height: 24px; line-height: 24px; margin-top: 0; box-sizing: content-box; padding: 0 10px;}
.busStatisticsTalbe tr td .pDateStyle:last-child{border-bottom: none;}
.busStatisticsTalbe tr td .link p:hover{text-decoration: underline; cursor: pointer;}
.busStatisticsTalbe tr td .link span:hover{text-decoration: underline; cursor: pointer;}
.busStatistics_tripDetails {padding: 0; box-shadow: 0px 1px 3px 0px #dedede; max-height: 400px;overflow-y: auto;}
.busStatistics_tripDetails .popper__arrow::after {border-bottom-color: #ededed !important;}
.busStatistics_tripDetails table { padding: 10px 0 0 20px; background-color: #ededed; border-collapse: collapse; border: 1px solid #d2d2d2; font-size: 12px;}
.busStatistics_tripDetails table th { background-color: #ededed; padding: 5px;}
.busStatistics_tripDetails table td { background-color: #ffffff; padding: 9px 15px;color: #333333;border: 1px solid #d2d2d2;}
.busStatistics_tripDetails table td._d_name {background-color: #ededed;}
.busStatistics_tripDetails table ._color_666 {color: #666666;}
.busStatistics_tripDetails table tr._color_666 th { padding: 9px 15px;}
.splitTrCss td {
background: #eee !important;
}
.busIconStyle>span {
margin-right: 20px;
font-weight: bold;
}
.busStatisticsTalbe {
background: #ccc;
}
.busStatisticsTalbe tr th {
background: #E6E6E6;
height: 40px;
font-size: 12px;
color: #333;
}
.busStatisticsTalbe tr {
background: #fff;
text-align: center;
height: 40px;
}
.busStatisticsTalbe tr td {
font-size: 12px;
}
.busStatisticsTalbe tr td .pDateStyle {
border-bottom: 1px solid #ccc;
min-height: 24px;
line-height: 24px;
margin-top: 0;
box-sizing: content-box;
padding: 0 10px;
}
.busStatisticsTalbe tr td .pDateStyle:last-child {
border-bottom: none;
}
.busStatisticsTalbe tr td .link p:hover {
text-decoration: underline;
cursor: pointer;
}
.busStatisticsTalbe tr td .link span:hover {
text-decoration: underline;
cursor: pointer;
}
.busStatistics_tripDetails {
padding: 0;
box-shadow: 0px 1px 3px 0px #dedede;
max-height: 400px;
overflow-y: auto;
}
.busStatistics_tripDetails .popper__arrow::after {
border-bottom-color: #ededed !important;
}
.busStatistics_tripDetails table {
padding: 10px 0 0 20px;
background-color: #ededed;
border-collapse: collapse;
border: 1px solid #d2d2d2;
font-size: 12px;
}
.busStatistics_tripDetails table th {
background-color: #ededed;
padding: 5px;
}
.busStatistics_tripDetails table td {
background-color: #ffffff;
padding: 9px 15px;
color: #333333;
border: 1px solid #d2d2d2;
}
.busStatistics_tripDetails table td._d_name {
background-color: #ededed;
}
.busStatistics_tripDetails table ._color_666 {
color: #666666;
}
.busStatistics_tripDetails table tr._color_666 th {
padding: 9px 15px;
}
</style>
......@@ -703,10 +703,10 @@
},
datatype: "jsonP",
success: function (data) {
//console.log("上传成功",data);
},
error: function () {
//console.log("上传失败");
}
});
if (allNum !== document.querySelectorAll(cName).length) {
......@@ -903,7 +903,7 @@
}
this.pdfLoading = false
}).catch(err => {
console.log(err)
})
},
ToWord: function (title, isPc) {
......
<style>
.sysLog_Content{
width:100%;
border-left:2px solid #D2D2D2;
margin-left:20px;
margin:40px 0 0 40px;
}
.sysLog_List{
position: relative;
......@@ -16,11 +15,15 @@
border:2px solid #58D2A7;
border-radius:50%;
margin-right:10px;
position: relative;
top:-4px;
}
.sysFirDate{
color:#38425D;
font-weight: bold;
font-size:12px;
position: relative;
top:-4px;
}
.sysContent_main{
width:894px;
......@@ -44,10 +47,14 @@
background-color: #B1B1B1;
border:2px solid #EFEFEF;
margin-right:10px;
position: relative;
top:-3px;
}
.sysFirDate_other{
color:#38425D;
font-size:12px;
position: relative;
top:-4px;
}
</style>
......@@ -57,7 +64,7 @@
<div class="sysPosi_div">
<span class="sysCircle" v-if="index==0"></span>
<span class="sysCircle_other" v-else></span>
<span style="font-size:14px;margin-right:20px;">{{item.UpdateTitle}}</span>
<span style="font-size:14px;margin-right:20px;position:relative;top:-4px;">{{item.UpdateTitle}}</span>
<span class="sysFirDate" v-if="index==0">{{item.UpdateTimeStr}}</span>
<span class="sysFirDate_other" v-else>{{item.UpdateTimeStr}}</span>
</div>
......@@ -83,7 +90,6 @@
this.apipost("sysrecord_get_GetPageList",this.msg,res => {
if (res.data.resultCode == 1) {
this.dataList = res.data.data.pageData;
console.log(this.dataList,'datalist');
} else {
this.Error(res.data.message);
}
......
......@@ -628,11 +628,11 @@ export default {
title: '酒店核算详情'
},
},{
path: '/HouseTypeList', //配房类型
name: 'HouseTypeList',
component: resolve => require(['@/components/Hotel/HouseTypeList'], resolve),
path: '/HotelQueryList', //酒店查询统计
name: 'HotelQueryList',
component: resolve => require(['@/components/Hotel/HotelQueryList'], resolve),
meta: {
title: '配房类型'
title: '酒店查询统计'
},
},
{
......@@ -2939,16 +2939,13 @@ export default {
title: '奖项列表'
}
},
{
path: '/systemLogs', //版本更新记录
name: 'systemLogs',
component: resolve => require(['@/components/systemLogs'], resolve),
meta:{
title: '版本更新记录'
}
}
]
},
{
path: '/systemLogs', //版本更新记录
name: 'systemLogs',
component: resolve => require(['@/components/systemLogs'], resolve),
},
{
path: '/permissionmanage',
name: 'PermissionManage',
......
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