<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;
    padding:10px 0 5px 0;
  }

  .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: 100%;
    z-index: 50;
    position: absolute;
    top: 0;
    left: 0;
    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;
    margin-top:-15px;
  }

  .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">
            <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>
            <el-row :gutter="10">
              <el-col :span="3" class="vmiddle">
                <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>