<style> @import "../../assets/css/newTravelManager.css"; .groupTourOrderSearch { width: 100%; min-height: auto; padding: 0 0 20px 0; } .groupTourOrderSearch li { float: left; font-size: 12px; color: #666; margin: 20px 0 0px 0; } .groupTourOrderSearch li > span { display: inline-block; } .groupTourOrderSearch li span > em { display: inline-block; min-width: 60px; text-align: right; font-style: normal; margin: 0 12px 0 0; } .groupTourOrderSearch li:last-child { position: fixed; z-index: 10; top: 36px; right: 20px; } .groupTourOrderSearch ul { overflow: hidden; } .groupTourOrderSearchTable { width: 100%; min-width: 1500px; font-size: 14px; color: #333; border-bottom: 1px solid #cccccc; border-right: 1px solid #cccccc; } .groupTourOrderSearchTable tr { border-bottom: 2px solid #333; } .groupTourOrderSearchTable tr th { background: #e6e6e6; height: 30px; font-size: 12px; text-align: left; text-indent: 15px; border-top: 1px solid #cccccc; border-left: 1px solid #cccccc; } .groupTourOrderSearchTable tr { background: #fff; text-align: left; } .groupTourOrderSearchTable tr td { height: 60px; padding: 10px; border-top: 1px solid #cccccc; border-left: 1px solid #cccccc; } .groupTourOrderSearchTable tr td p { line-height: 20px; } .groupTourOrderSearchTable span.personNo { text-decoration: underline; cursor: pointer; } .groupTourOrderSearchTable span.personNo:hover { font-weight: bold; color: #e95252; } .personNolayer p { height: 28px; line-height: 28px; padding-left: 15px; } .personNolayer p > span { font-size: 12px; color: #333; margin-right: 15px; } .personNolayer table { padding: 10px 0 0 20px; width: 100%; background-color: #ededed; border-collapse: collapse; border: 1px solid #d2d2d2; font-size: 12px; } .personNolayer table th { background-color: #ededed; height: 34px; text-indent: 15px; } .personNolayer table td { background-color: #ffffff; padding: 9px 15px; color: #333333; border: 1px solid #d2d2d2; } .personNolayer table ._color_666 { color: #666666; } .personNolayer table tr._color_666 th { padding: 9px 15px; } .groupSuperSearchLayer { } .groupSuperSearchLayer > p { padding: 20px 0; font-size: 14px; color: #333; font-weight: bold; } .groupSuperSearchLayerTable { font-size: 12px; color: #666; } .groupSuperSearchLayerTable tr { height: 50px; } .groupSuperSearchLayerTable td { padding-right: 15px; } .groupTourOrderIcon button { width: 30px; height: 30px; border-radius: 4px; } .groupTourOrderIcon .el-button--primary { padding: 5px; margin: 0; font-size: 14px !important; } .groupTourOrderIcon .el-button + .el-button { margin-left: 0 !important; } .planeTicketEdit{overflow: auto; position:fixed;height:550px;z-index:100;bottom:0;left: 0;border-top:3px solid #38425d;background-color:#FFFFFF;padding: 10px 10px 0;width: 100%;} .planeTicketEdit .el-form-item__label{font-size: 12px!important;} .planeTicketEdit>p{border-left: 3px solid #E95252; text-indent: 15px; height: 16px; font-family: 'PingFangSc-Fine'; font-size: 16px; margin-bottom:20px; line-height: 14px; color: #000;} .planeTicketEdit .el-input{width: auto!important} .productQuerybottomLayer { overflow: auto; position: fixed; min-height: 300px; z-index: 50; bottom: 0; left: 0; border-top: 3px solid #38425d; background-color: #ffffff; padding: 10px 10px 0; width: 100%; } .productQuerybottomLayer .el-form-item__label { font-size: 12px !important; } .productQuerybottomLayer > p { border-left: 3px solid #e95252; text-indent: 15px; height: 16px; font-family: "PingFangSc-Fine"; font-size: 16px; margin-bottom: 20px; line-height: 14px; color: #000; } .productQuerybottomLayer .el-input-number { width: auto !important; } .groupTourOrder_count_green{ color: #1BC594; } .groupTourOrder_count_blue{ color: #4D7AFD; } .groupTourOrder_count_yellow{ color: #FF9C00; } .groupTourOrder_count_gray{ color: #999999; } .groupTourOrder_count{ margin: 0 0 20px 0; width: 100%; height: auto; } .groupTourOrder_count_col{ height: 80px; } .groupTourOrder_count_item{ font-weight: 400; padding: 10px; height: 100%; border: 1px solid #E6E6E6; background-color: #FFFFFF; color: #333333; } .groupTourOrder_count_item>div>i{ font-size: 12px; vertical-align: bottom; } .groupTourOrder_count_item>div>span:nth-child(2){ font-size: 14px; vertical-align: bottom; } .groupTourOrder_count_item>div>span:nth-child(3){ font-weight: bold; font-size: 16px; vertical-align: bottom; } .groupTourOrder_count_item>p{ font-size: 12px; line-height: 18px; } .groupTourOrder_count_item>p>span{ margin: 0 5px 0 0; white-space: nowrap; } .groupTourOrder_more{ margin: 0 -12px; } .groupTourOrder_more>div{ width: 100%; height: 30px; line-height: 30px; text-align: center; font-size: 12px; color: #333333; background-color: #FFFFFF; cursor: pointer; } .groupTourOrder_more>div:hover{ color: #297BEF; background-color: #DCEBFF; } .groupTourOrder_remarks{ font-size: 0px; } .groupTourOrder_remarks>div{} .groupTourOrder_remarks>div>div:nth-child(1){ float: left; display: flex; align-items: flex-start; } .groupTourOrder_remarks>div>div:nth-child(1)>span{ line-height: 20px; font-size: 12px; color: #e95252; white-space: nowrap; } .groupTourOrder_remarks>div>div:nth-child(1)>p{ line-height: 20px; font-size: 12px; color: #e95252; } .groupTourOrder_remarks>div>div:nth-child(2){ float: right; text-align: right; font-size: 12px; color: #e95252; } .groupTourOrder_remarks>div>div:nth-child(2)>i{ font-size: 10px; cursor: pointer; } .groupTourOrder_remarks>div::after{ display:block; clear:both; content:""; visibility:hidden; height:0; } .groupTourOrder_remarks_btn{ padding: 0px; width: 12px; height:12px; border:none; background-color: transparent; } .groupTourOrder_remarks_btn>i{ color: #e95252; font-size: 12px; } .groupTourOrder_remarks_popover>div{ display: inline-block; font-size: 14px; color: #000000; } .groupTourOrder_remarks_popover>div::before{ content: ''; display: inline-block; margin: 0 5px 0 0; width: 2px; height: 12px; background-color: #e95252; } .groupTourOrder_remarks_popover>span{ display: block; margin: 0 0 0 0; width: 100%; text-align: center; font-size: 12px; color: #000000; } .groupTourOrder_remarks_popover>p{ margin: 5px 0 0 0; padding: 3px; width: 100%; max-height: 300px; overflow-y: auto; font-size: 12px; color: #000000; } .groupTourOrder_remarks_popover>p:nth-child(even){ background-color: #E6E6E6; } .groupTourOrder_remarks_popover>p>span:nth-child(1){ float: left; } .groupTourOrder_remarks_popover>p>span:nth-child(2){ margin: 0 10px 0 0; float: right; } .groupTourOrder_remarks_popover>p::after{ display:block; clear:both; content:""; visibility:hidden; height:0; } .groupTourOrder_tickets>div{ display: table; } .groupTourOrder_tickets>div>div{ display: table-cell; cursor: pointer; } .groupTourOrder_tickets>div>div:nth-child(1){ width: 80px; } .groupTourOrder_tickets>div>div>span{ display: inline-block; margin: 0 10px 0 0; } .groupTourOrder_tickets_red{ color: #FF0000; text-decoration: underline; } .groupTourOrder_tickets_blue{ color: #0000FF; text-decoration: underline; } .groupTourOrder_tickets_green{ color: #008000; text-decoration: underline; } .groupTourOrderByTuan_ico{ margin: 0 10px 0 0; } .groupTourOrderByTuan_ico>i{ display: inline-block; margin: 0 2px 0 0; width: 8px; height: 8px; border-radius: 2px; vertical-align: middle; } .groupTourOrderByTuan_ico>span{ vertical-align: middle; } .groupTourOrder_transfer{ position: fixed; z-index: 50; bottom: 0; left: 0; padding: 10px 10px; width: 100%; min-width: 1366px; min-height: 200px; border-top: 3px solid #38425d; background-color: #ffffff; overflow-y: auto; } .groupTourOrder_transfer>.transfer_header{ position: relative; width: 100%; height: 30px; } .groupTourOrder_transfer>.transfer_header>div:nth-child(1){ display: inline-block; padding: 0 10px; width: 200px; height: 30px; line-height: 30px; border-left: 3px solid #e95252; text-indent: 10px; font-size: 16px; color: #000000; } .groupTourOrder_transfer>.transfer_header>div:nth-child(2){ position: absolute; top: 0px; right: 0px; height: 30px; } .groupTourOrder_transfer>.transfer_header>div:nth-child(2)>div:nth-child(1){ display: inline-block; padding: 0 15px; height: 30px; line-height: 28px; font-size: 14px; color: #E95252; border: 1px solid #E95252; background: #fff; border-radius: 15px; cursor: pointer; vertical-align: top; } .groupTourOrder_transfer>.transfer_header>div:nth-child(2)>div:nth-child(2){ display: inline-block; margin: 0 0 0 10px; padding: 0 15px; height: 30px; line-height: 28px; font-size: 14px; color: #fff; border: 1px solid #E95252; background: #E95252; border-radius: 15px; cursor: pointer; vertical-align: top; } .groupTourOrder_transfer>.transfer_info{ padding: 20px 0; width: 100%; font-size: 0px; border-bottom: 1px dashed #999999; } .groupTourOrder_transfer>.transfer_info>div{ display: inline-block; padding: 0 10px; width: 25%; height: 30px; vertical-align: top; } .groupTourOrder_transfer>.transfer_info>div>em{ display: inline-block; padding: 0 10px; width: 35%; height: 30px; line-height: 30px; text-align: right; font-size: 16px; vertical-align: top; } .groupTourOrder_transfer>.transfer_info>div>span{ display: inline-block; padding: 0 10px; width: 65%; height: 30px; line-height: 30px; text-align: left; font-size: 16px; border-radius: 3px; background-color: #E5E5E5; vertical-align: top; } .groupTourOrder_transfer>.transfer_input{ padding: 20px 0; width: 100%; font-size: 0px; } .groupTourOrder_transfer>.transfer_input>div{ display: inline-block; padding: 0 10px; width: 25%; height: 30px; vertical-align: top; } .groupTourOrder_transfer>.transfer_input>div>em{ display: inline-block; padding: 0 10px; width: 35%; height: 30px; line-height: 30px; text-align: right; font-size: 16px; vertical-align: top; } .groupTourOrder_transfer>.transfer_input>div>.el-input{ display: inline-block; width: 65%; height: 30px; line-height: 30px; text-align: left; font-size: 14px; vertical-align: top; } </style> <template> <div class="flexOne" style="min-width: 1200px;"> <!-- 修改信息 --> <div class="planeTicketEdit ownScrollbarStyle" v-show="isShowLayer" > <p>{{$t('pub.updateMsg')}} <span class="fr"> <input type="button" class="hollowFixedBtn" :value="$t('pub.cancelBtn')" @click="cancelSubmit()"/> <input type="button" class="normalBtn" :value="$t('pub.saveBtn')" @click="submitForm('addMsg')"/> </span> </p> <el-form :model="addMsg" ref="addMsg" label-position="right" :rules="rules" label-width="80px"> <el-row :gutter="20"> <el-col :span="4"> <el-form-item :label="$t('fnc.khleixing')" prop="CustomerType"> <el-select v-model='addMsg.CustomerType' filterable :placeholder="$t('pub.pleaseSel')" @change='getTypePrice' :disabled="true"> <el-option v-for="item in khlxList" :label='item.Name' :value='item.Id' :key='item.Id'> </el-option> </el-select> </el-form-item> <el-form-item :label="$t('fnc.ctleixing')" prop="GroupType"> <el-select v-model='addMsg.GroupType' disabled filterable :placeholder="$t('pub.pleaseSel')"> <el-option v-for="item in ctlxList" :label='item.Name' :value='item.Id' :key='item.Id'> </el-option> </el-select> </el-form-item> </el-col> <el-col :span="4"> <el-form-item :label="$t('hotel.suplier_contact')" prop="ContactName" v-show='addMsg.CustomerType==3||addMsg.CustomerType==4'> <el-input v-model='addMsg.ContactName'></el-input> </el-form-item> <el-form-item :label="$t('restaurant.res_ContactNumber')" prop="ContactMobile" v-show='addMsg.CustomerType==3||addMsg.CustomerType==4'> <el-input v-model='addMsg.ContactMobile'></el-input> </el-form-item> <el-form-item :label="$t('salesModule.CustomerStore')" prop="CustomerId" v-show="addMsg.CustomerType==1||addMsg.CustomerType==2||addMsg.CustomerType==''" > <el-select v-model='addMsg.CustomerId' filterable :placeholder="$t('pub.pleaseSel')" @change='getSspt' :disabled="true"> <el-option v-for="item in khmdList" :label='item.customerName' :value='item.customerId' :key='item.customerId'> </el-option> </el-select> </el-form-item> </el-col> <!-- <el-col :span="4"> <el-form-item label="出发城市" prop="DepartureCityId"> <el-select v-model='addMsg.DepartureCityId' :disabled="IsUnion===1" filterable :placeholder="$t('pub.pleaseSel')" @change="addMsg.IsIntermodal=2"> <el-option v-for="item in startCityList" :label='item.Name' :value='item.ID' :key='item.ID'> </el-option> </el-select> </el-form-item> <el-form-item label="是否联运" prop="IsIntermodal" v-show="addMsg.DepartureCityId!=SetOutCityId"> <el-switch v-model="addMsg.IsIntermodal" active-value="1" inactive-value="2" @change='getUnionTravelPrice(addObj,1)'></el-switch> </el-form-item> <el-form-item label="联运时间" prop="GoCityTime" v-show='addMsg.IsIntermodal==1&&addMsg.DepartureCityId!=SetOutCityId'> <el-date-picker :picker-options="pickerOptions0" v-model='addMsg.GoCityTime' value-format="yyyy-MM-dd" type="date" @change='getUnionTravelPrice(addObj,1)'></el-date-picker> </el-form-item> </el-col> --> <!-- <el-col :span="4"> <el-form-item label="返回城市" prop="ReturnArriveCityId"> <el-select v-model='addMsg.ReturnArriveCityId' :disabled="IsUnion===1" filterable :placeholder="$t('pub.pleaseSel')" @change="addMsg.IsReturnIntermodal=2"> <el-option v-for="item in startCityList" :label='item.Name' :value='item.ID' :key='item.ID'> </el-option> </el-select> </el-form-item> <el-form-item label="是否联运" prop="IsReturnIntermodal" v-show="addMsg.ReturnArriveCityId!=reOutCityId"> <el-switch v-model="addMsg.IsReturnIntermodal" active-value="1" inactive-value="2" @change='getUnionTravelPrice(addObj,2)'></el-switch> </el-form-item> <el-form-item label="联运时间" prop="IsReturnIntermodal" v-show='addMsg.IsReturnIntermodal==1&&addMsg.ReturnArriveCityId!=reOutCityId'> <el-date-picker :picker-options="pickerOptions1" v-model='addMsg.BackCityTime' value-format="yyyy-MM-dd" type="date" @change='getUnionTravelPrice(addObj,2)'></el-date-picker> </el-form-item> </el-col> --> <el-col :span="4"> <el-form-item :label="$t('salesModule.TeamPrice')" prop="TC_Price"> <el-input v-model='addMsg.TC_Price' :disabled="true"></el-input> </el-form-item> <el-form-item :label="$t('salesModule.StartLY')" v-show='addMsg.IsIntermodal==1&&addMsg.DepartureCityId!=SetOutCityId'> <el-input v-model='stratPrice' v-show='stratPriceShow' :disabled="true"></el-input> <span class="colorE95252" v-show='!stratPriceShow'>{{$t('pub.NoPrice')}}!</span> </el-form-item> <el-form-item :label="$t('salesModule.BackLY')" v-show='addMsg.IsReturnIntermodal==1&&addMsg.ReturnArriveCityId!=reOutCityId'> <el-input v-model='returnPrice' v-show='returnPriceShow' :disabled="true"></el-input> <span class="colorE95252" v-show='!returnPriceShow'>{{$t('pub.NoPrice')}}!</span> </el-form-item> </el-col> <el-col :span="4"> <el-form-item :label="$t('fnc.cjdanjia')" prop="Unit_Price"> <el-input v-model='addMsg.Unit_Price' @keyup.native="checkPrice(addMsg,'Unit_Price');getTotalPrice()" ></el-input> </el-form-item> <!-- <el-form-item> <p style="line-height: 18px; color: #E95252;">注:如果超出本团的最低让价,差价将由你来承担</p> </el-form-item> --> </el-col> <el-col :span="4"> </el-col> <el-col :span="4"> </el-col> </el-row> <div style="width: 100%; border-top:1px dashed #ccc;margin-bottom:25px;"></div> <el-row :gutter="20"> <el-col :span="4"> <el-form-item :label="$t('salesModule.AdultNum')" prop="ManNum"> <el-input v-model='addMsg.ManNum' @keyup.native="checkInteger(addMsg,'ManNum')" @input='getNumber();getHouseNo();getTotalPrice()'></el-input> </el-form-item> </el-col> <el-col :span="4"> <!-- <p v-if='IsChildrenTour==2' style="color: #E95252; font-size: 12px; line-height: 40px; text-align: center;">本团不支持儿童出游!</p> --> <el-form-item :label="$t('salesModule.ChildNum')" prop="ChirdNoNeedBedNum"> <el-input v-model='addMsg.ChirdNoNeedBedNum' @keyup.native="checkInteger(addMsg,'ChirdNoNeedBedNum')" @input='getNumber();getHouseNo();getTotalPrice()' ></el-input> </el-form-item> </el-col> <!-- <el-col :span="4" v-if='IsChildrenTour==1'> <el-form-item label="儿童占床" prop="ChirdNeedBedNum"> <el-input v-model='addMsg.ChirdNeedBedNum' @keyup.native="checkInteger(addMsg,'ChirdNeedBedNum')" @input='getNumber();getHouseNo();getTotalPrice()'></el-input> </el-form-item> </el-col> --> <el-col :span="4"> <el-form-item :label="$t('salesModule.BabyNum')" prop="BabyNum"> <el-input v-model='addMsg.BabyNum' @keyup.native="checkInteger(addMsg,'BabyNum')" @input='getNumber();getTotalPrice();getTotalPrice()'></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item :label="$t('salesModule.OldPeopleNum')" prop="OldPeopleNum"> <el-input v-model='addMsg.OldPeopleNum' @keyup.native="checkInteger(addMsg,'OldPeopleNum')" @input='getNumber();getHouseNo();getTotalPrice()'></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="签证数量" prop="VisaNum"> <el-input v-model='addMsg.VisaNum' @keyup.native="checkInteger(addMsg,'VisaNum')" @input='getTotalPrice();'></el-input> </el-form-item> </el-col> <!-- <el-col :span="4"> <el-form-item label="单地接数量" prop="AirticketNum"> <el-input v-model='addMsg.AirticketNum' @keyup.native="checkInteger(addMsg,'AirticketNum')" @input='getNumber();getTotalPrice();getHouseNo()'></el-input> </el-form-item> </el-col> --> </el-row> <!-- <el-row :gutter="20"> <el-col :span="4"> <el-form-item label="单房数量" prop="SingleRoomNum"> <el-input v-model='addMsg.SingleRoomNum' @keyup.native="checkInteger(addMsg,'SingleRoomNum')" @input='yzBigBed2();getTotalPrice()'></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="大床房" prop="BigRoomNum"> <el-input v-model='addMsg.BigRoomNum' @keyup.native="checkInteger(addMsg,'BigRoomNum')" @input='yzBigBed();getTotalPrice()'></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="三人房" prop="TripleRoomNum"> <el-input v-model='addMsg.TripleRoomNum' @keyup.native="checkInteger(addMsg,'TripleRoomNum')" @input='yzBigBed1();getTotalPrice()'></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="保险数量" prop="SaleNum"> <el-input v-model='addMsg.SafeNum' @keyup.native="checkInteger(addMsg,'SafeNum')" @input='getTotalPrice();yzSafeNum()'></el-input> </el-form-item> </el-col> <el-col :span="4"> </el-col> </el-row> --> <el-row :gutter="20"> <!-- <el-col :span="4"> <el-form-item label="预计用房" prop="PredictRoomNum"> <el-input v-model='addMsg.PredictRoomNum' :disabled="true"></el-input> </el-form-item> </el-col> --> <el-col :span="4"> <el-form-item :label="$t('fnc.yszonge')" prop="PreferPrice"> <el-input v-model='addMsg.PreferPrice' :disabled="true"></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item :label="$t('salesModule.YJTC')" prop="Commission"> <el-input v-model='addMsg.Commission' :disabled="true"></el-input> </el-form-item> </el-col> <el-col :span="4" v-show="addMsg.CustomerType==1||addMsg.CustomerType==2" > <el-form-item :label="$t('salesModule.SharePeople')" prop="CommissionSharePeople"> <el-select :disabled="isUpdateSharePeople" filterable clearable @change='getTicheng' v-model='addMsg.CommissionSharePeople' :placeholder="$t('pub.pleaseSel')"> <el-option :label="$t('fnc.no')" :value='comSelect'></el-option> <el-option v-for='item in employeeList' :label='item.EmName' :value='item.EmployeeId' :key='item.EmployeeId'></el-option> </el-select> </el-form-item> </el-col> <el-col :span="4" v-show="addMsg.CommissionSharePeople!='-1'&&(addMsg.CustomerType==1||addMsg.CustomerType==2)"> <el-form-item :label="$t('salesModule.ShareMoney')" prop="CommissionShareMoney"> <el-input v-model='addMsg.CommissionShareMoney' :disabled="true"></el-input> </el-form-item> </el-col> <el-col :span="4"> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="4"> <el-form-item :label="$t('Airticket.Air_EconomyClass')" prop="YSeatNum"> <el-input v-model='addMsg.YSeatNum' @keyup.native="checkInteger(addMsg,'YSeatNum')" ></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item :label="$t('Airticket.Air_businessClass')" prop="ESeatNum"> <el-input v-model='addMsg.ESeatNum' :disabled="true"></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item :label="$t('Airticket.Air_firstClass')" prop="FSeatNum"> <el-input v-model='addMsg.FSeatNum' :disabled="true"></el-input> </el-form-item> </el-col> <!-- <el-col :span="4"> <el-form-item label="单地接数量" prop="AirticketNum"> <el-input v-model='addMsg.AirticketNum' @keyup.native="checkInteger(addMsg,'AirticketNum')" @input='getTotalPrice();getHouseNo()'></el-input> </el-form-item> </el-col> --> <!-- <el-col :span="4"> <el-form-item label="可退景点"> <el-select filterable multiple class='multiple_input' v-model='addMsg.ScenicRefundArr' :placeholder="$t('pub.pleaseSel')" @change='ScenicRefundMethods'> <el-option v-for='item in ScenicRefundList' :label='item.ScenicName' :value='item.Id' :key='item.Id'> </el-option> </el-select> </el-form-item> </el-col> --> <el-col :span="4"> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="4"> <el-form-item :label="$t('salesModule.CustomFrom')" prop="ClientSource"> <el-select v-model='addMsg.ClientSource' :disabled="true" filterable :placeholder="$t('pub.pleaseSel')"> <el-option v-for="item in ddlyList" :label='item.Name' :value='item.Id' :key='item.Id'> </el-option> </el-select> </el-form-item> </el-col> <el-col :span="4" > <el-form-item :label="$t('salesModule.SSPT')" prop="BrandId" v-show="addMsg.ClientSource==1"> <el-select v-model='addMsg.BrandId' :disabled="false" filterable :placeholder="$t('pub.pleaseSel')"> <el-option v-for="item in ssptList" :label='item.brandName' :value='item.dictId' :key='item.dictId'> </el-option> </el-select> </el-form-item> </el-col> <el-col :span="4"> <el-form-item :label="$t('tips.jiaoyifangshi')" prop="TradeWay" v-show='addMsg.ClientSource==1'> <el-select v-model='addMsg.TradeWay' :disabled="true" filterable :placeholder="$t('pub.pleaseSel')"> <el-option v-for="item in jyfsList" :label='item.Name' :value='item.Id' :key='item.Id'> </el-option> </el-select> </el-form-item> </el-col> <el-col :span="4" v-if='addMsg.TradeWay==1'> <el-form-item :label="$t('salesModule.PlatOrder')" prop="PlatformOrder"> <el-input v-model='addMsg.PlatformOrder' @input='platformOrderMethods' :disabled="isAllowUpdate==0"></el-input> </el-form-item> </el-col> <el-col :span="4" v-show="addMsg.PlatformOrder!=''"> <el-form-item :label="$t('salesModule.Deposit')" prop="MinOrderPrice"> <el-input v-model='addMsg.MinOrderPrice' @keyup.native="checkPrice(addMsg,'MinOrderPrice')"></el-input> </el-form-item> </el-col> <el-col :span="4" v-if="addMsg.TradeWay==1&&addMsg.PlatformOrder!=''"> <el-form-item :label="$t('fnc.fyleixing')" prop="CostType"> <el-select v-model="addMsg.CostType" :placeholder="$t('rule.qxzfyleixing')"> <el-option v-for='item in fylxList' :label="item.Name" :value="item.ID" :key='item.ID'> </el-option> </el-select> </el-form-item> </el-col> <el-col :span="4" v-if="addMsg.TradeWay==1&&addMsg.PlatformOrder!=''"> <el-form-item :label="$t('fnc.jiaoyiriqi')" prop="TradeDate"> <el-date-picker v-model='addMsg.TradeDate' value-format="yyyy-MM-dd" type="date"></el-date-picker> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="24"> <el-form-item :label="$t('pub.pubRemark')" prop="Remarks"> <el-input v-model='addMsg.Remarks' type='textarea' maxlength='500'></el-input> </el-form-item> </el-col> </el-row> </el-form> </div> <!-- 修改房型 --> <div class="productQuerybottomLayer ownScrollbarStyle" v-show="isShowHouse" > <p>{{$t('salesModule.UpdateRoom')}} <span class="fr"> <input type="button" class="hollowFixedBtn" :value="$t('pub.cancelBtn')" @click="houseCancel()"/> <input type="button" class="normalBtn" :value="$t('pub.saveBtn')" @click="houseSubmit()"/> </span> </p> <el-form :model="addMsg" ref="addMsg" label-position="right" :rules="rules" label-width="80px"> <el-row :gutter="20"> <el-col :span="4"> <el-form-item :value="$t('salesModule.AdultNum')" prop="ManNum"> <el-input v-model='addMsg.ManNum' :disabled="true"></el-input> </el-form-item> </el-col> <el-col :span="4"> <p v-if='IsChildrenTour==2' style="color: #E95252; font-size: 12px; line-height: 40px; text-align: center;">{{$t('salesModule.NoSupplier')}}!</p> <el-form-item v-if='IsChildrenTour==1' :value="$t('Operation.Op_childNobed')" prop="ChirdNoNeedBedNum"> <el-input v-model='addMsg.ChirdNoNeedBedNum' :disabled="true"></el-input> </el-form-item> </el-col> <el-col :span="4" v-if='IsChildrenTour==1'> <el-form-item :value="$t('Operation.Op_childBed')" prop="ChirdNeedBedNum"> <el-input v-model='addMsg.ChirdNeedBedNum' :disabled="true"></el-input> </el-form-item> </el-col> <el-col :span="4" v-if='IsChildrenTour==1'> <el-form-item :value="$t('salesModule.BabyNum')" prop="BabyNum"> <el-input v-model='addMsg.BabyNum' :disabled="true"></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item :value="$t('Operation.OldPeopleNum')" prop="OldPeopleNum"> <el-input v-model='addMsg.OldPeopleNum' :disabled="true"></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item :value="$t('Operation.SingDNum')" prop="AirticketNum"> <el-input v-model='addMsg.AirticketNum' :disabled="true"></el-input> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="4"> <el-form-item :value="$t('Operation.SingleRoomNum')" prop="SingleRoomNum"> <el-input v-model='addMsg.SingleRoomNum' @keyup.native="checkInteger(addMsg,'SingleRoomNum')" @input='yzBigBed2();getTotalPrice()'></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item :value="$t('Operation.BigRoomNum')" prop="BigRoomNum"> <el-input v-model='addMsg.BigRoomNum' @keyup.native="checkInteger(addMsg,'BigRoomNum')" @input='yzBigBed();getTotalPrice()'></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item :value="$t('Operation.TripleRoomNum')" prop="TripleRoomNum"> <el-input v-model='addMsg.TripleRoomNum' @keyup.native="checkInteger(addMsg,'TripleRoomNum')" @input='yzBigBed1();getTotalPrice()'></el-input> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="4"> <el-form-item :value="$t('Operation.PredictRoomNum')" prop="PredictRoomNum"> <el-input v-model='addMsg.PredictRoomNum' :disabled="true"></el-input> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="24"> <el-form-item :value="$t('pub.pubRemark')" prop="Remarks"> <el-input v-model='addMsg.Remarks' type='textarea' maxlength='500'></el-input> </el-form-item> </el-col> </el-row> </el-form> </div> <!-- 修改备注 --> <div class="productQuerybottomLayer ownScrollbarStyle" v-show="isShowLayerRemarks" style="height: 150px;min-height:150px;"> <p>{{$t('salesModule.UpRemarks')}} <span class="fr"> <input type="button" class="hollowFixedBtn" :value="$t('pub.cancelBtn')" @click="cancelSubmitRemarks()"/> <input type="button" class="normalBtn" :value="$t('pub.saveBtn')" @click="submitFormRematks('remarksMsg')"/> </span> </p> <el-form :model="remarksMsg" ref="remarksMsg" label-position="right" :rules="RemarksRules" label-width="80px"> <el-row :gutter="20"> <el-col :span="24"> <el-form-item :label="$t('pub.pubRemark')" prop="Remarks"> <el-input v-model='remarksMsg.Remarks' type='textarea' maxlength='500'></el-input> </el-form-item> </el-col> </el-row> </el-form> </div> <div class="groupTourOrderSearch"> <ul> <li><span><em>{{$t('advmanager.v_line')}}</em> <el-select class='w150' v-model="msg.LineId" filterable :placeholder="$t('pub.pleaseSel')" @change="getLineTeamList(msg.LineId)"> <el-option :label="$t('pub.unlimitedSel')" 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>{{$t('advmanager.v_xilie')}}</em> <el-select class='w150' v-model="msg.LineteamId" filterable :placeholder="$t('pub.pleaseSel')"> <el-option :label="$t('pub.unlimitedSel')" 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>{{$t('visa.v_tuanhao')}}</em><el-input v-model='msg.TCNUM' class='w150'></el-input> </span> </li> <li> <span> <em>{{$t('hotel.order_Number')}}</em><el-input v-model='msg.tempOrderId' class='w150' @keyup.native="checkInteger(msg,'tempOrderId')" maxlength="8"></el-input> </span> </li> <li><span><em>{{$t('scen.sc_ftTime')}}</em> <el-date-picker v-model='msg.QStartDate' @change="dataDui2()" class='w150' value-format="yyyy-MM-dd" type="date"></el-date-picker> - <el-date-picker v-model='msg.QEndDate' @change="dataDui2()" class='w150' value-format="yyyy-MM-dd" type="date"></el-date-picker> </span> </li> <li style="line-height: 30px; padding-left: 30px;"> <el-popover width="520" trigger="click"> <div class="groupSuperSearchLayer"> <p>{{$t('visa.v_tkgjcx')}}</p> </div> <table class="groupSuperSearchLayerTable" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="70">{{$t('scen.sc_cp')}}</td> <td> <el-select v-model='msg.OutBranchId' filterable :placeholder="$t('pub.pleaseSel')"> <el-option :label="$t('pub.unlimitedSel')" value='-1'></el-option> <el-option v-for="item in companyList" :label='item.bName' :value='item.id' :key='item.id'> </el-option> </el-select> </td> <td width="70">{{$t('salesModule.ApplyStatus')}}付款状态</td> <td> <el-select v-model='msg.PayStatus' filterable :placeholder="$t('pub.pleaseSel')"> <el-option :label="$t('pub.unlimitedSel')" value='-1'></el-option> <el-option :label="$t('salesModule.DSDJ')" value='1'></el-option> <el-option :label="$t('salesModule.DSWK')" value='2'></el-option> </el-select> </td> </tr> <tr> <td>{{$t('fnc.bmriqi')}}</td> <td colspan="3"> <el-date-picker v-model='msg.CStartDate' @change="dataDui()" class='w135' value-format="yyyy-MM-dd" type="date"></el-date-picker> - <el-date-picker v-model='msg.CEndDate' @change="dataDui()" class='w135' value-format="yyyy-MM-dd" type="date"></el-date-picker> </td> </tr> <tr> <td width="70">{{$t('hotel.hotel_OrderStates')}}</td> <td> <el-select v-model='msg.OrderState' filterable :placeholder="$t('pub.pleaseSel')"> <el-option :label="$t('pub.unlimitedSel')" value='-1'></el-option> <el-option v-for="item in ddztList" :label='item.Name' :value='item.Id' :key='item.Id'> </el-option> </el-select> </td> <td width="70">{{$t('fnc.khleixing')}}</td> <td> <el-select v-model='msg.CustomerType' filterable :placeholder="$t('pub.pleaseSel')"> <el-option :label="$t('pub.unlimitedSel')" value='-1'></el-option> <el-option v-for="item in khlxList" :label='item.Name' :value='item.Id' :key='item.Id'> </el-option> </el-select> </td> </tr> <tr> <td width="70">{{$t('fnc.khmingcheng')}}</td> <td> <el-input v-model='msg.ContactName'></el-input> </td> <td width="70">{{$t('salesModule.BMLX')}}</td> <td> <el-select v-model='msg.GroupType' filterable :placeholder="$t('pub.pleaseSel')"> <el-option :label="$t('pub.unlimitedSel')" value='-1'></el-option> <el-option v-for="item in ctlxList" :label='item.Name' :value='item.Id' :key='item.Id'> </el-option> </el-select> </td> </tr> <tr> <td width="70">{{$t('hotel.order_Form')}}</td> <td> <el-select v-model='msg.OrderSource' filterable :placeholder="$t('pub.pleaseSel')"> <el-option :label="$t('pub.unlimitedSel')" value='-1'></el-option> <el-option v-for="item in ddlyList" :label='item.Name' :value='item.Id' :key='item.Id'> </el-option> </el-select> </td> <td colspan="2"></td> </tr> <tr> <td colspan="4"> <input type="button" class="normalBtn" :value="$t('pub.searchBtn')" @click="getList();resetPageIndex()" style="width: 476px!important;" /> </td> </tr> </table> <span slot="reference" style="cursor: pointer;">{{$t('visa.v_gjchaxun')}}<i class="el-icon-caret-bottom"></i></span> </el-popover> </li> <li> <input type="button" class="hollowFixedBtn" :value="$t('pub.searchBtn')" @click="getList();resetPageIndex()" /> </li> </ul> </div> <!-- 统计版块 --> <div class="groupTourOrder_count"> <el-row :gutter="20"> <el-col :span="5" class="groupTourOrder_count_col"> <div class="groupTourOrder_count_item"> <div> <i class="iconfont icon-baomingrenshu groupTourOrder_count_green"></i> <span>{{$t('fnc.bmzrenshu')}}</span> <span>{{countData.TotalGuestNum}}</span> </div> <p> <span>{{$t('Airticket.Air_EconomyClass')}}:{{countData.TotalYSeatNum}};</span> <span>{{$t('Airticket.Air_businessClass')}}:{{countData.TotalESeatNum}};</span> <span>{{$t('Airticket.Air_firstClass')}}:{{countData.TotalFSeatNum}};</span> </p> </div> </el-col> <el-col :span="4" class="groupTourOrder_count_col"> <div class="groupTourOrder_count_item"> <div class="groupTourOrder_count_blue"> <i class="iconfont icon-baomingrenshu"></i> <span>{{$t('fnc.zcbmrenshu')}}</span> <span>{{countData.NormalGuestNum}}</span> </div> <p> <span>{{$t('Airticket.Air_EconomyClass')}}:{{countData.NormalYSeatNum}};</span> <span>{{$t('Airticket.Air_businessClass')}}:{{countData.NormalESeatNum}};</span> <span>{{$t('Airticket.Air_firstClass')}}:{{countData.NormalFSeatNum}};</span> </p> </div> </el-col> <el-col :span="4" class="groupTourOrder_count_col"> <div class="groupTourOrder_count_item"> <div class="groupTourOrder_count_yellow"> <i class="iconfont icon-baomingrenshu"></i> <span>{{$t('fnc.qxrenshu')}}</span> <span>{{countData.CancelGuestNum}}</span> </div> <p> <span>{{$t('Airticket.Air_EconomyClass')}}:{{countData.CancelYSeatNum}};</span> <span>{{$t('Airticket.Air_businessClass')}}:{{countData.CancelESeatNum}};</span> <span>{{$t('Airticket.Air_firstClass')}}:{{countData.CancelFSeatNum}};</span> </p> </div> </el-col> <el-col :span="4" class="groupTourOrder_count_col"> <div class="groupTourOrder_count_item"> <div> <i class="iconfont icon-tongji1 groupTourOrder_count_gray"></i> <span>{{$t('fnc.qtxtongji')}}</span> </div> <p> <span>{{$t('fnc.nbbaoming')}}:{{countData.InteriorNum}};</span> <span>{{$t('fnc.B2BWAP')}}:{{countData.B2BNum}};</span> </p> </div> </el-col> <el-col :span="4" class="groupTourOrder_count_col"> <div class="groupTourOrder_count_item"> <div> <i class="iconfont icon-tongji1 groupTourOrder_count_gray"></i> <span>{{$t('fnc.cwdjshuoming')}}</span> </div> <p> <span class="groupTourOrderByTuan_ico"><i style="background-color:#0000ff"></i><span>{{$t('fnc.a_shezhong')}}</span></span> <span class="groupTourOrderByTuan_ico"><i style="background-color:#008000"></i><span>{{$t('salesModule.AuditCompleted')}}</span></span> <span class="groupTourOrderByTuan_ico"><i style="background-color:#ff0000"></i><span>{{$t('fnc.a_wshenhe')}}</span></span> </p> </div> </el-col> <el-col :span="3" class="groupTourOrder_count_col"> <div class="groupTourOrder_count_item"> <div> <i class="iconfont icon-tongji1 groupTourOrder_count_gray"></i> <span>{{$t('salesModule.LJTC')}}</span> </div> <p> <span>{{$t('salesModule.TCmoney')}}:{{countData.SumCommissionMoney}};</span> </p> </div> </el-col> </el-row> </div> <!-- 表格 --> <div style="width: 100%; height: auto; overflow-x: auto;" class="ownScrollbarStyle"> <table class="groupTourOrderSearchTable" border="0" cellspacing="0" cellpadding="0" v-loading='loading'> <tr> <th width="120">{{$t('fnc.danhao')}}&{{$t('visa.v_tuanhao')}}</th> <th width="70">{{$t('admin.admin_type')}}</th> <th width="150">{{$t('advmanager.v_xilie')}}&{{$t('advmanager.v_line')}}</th> <th width="160">{{$t('pub.date')}}</th> <th width="60">{{$t('admin.admin_personNumber')}}</th> <th width="80">{{$t('fnc.danjia')}}</th> <th width="80">{{$t('fnc.cjdanjia')}}成交单价</th> <th width="80">{{$t('fnc.yszonge')}}</th> <th width="80">{{$t('fnc.shishou')}}</th> <th width="80">{{$t('fnc.tuikuan')}}</th> <th width="80">{{$t('fnc.ptshuijin')}}</th> <th width="80">{{$t('admin.admin_status')}}</th> <th width="120">{{$t('fnc.khxinxi')}}</th> <th width="200">{{$t('system.table_operation')}}</th> </tr> <tr> <td v-show="list.length==0" colspan="14" align="center">{{$t('system.content_noData')}}</td> </tr> <tbody v-for="(item,index) in list" :key="index"> <tr> <td rowspan="2"> <p class="fbold over_ellipsis" style="width: 100%;cursor:pointer;" :title="item.orderId" @click="goUrlX('团报名清单','groupTourOrderByTuan',item.tcid,item.tcnum)">{{item.orderId}}</p> <p class="fz12 over_ellipsis" style="width: 100%;text-decoration:underline;cursor:pointer;" :title="item.alName" @click="goUrlX('产品查询','productQuery',item.tcid,item.tcnum)">{{item.tcnum}}</p> <p class="fz12 over_ellipsis" style="width: 100%;">{{item.commissionSPeopleName}}</p> <p v-if='item.commissionMoney' style="color:red">{{$t('salesModule.Commission')}}:{{item.commissionMoney}} {{item.commissionCurrency}}</p> <p v-else-if="item.latestCommissionMoney" style="color:red">{{$t('salesModule.Commission')}}:{{item.latestCommissionMoney}}</p> </td> <td> <p class="fz12 over_ellipsis" style="width: 100%;">{{item.orderTypeName}}</p> </td> <td class="fz12"> <p style="max-width: 160px;display: block;" class="over_ellipsis" :title="item.lineName"> <span>{{item.lineName}}</span> </p> <p style="max-width: 160px;display: block;" class="over_ellipsis" :title="item.ltName">{{item.ltName}}</p> </td> <td class="fz12"> <p>{{$t('hotel.hotel_StartTeam')}}:{{item.startDate}}</p> <p>{{$t('sm.xiadan')}}:{{item.createDate}}</p> </td> <td> <el-popover style='padding: 0;' width="470" trigger="click" > <div class="personNolayer"> <p> <span>{{$t('sm.chengren')}}:{{item.manNum}}{{$t('salesModule.PeoPle')}}</span> <span>{{$t('sm.ertong')}}:{{item.chirdNum}}{{$t('salesModule.PeoPle')}}</span> <span>{{$t('sm.laoren')}}:{{item.oldPeopleNum}}{{$t('salesModule.PeoPle')}}</span> <span>{{$t('Operation.Op_baby')}}:{{item.babyNum}}{{$t('salesModule.PeoPle')}}</span> <span>{{$t('salesModule.SingleJ')}}:{{item.airticketNum}}{{$t('salesModule.PeoPle')}}</span> </p> <table border="0" cellspacing="1" cellpadding="1"> <tr> <th>{{$t('system.query_name')}}</th> <th>{{$t('salesModule.Passport')}}</th> <th>{{$t('system.table_sex')}}</th> <th>{{$t('salesModule.Age')}}</th> <th width="110">{{$t('restaurant.res_ContactNumber')}}</th> </tr> <tr v-if='memberList.length>0' v-for="(item2,index2) in memberList" :key="index2"> <td>{{item2.userName}}</td> <td>{{item2.passportNo}}</td> <td>{{item2.sexStr}}</td> <td>{{item2.age}}</td> <td>{{item2.mobilePhone}}</td> </tr> <tr v-if='memberList.length==0'> <td colspan="5" align="center">{{$t('system.content_noData')}}</td> </tr> </table> </div> <span v-if='item.guestNumStatus==1' style="color:#1AA86B;" class="personNo" slot="reference" @click="getMembersDetail(item)">{{item.guestNum}}</span> <span v-if='item.guestNumStatus==2' style="color:#E95252;" class="personNo" slot="reference" @click="getMembersDetail(item)">{{item.guestNum}}</span> <span v-if='item.guestNumStatus==3' style="color:#666;" class="personNo" slot="reference" @click="getMembersDetail(item)">{{item.guestNum}}</span> </el-popover> </td> <td style="color:#FF9C00">{{item.tC_Price}}</td> <td style="color:#FF9C00">{{item.unit_Price}}</td> <td> <p style="color:#FF9C00">{{item.preferPrice}}</p> </td> <td> <el-popover style='padding: 0;' width="270" trigger="click"> <div class="personNolayer"> <table border="0" cellspacing="1" cellpadding="1"> <tr> <th>{{$t('salesModule.DJNUM')}}</th> <th>{{$t('fnc.jine')}}</th> <th>{{$t('salesModule.Type')}}</th> <th>{{$t('admin.admin_status')}}</th> </tr> <tr v-if='orderList.length>0' v-for="(item2,index2) in orderList" :key="index2"> <td>{{item2.FrID}}</td> <td>{{item2.PayMoney}}</td> <td>{{item2.TypeName}}</td> <td>{{item2.StatusName}}</td> </tr> <tr v-if='orderList.length==0' > <td colspan="4" align="center">{{$t('system.content_noData')}}</td> </tr> </table> </div> <span v-if='item.dueInMoney==0' style="cursor: pointer;color: #FF9C00;" @click="getOrderDetail(item)" slot="reference">{{item.income}}</span> <span v-if='item.dueInMoney!=0' style="cursor: pointer;color: #e95252;" @click="getOrderDetail(item)" slot="reference">{{item.income}}</span> </el-popover> </td> <td>{{item.refund}}</td> <td>{{item.platformTax}}</td> <td class="fz12" :style="item.orderState===3?'color: #e95252;':''">{{item.statsstr}}</td> <td> <p class="fz12 over_ellipsis" style="width: 120px;" :title="item.contactName">{{item.contactName}}</p> <p class="fz12">{{item.contactMobile}}</p> </td> <td class="groupTourOrderIcon"> <el-button-group v-if="item.commissionSharePeople !== userId"> <el-tooltip class="item" effect="dark" :content="$t('pub.updateMsg')" placement="top-start"> <el-button v-if="item.isHaveFinance!='1'&&item.orderState!='1'&&item.orderState!='4'" type="primary" style='background:#00C6FF; border-color:#00C6FF' icon="iconfont icon-bianji-smal" @click='getDetail(item)'></el-button> </el-tooltip> <el-tooltip class="item" effect="dark" :content="$t('salesModule.UpRemarks')" placement="top-start"> <el-button v-if="item.isHaveFinance=='1'||item.orderState=='1'" type="primary" style='background:green; border-color:green' icon="iconfont icon-bianji-smal" @click='getRemarks(item)'></el-button> </el-tooltip> <el-tooltip effect="dark" :content="$t('fnc.rizhi')" placement="top-start" style="float:left"> <el-popover width='230' trigger="click"> <div class="priceContentDiv"> <div class="AuditLog">{{$t('fnc.rizhi')}}</div> <div class="logContact" style="background:#f9f9f9; padding:20px 10px 0;"> <div v-if='logList.length>0' v-for="(item,index) in logList" :key="index"> <div class="clearfix" > <div class="Auditcircle" style="left: 6px!important;"></div> <div class="operateName" style="color:#005CAA;">{{item.emName}}</div> <div class="operateDate fz12 color666">{{item.x}}</div> </div> <div class="fz12 color333">{{item.logInfo}}</div> </div> <div v-if='logList.length==0' >{{$t('system.content_noData')}}</div> </div> </div> <el-button slot="reference" @click='getLogDetail(item)' type="primary" style='background:#47BF8C; border-color:#47BF8C;border-top-right-radius: 0;border-bottom-right-radius: 0;' icon="iconfont icon-rizhi1"></el-button> </el-popover> </el-tooltip> <el-tooltip effect="dark" :content="$t('pub.more')" placement="top-start" style="float:left"> <el-popover width='100' trigger="hover"> <div class="groupTourOrder_more"> <div @click="goUrlT('confirmationOrder',item.orderId)">{{$t('salesModule.QRH')}}</div> <div v-if="item.orderState!='4'" @click="goUrlP('旅客名单','passengerSaleList',item)">{{$t('salesModule.LKMD')}}</div> <div v-if="item.isHaveFinance=='1'||item.orderState=='1'" @click='getHouse(item)'>{{$t('salesModule.UpdateRoom')}}</div> <div v-if="item.orderState!='4'" @click="transfer(item)">{{$t('salesModule.OrderGroup')}}</div> <div v-if="item.orderState=='1'||item.orderState=='2'||item.orderState=='3'" @click='deleteItem(item)'>{{$t('pub.cancelBtn')}}</div> </div> <el-button slot="reference" type="primary" style='background:#297BEF; border-color:#297BEF;border-top-left-radius: 0;border-bottom-left-radius: 0;' icon="iconfont icon-more"></el-button> </el-popover> </el-tooltip> </el-button-group> <payurlItem v-if="item.commissionSharePeople !== userId" :item="item" :showID="showID" v-show="item.orderState!='4'&&item.orderState!='3'&&!(item.tradeWay=='1'&&item.platformOrder=='') && (qjGroupId==userInfo.RB_Group_id || F_Finance_Create)" v-on:childByValue="childByValue"></payurlItem> </td> </tr> <tr> <td colspan="7" class="groupTourOrder_remarks" style="height: 40px;"> <div> <div><span>{{$t('pub.pubRemark')}}:</span><p>{{item.remarks}}</p></div> <div> <span>{{item.remarksName}} {{item.rematksTime}}</span> <el-popover width="600" placement="bottom-end" trigger="click"> <div class="groupTourOrder_remarks_popover"> <div>{{$t('fnc.lsbeizhu')}}</div> <p v-if="item.remarksList.length !== 0" v-for="(item2, index2) in item.remarksList" :key="index2"> <span>{{item2.remarks}}</span> <span>{{item2.createByName}} <span style="color: #666666;">{{item2.createDate}}</span></span> </p> <span v-if="item.remarksList.length === 0">{{$t('system.content_noData')}}</span> </div> <el-button slot="reference" icon="iconfont icon-gengduo" style="padding:0px;border:none;background-color:transparent;" class="groupTourOrder_remarks_btn"></el-button> </el-popover> </div> </div> </td> <td colspan="7" class="groupTourOrder_tickets" style="height: 40px;"> <div> <div>{{$t('fnc.skdanju')}}:</div> <div> <span v-for="(item2,index2) in item.financeList" :key="index2"> <span v-if="item2.colorState===1" class="groupTourOrder_tickets_blue" @click="goUrl('财务单据','FinancialDocumentsDetail',item2.frID,'')">{{item2.frID}}</span> <span v-else-if="item2.colorState===2" class="groupTourOrder_tickets_green" @click="goUrl('财务单据','FinancialDocumentsDetail',item2.frID,'')">{{item2.frID}}</span> <span v-else class="groupTourOrder_tickets_red" @click="goUrl('财务单据','FinancialDocumentsDetail',item2.frID,'')">{{item2.frID}}</span> </span> <span v-if="item.financeList.length===0" style="cursor: default;">{{$t('system.content_noData')}}</span> </div> </div> <div> <div>{{$t('fnc.fkdanju')}}:</div> <div> <span v-for="(item2,index2) in item.refundFinanceList" :key="index2"> <span v-if="item2.colorState===1" class="groupTourOrder_tickets_blue" @click="goUrl('财务单据','FinancialDocumentsDetail',item2.frID,'')">{{item2.frID}}</span> <span v-else-if="item2.colorState===2" class="groupTourOrder_tickets_green" @click="goUrl('财务单据','FinancialDocumentsDetail',item2.frID,'')">{{item2.frID}}</span> <span v-else class="groupTourOrder_tickets_red" @click="goUrl('财务单据','FinancialDocumentsDetail',item2.frID,'')">{{item2.frID}}</span> </span> <span v-if="item.refundFinanceList.length===0" style="cursor: default;">{{$t('system.content_noData')}}</span> </div> </div> </td> </tr> </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 class="groupTourOrder_transfer" v-show="transferData.show"> <div class="transfer_header"> <div>{{$t('salesModule.OrderGroup')}}</div> <div> <div @click="transferClose()">{{$t('pub.cancelBtn')}}</div> <div @click="transferSave()">{{$t('pub.sureBtn')}}</div> </div> </div> <div class="transfer_info"> <div> <em>{{$t('hotel.order_Number')}}:</em> <span>{{transferData.info.OrderId}}</span> </div> <div> <em>{{$t('visa.v_yewuyuan')}}:</em> <span>{{transferData.info.CreateByName}}</span> </div> <div> <em>{{$t('scen.sc_temID')}}:</em> <span>{{transferData.info.OldTCID}}</span> </div> <div> <em>{{$t('visa.v_tuanhao')}}:</em> <span>{{transferData.info.OldTCNUM}}</span> </div> </div> <div class="transfer_input"> <div> <em>{{$t('visa.v_tuanhao')}}:</em> <el-input v-model="transferData.info.TCNUM" :placeholder="$t('salesModule.EnterTnum')"></el-input> </div> </div> </div> </div> </template> <script> import payURL from "../commonPage/payURL.vue"; import payURL1 from "../commonPage/payURL1.vue"; export default { data() { return { userInfo:{}, qjGroupId:-1, F_Finance_Create:false,//制单 pickerOptions0: { disabledDate: time => { let starTime = new Date(this.starTime); return time.getTime() > starTime.getTime(); } }, pickerOptions1: { disabledDate: time => { let endTime = new Date(this.endTime); return time.getTime() < endTime.getTime() - 5.64e7; } }, userId: "", customerId: "", createByInfo: "", isUpdateSharePeople: false, starTime: "", endTime: "", stratPrice: "", stratPriceShow: false, returnPrice: "", returnPriceShow: false, isAllowUpdate: 0, isPingtai: false, IsChildrenTour: 0, IsBirdDiscount: 0, SetOutCityId: 0, reOutCityId: 0, isShowLayer: false, isShowHouse: false, isShowLayerRemarks: false, comSelect: -1, loading: true, remarksMsg: { OrderId: "0", OldRemarks: "", Remarks: "" }, IsUnion: 2, addMsg: { OrderId: "0", TCID: "0", CustomerType: "", GroupType: "", ContactName: "", ContactMobile: "", CustomerId: "", DepartureCityId: "", ReturnArriveCityId: "", IsIntermodal: "2", IsReturnIntermodal: "2", Unit_Price: "0", TC_Price: "0", ManNum: "0", ChirdNum: "0", ChirdNoNeedBedNum: "0", ChirdNeedBedNum: "0", BabyNum: "0", OldPeopleNum: "0", SingleRoomNum: "0", PreferPrice: 0, YSeatNum: "0", ESeatNum: "0", FSeatNum: "0", Commission: "0", ClientSource: "", BrandId: "", TradeWay: "2", PlatformOrder: "", GuestNum: 0, IsChildrenTour: "0", IsBirdDiscount: "0", PredictRoomNum: "0", BigRoomNum: "0", TripleRoomNum: "0", TradeDate: "", CostType: "", Remarks: "", VisaNum: "0", SafeNum: "0", AirticketNum: "0", ScenicRefundArr: [], GoCityTime: "", BackCityTime: "", CommissionSharePeople: "-1", CommissionShareMoney: "0", }, employeeMsg: { BranchId: "-1", IsLeave: 0 }, employeeList: [], rules: { CustomerType: [ { required: true, message: "请选择客户类型", trigger: "change" } ], CustomerId: [ { required: false, message: "请选择客户门店", trigger: "change" } ], DepartureCityId: [ { required: true, message: "请选择出发城市", trigger: "change" } ], ReturnArriveCityId: [ { required: true, message: "请选择返回城市", trigger: "change" } ], GroupType: [ { required: true, message: "请选择参团类型", trigger: "change" } ], ClientSource: [ { required: true, message: "请选择客人来源", trigger: "change" } ], TradeWay: [ { required: true, message: "请选择交易方式", trigger: "change" } ], ContactName: [ { required: true, message: "请输入联系人姓名", trigger: "blur" } ], ContactMobile: [ { required: true, message: "请输入联系人电话", trigger: "blur" } ] }, RemarksRules: { Remarks: [ { required: true, message: "请输入备注信息", trigger: "blur" } ] }, msg: { pageIndex: 1, pageSize: 10, LineId: "-1", LineteamId: "-1", TCNUM: "", tempOrderId: "", OutBranchId: "-1", OrderState: "-1", CustomerType: "-1", ContactName: "", CustomerId: "-1", GroupType: "-1", OrderSource: "-1", CStartDate: "", CEndDate: "", QStartDate: "", QEndDate: "", PayStatus: "-1", IsAirTicket: '1' }, //返回数据 currentPage: 1, total: 0, startCityList: [], list: [], LineList: [], LineTeamList: [], memberList: [], logList: [], orderList: [], companyList: [], khlxList: [], ctlxList: [], ddlyList: [], ddztList: [], khmdList: [], ssptList: [], jyfsList: [], ScenicRefundList: [], ScenicRefundMoney: 0, //支付 minpay: "0", fylxList: [], showID: -1, countData: { // 总报名人数 TotalGuestNum: 0, TotalYSeatNum: 0, TotalESeatNum: 0, TotalFSeatNum: 0, // 正常报名人数 NormalGuestNum: 0, NormalYSeatNum: 0, NormalESeatNum: 0, NormalFSeatNum: 0, // 取消人数 CancelGuestNum: 0, CancelYSeatNum: 0, CancelESeatNum: 0, CancelFSeatNum: 0, // 其他统计项 Income: 0, Commission: 0, DueinMoney: 0, PreferPrice: 0, InteriorNum: 0, B2BNum: 0 }, // 订单转团 transferData: { show: false, info: { OrderId: '', CreateByName: '', OldTCID: '', OldTCNUM: '', TCNUM: '' } }, }; }, components: { payurlItem: payURL, payurlItem1: payURL1 }, filters: { priceFormat(value) { let nStr = value.toFixed(2); nStr += ""; let x = nStr.split("."); let x1 = x[0]; let x2 = x.length > 1 ? "." + x[1] : ""; var rgx = /(\d+)(\d{3})/; while (rgx.test(x1)) { x1 = x1.replace(rgx, "$1" + "," + "$2"); } return x1 + x2; } }, methods: { GetSupperOrderEditAuth() { var actionCodeNew = this.$AuthCode.F_Finance_Create; // 制单权限 this.CheckUserAuth(actionCodeNew, res => { if (res.data.resultCode == 1 && res.data.data == 1) { this.F_Finance_Create = true; } }); }, // 订单转团 transfer: function (item) { this.transferData.info.OrderId = item.orderId this.transferData.info.CreateByName = item.createByName this.transferData.info.OldTCID = item.tcid this.transferData.info.OldTCNUM = item.tcnum this.transferData.info.TCNUM = '' this.isShowLayer = false this.isShowHouse = false this.isShowLayerRemarks = false this.transferData.show = true }, transferClose: function () { this.transferData.show = false }, transferSave: function () { if (this.transferData.info.TCNUM.trim() === '') { this.$message.error('请输入团号或团队编号') } else { this.apipost('sellorder_post_SetOrderTurnGroup', this.transferData.info, res => { if (res.data.resultCode === 1) { this.$message.success('转团成功') this.transferData.show = false this.getList() } else { this.$message.error(res.data.message) } }, err => {}) } }, yzVisaNum: function () { let count = (Number(this.addMsg.AirticketNum)+Number(this.addMsg.ManNum)+Number(this.addMsg.ChirdNum)+Number(this.addMsg.BabyNum)+Number(this.addMsg.OldPeopleNum)) if (count<this.addMsg.VisaNum) { this.addMsg.VisaNum = count this.$message.error('签证人数不能大于总人数') } }, yzSafeNum: function () { let count = (Number(this.addMsg.AirticketNum)+Number(this.addMsg.ManNum)+Number(this.addMsg.ChirdNum)+Number(this.addMsg.BabyNum)+Number(this.addMsg.OldPeopleNum)) if (count<this.addMsg.SafeNum) { this.addMsg.SafeNum = count this.$message.error('保险人数不能大于总人数') } }, // 结束日期不能大于开始日期 dataDui() { if (this.msg.CStartDate > this.msg.CEndDate && this.msg.CEndDate !== "") { this.$message.error("结束日期不能大于开始日期"); this.msg.CEndDate = ""; } }, // 结束日期不能大于开始日期 dataDui2() { if (this.msg.QStartDate > this.msg.QEndDate && this.msg.QEndDate !== "") { this.$message.error("结束日期不能大于开始日期"); this.msg.QEndDate = ""; } }, // 获取统计数据 getCount: function () { this.apipost("sellorder_get_GetTravelOrderListStatistics",this.msg,res => { if (res.data.resultCode == 1) { this.countData = res.data.data } else { this.$message.error("数据获取失败!"); } },err => {}) }, deleteItem(obj) { this.$confirm("是否取消?", "提示", { confirmButtonText: "确定", cancelButtonText: "取消", type: "warning" }) .then(() => { this.apipost( "sellorder_post_RemoveOrder", { ID: obj.orderId }, res => { if (res.data.resultCode == 1) { this.$message.success("取消成功!"); this.getList(); } }, err => {} ); }) .catch(() => { this.$message.info("已取消!"); }); }, getUnionTravelPrice(obj, type) { let msg = {}; msg.TCID = obj.TCID; msg.OrderId = obj.OrderId; msg.Type = type; if (type == 1) { msg.StartCityId = this.addMsg.DepartureCityId; msg.CityTime = this.addMsg.GoCityTime; if (this.addMsg.IsIntermodal == 2) { this.stratPrice = "0"; this.stratPriceShow = false; this.getTotalPrice(); } else { this.apipost( "sellorder_get_GetUnionTravelPrice", msg, res => { if (res.data.resultCode == 1) { this.stratPrice = res.data.data.Price; if (this.stratPrice == 0) { this.stratPriceShow = false; } else { this.stratPriceShow = true; } this.getTotalPrice(); } }, err => {} ); } } else { msg.StartCityId = this.addMsg.ReturnArriveCityId; msg.CityTime = this.addMsg.BackCityTime; if (this.addMsg.IsReturnIntermodal == 2) { this.returnPrice = "0"; this.returnPriceShow = true; this.getTotalPrice(); } else { this.apipost( "sellorder_get_GetUnionTravelPrice", msg, res => { if (res.data.resultCode == 1) { this.returnPrice = res.data.data.Price; if (this.returnPrice == 0) { this.returnPriceShow = false; } else { this.returnPriceShow = true; } this.getTotalPrice(); } }, err => {} ); } } }, goUrlX(name, path, id, tcmun) { this.$router.push({ name: path, query: { id: id, tcmun: tcmun, blank: 'y', tab: name} }); }, goUrlT(path, id) { let routeData = this.$router.resolve({ name: path, query: { id: id, blank: 'y'} }); window.open(routeData.href, "_blank"); }, goUrlP(name, path, item) { this.$router.push({ name: path, query: { id: item.orderId,tcid: item.tcid, tcnum: item.tcnum, blank: 'y', tab: name} }); }, goUrl(name, path, id, tcmun) { this.$router.push({ name: path, query: { id: id, tcmun: tcmun, blank: 'y', tab: name} }); }, ScenicRefundMethods() { if (this.addMsg.ScenicRefundArr.length == 0) { this.ScenicRefundMoney = 0; } else { this.ScenicRefundMoney = 0; this.addMsg.ScenicRefundArr.forEach(x => { let listIndex = this.ScenicRefundList.findIndex(item => item.Id == x); if (listIndex != -1) { this.ScenicRefundMoney += this.ScenicRefundList[ listIndex ].RefundMoney; } }); } this.getTotalPrice(); this.getTicheng(); }, getScenicRefund(TCID) { this.apipost( "sellorder_get_GetScenicRefundList", { TCID }, res => { if (res.data.resultCode == 1) { this.ScenicRefundList = res.data.data; this.ScenicRefundList.forEach(item => { item["ScenicName"] = item.CouponsName + " -¥" + this.moneyFormat(item.RefundMoney); }); this.ScenicRefundMethods(); } }, err => {} ); }, platformOrderMethods() { if (this.addMsg.PlatformOrder == "") { this.addMsg.MinOrderPrice = 0; this.addMsg.CostType = ""; this.addMsg.TradeDate = ""; } else { this.addMsg.MinOrderPrice = this.minPrice * (Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum)); } }, getMinPrice(id) { this.apipost( "Financial_post_GetLowPrice", { OrderID: id, OrderResource: 8 }, res => { if (res.data.resultCode == 1) { if (res.data.data.LowDeposit != -1) { this.minpay = res.data.data.LowDeposit; } } }, err => {} ); }, childByValue(data) { this.showID = data; }, getRemarks(obj) { this.isShowLayerRemarks = true; this.isShowLayer = false; this.$refs["addMsg"].resetFields(); this.clearMsg(); this.remarksMsg.OrderId = obj.orderId; this.remarksMsg.Remarks = obj.remarks this.remarksMsg.OldRemarks = obj.remarks; }, getDetail(obj) { this.starTime = obj.startDate; this.endTime = obj.backDate; this.getMinPrice(obj.orderId); this.addMsg.OrderId = obj.orderId; this.apipost( "sellorder_post_GetOrderEntity", { ID: obj.orderId }, res => { if (res.data.resultCode == 1) { this.IsUnion = res.data.data.IsUnion this.isAllowUpdate = res.data.data.IsUpdatePlatOrder; this.addObj = res.data.data.modelPrice; let x = res.data.data.model; this.addMsg = x; this.addMsg.ScenicRefundArr = res.data.data.ScenicRefundArr; this.getScenicRefund(obj.tcid); this.SetOutCityId = res.data.data.SetOutCityId; this.reOutCityId = res.data.data.SetBackCityId; this.addMsg.CustomerType = x.CustomerType.toString(); this.addMsg.ClientSource = x.ClientSource.toString(); this.addMsg.GroupType = x.GroupType.toString(); this.addMsg.TradeWay = x.TradeWay.toString(); this.addMsg.PredictRoomNum = x.PredictRoomNum; this.addMsg.IsIntermodal = x.IsIntermodal.toString(); this.addMsg.IsReturnIntermodal = x.IsReturnIntermodal.toString(); this.addMsg.ChirdNum = x.ChirdNum.toString(); this.addMsg.ChirdNeedBedNum = x.ChirdNeedBedNum.toString(); this.addMsg.ChirdNoNeedBedNum = (x.ChirdNum - x.ChirdNeedBedNum).toString(); this.addMsg.BabyNum = x.BabyNum.toString(); this.IsChildrenTour = x.IsChildrenTour; this.IsBirdDiscount = x.IsBirdDiscount; this.stratPrice = res.data.data.modelPrice.GoAddPrice; if (this.stratPrice == 0) { this.stratPriceShow = false; } else { this.stratPriceShow = true; } this.returnPrice = res.data.data.modelPrice.BackAddPrice; if (this.returnPrice == 0) { this.returnPriceShow = false; } else { this.returnPriceShow = true; } if (x.ClientSource == 1) { this.isPingtai = true; } this.isShowLayer = true; this.isShowHouse = false; this.isShowLayerRemarks = false; this.apipost( "app_today_visit_GetCustomerBrandByCustomerId", { customerInfoId: x.CustomerId }, res => { if (res.data.resultCode == 1) { this.ssptList = res.data.data; this.addMsg.BrandId = x.BrandId; } }, err => {} ); this.getKhmdList(this.addMsg.CustomerType, obj.lineId); this.getDdlyList(this.addMsg.CustomerType); } else { this.$message.error(res.data.message); } }, err => {} ); }, getHouse: function(obj) { this.starTime = obj.startDate; this.endTime = obj.backDate; this.getMinPrice(obj.orderId); this.addMsg.OrderId = obj.orderId; this.apipost( "sellorder_post_GetOrderEntity", { ID: obj.orderId }, res => { if (res.data.resultCode == 1) { this.IsUnion = res.data.data.IsUnion this.isAllowUpdate = res.data.data.IsUpdatePlatOrder; this.addObj = res.data.data.modelPrice; let x = res.data.data.model; this.addMsg = x; this.addMsg.ScenicRefundArr = res.data.data.ScenicRefundArr; this.getScenicRefund(obj.tcid); this.SetOutCityId = res.data.data.SetOutCityId; this.reOutCityId = res.data.data.SetBackCityId; this.addMsg.CustomerType = x.CustomerType.toString(); this.addMsg.ClientSource = x.ClientSource.toString(); this.addMsg.GroupType = x.GroupType.toString(); this.addMsg.TradeWay = x.TradeWay.toString(); this.addMsg.PredictRoomNum = x.PredictRoomNum; this.addMsg.IsIntermodal = x.IsIntermodal.toString(); this.addMsg.IsReturnIntermodal = x.IsReturnIntermodal.toString(); this.addMsg.ChirdNum = x.ChirdNum.toString(); this.addMsg.ChirdNeedBedNum = x.ChirdNeedBedNum.toString(); this.addMsg.ChirdNoNeedBedNum = (x.ChirdNum - x.ChirdNeedBedNum).toString(); this.addMsg.BabyNum = x.BabyNum.toString(); this.IsChildrenTour = x.IsChildrenTour; this.IsBirdDiscount = x.IsBirdDiscount; this.stratPrice = res.data.data.modelPrice.GoAddPrice; if (this.stratPrice == 0) { this.stratPriceShow = false; } else { this.stratPriceShow = true; } this.returnPrice = res.data.data.modelPrice.BackAddPrice; if (this.returnPrice == 0) { this.returnPriceShow = false; } else { this.returnPriceShow = true; } if (x.ClientSource == 1) { this.isPingtai = true; } this.isShowHouse = true; this.isShowLayer = false; this.isShowLayerRemarks = false; this.apipost( "app_today_visit_GetCustomerBrandByCustomerId", { customerInfoId: x.CustomerId }, res => { if (res.data.resultCode == 1) { this.ssptList = res.data.data; this.addMsg.BrandId = x.BrandId; } }, err => {} ); this.getKhmdList(this.addMsg.CustomerType, obj.lineId); this.getDdlyList(this.addMsg.CustomerType); } else { this.$message.error(res.data.message); } }, err => {} ); }, getTypePrice() { this.addMsg.ContactName = ""; this.addMsg.ContactMobile = ""; if (this.addMsg.CustomerType == 1) { this.addMsg.TC_Price = this.addObj.B2BMemberPrice; } if (this.addMsg.CustomerType == 2) { this.addMsg.TC_Price = this.addObj.B2BPrice; } if (this.addMsg.CustomerType == 3) { this.addMsg.TC_Price = this.addObj.B2CMemberPrice; this.addMsg.CustomerId = "0"; this.addMsg.CommissionShareMoney = "0"; } if (this.addMsg.CustomerType == 4) { this.addMsg.TC_Price = this.addObj.B2CPrice; this.addMsg.CustomerId = "0"; this.addMsg.CommissionShareMoney = "0"; } }, getTicheng() { this.addMsg.Commission = Number(this.addMsg.PreferPrice)*0.01 }, getHouseNo() { //算法:((成人+儿童占床数+老人-(三人房数量*3))-单房数)/2+单房数+三人房数量 this.addMsg.PredictRoomNum = (Number(this.addMsg.AirticketNum) + (Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNeedBedNum) + Number(this.addMsg.OldPeopleNum)) - Number(this.addMsg.TripleRoomNum) * 3 - Number(this.addMsg.SingleRoomNum)) / 2 + Number(this.addMsg.SingleRoomNum) + Number(this.addMsg.TripleRoomNum); }, getNumber() { this.addMsg.ChirdNum = this.addMsg.ChirdNoNeedBedNum*1 + this.addMsg.ChirdNeedBedNum*1 this.addMsg.VisaNum = Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.BabyNum) + Number(this.addMsg.OldPeopleNum); this.addMsg.SafeNum = Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.BabyNum) + Number(this.addMsg.OldPeopleNum); this.addMsg.YSeatNum = Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum); }, getTotalPrice() { this.addMsg.PreferPrice = Number(this.addMsg.YSeatNum)*Number(this.addMsg.Unit_Price) this.getTicheng(); }, yzBigBed2() { let x = Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNeedBedNum) + Number(this.addMsg.OldPeopleNum) - Number(this.addMsg.SingleRoomNum); let y = x - Number(this.addMsg.TripleRoomNum) * 3 - Number(this.addMsg.BigRoomNum) * 2; if (y < 0) { this.addMsg.SingleRoomNum = 0; } this.getHouseNo(); }, yzBigBed() { let x = Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNeedBedNum) + Number(this.addMsg.OldPeopleNum) - Number(this.addMsg.SingleRoomNum); let y = x - Number(this.addMsg.TripleRoomNum) * 3 - Number(this.addMsg.BigRoomNum) * 2; if (y <= -1) { this.addMsg.BigRoomNum = 0; } this.getHouseNo(); }, yzBigBed1() { let x = Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNeedBedNum) + Number(this.addMsg.OldPeopleNum) - Number(this.addMsg.SingleRoomNum); let y = x - Number(this.addMsg.TripleRoomNum) * 3 - Number(this.addMsg.BigRoomNum) * 2; if (y <= -1) { this.addMsg.TripleRoomNum = 0; } this.getHouseNo(); }, submitForm(addMsg) { //提交创建、修改表单 this.$refs[addMsg].validate(valid => { if (valid) { this.saveOrder(); } else { return false; } }); }, submitFormRematks(RemarksMsg) { //提交创建、修改表单 this.$refs[RemarksMsg].validate(valid => { if (valid) { this.apipost( "sellorder_post_SetOrderRemarks", this.remarksMsg, res => { if (res.data.resultCode == 1) { this.$message.success(res.data.message); this.remarksMsg.Remarks = ""; this.remarksMsg.OrderId = "0"; this.getList(); this.isShowLayerRemarks = false; } else { this.isShowLayerRemarks = false; this.$message.error(res.data.message); } }, err => {} ); } else { return false; } }); }, cancelSubmit() { this.isShowLayer = false; this.$refs["addMsg"].resetFields(); this.clearMsg(); }, houseSubmit: function (){ //提交修改房型表单 this.apipost( "sellorder_post_SellUpdateOrderHouse", this.addMsg, res => { if (res.data.resultCode == 1) { this.$message.success(res.data.message); this.$refs["addMsg"].resetFields(); this.clearMsg(); this.getList(); this.isShowHouse = false; } else { this.isShowHouse = false; this.$message.error(res.data.message); } }, err => {} ); }, houseCancel: function () { this.isShowHouse = false; this.$refs["addMsg"].resetFields(); this.clearMsg(); }, cancelSubmitRemarks() { this.isShowLayerRemarks = false; this.remarksMsg.Remarks = ""; this.remarksMsg.OrderId = "0"; }, clearMsg() { this.addMsg.OrderId = "0"; this.addMsg.TCID = "0"; this.addMsg.IsIntermodal = "2"; this.addMsg.IsReturnIntermodal = "2"; this.addMsg.Unit_Price = "0"; this.addMsg.TC_Price = "0"; this.addMsg.ManNum = "0"; this.addMsg.ChirdNum = "0"; this.addMsg.ChirdNeedBedNum = "0"; this.addMsg.BabyNum = "0"; this.addMsg.OldPeopleNum = "0"; this.addMsg.SingleRoomNum = "0"; this.addMsg.PreferPrice = "0"; this.addMsg.YSeatNum = "0"; this.addMsg.ESeatNum = "0"; this.addMsg.FSeatNum = "0"; this.addMsg.Commission = "0"; this.addMsg.BrandId = ""; this.addMsg.TradeWay = "2"; this.addMsg.GuestNum = "0"; this.addMsg.IsChildrenTour = "0"; this.addMsg.OrderId = "0"; this.addMsg.IsBirdDiscount = "0"; this.addMsg.PredictRoomNum = "0"; this.addMsg.BigRoomNum = "0"; this.addMsg.TripleRoomNum = "0"; this.addMsg.TradeDate = ""; this.addMsg.CostType = ""; this.addMsg.PlatformOrder = ""; this.ddlyList = []; this.addMsg.Remarks = ""; this.addMsg.MinOrderPrice = ""; this.addMsg.VisaNum = "0"; this.addMsg.SafeNum = "0"; this.addMsg.AirticketNum = "0"; this.addMsg.ScenicRefundArr = []; this.ScenicRefundMoney = 0; this.addMsg.CommissionSharePeople = -1; this.addMsg.CommissionShareMoney = "0"; }, saveOrder() { //验证人数和机位数 if ( Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum) != Number(this.addMsg.YSeatNum) + Number(this.addMsg.ESeatNum) + Number(this.addMsg.FSeatNum) ) { this.$message.warning("人数和机位数不相等!"); return; } if ( Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum) + Number(this.addMsg.BabyNum) < Number(this.addMsg.VisaNum) ) { this.$message.warning("签证数量不能大于人数总和!"); return; } if ( Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum) + Number(this.addMsg.BabyNum) < Number(this.addMsg.SafeNum) ) { this.$message.warning("保险数量不能大于人数总和!"); return; } // if (Number(this.addMsg.ChirdNeedBedNum) > Number(this.addMsg.ChirdNum)) { // this.$message.warning("儿童占床不能大于儿童数!"); // return; // } // if ( // Number(this.addMsg.ChirdNum) - // Number(this.addMsg.ChirdNeedBedNum) + // Number(this.addMsg.BabyNum) > // Number(this.addMsg.ManNum) + // Number(this.addMsg.OldPeopleNum) + // Number(this.addMsg.ChirdNeedBedNum) // ) { // this.$message.warning("儿童占床数量不足!"); // return; // } if (this.userId == this.createByInfo) { if (this.addMsg.CommissionSharePeople == "-1") { this.addMsg.CommissionShareMoney = "0"; } } this.addMsg.TCID = this.addObj.TCID; this.addMsg.GuestNum = Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum) + Number(this.addMsg.BabyNum) + Number(this.addMsg.AirticketNum); this.addMsg.IsChildrenTour = this.IsChildrenTour; this.addMsg.IsBirdDiscount = this.addObj.IsBirdDiscount; this.apipost( "sellorder_post_SetOrderInfoForAirTicket", this.addMsg, res => { if (res.data.resultCode == 1) { this.$message.success(res.data.message); this.$refs["addMsg"].resetFields(); this.clearMsg(); this.getList(); this.isShowLayer = false; } else { this.isShowLayer = false; this.$message.error(res.data.message); } }, err => {} ); }, getStartList() { this.apipost( "sellorder_get_GetAllStartCity", {}, res => { if (res.data.resultCode == 1) { this.startCityList = res.data.data; } else { } }, err => {} ); }, getJyfs() { this.apipost( "sellorder_get_GetSellTradeWayEnumList", {}, res => { if (res.data.resultCode == 1) { this.jyfsList = res.data.data; } }, err => {} ); }, getFylx() { this.apipost( "Financial_post_GetByOrderCostTypeList", { Type: 1 }, res => { if (res.data.resultCode == 1) { this.fylxList = res.data.data; } else { } }, err => {} ); }, getSspt() { //给非直客 隐藏电话姓名赋值 if (this.khmdList.length!==0) { let obj = this.khmdList.find( item => item.customerId == this.addMsg.CustomerId ); this.customerId = obj.customerId; this.createByInfo = obj.createByInfo; this.addMsg.ContactName = obj.customerName + "(" + obj.contact + ")"; this.addMsg.ContactMobile = obj.contactNumber; } if (this.userId != this.createByInfo) { this.addMsg.CommissionSharePeople = this.createByInfo; this.isUpdateSharePeople = true; } else { } this.apipost( "app_today_visit_GetCustomerBrandByCustomerId", { customerInfoId: this.addMsg.CustomerId }, res => { if (res.data.resultCode == 1) { this.ssptList = res.data.data; } }, err => {} ); }, getKhmdList(id, lineId) { this.apipost( "app_today_visit_GetOrderMyCustomerList", { typeId: id, lineId: lineId }, res => { if (res.data.resultCode == 1) { this.khmdList = res.data.data; this.getSspt(); } }, err => {} ); }, getDdztList() { this.apipost( "sellorder_post_GetSellOrderStatusEnumList", {}, res => { if (res.data.resultCode == 1) { this.ddztList = res.data.data; } }, err => {} ); }, getDdlyList(id) { this.apipost( "sellorder_get_GetSellClientSourceEnumList", { typeId: id }, res => { if (res.data.resultCode == 1) { this.ddlyList = res.data.data; } }, err => {} ); }, getCtlxList() { this.apipost( "sellorder_get_GetOrderJoinEnumList", {}, res => { if (res.data.resultCode == 1) { this.ctlxList = res.data.data; } }, err => {} ); }, getKhlxList() { this.apipost( "sellorder_get_GetSellClientTypeEnumList", {}, res => { if (res.data.resultCode == 1) { this.khlxList = res.data.data; } }, err => {} ); }, getMembersDetail(obj) { this.apipost( "sellorder_post_GetPeopleList", { ID: obj.orderId }, res => { if (res.data.resultCode == 1) { this.memberList = res.data.data; } }, err => {} ); }, getLogDetail(obj) { this.apipost( "sellorder_post_GetOrderLogList", { ID: obj.orderId }, res => { if (res.data.resultCode == 1) { this.logList = res.data.data; this.logList.forEach(item => { item["x"] = this.$commonUtils.formatMsgTime(item.updateDate); }); } }, err => {} ); }, getOrderDetail(obj) { this.apipost( "Financial_post_GetOrderFinanceList", { OrderId: obj.orderId, OrderResource: 8 }, res => { if (res.data.resultCode == 1) { this.orderList = res.data.data; } }, err => {} ); }, getList() { this.showID = -1; this.loading = true; this.apipost( "sellorder_post_GetTravelOrderList", this.msg, res => { if (res.data.resultCode == 1) { this.loading = false; this.total = res.data.data.count; this.list = res.data.data.pageData; } else { this.$message.error(res.data.message); } }, err => {} ); this.getCount(); }, getLineList() { this.apipost("line_post_GetAllList", {}, res => { if (res.data.resultCode == 1) { this.LineList = res.data.data; } else { this.$message.error(res.data.message); } }); }, //获取系列列表 getLineTeamList(lineId) { this.LineTeamList = []; this.apipost( "team_post_GetList", { lineID: lineId, isTOOP: 1 }, res => { if (res.data.resultCode == 1) { this.msg.LineteamId = "-1"; this.LineTeamList = res.data.data; } } ); }, getCompanyList() { //出团公司 this.apipost( "sellorder_post_GetBranchList", {}, res => { if (res.data.resultCode == 1) { this.companyList = res.data.data; } }, err => {} ); }, goFinanceUrl(path, Type, OrderID, OrderSource, TCID) { this.$router.push({ name: path, query: { Type: Type, OrderID: OrderID, OrderSource: OrderSource, TCID: TCID } }); }, handleCurrentChange(val) { this.msg.pageIndex = val; this.getList(); }, resetPageIndex() { this.msg.pageIndex = 1; this.currentPage = 1; }, getEmployee() { //员工 this.apipost( "admin_get_EmployeeGetList", this.employeeMsg, res => { if (res.data.resultCode == 1) { this.employeeList = res.data.data; } else { } }, err => {} ); } }, mounted() { this.qjGroupId=this.QjGroupId(); this.userInfo=this.getLocalStorage(); this.userId = this.getLocalStorage().EmployeeId; if (this.$route.query.id) { this.msg.tempOrderId = this.$route.query.id; } this.msg.QStartDate=new Date().Format('yyyy-MM-dd'); this.GetSupperOrderEditAuth(); this.getEmployee(); this.getList(); this.getLineList(); this.getCompanyList(); this.getStartList(); this.getKhlxList(); this.getCtlxList(); this.getDdztList(); this.getJyfs(); this.getFylx(); } }; </script>