Commit ffc46466 authored by 华国豪's avatar 华国豪 🙄
parents 404e6eb0 1eb9a8db
<template> <template>
<div class="mb30" v-loading='loading'> <div class="mb30" v-loading='loading'>
<div v-if="isShow"> <div v-if="isShow">
<table class="leaderReimbursementTableNav" border="0" cellspacing="1" cellpadding="0"> <table class="leaderReimbursementTableNav" border="0" cellspacing="1" cellpadding="0">
<tr> <tr>
...@@ -27,52 +27,52 @@ ...@@ -27,52 +27,52 @@
</table> </table>
<table class="leaderReimbursementTable" border="0" cellspacing="1" cellpadding="0"> <table class="leaderReimbursementTable" border="0" cellspacing="1" cellpadding="0">
<tbody> <tbody>
<tr class="title"> <tr class="title">
<td width="80" class="bgwhite" :rowspan="list.BusList.length+1">车辆使用</td> <td width="80" class="bgwhite" :rowspan="list.BusList.length+1">车辆使用</td>
<td width="100">使用时间</td> <td width="100">使用时间</td>
<td width="80">司机姓名</td> <td width="80">司机姓名</td>
<td width="80">司机电话</td> <td width="80">司机电话</td>
<td width="100">车配号</td> <td width="100">车配号</td>
<td width="100">车辆号</td> <td width="100">车辆号</td>
<td width="60">用车方式</td> <td width="60">用车方式</td>
<td width="150">实际信息</td> <td width="150">实际信息</td>
<td width="60">总金额</td> <td width="60">总金额</td>
<td>备注</td> <td>备注</td>
<td>凭证</td> <td>凭证</td>
</tr> </tr>
<tr v-for='(item,index) in list.BusList'> <tr v-for='(item,index) in list.BusList'>
<td>{{item.PlanDateStr}}</td> <td>{{item.PlanDateStr}}</td>
<td>{{item.DriverName}}</td> <td>{{item.DriverName}}</td>
<td>{{item.DriverTel}}</td> <td>{{item.DriverTel}}</td>
<td>{{item.BusCode}}</td> <td>{{item.BusCode}}</td>
<td>{{item.BusNum}}</td> <td>{{item.BusNum}}</td>
<td> <td>
<span v-if='index==0'>接机</span> <span v-if='index==0'>接机</span>
<span v-if='index!=0&&index!=list.BusList.length-1'>{{item.AirportPickUpStr}}</span> <span v-if='index!=0&&index!=list.BusList.length-1'>{{item.AirportPickUpStr}}</span>
<span v-if='index==list.BusList.length-1'>送机</span> <span v-if='index==list.BusList.length-1'>送机</span>
</td> </td>
<td> <td>
<template v-for="(sonItem,sonIndex) in item.ReimburseList.ReimburseDetailsList"> <template v-for="(sonItem,sonIndex) in item.ReimburseList.ReimburseDetailsList">
<div v-if="sonItem.ID!==0"> <div v-if="sonItem.ID!==0">
{{sonItem.UserTypeStr}}{{sonItem.UserNum}}*{{sonItem.UnitPrice}} {{sonItem.UserTypeStr}}{{sonItem.UserNum}}*{{sonItem.UnitPrice}}
</div>
</template>
</td>
<td>
{{busTotalPrice(item.ReimburseList.ReimburseDetailsList)}}
</td>
<td class="jdtd" valign="middle">
{{item.Remarks}}
<!--<el-input type='textarea' v-model=''></el-input>-->
</td>
<td>
<div class="uploadListDiv ownScrollbarStyle">
<p v-for="(img,index) in item.VoucherPicList" @click="analyzeItem(item.VoucherPicList,index)">
{{img.FileName}}
</p>
</div> </div>
</template> </td>
</td> </tr>
<td>
{{busTotalPrice(item.ReimburseList.ReimburseDetailsList)}}
</td>
<td class="jdtd" valign="middle">
{{item.Remarks}}
<!--<el-input type='textarea' v-model=''></el-input>-->
</td>
<td>
<div class="uploadListDiv ownScrollbarStyle">
<p v-for="(img,index) in item.VoucherPicList" @click="analyzeItem(item.VoucherPicList,index)">
{{img.FileName}}
</p>
</div>
</td>
</tr>
</tbody> </tbody>
</table> </table>
<!--{{outItem.HotelOrderList}}--> <!--{{outItem.HotelOrderList}}-->
...@@ -105,7 +105,7 @@ ...@@ -105,7 +105,7 @@
</div> </div>
</td> </td>
<td> <td>
<template v-for="(sonItem,sonIndex) in item.ReimburseList.ReimburseDetailsList"> <template v-for="(sonItem,sonIndex) in item.ReimburseList.ReimburseDetailsList">
<div v-if="sonItem.ID!==0"> <div v-if="sonItem.ID!==0">
{{sonItem.UserTypeStr}}{{sonItem.UserNum}}*{{sonItem.UnitPrice}} {{sonItem.UserTypeStr}}{{sonItem.UserNum}}*{{sonItem.UnitPrice}}
</div> </div>
...@@ -207,324 +207,340 @@ ...@@ -207,324 +207,340 @@
</table>--> </table>-->
<table class="leaderReimbursementTable" border="0" cellspacing="1" cellpadding="0"> <table class="leaderReimbursementTable" border="0" cellspacing="1" cellpadding="0">
<tbody> <tbody>
<tr class="title"> <tr class="title">
<td width="80" class="bgwhite" :rowspan="list.DiningList.length+1">餐食使用</td> <td width="80" class="bgwhite" :rowspan="list.DiningList.length+1">餐食使用</td>
<td width="100">使用时间</td> <td width="100">使用时间</td>
<td width="30%">餐厅名称</td> <td width="30%">餐厅名称</td>
<td width="60">类别</td> <td width="60">类别</td>
<td width="100">用餐人数</td> <td width="100">用餐人数</td>
<td width="150">实际信息</td> <td width="150">实际信息</td>
<td width="60">总金额</td> <td width="60">总金额</td>
<td>备注</td> <td>备注</td>
<td>凭证</td> <td>凭证</td>
</tr> </tr>
<template v-for='(item,index) in list.DiningList'> <template v-for='(item,index) in list.DiningList'>
<tr class="splitP ScenicTr" v-for='(titem,tindex) in item.DiningSummaryList'> <tr class="splitP ScenicTr" v-for='(titem,tindex) in item.DiningSummaryList'>
<td>{{titem.UseTimeStr}}</td> <td>{{titem.UseTimeStr}}</td>
<td> <td>
<p style="height: 60px!important; display: flex;align-items: center; padding:0 20px;" <p style="height: 60px!important; display: flex;align-items: center; padding:0 20px;" v-for="subItem in item.DiningSummaryList">
v-for="subItem in item.DiningSummaryList"> {{subItem.DiningName}}
{{subItem.DiningName}}
</p>
</td>
<td>
<p style="height: 60px!important; line-height: 60px;" v-for="subItem in item.DiningSummaryList">
{{subItem.UseDinnerTypeStr}}
</p>
</td>
<td valign="top">
<div v-for="subItem in item.DiningSummaryList">
<p v-for="childItem in subItem.DiningPriceList">
{{peopleStrToWord(childItem.PeopleType)}}:{{childItem.PeopleNum}}
</p> </p>
</div> </td>
</td> <td>
<td> <p style="height: 60px!important; line-height: 60px;" v-for="subItem in item.DiningSummaryList">
<template v-for="(ssItem,ssIndex) in titem.ReimburseList.ReimburseDetailsList"> {{subItem.UseDinnerTypeStr}}
<div v-if="ssItem.ID!==0">
{{ssItem.UserTypeStr}}{{ssItem.UserNum}}*{{ssItem.UnitPrice}}
</div>
</template>
</td>
<td>
<div v-for="subItem in item.DiningSummaryList">
{{diningTotalPrice(subItem.ReimburseList.ReimburseDetailsList)}}
</div>
</td>
<td class="jdtd" valign="middle">
{{titem.Remarks}}
</td>
<td>
<div class="uploadListDiv ownScrollbarStyle" style="overflow-y: auto;">
<p v-for="(img,index) in titem.ReimburseList.VoucherPicList" @click="analyzeItem(titem.VoucherPicList,index)">
{{img.FileName}}
</p> </p>
</div> </td>
</td> <td valign="top">
<div v-for="subItem in item.DiningSummaryList">
<p v-for="childItem in subItem.DiningPriceList">
{{peopleStrToWord(childItem.PeopleType)}}:{{childItem.PeopleNum}}
</p>
</div>
</td>
<td>
<template v-for="(ssItem,ssIndex) in titem.ReimburseList.ReimburseDetailsList">
<div v-if="ssItem.ID!==0">
{{ssItem.UserTypeStr}}{{ssItem.UserNum}}*{{ssItem.UnitPrice}}
</div>
</template>
</td>
<td>
<div v-for="subItem in item.DiningSummaryList">
{{diningTotalPrice(subItem.ReimburseList.ReimburseDetailsList)}}
</div>
</td>
<td class="jdtd" valign="middle">
{{titem.Remarks}}
</td>
<td>
<div class="uploadListDiv ownScrollbarStyle" style="overflow-y: auto;">
<p v-for="(img,index) in titem.ReimburseList.VoucherPicList" @click="analyzeItem(titem.VoucherPicList,index)">
{{img.FileName}}
</p>
</div>
</td>
</tr>
</template>
</tbody>
</table>
<table class="leaderReimbursementTable" border="0" cellspacing="1" cellpadding="0">
<tbody>
<tr class="title">
<td width="80" class="bgwhite" :rowspan="list.ScenicList.length+1">门票使用</td>
<td width="100">使用时间</td>
<td width="30%">景点名称</td>
<td width="60">总人数</td>
<td width="60">门票类别</td>
<td width="150">实际信息</td>
<td width="60">总金额</td>
<td>备注</td>
<td>凭证</td>
</tr> </tr>
</template>
<template v-for='(item,index) in list.ScenicList'>
<tr class="splitP ScenicTr">
<td>{{item.UseTimeStr}}</td>
<td>
<div v-for="subItem in item.ScenicStatisticsList">
{{subItem.ScenicName}}
</div>
</td>
<td>
<div v-for="subItem in item.ScenicStatisticsList">
{{subItem.UseAccount}}
</div>
</td>
<td>
<div v-for="subItem in item.ScenicStatisticsList">
<p v-for="o in subItem.TicketPriceList">
{{peopleStrToWord(o.PeopleType)}}:{{o.PeopleNum}}
</p>
</div>
</td>
<td>
<template v-for='(sitem,sindex) in item.ScenicStatisticsList'>
<template v-for="(ssItem,ssIndex) in sitem.ReimburseList.ReimburseDetailsList">
<div :style="{height:60/sitem.ReimburseList.ReimburseDetailsList.length+'px',lineHeight:60/sitem.ReimburseList.ReimburseDetailsList.length+'px'}">
{{ssItem.UserTypeStr}}{{ssItem.UserNum}}*{{ssItem.UnitPrice}}
</div>
</template>
</template>
</td>
<td>
<div v-for="subItem in item.ScenicStatisticsList" >
{{diningTotalPrice(subItem.ReimburseList.ReimburseDetailsList)}}
</div>
</td>
<td>
<template v-for='(sitem,sindex) in item.ScenicStatisticsList'>
{{sitem.Remarks}}
</template>
</td>
<td>
<div class="uploadListDiv ownScrollbarStyle" style="overflow-y: auto;">
<template v-for='(sitem,sindex) in item.ScenicStatisticsList'>
<p v-for="(img,index) in sitem.ReimburseList.VoucherPicList" @click="analyzeItem(sitem.VoucherPicList,index)">
{{img.FileName}}
</p>
</template>
</div>
</td>
</tr>
</template>
</tbody> </tbody>
<!-- <tfoot>
<tr>
<td colspan="9">
{{list.ScenicList}}
</td>
</tr>
</tfoot> -->
</table> </table>
<table class="leaderReimbursementTable" border="0" cellspacing="1" cellpadding="0"> <table class="leaderReimbursementTable" border="0" cellspacing="1" cellpadding="0">
<tbody> <tbody>
<tr class="title"> <tr class="title">
<td width="80" class="bgwhite" :rowspan="list.ScenicList.length+1">门票使用</td> <td width="80" class="bgwhite" :rowspan="list.OtherOrderInfo.OtherList.length+1">其他费用</td>
<td width="100">使用时间</td> <td width="120">使用时间</td>
<td width="30%">景点名称</td> <td width="150">费用项目</td>
<td width="60">总人数</td> <td width="80">总人数</td>
<td width="60">门票类别</td> <td width="80">单价</td>
<td width="150">实际信息</td> <td width="80">金额小计</td>
<td width="60">总金额</td> <td width="80">返佣</td>
<td>备注</td> <td width="80">总金额</td>
<td>凭证</td> <td>备注</td>
</tr> <!--<td width="80">-->
<template v-for='(item,index) in list.ScenicList'> <!--<input type="button" value="添加" class="normalBtn" @click="addOtherList()"/>-->
<tr class="splitP ScenicTr" v-for='(sitem,sindex) in item.ScenicStatisticsList'> <!--</td>-->
<td>{{sitem.UseTimeStr}}</td> </tr>
<tr v-for='(item,index) in list.OtherOrderInfo.OtherList'>
<td> <td>
<div v-for="subItem in item.ScenicStatisticsList"> <el-date-picker v-model='item.UseDate' prefix-icon="s" class='w105' value-format="yyyy-MM-dd" type="date"
{{subItem.ScenicName}} :disabled="true"></el-date-picker>
</div>
</td> </td>
<td> <td>
<div v-for="subItem in item.ScenicStatisticsList"> <el-select class='w120 sel' v-model='item.CostProject' :placeholder="$t('pub.pleaseSel')" :disabled="true">
{{subItem.UseAccount}} <el-option label='请选择' value='0'></el-option>
</div> <el-option label='导游津贴' value='1'></el-option>
<el-option label='司机津贴' value='2'></el-option>
<el-option label='其他支出' value='3'></el-option>
</el-select>
</td> </td>
<td> <td>
<div v-for="subItem in item.ScenicStatisticsList"> {{item.TotalNum}}
<p v-for="o in subItem.TicketPriceList"> <!--<el-input v-model='' @keyup.native="checkInteger(item,'TotalNum')" class='w50'></el-input>-->
{{peopleStrToWord(o.PeopleType)}}:{{o.PeopleNum}}
</p>
</div>
</td> </td>
<td> <td>
<template v-for="(ssItem,ssIndex) in sitem.ReimburseList.ReimburseDetailsList"> {{item.UnitPrice}}
<div v-if="ssItem.ID!==0"> <!--<el-input v-model='' @keyup.native="checkPrice(item,'UnitPrice')" class='w50'></el-input>-->
{{ssItem.UserTypeStr}}{{ssItem.UserNum}}*{{ssItem.UnitPrice}}
</div>
</template>
</td> </td>
<td> <td>
<div v-for="subItem in item.ScenicStatisticsList"> {{item.TotalNum*item.UnitPrice}}
{{diningTotalPrice(subItem.ReimburseList.ReimburseDetailsList)}}
</div>
</td> </td>
<td> <td>
{{sitem.Remarks}} <!--<el-input v-model='' class='w50' @keyup.native="checkInteger(item,'Rebate')"></el-input>-->
{{item.Rebate}}%
</td> </td>
<td> <td v-if='index==0' :rowspan='list.OtherOrderInfo.OtherList.length'>
<div class="uploadListDiv ownScrollbarStyle" style="overflow-y: auto;"> {{otherTotalPrice(list.OtherOrderInfo.OtherList)}}
<p v-for="(img,index) in sitem.ReimburseList.VoucherPicList" @click="analyzeItem(sitem.VoucherPicList,index)">
{{img.FileName}}
</p>
</div>
</td> </td>
</tr> <td style="padding: 0 10px;">
</template> {{item.Remark}}
</tbody> <!--<el-input v-model='' type="textarea" autosize></el-input>-->
</table> </td>
<!--<td>-->
<table class="leaderReimbursementTable" border="0" cellspacing="1" cellpadding="0">
<tbody>
<tr class="title">
<td width="80" class="bgwhite" :rowspan="list.OtherOrderInfo.OtherList.length+1">其他费用</td>
<td width="120">使用时间</td>
<td width="150">费用项目</td>
<td width="80">总人数</td>
<td width="80">单价</td>
<td width="80">金额小计</td>
<td width="80">返佣</td>
<td width="80">总金额</td>
<td>备注</td>
<!--<td width="80">-->
<!--<input type="button" value="添加" class="normalBtn" @click="addOtherList()"/>-->
<!--</td>-->
</tr>
<tr v-for='(item,index) in list.OtherOrderInfo.OtherList'>
<td>
<el-date-picker v-model='item.UseDate' prefix-icon="s" class='w105' value-format="yyyy-MM-dd" type="date" :disabled="true"></el-date-picker>
</td>
<td>
<el-select class='w120 sel' v-model='item.CostProject' :placeholder="$t('pub.pleaseSel')" :disabled="true">
<el-option label='请选择' value='0'></el-option>
<el-option label='导游津贴' value='1'></el-option>
<el-option label='司机津贴' value='2'></el-option>
<el-option label='其他支出' value='3'></el-option>
</el-select>
</td>
<td>
{{item.TotalNum}}
<!--<el-input v-model='' @keyup.native="checkInteger(item,'TotalNum')" class='w50'></el-input>-->
</td>
<td>
{{item.UnitPrice}}
<!--<el-input v-model='' @keyup.native="checkPrice(item,'UnitPrice')" class='w50'></el-input>-->
</td>
<td>
{{item.TotalNum*item.UnitPrice}}
</td>
<td>
<!--<el-input v-model='' class='w50' @keyup.native="checkInteger(item,'Rebate')"></el-input>-->
{{item.Rebate}}%
</td>
<td v-if='index==0' :rowspan='list.OtherOrderInfo.OtherList.length'>
{{otherTotalPrice(list.OtherOrderInfo.OtherList)}}
</td>
<td style="padding: 0 10px;">
{{item.Remark}}
<!--<el-input v-model='' type="textarea" autosize></el-input>-->
</td>
<!--<td>-->
<!--<p @click="deleteOtherListItem(index)">删除</p>--> <!--<p @click="deleteOtherListItem(index)">删除</p>-->
<!--</td>--> <!--</td>-->
</tr> </tr>
</tbody> </tbody>
</table> </table>
<table class="leaderReimbursementTable" border="0" cellspacing="1" cellpadding="0"> <table class="leaderReimbursementTable" border="0" cellspacing="1" cellpadding="0">
<tbody> <tbody>
<tr class="title"> <tr class="title">
<td width="80" class="bgwhite" rowspan="2">小费收入</td> <td width="80" class="bgwhite" rowspan="2">小费收入</td>
<td width="120">人数</td> <td width="120">人数</td>
<td width="120">单价</td> <td width="120">单价</td>
<td width="80">总金额</td> <td width="80">总金额</td>
<td>备注</td> <td>备注</td>
</tr> </tr>
<tr v-for='(item,index) in list.OtherOrderInfo.TipList'> <tr v-for='(item,index) in list.OtherOrderInfo.TipList'>
<td> <td>
{{item.TotalNum}} {{item.TotalNum}}
<!--<el-input class='w80' @keyup.native="checkInteger(item,'TotalNum')" v-model='item.TotalNum'></el-input>--> <!--<el-input class='w80' @keyup.native="checkInteger(item,'TotalNum')" v-model='item.TotalNum'></el-input>-->
</td> </td>
<td> <td>
{{item.UnitPrice}} {{item.UnitPrice}}
<!--<el-input class='w80' @keyup.native="checkPrice(item,'UnitPrice')" v-model='item.UnitPrice'></el-input>--> <!--<el-input class='w80' @keyup.native="checkPrice(item,'UnitPrice')" v-model='item.UnitPrice'></el-input>-->
</td> </td>
<td>{{item.TotalNum*item.UnitPrice}}</td> <td>{{item.TotalNum*item.UnitPrice}}</td>
<td style="padding: 0 10px;"> <td style="padding: 0 10px;">
{{item.Remark}} {{item.Remark}}
<!--<el-input v-model='item.Remark' type="textarea" autosize></el-input>--> <!--<el-input v-model='item.Remark' type="textarea" autosize></el-input>-->
</td> </td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
<table class="leaderReimbursementTable" border="0" cellspacing="1" cellpadding="0"> <table class="leaderReimbursementTable" border="0" cellspacing="1" cellpadding="0">
<tbody> <tbody>
<tr class="title"> <tr class="title">
<td width="80" class="bgwhite" rowspan="2">团费小计</td> <td width="80" class="bgwhite" rowspan="2">团费小计</td>
<td width="120">金额</td> <td width="120">金额</td>
<td>备注</td> <td>备注</td>
</tr> </tr>
<tr v-for='(item,index) in list.OtherOrderInfo.TeamList'> <tr v-for='(item,index) in list.OtherOrderInfo.TeamList'>
<td> <td>
{{item.UnitPrice}} {{item.UnitPrice}}
<!--<el-input class='w80' @keyup.native="checkPrice(item,'UnitPrice')" v-model='item.UnitPrice'></el-input>--> <!--<el-input class='w80' @keyup.native="checkPrice(item,'UnitPrice')" v-model='item.UnitPrice'></el-input>-->
</td> </td>
<td style="padding: 0 10px;"> <td style="padding: 0 10px;">
{{item.Remark}} {{item.Remark}}
<!--<el-input v-model='item.Remark' type="textarea" autosize></el-input>--> <!--<el-input v-model='item.Remark' type="textarea" autosize></el-input>-->
</td> </td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
<table class="leaderReimbursementTable" border="0" cellspacing="1" cellpadding="0"> <table class="leaderReimbursementTable" border="0" cellspacing="1" cellpadding="0">
<tbody> <tbody>
<tr class="title"> <tr class="title">
<td width="80" class="bgwhite" :rowspan="list.OtherOrderInfo.SelfPlayingIncomeList.length+1">自费收入</td> <td width="80" class="bgwhite" :rowspan="list.OtherOrderInfo.SelfPlayingIncomeList.length+1">自费收入</td>
<td width="120">使用时间</td> <td width="120">使用时间</td>
<td width="80">人数</td> <td width="80">人数</td>
<td width="80">单价</td> <td width="80">单价</td>
<td width="80">金额小计</td> <td width="80">金额小计</td>
<td width="80">总金额</td> <td width="80">总金额</td>
<td>备注</td> <td>备注</td>
<!--<td width="80">--> <!--<td width="80">-->
<!--<input type="button" value="添加" class="normalBtn"--> <!--<input type="button" value="添加" class="normalBtn"-->
<!--@click="addSelfPlayingIncomeList()"/>--> <!--@click="addSelfPlayingIncomeList()"/>-->
<!--</td>--> <!--</td>-->
</tr> </tr>
<tr v-for='(item,index) in list.OtherOrderInfo.SelfPlayingIncomeList'> <tr v-for='(item,index) in list.OtherOrderInfo.SelfPlayingIncomeList'>
<td> <td>
<el-date-picker prefix-icon="s" v-model='item.UseDate' class='w105' value-format="yyyy-MM-dd" type="date" :disabled="true"></el-date-picker> <el-date-picker prefix-icon="s" v-model='item.UseDate' class='w105' value-format="yyyy-MM-dd" type="date"
</td> :disabled="true"></el-date-picker>
<td> </td>
{{item.TotalNum}} <td>
<!--<el-input class='w50' @keyup.native="checkInteger(item,'TotalNum')" v-model='item.TotalNum'></el-input>--> {{item.TotalNum}}
</td> <!--<el-input class='w50' @keyup.native="checkInteger(item,'TotalNum')" v-model='item.TotalNum'></el-input>-->
<td> </td>
{{item.UnitPrice}} <td>
<!--<el-input class='w50' @keyup.native="checkPrice(item,'UnitPrice')" v-model='item.UnitPrice'></el-input>--> {{item.UnitPrice}}
</td> <!--<el-input class='w50' @keyup.native="checkPrice(item,'UnitPrice')" v-model='item.UnitPrice'></el-input>-->
<td>{{item.TotalNum*item.UnitPrice}}</td> </td>
<td v-if='index==0' :rowspan="list.OtherOrderInfo.SelfPlayingIncomeList.length"> <td>{{item.TotalNum*item.UnitPrice}}</td>
{{otherTotalPrice(list.OtherOrderInfo.SelfPlayingIncomeList)}} <td v-if='index==0' :rowspan="list.OtherOrderInfo.SelfPlayingIncomeList.length">
</td> {{otherTotalPrice(list.OtherOrderInfo.SelfPlayingIncomeList)}}
<td style="padding: 0 10px;"> </td>
{{item.Remark}} <td style="padding: 0 10px;">
<!--<el-input v-model='item.Remark' type="textarea" autosize></el-input>--> {{item.Remark}}
</td> <!--<el-input v-model='item.Remark' type="textarea" autosize></el-input>-->
<!--<td>--> </td>
<!--<td>-->
<!--<span @click="deleteSelfPlayingIncomeListItem(index)">删除</span>--> <!--<span @click="deleteSelfPlayingIncomeListItem(index)">删除</span>-->
<!--</td>--> <!--</td>-->
</tr> </tr>
</tbody> </tbody>
</table> </table>
<table class="leaderReimbursementTable" border="0" cellspacing="1" cellpadding="0"> <table class="leaderReimbursementTable" border="0" cellspacing="1" cellpadding="0">
<tbody> <tbody>
<tr class="title"> <tr class="title">
<td width="80" class="bgwhite" :rowspan="list.OtherOrderInfo.SelfPlayingExpendList.length+1">自费支出</td> <td width="80" class="bgwhite" :rowspan="list.OtherOrderInfo.SelfPlayingExpendList.length+1">自费支出</td>
<td width="120">使用时间</td> <td width="120">使用时间</td>
<td width="80">人数</td> <td width="80">人数</td>
<td width="80">单价</td> <td width="80">单价</td>
<td width="80">金额小计</td> <td width="80">金额小计</td>
<td width="80">返佣</td> <td width="80">返佣</td>
<td width="80">总金额</td> <td width="80">总金额</td>
<td>备注</td> <td>备注</td>
<!--<td width="80">--> <!--<td width="80">-->
<!--<input type="button" value="添加" class="normalBtn"--> <!--<input type="button" value="添加" class="normalBtn"-->
<!--@click="addSelfPlayingExpendList()"/>--> <!--@click="addSelfPlayingExpendList()"/>-->
<!--</td>--> <!--</td>-->
</tr> </tr>
<tr v-for='(item,index) in list.OtherOrderInfo.SelfPlayingExpendList'> <tr v-for='(item,index) in list.OtherOrderInfo.SelfPlayingExpendList'>
<td> <td>
<el-date-picker prefix-icon="s" :disabled="true" v-model='item.UseDate' class='w105' value-format="yyyy-MM-dd" type="date"></el-date-picker> <el-date-picker prefix-icon="s" :disabled="true" v-model='item.UseDate' class='w105' value-format="yyyy-MM-dd"
</td> type="date"></el-date-picker>
<td> </td>
{{item.TotalNum}} <td>
<!--<el-input class='w50' @keyup.native="checkInteger(item,'TotalNum')" v-model='item.TotalNum'></el-input>--> {{item.TotalNum}}
</td> <!--<el-input class='w50' @keyup.native="checkInteger(item,'TotalNum')" v-model='item.TotalNum'></el-input>-->
<td> </td>
{{item.UnitPrice}} <td>
<!--<el-input class='w50' @keyup.native="checkPrice(item,'UnitPrice')" v-model='item.UnitPrice'></el-input>--> {{item.UnitPrice}}
</td> <!--<el-input class='w50' @keyup.native="checkPrice(item,'UnitPrice')" v-model='item.UnitPrice'></el-input>-->
<td>{{item.TotalNum*item.UnitPrice}}</td> </td>
<td> <td>{{item.TotalNum*item.UnitPrice}}</td>
<!--<el-input class='w50' v-model='item.Rebate'></el-input>--> <td>
{{item.Rebate}}% <!--<el-input class='w50' v-model='item.Rebate'></el-input>-->
</td> {{item.Rebate}}%
<td v-if='index==0' :rowspan="list.OtherOrderInfo.SelfPlayingExpendList.length"> </td>
{{otherTotalPrice(list.OtherOrderInfo.SelfPlayingExpendList)}} <td v-if='index==0' :rowspan="list.OtherOrderInfo.SelfPlayingExpendList.length">
</td> {{otherTotalPrice(list.OtherOrderInfo.SelfPlayingExpendList)}}
<td style="padding: 0 10px;"> </td>
{{item.Remark}} <td style="padding: 0 10px;">
<!--<el-input v-model='item.Remark' type="textarea" autosize></el-input>--> {{item.Remark}}
</td> <!--<el-input v-model='item.Remark' type="textarea" autosize></el-input>-->
<!--<td>--> </td>
<!--<td>-->
<!--<span @click="deleteSelfPlayingExpendList(index)">删除</span>--> <!--<span @click="deleteSelfPlayingExpendList(index)">删除</span>-->
<!--</td>--> <!--</td>-->
</tr> </tr>
</tbody> </tbody>
</table> </table>
<p class="alcenter"> <p class="alcenter">
<input type="button" value="保存" class="normalBtn" @click="saveData()"/> <input type="button" value="保存" class="normalBtn" @click="saveData()" />
</p> </p>
<div v-if='picIsShow' class="viewBigPicLayer"> <div v-if='picIsShow' class="viewBigPicLayer">
<i class="el-icon-circle-close-outline clolseViewBigPicLayer" @click="picIsShow=false,picObj=[]"></i> <i class="el-icon-circle-close-outline clolseViewBigPicLayer" @click="picIsShow=false,picObj=[]"></i>
<el-carousel height="600px" :initial-index='initialIndex' :interval="5000" trigger="click"> <el-carousel height="600px" :initial-index='initialIndex' :interval="5000" trigger="click">
<el-carousel-item v-for="(item,index) in picObj" :key="index"> <el-carousel-item v-for="(item,index) in picObj" :key="index">
<div class="inlineDiv ownScrollbarStyle"><img :src="item"/></div> <div class="inlineDiv ownScrollbarStyle"><img :src="item" /></div>
</el-carousel-item> </el-carousel-item>
</el-carousel> </el-carousel>
</div> </div>
...@@ -551,7 +567,7 @@ ...@@ -551,7 +567,7 @@
nav: [], nav: [],
TravelDayNum: 0, TravelDayNum: 0,
RealityNum: 0, RealityNum: 0,
isShow:false isShow: false
} }
}, },
methods: { methods: {
...@@ -602,7 +618,7 @@ ...@@ -602,7 +618,7 @@
Rebate: '0', Rebate: '0',
TotalPrice: '0', TotalPrice: '0',
Remark: '', Remark: '',
TCIDs: this.list.OtherOrderInfo.SelfPlayingExpendList[0].TCIDs, TCIDs: this.list.OtherOrderInfo.SelfPlayingExpendList[0].TCIDs,
VoucherPicList: [] VoucherPicList: []
}) })
}, },
...@@ -613,7 +629,7 @@ ...@@ -613,7 +629,7 @@
let totalPrice = 0 let totalPrice = 0
obj.forEach(x => { obj.forEach(x => {
// totalPrice += Number(item.CostPrice) + Number(item.HighSpeedPrice) + Number(item.StopPrice) // totalPrice += Number(item.CostPrice) + Number(item.HighSpeedPrice) + Number(item.StopPrice)
totalPrice += x.UserNum * x.UnitPrice totalPrice += x.UserNum * x.UnitPrice
}) })
return totalPrice return totalPrice
}, },
...@@ -655,13 +671,12 @@ ...@@ -655,13 +671,12 @@
} else { } else {
this.$message.error(res.data.message) this.$message.error(res.data.message)
} }
}, err => { }, err => {})
})
}, },
saveitem(obj) { saveitem(obj) {
this.TemporaryItem = obj this.TemporaryItem = obj
}, },
analyzeItem(obj, index) { //预览 analyzeItem(obj, index) { //预览
this.picObj = [] this.picObj = []
obj.forEach(item => { obj.forEach(item => {
this.picObj.push(item.url) this.picObj.push(item.url)
...@@ -686,14 +701,15 @@ ...@@ -686,14 +701,15 @@
return '晚餐' return '晚餐'
}, },
getNav() { getNav() {
this.apipost('dmcstatistics_post_GetHotelStaticsByTCIDs', {TCIDs: this.$route.query.id}, res => { this.apipost('dmcstatistics_post_GetHotelStaticsByTCIDs', {
TCIDs: this.$route.query.id
}, res => {
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
this.nav = res.data.data this.nav = res.data.data
} else { } else {
this.$message.error(res.data.message) this.$message.error(res.data.message)
} }
}, err => { }, err => {})
})
}, },
getList() { getList() {
this.loading = true this.loading = true
...@@ -710,8 +726,7 @@ ...@@ -710,8 +726,7 @@
this.loading = false this.loading = false
this.$message.error(res.data.message) this.$message.error(res.data.message)
} }
}, err => { }, err => {})
})
}, },
uploadImg(file) { uploadImg(file) {
//上传 //上传
...@@ -736,6 +751,7 @@ ...@@ -736,6 +751,7 @@
} }
} }
</script> </script>
<style> <style>
...@@ -820,11 +836,11 @@ ...@@ -820,11 +836,11 @@
border-bottom: none; border-bottom: none;
} }
.leaderReimbursementTable tr td .pDateStyle > span:after { .leaderReimbursementTable tr td .pDateStyle>span:after {
content: '/'; content: '/';
} }
.leaderReimbursementTable tr td .pDateStyle > span:last-child:after { .leaderReimbursementTable tr td .pDateStyle>span:last-child:after {
content: '' content: ''
} }
...@@ -848,51 +864,51 @@ ...@@ -848,51 +864,51 @@
height: 34px !important; height: 34px !important;
} }
.leaderReimbursementTable .splitP td > p { .leaderReimbursementTable .splitP td>p {
height: 20px; height: 20px;
line-height: 20px; line-height: 20px;
border-bottom: 1px solid #ccc; border-bottom: 1px solid #ccc;
} }
.leaderReimbursementTable .splitP td > p:last-child { .leaderReimbursementTable .splitP td>p:last-child {
border-bottom: none; border-bottom: none;
} }
.leaderReimbursementTable .ScenicTr td > div { .leaderReimbursementTable .ScenicTr td>div {
height: 60px; height: 60px;
line-height: 60px; line-height: 60px;
border-bottom: 1px solid #ccc; border-bottom: 1px solid #ccc;
} }
.leaderReimbursementTable .ScenicTr td > div:last-child { .leaderReimbursementTable .ScenicTr td>div:last-child {
border-bottom: none; border-bottom: none;
} }
.leaderReimbursementTable .ScenicTr td > div p { .leaderReimbursementTable .ScenicTr td>div p {
line-height: 20px; line-height: 20px;
border-bottom: 1px solid #ccc; border-bottom: 1px solid #ccc;
} }
.leaderReimbursementTable .ScenicTr td > div p:last-child { .leaderReimbursementTable .ScenicTr td>div p:last-child {
border-bottom: none; border-bottom: none;
} }
.leaderReimbursementTable .HotelTr td > div { .leaderReimbursementTable .HotelTr td>div {
/*height: 100px;*/ /*height: 100px;*/
/*line-height: 100px;*/ /*line-height: 100px;*/
border-bottom: 1px solid #ccc; border-bottom: 1px solid #ccc;
} }
.leaderReimbursementTable .HotelTr td > div:last-child { .leaderReimbursementTable .HotelTr td>div:last-child {
border-bottom: none; border-bottom: none;
} }
.leaderReimbursementTable .HotelTr td > div p { .leaderReimbursementTable .HotelTr td>div p {
line-height: 19px; line-height: 19px;
border-bottom: 1px solid #ccc; border-bottom: 1px solid #ccc;
} }
.leaderReimbursementTable .HotelTr td > div p:last-child { .leaderReimbursementTable .HotelTr td>div p:last-child {
border-bottom: none; border-bottom: none;
} }
...@@ -906,23 +922,23 @@ ...@@ -906,23 +922,23 @@
width: 100%; width: 100%;
} }
.leaderReimbursementTable .uploadListDiv > p { .leaderReimbursementTable .uploadListDiv>p {
border-bottom: 1px solid #ccc; border-bottom: 1px solid #ccc;
cursor: pointer; cursor: pointer;
width: 100% !important; width: 100% !important;
} }
.leaderReimbursementTable .uploadListDiv > p:last-child { .leaderReimbursementTable .uploadListDiv>p:last-child {
border-bottom: none; border-bottom: none;
} }
.leaderReimbursementTable .uploadListDiv > p i { .leaderReimbursementTable .uploadListDiv>p i {
color: #999; color: #999;
vertical-align: sub; vertical-align: sub;
margin: 3px; margin: 3px;
} }
.leaderReimbursementTable .jdtd > div { .leaderReimbursementTable .jdtd>div {
height: auto !important; height: auto !important;
padding: 0 10px; padding: 0 10px;
} }
...@@ -930,4 +946,5 @@ ...@@ -930,4 +946,5 @@
.leaderReimbursementTable .leaderPayTable .el-input__prefix { .leaderReimbursementTable .leaderPayTable .el-input__prefix {
display: none; display: none;
} }
</style> </style>
...@@ -104,7 +104,6 @@ ...@@ -104,7 +104,6 @@
<div v-for="subItem in outItem.HotelOrderList"> <div v-for="subItem in outItem.HotelOrderList">
{{subItem.HotelName}} {{subItem.HotelName}}
</div> </div>
<!-- <div style="width: 100%;">{{item.HotelName}}</div> -->
</td> </td>
<td> <td>
<div v-for="subItem in outItem.HotelOrderList"> <div v-for="subItem in outItem.HotelOrderList">
...@@ -123,10 +122,6 @@ ...@@ -123,10 +122,6 @@
{{childItem.HouseTypeName}} {{childItem.HouseTypeName}}
</p> </p>
</div> </div>
<!-- <p v-for="x in item.HouseStatistics.HouseTypeList">
{{x.HouseTypeName}}
</p> -->
</div> </div>
</td> </td>
<td> <td>
...@@ -138,9 +133,6 @@ ...@@ -138,9 +133,6 @@
</p> </p>
</div> </div>
</div> </div>
<!-- <p v-for="x in item.HouseStatistics.HouseTypeList">
{{x.HouseTypeCount}}
</p> -->
</div> </div>
</td> </td>
<td> <td>
...@@ -150,9 +142,6 @@ ...@@ -150,9 +142,6 @@
{{childItem.HotelDiscount}} {{childItem.HotelDiscount}}
</p> </p>
</div> </div>
<!-- <p v-for="x in item.HouseStatistics.HouseTypeList">
{{x.HotelDiscount}}
</p> -->
</div> </div>
</td> </td>
<td> <td>
...@@ -162,9 +151,6 @@ ...@@ -162,9 +151,6 @@
{{childItem.UnitPrice}} {{childItem.UnitPrice}}
</p> </p>
</div> </div>
<!-- <p v-for="x in item.HouseStatistics.HouseTypeList">
{{x.UnitPrice}}
</p> -->
</div> </div>
</td> </td>
<td> <td>
...@@ -174,9 +160,6 @@ ...@@ -174,9 +160,6 @@
{{childItem.UnitPrice*(childItem.HouseGuestNum-childItem.HotelDiscount)}} {{childItem.UnitPrice*(childItem.HouseGuestNum-childItem.HotelDiscount)}}
</p> </p>
</div> </div>
<!-- <p v-for="x in item.HouseStatistics.HouseTypeList">
{{x.UnitPrice*(x.HouseGuestNum-x.HotelDiscount)}}
</p> -->
</div> </div>
</td> </td>
<td> <td>
...@@ -186,23 +169,16 @@ ...@@ -186,23 +169,16 @@
{{childItem.RebateRatio}}% {{childItem.RebateRatio}}%
</p> </p>
</div> </div>
<!-- <p v-for="x in item.HouseStatistics.HouseTypeList">
{{item.RebateRatio}}%
</p> -->
</div> </div>
</td> </td>
<td> <td>
<div class="alcenter"> <div class="alcenter">
<div v-for="subItem in outItem.HotelOrderList"> <div v-for="subItem in outItem.HotelOrderList">
<!-- <p v-for="childItem in subItem.HouseStatistics.HouseTypeList"> -->
{{hotelTotalPrice(subItem.OrderDetailsList)}} {{hotelTotalPrice(subItem.OrderDetailsList)}}
<!-- </p> -->
</div> </div>
</div> </div>
<!-- {{hotelTotalPrice(item.HouseStatistics.HouseTypeList)}} -->
</td> </td>
<td> <td>
<div class="alcenter"> <div class="alcenter">
<div v-for="subItem in outItem.HotelOrderList"> <div v-for="subItem in outItem.HotelOrderList">
<p> <p>
......
<style> <style>
.clearfix:after { .clearfix:after {
content: "\0020"; content: "\0020";
display: block; display: block;
height: 0; height: 0;
...@@ -208,7 +208,7 @@ ...@@ -208,7 +208,7 @@
<th width="200">{{$t("admin.admin_operate")}}</th> <th width="200">{{$t("admin.admin_operate")}}</th>
</tr> </tr>
<tr v-for="(item,index) in DataList" :key="index"> <tr v-for="(item,index) in DataList" :key="index">
<td>{{item.Flight_number}}</td> <td>{{item.Flight_number}} <!--{{item.SeasonTypeStr}}--></td>
<td>{{item.DName}}</td> <td>{{item.DName}}</td>
<td>{{item.Departure_time}}</td> <td>{{item.Departure_time}}</td>
<td>{{item.SName}}</td> <td>{{item.SName}}</td>
...@@ -237,7 +237,7 @@ ...@@ -237,7 +237,7 @@
{{$t('system.content_noData')}} {{$t('system.content_noData')}}
</div> </div>
<el-pagination background @current-change="handleCurrentChange" :current-page.sync="currentPage" layout="total,prev, pager, next, jumper" <el-pagination background @current-change="handleCurrentChange" :current-page.sync="currentPage" layout="total,prev, pager, next, jumper"
:page-size=msg.pageSize :total=total> :page-size="msg.pageSize" :total="total">
</el-pagination> </el-pagination>
<el-dialog custom-class='addCompany' :title="dialogTitle" :visible.sync="outerVisible" center :before-close="closeChangeMachie"> <el-dialog custom-class='addCompany' :title="dialogTitle" :visible.sync="outerVisible" center :before-close="closeChangeMachie">
<el-form :model="addMsg" :rules="rules" ref="addMsg" label-width="120px"> <el-form :model="addMsg" :rules="rules" ref="addMsg" label-width="120px">
...@@ -250,10 +250,16 @@ ...@@ -250,10 +250,16 @@
<el-form-item :label="$t('system.query_flightNum')" prop="Flight_number" class="other_input"> <el-form-item :label="$t('system.query_flightNum')" prop="Flight_number" class="other_input">
<el-input v-model="addMsg.Flight_number" :placeholder="$t('system.ph_airNum')"></el-input> <el-input v-model="addMsg.Flight_number" :placeholder="$t('system.ph_airNum')"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="时间类型" style="display:none">
<el-select v-model="addMsg.SeasonType">
<el-option v-for='item in SeasonTypeList' :key="item.Id" :label="item.Name" :value="item.Id">
</el-option>
</el-select>
</el-form-item>
<el-form-item :label="$t('system.query_type')" prop="Type"> <el-form-item :label="$t('system.query_type')" prop="Type">
<el-select v-model="addMsg.Type" :placeholder="$t('system.ph_type')"> <el-select v-model="addMsg.Type" :placeholder="$t('system.ph_type')">
<el-option :label='$t("system.label_zhifei")' value='1'></el-option> <el-option :label='$t("system.label_zhifei")' :value='1'></el-option>
<el-option :label='$t("system.label_jingting")' value='2'></el-option> <el-option :label='$t("system.label_jingting")' :value='2'></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item :label="$t('system.query_flightCity')" prop="Departure_city"> <el-form-item :label="$t('system.query_flightCity')" prop="Departure_city">
...@@ -269,7 +275,8 @@ ...@@ -269,7 +275,8 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item :label="$t('system.ph_flightTime')" prop="Departure_time" class='flightMg_delete_icon time'> <el-form-item :label="$t('system.ph_flightTime')" prop="Departure_time" class='flightMg_delete_icon time'>
<el-input type="text" v-model="addMsg.Departure_time" @keyup.native="changeV(addMsg)" maxlength="5" :placeholder="$t('system.ph_time')"></el-input> <el-input type="text" v-model="addMsg.Departure_time" @keyup.native="changeV(addMsg)" maxlength="5"
:placeholder="$t('system.ph_time')"></el-input>
</el-form-item> </el-form-item>
<div v-if='addMsg.Type=="2"'> <div v-if='addMsg.Type=="2"'>
<el-form-item :label="$t('system.query_stopCity')" prop="Stopover_city"> <el-form-item :label="$t('system.query_stopCity')" prop="Stopover_city">
...@@ -285,23 +292,9 @@ ...@@ -285,23 +292,9 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item :label="$t('system.ph_stopFlightTime')" prop="Arrival_stopover_time" class='flightMg_delete_icon time'> <el-form-item :label="$t('system.ph_stopFlightTime')" prop="Arrival_stopover_time" class='flightMg_delete_icon time'>
<!-- <el-time-select v-model="addMsg.Arrival_stopover_time" :picker-options="{
start: '00:00',
step: '00:01',
end: '23:59'
}"
:placeholder="$t('system.ph_time')">
</el-time-select> -->
<el-input type="text" v-model="addMsg.Arrival_stopover_time" :placeholder="$t('system.ph_time')"></el-input> <el-input type="text" v-model="addMsg.Arrival_stopover_time" :placeholder="$t('system.ph_time')"></el-input>
</el-form-item> </el-form-item>
<el-form-item :label="$t('system.ph_toFlightTime')" prop="Departure_stopover_time" class='flightMg_delete_icon time'> <el-form-item :label="$t('system.ph_toFlightTime')" prop="Departure_stopover_time" class='flightMg_delete_icon time'>
<!-- <el-time-select v-model="addMsg.Departure_stopover_time" :picker-options="{
start: '00:00',
step: '00:01',
end: '23:59'
}"
:placeholder="$t('system.ph_time')">
</el-time-select> -->
<el-input type="text" v-model="addMsg.Departure_stopover_time" :placeholder="$t('system.ph_time')"></el-input> <el-input type="text" v-model="addMsg.Departure_stopover_time" :placeholder="$t('system.ph_time')"></el-input>
</el-form-item> </el-form-item>
</div> </div>
...@@ -318,41 +311,9 @@ ...@@ -318,41 +311,9 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item :label="$t('system.query_arrivalTime')" prop="Arrival_time" class='flightMg_delete_icon time'> <el-form-item :label="$t('system.query_arrivalTime')" prop="Arrival_time" class='flightMg_delete_icon time'>
<!-- <el-time-select v-model="addMsg.Arrival_time" :picker-options="{ <el-input type="text" v-model="addMsg.Arrival_time" @keyup.native="changeV2(addMsg)" maxlength="5"
start: '00:00', :placeholder="$t('system.ph_time')"></el-input>
step: '00:01',
end: '23:59'
}"
:placeholder="$t('system.ph_time')">
</el-time-select> -->
<el-input type="text" v-model="addMsg.Arrival_time" @keyup.native="changeV2(addMsg)" maxlength="5" :placeholder="$t('system.ph_time')"></el-input>
</el-form-item> </el-form-item>
<el-form-item class="flightMg_info">
<el-checkbox v-model="checked">{{$t('system.table_tips_fmgCk')}}</el-checkbox>
</el-form-item>
<p class="flightMg_info_tips">{{$t('system.table_tips_fmgInfo')}}</p>
<div v-if="checked">
<el-form-item :label="$t('system.table_begTime')" class='time'>
<!-- <el-time-select :picker-options="{
start: '00:00',
step: '00:01',
end: '23:59'
}"
:placeholder="$t('system.ph_choice')">
</el-time-select> -->
<el-input type="text" :placeholder="$t('system.ph_time')"></el-input>
</el-form-item>
<el-form-item :label="$t('system.table_overTime')" class='time'>
<!-- <el-time-select :picker-options="{
start: '00:00',
step: '00:01',
end: '23:59'
}"
:placeholder="$t('system.ph_choice')">
</el-time-select> -->
<el-input type="text" :placeholder="$t('system.ph_time')"></el-input>
</el-form-item>
</div>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<button class="normalBtn" type="primary" @click="submitForm('addMsg')">{{$t('pub.saveBtn')}}</button> &nbsp; <button class="normalBtn" type="primary" @click="submitForm('addMsg')">{{$t('pub.saveBtn')}}</button> &nbsp;
...@@ -362,497 +323,478 @@ ...@@ -362,497 +323,478 @@
</div> </div>
</template> </template>
<script> <script>
export default { export default {
data() { data() {
return { return {
checked: false, checked: false,
outerVisible: false, outerVisible: false,
msg: { msg: {
//请求数据参数 //请求数据参数
pageIndex: 1, pageIndex: 1,
pageSize: 15, pageSize: 15,
airlineID: "0", airlineID: "0",
Flight_number: "", Flight_number: "",
Type: "0", Type: "0",
Departure_city: "0", Departure_city: "0",
Departure_airport: "0", Departure_airport: "0",
Stopover_city: "0", Stopover_city: "0",
Stopover_airport: "0", Stopover_airport: "0",
Arrival_city: "0", Arrival_city: "0",
Arrival_airport: "0", Arrival_airport: "0",
Status: "0" Status: "0"
}, },
addMsg: { addMsg: {
ID: 0, ID: 0,
Flight_number: "", Flight_number: "",
Departure_city: "", Departure_city: "",
Arrival_city: "", Arrival_city: "",
Departure_airport: "", Departure_airport: "",
Arrival_airport: "", Arrival_airport: "",
Departure_time: "", Departure_time: "",
Arrival_time: "", Arrival_time: "",
Type: "", Type: "",
AirlineID: "", AirlineID: "",
Stopover_city: "", Stopover_city: "",
Stopover_airport: "", Stopover_airport: "",
Arrival_stopover_time: "", Arrival_stopover_time: "",
Departure_stopover_time: "" Departure_stopover_time: "",
}, SeasonType: 0,
DataList: [], },
chosenIndex: -1, SeasonTypeList: [],
total: 0, DataList: [],
currentPage: 1, chosenIndex: -1,
airlineList: [], total: 0,
Departure_airport: [], currentPage: 1,
layer_Departure_airport: [], airlineList: [],
Stopover_airport: [], Departure_airport: [],
layer_Stopover_airport: [], layer_Departure_airport: [],
Arrival_airport: [], Stopover_airport: [],
layer_Arrival_airport: [], layer_Stopover_airport: [],
cityList: [], Arrival_airport: [],
stopShow: false, layer_Arrival_airport: [],
dialogTitle: "", cityList: [],
insideDialogTxt: "保存成功!", stopShow: false,
loading: true, dialogTitle: "",
noData: false, insideDialogTxt: "保存成功!",
rules: { loading: true,
//表单必填验证 noData: false,
AirlineID: [ rules: {
{ //表单必填验证
AirlineID: [{
required: true, required: true,
message: "请选择航空公司", message: "请选择航空公司",
trigger: "change" trigger: "change"
} }],
], Flight_number: [{
Flight_number: [
{
required: true, required: true,
message: "请输入航班号", message: "请输入航班号",
trigger: "blur" trigger: "blur"
} }],
], Type: [{
Type: [
{
required: true, required: true,
message: "请选择类型", message: "请选择类型",
trigger: "change" trigger: "change"
} }],
], Departure_city: [{
Departure_city: [
{
required: true, required: true,
message: "请选择起飞城市", message: "请选择起飞城市",
trigger: "change" trigger: "change"
} }],
], Departure_airport: [{
Departure_airport: [
{
required: true, required: true,
message: "请选择起飞机场", message: "请选择起飞机场",
trigger: "change" trigger: "change"
} }],
], Departure_time: [{
Departure_time: [
{
required: true, required: true,
message: "请填写起飞时间", message: "请填写起飞时间",
trigger: "change" trigger: "change"
} }],
], Arrival_time: [{
Arrival_time: [
{
required: true, required: true,
message: "请填写到达时间", message: "请填写到达时间",
trigger: "change" trigger: "change"
} }],
], Stopover_city: [{
Stopover_city: [
{
required: true, required: true,
message: "请选择经停城市", message: "请选择经停城市",
trigger: "change" trigger: "change"
} }],
], Stopover_airport: [{
Stopover_airport: [
{
required: true, required: true,
message: "请选择起飞机场", message: "请选择起飞机场",
trigger: "change" trigger: "change"
} }],
], Arrival_stopover_time: [{
Arrival_stopover_time: [
{
required: true, required: true,
message: "请填写经停到达时间", message: "请填写经停到达时间",
trigger: "change" trigger: "change"
} }],
], Departure_stopover_time: [{
Departure_stopover_time: [
{
required: true, required: true,
message: "请填写经停起飞时间", message: "请填写经停起飞时间",
trigger: "change" trigger: "change"
} }],
], Arrival_city: [{
Arrival_city: [
{
required: true, required: true,
message: "请选择到达城市", message: "请选择到达城市",
trigger: "change" trigger: "change"
} }],
], Arrival_airport: [{
Arrival_airport: [
{
required: true, required: true,
message: "请选择到达机场", message: "请选择到达机场",
trigger: "change" trigger: "change"
} }]
] }
}
};
},
methods: {
//获取列表数据
getList() {
this.loading = true;
this.apipost(
"flight_post_GetPageList",
this.msg,
res => {
this.loading = false;
if (res.data.resultCode == 1) {
this.total = res.data.data.count;
this.noData = !this.total > 0;
this.DataList = res.data.data.pageData;
} else {
this.Error(res.data.message);
}
},
err => {}
);
},
//获取城市列表
getDepartureCityList() {
this.apipost(
"dict_post_Destination_GetCityList",
{},
res => {
this.cityList = res.data.data;
},
err => {}
);
},
getaAirport(ID, blo) {
//根据城市获取起飞机场
let msg = {
City_id: ID
};
this.apipost(
"airport_post_GetList",
msg,
res => {
if (this.outerVisible) {
if (!blo) {
this.addMsg.Departure_airport = "";
}
this.layer_Departure_airport = res.data.data;
} else {
this.msg.Departure_airport = "0";
this.Departure_airport = res.data.data;
}
},
err => {}
);
},
initAddMsg() {
let newMsg = {
ID: 0,
Flight_number: "",
Departure_city: "",
Arrival_city: "",
Departure_airport: "",
Arrival_airport: "",
Departure_time: "",
Arrival_time: "",
Type: "",
AirlineID: "",
Stopover_city: "",
Stopover_airport: "",
Arrival_stopover_time: "",
Departure_stopover_time: ""
}; };
this.addMsg = newMsg;
}, },
getaStopAirport(ID, blo) { methods: {
//获取列表数据
getList() {
this.loading = true;
this.apipost(
"flight_post_GetPageList",
this.msg,
res => {
this.loading = false;
if (res.data.resultCode == 1) {
this.total = res.data.data.count;
this.noData = !this.total > 0;
this.DataList = res.data.data.pageData;
} else {
this.Error(res.data.message);
}
},
err => {}
);
},
//获取城市列表
getDepartureCityList() {
this.apipost(
"dict_post_Destination_GetCityList", {},
res => {
this.cityList = res.data.data;
},
err => {}
);
},
getaAirport(ID, blo) {
//根据城市获取起飞机场
let msg = {
City_id: ID
};
this.apipost(
"airport_post_GetList",
msg,
res => {
if (this.outerVisible) {
if (!blo) {
this.addMsg.Departure_airport = "";
}
this.layer_Departure_airport = res.data.data;
} else {
this.msg.Departure_airport = "0";
this.Departure_airport = res.data.data;
}
},
err => {}
);
},
initAddMsg() {
let newMsg = {
ID: 0,
Flight_number: "",
Departure_city: "",
Arrival_city: "",
Departure_airport: "",
Arrival_airport: "",
Departure_time: "",
Arrival_time: "",
Type: "",
AirlineID: "",
Stopover_city: "",
Stopover_airport: "",
Arrival_stopover_time: "",
Departure_stopover_time: "",
SeasonType: 0
};
this.addMsg = newMsg;
},
//根据城市获取经停机场 //根据城市获取经停机场
let msg = { getaStopAirport(ID, blo) {
City_id: ID this.apipost(
}; "airport_post_GetList", {
this.apipost( City_id: ID
"airport_post_GetList", },
msg, res => {
res => { if (this.outerVisible) {
if (this.outerVisible) { if (!blo) {
if (!blo) { this.addMsg.Stopover_airport = "";
this.addMsg.Stopover_airport = ""; }
this.layer_Stopover_airport = res.data.data;
} else {
this.msg.Stopover_airport = "0";
this.Stopover_airport = res.data.data;
} }
this.layer_Stopover_airport = res.data.data; },
} else { err => {}
this.msg.Stopover_airport = "0"; );
this.Stopover_airport = res.data.data; },
} getaArrivalAirport(ID, blo) {
}, //根据城市获取到达机场
err => {} let msg = {
); City_id: ID
}, };
getaArrivalAirport(ID, blo) { this.apipost(
//根据城市获取到达机场 "airport_post_GetList",
let msg = { msg,
City_id: ID res => {
}; if (this.outerVisible) {
this.apipost( if (!blo) {
"airport_post_GetList", this.addMsg.Arrival_airport = "";
msg, }
res => { this.layer_Arrival_airport = res.data.data;
if (this.outerVisible) { } else {
if (!blo) { this.msg.Arrival_airport = "0";
this.addMsg.Arrival_airport = ""; this.Arrival_airport = res.data.data;
} }
this.layer_Arrival_airport = res.data.data; },
} else { err => {}
this.msg.Arrival_airport = "0"; );
this.Arrival_airport = res.data.data; },
} //获取航空公司*
}, getAirlineList() {
err => {} this.apipost(
); "airline_post_GetList", {},
}, res => {
//获取航空公司* this.airlineList = res.data.data;
getAirlineList() { },
this.apipost( err => {}
"airline_post_GetList", );
{}, },
res => { //添加
this.airlineList = res.data.data; addGroupGuide() {
}, this.apipost(
err => {} "flight_post_Set",
); this.addMsg,
}, res => {
//添加 if (res.data.resultCode == 1) {
addGroupGuide() { this.Success("保存成功");
this.apipost( this.getList();
"flight_post_Set", this.outerVisible = false;
this.addMsg, this.resetForm("addMsg");
res => { } else {
if (res.data.resultCode == 1) { this.Error(res.data.message);
this.Success("保存成功"); }
this.getList(); },
this.outerVisible = false; err => {}
this.resetForm("addMsg"); );
},
//提交创建、修改表单
submitForm(addMsg) {
this.$refs[addMsg].validate(valid => {
if (valid) {
this.addGroupGuide();
} else { } else {
this.Error(res.data.message); return false;
} }
}, });
err => {} },
); deletelist(index, type) {
}, //删除
//提交创建、修改表单 var text = "";
submitForm(addMsg) { var text2 = "";
this.$refs[addMsg].validate(valid => { if (type == 1) {
if (valid) { text = "是否删除?";
this.addGroupGuide(); text2 = "删除成功";
} else { } else {
return false; text = "是否恢复?";
text2 = "恢复成功";
} }
}); this.$confirm(text, "提示", {
}, confirmButtonText: "确定",
deletelist(index, type) { cancelButtonText: "取消",
//删除 type: "warning"
var text = ""; })
var text2 = ""; .then(() => {
if (type == 1) { this.$message({
text = "是否删除?"; type: "success",
text2 = "删除成功"; message: text2
} else { });
text = "是否恢复?"; this.deleteFligt(index);
text2 = "恢复成功"; })
} .catch(() => {
this.$confirm(text, "提示", { this.$message({
confirmButtonText: "确定", type: "info",
cancelButtonText: "取消", message: "已取消删除"
type: "warning" });
})
.then(() => {
this.$message({
type: "success",
message: text2
});
this.deleteFligt(index);
})
.catch(() => {
this.$message({
type: "info",
message: "已取消删除"
}); });
}); },
},
//删除 //删除
deleteFligt(index) { deleteFligt(index) {
let msg = {
let msg = { ID: this.DataList[index].ID
ID: this.DataList[index].ID };
}; this.apipost(
this.apipost( "flight_post_Remove",
"flight_post_Remove", msg,
msg, res => {
res => { if (res.data.resultCode == 1) {
if (res.data.resultCode == 1) { this.getList();
this.getList(); }
},
err => {}
);
},
//显示功能操作按钮
menuShow(index) {
this.chosenIndex = this.chosenIndex == index ? -1 : index;
},
//翻页功能按钮
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
},
//查询初始化页码
resetPageIndex() {
this.msg.pageIndex = 1;
this.currentPage = 1;
},
//修改
updateData(ID) {
let msg = {
ID: ID
};
this.apipost(
"flight_post_Get",
msg,
res => {
var newMsg = res.data.data;
this.getaAirport(newMsg.Departure_city, true);
if (newMsg.Stopover_city) {
this.getaStopAirport(newMsg.Stopover_city, true);
}
this.getaArrivalAirport(newMsg.Arrival_city, true);
this.addMsg = res.data.data;
},
err => {}
);
},
closeChangeMachie(done) {
//弹出框关闭初始化弹框内表单
done();
this.resetForm("addMsg");
},
resetForm(formName) {
//弹出框取消 初始化谈框内表单
this.$refs[formName].clearValidate();
},
//验证时间格式
changeV(addMsg) {
var date = addMsg.Departure_time;
if (date.length == 1) {
var v1 = date.substring(0, 1);
addMsg.Departure_time = v1.replace(/[^0-2]{1}/g, '');
}
if (date.length == 2) {
var v1 = date.substring(0, 1);
if (v1 == 2) {
var reg = /[^0-3]{1}/g;
} else {
var reg = /[^0-9]{1}/g;
} }
}, var v2 = date.substring(1, 2);
err => {} if (!reg.test(v2)) {
); addMsg.Departure_time = date + ":"
}, } else {
//显示功能操作按钮 addMsg.Departure_time = date.substring(0, 1);
menuShow(index) {
this.chosenIndex = this.chosenIndex == index ? -1 : index;
},
//翻页功能按钮
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
},
//查询初始化页码
resetPageIndex() {
this.msg.pageIndex = 1;
this.currentPage = 1;
},
//修改
updateData(ID) {
let msg = {
ID: ID
};
this.apipost(
"flight_post_Get",
msg,
res => {
var newMsg = res.data.data;
newMsg.Type = newMsg.Type.toString();
this.getaAirport(newMsg.Departure_city, true);
if (newMsg.Stopover_city) {
this.getaStopAirport(newMsg.Stopover_city, true);
} }
this.getaArrivalAirport(newMsg.Arrival_city, true);
this.addMsg = res.data.data;
},
err => {}
);
},
closeChangeMachie(done) {
//弹出框关闭初始化弹框内表单
done();
this.resetForm("addMsg");
},
resetForm(formName) {
//弹出框取消 初始化谈框内表单
this.$refs[formName].clearValidate();
},
//验证时间格式
changeV(addMsg){
var date = addMsg.Departure_time;
if(date.length==1){
var v1 = date.substring(0,1);
addMsg.Departure_time = v1.replace(/[^0-2]{1}/g, '');
}
if(date.length==2){
var v1 = date.substring(0,1);
if(v1 == 2){
var reg = /[^0-3]{1}/g;
}else{
var reg = /[^0-9]{1}/g;
} }
var v2 = date.substring(1,2); if (date.length == 4) {
if(!reg.test(v2)){ reg = /[^0-5]{1}/g;
addMsg.Departure_time = date+":" var v3 = date.substring(3, 4);
}else{ if (!reg.test(v3)) {
addMsg.Departure_time = date.substring(0,1); addMsg.Departure_time = date;
} else {
addMsg.Departure_time = date.substring(0, 3);
}
} }
} if (date.length == 5) {
if(date.length==4){ var reg = /[^0-9]{1}/g;
reg = /[^0-5]{1}/g; var v4 = date.substring(4, 5);
var v3 = date.substring(3,4); if (!reg.test(v4)) {
if(!reg.test(v3)){ addMsg.Departure_time = date
addMsg.Departure_time = date; } else {
}else{ addMsg.Departure_time = date.substring(0, 4);
addMsg.Departure_time = date.substring(0,3); }
}
}
if(date.length==5){
var reg = /[^0-9]{1}/g;
var v4 = date.substring(4, 5);
if (!reg.test(v4)) {
addMsg.Departure_time = date
} }
else { if (date.length > 5) {
addMsg.Departure_time = date.substring(0,4); addMsg.Departure_time = date.substring(0, 5);
} }
} this.$forceUpdate();
if(date.length>5){ },
addMsg.Departure_time = date.substring(0,5);
}
this.$forceUpdate();
},
//验证时间格式 //验证时间格式
changeV2(addMsg){ changeV2(addMsg) {
var date = addMsg.Arrival_time; var date = addMsg.Arrival_time;
if(date.length==1){ if (date.length == 1) {
var v1 = date.substring(0,1); var v1 = date.substring(0, 1);
addMsg.Arrival_time = v1.replace(/[^0-2]{1}/g, ''); addMsg.Arrival_time = v1.replace(/[^0-2]{1}/g, '');
}
if(date.length==2){
var v1 = date.substring(0,1);
if(v1 == 2){
var reg = /[^0-3]{1}/g;
}else{
var reg = /[^0-9]{1}/g;
} }
var v2 = date.substring(1,2); if (date.length == 2) {
if(!reg.test(v2)){ var v1 = date.substring(0, 1);
addMsg.Arrival_time = date+":" if (v1 == 2) {
}else{ var reg = /[^0-3]{1}/g;
addMsg.Arrival_time = date.substring(0,1); } else {
var reg = /[^0-9]{1}/g;
}
var v2 = date.substring(1, 2);
if (!reg.test(v2)) {
addMsg.Arrival_time = date + ":"
} else {
addMsg.Arrival_time = date.substring(0, 1);
}
} }
} if (date.length == 4) {
if(date.length==4){ reg = /[^0-5]{1}/g;
reg = /[^0-5]{1}/g; var v3 = date.substring(3, 4);
var v3 = date.substring(3,4); if (!reg.test(v3)) {
if(!reg.test(v3)){ addMsg.Arrival_time = date;
addMsg.Arrival_time = date; } else {
}else{ addMsg.Arrival_time = date.substring(0, 3);
addMsg.Arrival_time = date.substring(0,3); }
}
}
if(date.length==5){
var reg = /[^0-9]{1}/g;
var v4 = date.substring(4, 5);
if (!reg.test(v4)) {
addMsg.Arrival_time = date
} }
else { if (date.length == 5) {
addMsg.Arrival_time = date.substring(0,4); var reg = /[^0-9]{1}/g;
} var v4 = date.substring(4, 5);
} if (!reg.test(v4)) {
if(date.length>5){ addMsg.Arrival_time = date
addMsg.Arrival_time = date.substring(0,5); } else {
addMsg.Arrival_time = date.substring(0, 4);
}
}
if (date.length > 5) {
addMsg.Arrival_time = date.substring(0, 5);
}
this.$forceUpdate();
},
//获取季节类型枚举列表
getSeasonTypeList() {
this.apipost(
"flight_get_GetSeasonTypeList", {},
res => {
this.SeasonTypeList = res.data.data;
},
err => {}
);
} }
this.$forceUpdate(); },
mounted() {
this.getSeasonTypeList()
this.getList();
this.getAirlineList();
this.getDepartureCityList();
} }
}, };
mounted() {
this.getList(); </script>
this.getAirlineList();
this.getDepartureCityList();
}
};
</script>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment