Commit 470f560a authored by 黄奎's avatar 黄奎

11

parent 67f5afcc
......@@ -936,7 +936,7 @@
</td>
</tr>
<tr>
<td colspan="5">
<td colspan="5" contenteditable="true">
<div style="display: flex">
<span>地接社名称:四川和平国际旅行社有限公司</span>
</div>
......
<template>
<div>
<div class="query-box" style="border-bottom: none;">
<ul>
<li>
<span>
<em>{{$t('advmanager.v_line')}}</em>
<el-select v-model="msg.LineId" filterable :placeholder="$t('pub.pleaseSel')" @change="getLineTeamList()">
<el-option :label="$t('pub.unlimitedSel')" :value='0'></el-option>
<el-option v-for="item in queryCommonData.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 v-model="msg.LineteamId" filterable :placeholder="$t('pub.pleaseSel')">
<el-option :label="$t('pub.unlimitedSel')" :value='0'></el-option>
<el-option v-for="item in queryCommonData.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'></el-input>
</span>
</li>
<li><span><em>{{$t('sm.Date')}}</em>
<!-- <el-date-picker v-model='msg.StartDate' class='w135' value-format="yyyy-MM-dd" type="date"
:picker-options="pickerBeginDateBefore"></el-date-picker> -->
<DateLimit :clearable="false" :StartGroupDate="msg.StartDate" :EndGroupDate="msg.EndDate"
@change="(date)=> msg.StartDate = date"></DateLimit>
-
<el-date-picker v-model='msg.EndDate' class='w135' value-format="yyyy-MM-dd" type="date"
:picker-options="pickerBeginDateAfter"></el-date-picker>
</span>
</li>
<li>
<span>
<em>{{$t('salesModule.DJNum')}}</em>
<el-input v-model='msg.CombinationNum'></el-input>
</span>
</li>
<li>
<span>
<em>{{$t('hotel.hotel')}}</em>
<el-select v-model="msg.HotelId" :placeholder="$t('pub.pleaseSel')" filterable>
<el-option :label="$t('pub.unlimitedSel')" :value='0'></el-option>
<el-option v-for="item in HotelList" :key="item.ID" :label="item.Name" :value="item.ID"></el-option>
</el-select>
</span>
</li>
<li>
<span>
<em>{{$t('scen.sc_cp')}}</em>
<el-select v-model="msg.OutBranchIds" filterable multiple class="multiple_input"
:placeholder="$t('pub.pleaseSel')">
<el-option v-for="item in queryCommonData.BranchList" :label='item.BName' :value='item.Id' :key='item.Id'>
</el-option>
</el-select>
</span>
</li>
<li>
<input type="button" class="normalBtn" :value="$t('pub.searchBtn')" @click="getList();resetPageIndex()" />
<input type="button" class="normalBtn" :value="$t('adm.adm_download')" @click="DownLoadHotel()" />
</li>
</ul>
</div>
<div style="width: 100%; overflow-x: auto;padding-bottom: 10px; " class="ownScrollbarStyle">
<div style="font-size:12px;padding:2px 4px 3px 4px; color:red">{{$t('ground.zymcdcsjbcgygy')}}</div>
<table border="0" cellspacing="1" cellpadding="0" class="roomQueryTalbe" v-loading='loading'>
<tr>
<th width="120">{{$t('active.ad_xuhao')}}</th>
<th width="80">{{$t('salesModule.CompanyNum')}}</th>
<th width="100">{{$t('leader.leader_Leader')}}</th>
<th width="100">{{$t('leader.leader_Guide')}}</th>
<th width="100">{{$t('advmanager.v_xilie')}}</th>
<th width="80">{{$t('ground.jiweishu')}}<br />(Y/E/F)</th>
<th width="100">{{$t('ground.shuyongsj')}}</th>
<th width="120">{{$t('hotel.hotel_name')}}</th>
<th width="120">{{$t('ground.genghuanjiudian')}}</th>
<th width="100">{{$t('salesModule.OPstatus')}}</th>
<th width="100">{{$t('salesModule.DJstatus')}}</th>
</tr>
<tr v-if="dataList.length==0">
<td colspan="13">{{$t('active.ld_noData')}}</td>
</tr>
<template v-for="(item,index) in dataList">
<tbody :class="{roomQuerySplitTrCss:index%2!=0}" :key="`ht_`+index">
<template v-for="(subItem,subIndex) in item.OrderDetailsList">
<tr :key="`h_`+index+`d_`+subIndex">
<td :rowspan="5" v-if='subIndex==0'>
{{item.DMCNum}}
</td>
<td :rowspan="5" v-if='subIndex==0'>
<div class="w120 link">
<p @click="goUrlT('productQuery',item.TCNUM,'产品查询')">{{item.TCNUM}}</p>
</div>
</td>
<td :rowspan="5" v-if='subIndex==0'>
{{item.LeaderName}}
</td>
<td :rowspan="5" v-if='subIndex==0'>
{{item.GuideName}}
</td>
<td :rowspan="5" v-if='subIndex==0'>
{{item.LtName}}
</td>
<td :rowspan="5" v-if='subIndex==0 '>
<p @click="goUrlT('RegistrationList',item.TCID,'报名清单')">
{{item.TotalSeat}}/{{item.YSeatNum}}/{{item.ESeatNum}}/{{item.FSeatNum}}
</p>
</td>
<td :rowspan="5" v-if='subIndex==0'>
{{item.UseDay}}
</td>
<td style="text-align:left;padding-left:2px;" :rowspan="5" v-if='subIndex==0'>
<template v-if="item.OldHotelName!=item.NewHotelName && item.NewHotelName!=''">
<span style="text-decoration:line-through"> {{item.OldHotelName}}</span>
</template>
<template v-else>
{{item.OldHotelName}}
</template>
</td>
<td style="text-align:left;padding-left:2px;" :rowspan="5" v-if='subIndex==0'>
<template v-if="item.OldHotelName!=item.NewHotelName">
<span style="color:red;">{{item.NewHotelName}}</span>
</template>
</td>
<td>
{{getHouseTypeName(subItem)}}
</td>
</tr>
</template>
</tbody>
</template>
</table>
</div>
<el-pagination background @current-change="handleCurrentChange" :current-page.sync="currentPage"
layout="total,prev, pager, next, jumper" :page-size="msg.pageSize" :total="total"></el-pagination>
</div>
</template>
<script>
import DateLimit from '../public/DateLimit.vue';
export default {
components: {
DateLimit
},
data() {
return {
userInfo: {}, //用户信息
loading: false,
currentPage: 1,
total: 0,
msg: {
pageIndex: 1,
pageSize: 5,
SelectType: 1,
StartDate: '',
EndDate: '',
//酒店编号
HotelId: 0,
//日期
DateStr: "",
//出团公司
OutBranchIds: [],
LineId: 0,
PlaceID: 0,
LineteamId: 0,
//航空公司
AirLineId: 0,
CreateBy: 0,
TCNUM: '',
PriceStatus: 0,
CombinationNum: '',
HotelStatus: 0
},
//分公司类表
companyList: [],
//酒店类表
HotelList: [],
dataList: [],
queryCommonData: {
//公司数据
BranchList: [],
LineList: [],
LineTeamList: [],
},
pickerBeginDateBefore: {
disabledDate: time => {
if (this.msg.EndDate == null) {
return false;
} else {
let endTime = new Date(this.msg.EndDate)
return endTime.getTime() < time.getTime()
}
}
},
pickerBeginDateAfter: {
disabledDate: time => {
let startTime = new Date(this.msg.StartDate)
return startTime.getTime() >= time.getTime()
}
}
}
},
methods: {
getHouseTypeName(subItem) {
console.log("subItem", subItem);
var roomName = "";
return roomName;
},
getLineList() {
this.apipost("line_post_GetAllList", {}, res => {
if (res.data.resultCode == 1) {
this.queryCommonData.LineList = res.data.data;
this.queryCommonData.LineTeamList = []
} else {
this.Error(res.data.message);
}
});
},
//获取系列列表
getLineTeamList() {
this.msg.LineteamId = 0
let msg = {
lineID: this.msg.LineId,
placeID: this.msg.PlaceID,
isTOOP: 1
}
this.apipost('team_post_GetList', msg, res => {
if (res.data.resultCode == 1) {
this.queryCommonData.LineTeamList = res.data.data
}
})
},
goUrlT(path, obj, title) {
this.$router.push({
name: path,
query: {
"id": obj,
blank: 'y',
tab: title
}
})
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
},
resetPageIndex() {
this.msg.pageIndex = 1;
this.currentPage = 1;
},
getList() {
this.loading = true;
this.apipost('dmcstatistics_get_GetJourneyHotelPage', this.msg, res => {
this.loading = false;
if (res.data.resultCode == 1) {
this.total = res.data.data.count;
var sourceData = res.data.data.pageData;
console.log("sourceData", sourceData);
this.dataList = sourceData;
} else {
this.$message.error(res.data.message)
}
}, err => {})
},
//获取酒店列表
GetHotelList() {
this.apipost(
"hotel_post_GetHasStockHotelList", {
QCountry: "651",
IsMoreThanZero: 1
},
res => {
if (res.data.resultCode == 1) {
this.HotelList = res.data.data;
}
},
err => {}
);
},
//下载Excel
DownLoadHotel() {
this.loading = true;
let qMsg = {
queryMsg: this.msg,
uid: this.userInfo.EmployeeId
};
let fileName = this.$t('ground.dingfangcx') + this.$commonUtils.getCurrentDate() + ".xls";
this.GetLocalFile("hotel_get_downloadHotel", qMsg, fileName,
res => {
this.loading = false;
});
},
//初始化公司
getCompanyList() {
let msg = {
Status: 0,
is_show: 0,
RB_Group_Id: this.userInfo.RB_Group_id
}
this.apipost(
'admin_get_BranchGetList',
msg,
res => {
if (res.data.resultCode == 1) {
this.queryCommonData.BranchList = res.data.data;
}
},
err => {}
)
},
},
mounted() {
this.userInfo = this.getLocalStorage();
let myDate = new Date();
let nowDate =
myDate.getFullYear() +
"-" +
parseInt(myDate.getMonth() + 1) +
"-" +
myDate.getDate();
if (this.$route.query.hotelId) {
this.msg.HotelId = this.$route.query.hotelId;
}
if (this.$route.query.dateStr) {
this.msg.DateStr = this.$route.query.dateStr;
}
if (this.$route.query.hotelId || this.$route.query.dateStr) {
this.msg.StartDate = "";
} else {
this.msg.StartDate = nowDate;
}
if (this.userInfo.RB_Group_id == 2) {
this.msg.LineId = 14;
}
this.getLineList();
this.getCompanyList();
this.GetHotelList();
this.getList();
},
}
</script>
<style>
.roomQuerySplitTrCss td {
background: #eee !important;
}
.roomQueryTalbe {
background: #ccc;
}
.roomQueryTalbe tr th {
background: #E6E6E6;
height: 40px;
font-size: 12px;
color: #333;
}
.roomQueryTalbe tr {
background: #fff;
text-align: center;
height: 40px;
}
.roomQueryTalbe tr td {
font-size: 12px;
}
.roomQueryTalbe tr td .pDateStyle {
border-bottom: 1px solid #ccc;
min-height: 24px;
line-height: 24px;
margin-top: 0;
box-sizing: content-box;
}
.roomQueryTalbe tr td .pDateStyle:last-child {
border-bottom: none;
}
.roomQueryTalbe tr td .pDateStyle>span:after {
content: '/';
}
.roomQueryTalbe tr td .pDateStyle>span:last-child:after {
content: ''
}
.roomQueryTalbe tr td .link p:hover {
text-decoration: underline;
cursor: pointer;
}
.roomQueryTalbe tr td .phoverStype:hover {
text-decoration: underline;
cursor: pointer;
}
.roomQuery_tripDetails {
padding: 0;
box-shadow: 0px 1px 3px 0px #dedede;
max-height: 400px;
overflow-y: auto;
}
.roomQuery_tripDetails .popper__arrow::after {
border-bottom-color: #ededed !important;
}
.roomQuery_tripDetails table {
padding: 10px 0 0 20px;
background-color: #ededed;
border-collapse: collapse;
border: 1px solid #d2d2d2;
font-size: 12px;
}
.roomQuery_tripDetails table th {
background-color: #ededed;
padding: 5px;
}
.roomQuery_tripDetails table td {
background-color: #ffffff;
padding: 9px 15px;
color: #333333;
border: 1px solid #d2d2d2;
}
.roomQuery_tripDetails table td._d_name {
background-color: #ededed;
}
.roomQuery_tripDetails table ._color_666 {
color: #666666;
}
.roomQuery_tripDetails table tr._color_666 th {
padding: 9px 15px;
}
</style>
......@@ -1470,11 +1470,19 @@ export default {
},
},
{
path: '/roomQuery', //订房查询
path: '/roomQuery', //房型确认
name: 'roomQuery',
component: resolve => require(['@/components/Hotel/roomQuery'], resolve),
meta: {
title: '订房查询'
title: '房型确认'
},
},
{
path: '/roomSure', //订房确认
name: 'roomSure',
component: resolve => require(['@/components/Hotel/roomSure'], resolve),
meta: {
title: '订房确认'
},
},
{
......@@ -5103,7 +5111,7 @@ export default {
meta: {
title: '今日订单'
},
},{ // 签证 报入排名
}, { // 签证 报入排名
path: '/salesOrderRank',
name: 'salesOrderRank',
component: resolve => require(['@/components/SalesVisa/salesOrderRank'], resolve),
......@@ -5261,8 +5269,7 @@ export default {
meta: {
title: '今日订单'
},
}
,
},
{
path: '/travelGLDOrder', //高利贷统计界面
name: 'travelGLDOrder',
......
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