Commit 6738767f authored by youjie's avatar youjie

no message

parent 5203530c
<style>
@import "../../assets/css/newTravelManager.css";
.productQuerySearch {
width: 100%;
min-height: auto;
overflow: hidden;
padding: 0 0 20px 0;
}
.productQuerySearch li {
float: left;
font-size: 12px;
color: #666;
margin: 20px 0 0px 0;
}
.productQuerySearch li>span {
display: inline-block;
}
.productQuerySearch li span>em {
display: inline-block;
min-width: 60px;
text-align: right;
font-style: normal;
margin: 0 12px 0 0;
}
.productQuerySearch li:last-child {
position: fixed;
z-index: 50;
top: 36px;
right: 20px;
}
.productQuerySearch ul {
position: relative;
overflow: hidden;
}
.productQueryList {
width: 100%;
min-width: 1366px;
padding-left: 10px;
}
.productQueryList li {
width: 100%;
border: 1px solid #e5e5e5;
background: #fff;
margin-bottom: 10px;
color: #333;
font-size: 14px;
}
.productQueryList li::after {
content: "";
display: block;
clear: both;
}
.productQueryList li i.iconfont {
color: #bbb;
margin-right: 8px;
}
.productQueryList li>div:first-child {
display: table;
width: 100%;
}
.productQueryList li>div>div {
display: table-cell;
border-right: 1px dashed #dcdfe6;
}
.productQueryList li>div>div:last-child {
border-right: none;
}
.productQueryList li .d11 {
float: left;
width: 160px;
height: 120px;
margin: 14px 14px 0 14px;
}
.productQueryList li .d11>li {
width: 160px;
height: 120px;
border: none;
}
.productQueryList li .d11>li>img {
width: 160px;
height: 120px;
}
.productQueryList li .d12 {
float: left;
padding-top: 18px;
width: 200px;
}
.productQueryList li .d12 .d12p {
margin-top: 3px;
font-size: 12px;
color: #999;
cursor: pointer;
max-height: 40px;
line-height: 20px;
display: -webkit-box;
overflow: hidden;
text-overflow: ellipsis;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
}
.productQueryList li .d12 .d12p:hover {
text-decoration: underline;
color: #333;
}
.productQueryList li .d12 .d12TC {
margin: 5px 0;
color: #666666;
font-size: 12px;
}
.productQueryList li .d1 {
width: 18%;
position: relative;
padding: 0 20px;
}
.productQueryList li .d2 {
width: 14%;
text-align: center;
padding-top: 20px;
}
.productQueryList li .d2 p.flightNo {
background: #ccc;
width: 136px;
margin: 5px 0;
padding: 0 10px;
height: 22px;
line-height: 22px;
display: inline-block;
font-size: 14px;
}
.productQueryList li .d2 p.flightNo em {
font-style: normal;
color: #333;
font-size: 12px;
font-weight: bold;
}
.productQueryList li .d2 p.flightNo .flem {
height: 22px;
width: 50px;
display: inline-block;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
.productQueryList li .d2 p>span {
color: #fff;
font-size: 12px;
border-radius: 10px;
background: #2aaef2;
padding: 2px 5px;
cursor: pointer;
}
.productQueryList li .d2>div>div {
display: inline-block;
line-height: 24px;
font-size: 12px;
}
.productQueryList li .d3 {
width: 17%;
padding-left: 40px;
padding-top: 20px;
}
.productQueryList li .d3 p {
line-height: 24px;
}
.productQueryList li .d3 p>span {
color: #666;
font-size: 12px;
margin-right: 10px;
}
.productQueryList li .d3 p>em {
background: #ff9c00;
font-style: normal;
margin-left: 8px;
color: #fff;
border-radius: 4px;
padding: 2px 5px;
}
.productQueryList li .d4 {
width: 10%;
padding-left: 20px;
padding-top: 20px;
}
.productQueryList li .d4 p span.price {
color: #333;
text-decoration: underline;
font-size: 12px;
}
.productQueryList li .d4 p span.price:hover {
color: #e95252;
font-weight: bold;
cursor: pointer;
}
.productQueryList li .d5 {
width: 15%;
padding-left: 40px;
padding-top: 20px;
}
.productQueryList li .d5 p {
line-height: 26px;
}
.productQueryList li .d5 p>span {
color: #666;
font-size: 12px;
margin-right: 10px;
}
.productQueryList li .d5 p>i {
font-weight: bold;
font-style: normal;
}
.productQueryList li .d8 {
width: 15%;
padding-left: 40px;
padding-top: 20px;
}
.productQueryList li .d8 p {
line-height: 26px;
}
.productQueryList li .d8 p>span {
color: #666;
font-size: 12px;
margin-right: 10px;
}
.productQueryList li .d8 p>i {
font-style: normal;
}
.productQueryList li .d6 {
padding: 20px 40px;
width: 100%;
height: inherit;
border-top: 1px solid #e5e5e5;
}
.productQueryList li .d6 p {
display: table-cell;
color: #e95252;
}
.productQueryList li .d6 p:nth-child(1) {
width: 60px;
font-size: 12px;
}
.productQueryList li .d7 {
width: 10%;
text-align: center;
padding: 40px 0 0 40px;
border-right: none;
}
.productQueryList li .d7 button {
width: 30px;
height: 30px;
border-radius: 4px;
}
.productQueryList li .d7 .el-button--primary {
padding: 5px;
margin: 0;
font-size: 14px !important;
color: #fff;
}
.productQueryList li .d7 i.iconfont {
color: #fff;
margin: 0;
}
.elPopoverLayer {
padding: 0px 10px;
}
.elPopoverLayer p {
line-height: 34px;
font-size: 12px;
}
.elPopoverLayer p>i {
font-style: normal;
border: 1px solid #999;
padding: 0 3px;
font-size: 12px;
margin-right: 10px;
font-weight: bold;
color: #333;
}
.elPopoverLayer p>span {
display: inline-block;
width: 130px;
}
.elPopoverLayer p>span>b {
margin-left: 10px;
color: #2aaef2;
}
.superSearchLayer>p {
padding: 20px 0;
font-size: 14px;
color: #333;
font-weight: bold;
}
.superSearchLayer>div {
margin-top: 20px;
color: #666;
font-size: 12px;
}
.superSearchLayer>div>span {
margin: 0 15px 0 5px;
}
.pro_tripDetails {
padding: 0;
box-shadow: 0px 1px 3px 0px #dedede;
max-height: 400px;
overflow-y: auto;
}
.pro_tripDetails .popper__arrow::after {
border-bottom-color: #ededed !important;
}
.pro_tripDetails table {
padding: 10px 0 0 20px;
background-color: #ededed;
border-collapse: collapse;
border: 1px solid #d2d2d2;
font-size: 12px;
}
.pro_tripDetails table th {
background-color: #ededed;
padding: 5px;
}
.pro_tripDetails table td {
background-color: #ffffff;
padding: 9px 15px;
color: #333333;
border: 1px solid #d2d2d2;
}
.pro_tripDetails table td._d_name {
background-color: #ededed;
}
.pro_tripDetails table ._color_666 {
color: #666666;
}
.pro_tripDetails table tr._color_666 th {
padding: 9px 15px;
}
.productQuerybottomLayer {
overflow: auto;
position: fixed;
height: 600px;
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 {
width: auto !important;
}
.productQueryList .disabledBtn {
background: #999 !important;
border-color: #999 !important;
}
.product_union {
position: absolute;
top: 0px;
left: 0px;
width: 0px;
height: 0px;
border-top: 15px solid red;
border-bottom: 15px solid transparent;
border-left: 15px solid red;
border-right: 15px solid transparent;
}
.product_union::after {
content: "联";
position: absolute;
top: -14px;
left: -11px;
white-space: nowrap;
color: #ffffff;
font-size: 12px;
}
.product_union1 {
position: absolute;
top: 0px;
left: 0px;
width: 0px;
height: 0px;
border-top: 15px solid red;
border-bottom: 15px solid transparent;
border-left: 15px solid red;
border-right: 15px solid transparent;
}
.product_union1::after {
content: "内";
position: absolute;
top: -14px;
left: -11px;
white-space: nowrap;
color: #ffffff;
font-size: 12px;
}
.product_warning {
position: absolute;
top: 0px;
right: 0px;
width: 0px;
height: 0px;
border-top: 10px solid red;
border-bottom: 10px solid transparent;
border-left: 10px solid transparent;
border-right: 10px solid red;
}
.product_warning::after {
content: "!";
position: absolute;
top: -12px;
right: -5px;
white-space: nowrap;
color: #ffffff;
font-size: 12px;
}
.PQ_detail {
width: 100%;
border-collapse: collapse;
}
.PQ_detail tr th,
.v-table-title-cell {
background: #e6e6e6;
height: 40px;
font-size: 14px;
border-right: 1px solid #e6e6e6;
color: #333;
}
.PQ_detail tr {
background: #fff;
text-align: center;
height: 40px;
}
.PQ_detail tr td {
font-size: 12px;
border: 1px solid #e5e5e5;
}
.PQ_HotelPop {
overflow: auto;
max-height: 350px;
}
.PQ_HotelPop table td {
padding: 5px 0;
text-align: center;
}
.PQ_HotelPop table th {
text-align: center;
}
.productQuerybottomLayer .el-upload-list {
width: 200px;
}
</style>
<template>
<div class="flexOne">
<div class="productQuerySearch" v-if="!TCIDList">
<ul>
<li>
<span><em>{{ $t("scen.sc_cp") }}</em>
<el-select class="w150" v-model="msg.BranchId" filterable :placeholder="$t('pub.pleaseSel')">
<el-option v-for="item in companyList" :label="item.BName" :value="item.Id" :key="item.Id">
</el-option>
</el-select>
</span>
</li>
<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), getAimPlaceList(msg.LineId, '')
">
<el-option :label="$t('pub.unlimitedSel')" value="-1"></el-option>
<el-option v-for="(item,index) in LineList" :label="item.LineName" :value="item.LineID" :key="index">
</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')"
@change="getAimPlaceList('', msg.LineTeamId)">
<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("system.query_dest") }}</em>
<el-select class="w150" v-model="msg.AimPlaceId" filterable :placeholder="$t('pub.pleaseSel')">
<el-option :label="$t('pub.unlimitedSel')" value="-1"></el-option>
<el-option v-for="item in AimPlaceList" :label="item.PlaceName" :value="item.PlaceID" :key="item.PlaceID">
</el-option>
</el-select>
</span>
</li>
<li>
<span>
<em>{{ $t("visa.v_tuanhao") }}</em>
<el-input v-model="msg.TCID" class="w150"></el-input>
</span>
</li>
<li>
<span>
<em>团名</em>
<el-input v-model="msg.Title" class="w150" clearable></el-input>
</span>
</li>
<li>
<span><em>{{ $t("hotel.hotel_StarDate") }}</em>
<el-date-picker v-model="msg.StartTime" @change="dataDui()" class="w135" value-format="yyyy-MM-dd"
type="date"></el-date-picker>
-
<el-date-picker v-model="msg.EndTime" @change="dataDui()" class="w135" value-format="yyyy-MM-dd"
type="date"></el-date-picker>
</span>
</li>
<li>
<span><em>{{ $t("system.table_goCity") }}</em>
<el-select class="w150" v-model="msg.CityId" filterable :placeholder="$t('pub.pleaseSel')">
<el-option :label="$t('pub.unlimitedSel')" value="-1"></el-option>
<el-option v-for="item in startCityList1" :label="item.startCityName" :value="item.ID" :key="item.ID">
</el-option>
</el-select>
</span>
</li>
<li style="
height: 34px;
line-height: 34px;
padding: 0 0 0 20px;
vertical-align: middle;
">
<el-popover width="270" trigger="click">
<div class="superSearchLayer">
<p>{{ $t("visa.v_tkgjcx") }}</p>
<div>
<span>{{ $t("system.query_airCompanyName") }}</span>
<el-select v-model="msg.FlightID" filterable :placeholder="$t('system.ph_buxian')" class="w150">
<el-option :label="$t('pub.unlimitedSel')" value="-1"></el-option>
<el-option v-for="item in airlineList" :key="item.AirLineId" :label="item.AlName"
:value="item.AirLineId">
</el-option>
</el-select>
</div>
<div>
<span>{{ $t("visa.v_xcdays") }}</span>
<el-input class="w150" v-model="msg.DaysTrip" @keyup.native="checkInteger(msg, 'DaysTrip')"></el-input>
</div>
<div>
<span>{{ $t("visa.v_teamnum") }}</span>
<el-input class="w69" v-model="msg.minGroupSize" @keyup.native="checkInteger(msg, 'minGroupSize')">
</el-input>
-
<el-input class="w69" v-model="msg.maxGroupSize" @keyup.native="checkInteger(msg, 'maxGroupSize')">
</el-input>
</div>
<div>
<span>{{ $t("leader.leader_registraNum") }}</span>
<el-input class="w69" v-model="msg.minApplySize" @keyup.native="checkInteger(msg, 'minApplySize')">
</el-input>
-
<el-input class="w69" v-model="msg.maxApplySize" @keyup.native="checkInteger(msg, 'maxApplySize')">
</el-input>
</div>
<div>
<span>{{ $t("Airticket.Air_salesPlatform") }}</span>
<el-select filterable multiple v-model="msg.SalePlat" :placeholder="$t('system.ph_buxian')"
class="w150 multiple_input">
<el-option v-for="item in salePlace" :key="item.Id" :label="item.Name" :value="item.Id">
</el-option>
</el-select>
</div>
<div>
<input type="button" style="width: 230px !important" class="normalBtn" :value="$t('pub.searchBtn')"
@click="
getList();
resetPageIndex();
" />
</div>
</div>
<span slot="reference" style="cursor: pointer">{{ $t("visa.v_gjchaxun") }}<i
class="el-icon-caret-bottom"></i></span>
</el-popover>
</li>
<li style="
height: 34px;
line-height: 34px;
padding: 0 0 0 20px;
vertical-align: middle;
">
<el-popover width="260" trigger="click">
<div>
<div class="TC_queryTitle">
{{ $t("Operation.Op_TeamWarningSearch") }}
</div>
<div class="clearfix">
<div class="TC_leftSearch">
<div>
<span style="
display: inline-block;
margin: 0 5px 0 0;
width: 50px;
text-align: right;
">{{ $t("leader.leader_registraNum") }}</span>
<el-select v-model="msg.WarningQuery" filterable :placeholder="$t('system.ph_buxian')" class="w150">
<el-option :label="$t('system.ph_buxian')" value="-1"></el-option>
<el-option :label="$t('salesModule.Nobaoming')" value="1"></el-option>
<el-option :label="$t('salesModule.Less10')" value="2"></el-option>
<el-option :label="$t('salesModule.More10')" value="3"></el-option>
<el-option :label="$t('salesModule.YWLess5')" value="4"></el-option>
<el-option :label="$t('salesModule.YHBRS')" value="5"></el-option>
</el-select>
</div>
<div>
<span style="
display: inline-block;
margin: 0 5px 0 0;
width: 50px;
text-align: right;
">{{ $t("Operation.Op_daysChoice") }}</span>
<el-select v-model="msg.RateOnDay" filterable :placeholder="$t('system.ph_buxian')" class="w150">
<el-option :label="$t('system.ph_buxian')" value="-1"></el-option>
<el-option :label="$t('salesModule.Inner10')" value="1"></el-option>
<el-option :label="$t('salesModule.Inner15')" value="2"></el-option>
<el-option :label="$t('salesModule.Inner20')" value="3"></el-option>
<el-option :label="$t('salesModule.Out20')" value="4"></el-option>
</el-select>
</div>
<div>
<span style="
display: inline-block;
margin: 0 5px 0 0;
width: 50px;
text-align: right;
">{{ $t("Operation.Op_Attendance") }}</span>
<el-select v-model="msg.RateOn" filterable :placeholder="$t('system.ph_buxian')" class="w150">
<el-option :label="$t('system.ph_buxian')" value="-1"></el-option>
<el-option label="100%" value="1"></el-option>
<el-option :label="$t('salesModule.Nomore80')" value="2"></el-option>
<el-option :label="$t('salesModule.Nomore60')" value="3"></el-option>
<el-option :label="$t('salesModule.Nomore40')" value="4"></el-option>
</el-select>
</div>
</div>
</div>
<button class="normalBtn TC_SearchBtn" @click="
getList();
resetPageIndex();
">
{{ $t("pub.searchBtn") }}
</button>
</div>
<span slot="reference" style="cursor: pointer">{{ $t("Operation.Op_warningSearch")
}}<i class="iconfont icon-xiaotuziCduan_1"></i></span>
</el-popover>
</li>
<li>
<input type="button" class="hollowFixedBtn" :value="$t('pub.searchBtn')" @click="
getList();
resetPageIndex();
" />
</li>
</ul>
</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>
<orderlist :list="list" v-loading="loading" @close="getList"></orderlist>
<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 orderlist from "../productOrderCommon/orderlist.vue";
export default {
data() {
return {
//当前登录用户信息
CurrentUserInfo: {},
userId: "",
loading: true,
currentPage: 1,
total: 0,
msg: {
pageIndex: 1,
pageSize: 10,
LineId: "-1",
LineTeamId: "-1",
AimPlaceId: "-1",
TCID: "",
StartTime: "",
EndTime: "",
BranchId: "-1",
CityId: "-1",
DaysTrip: "",
SalePlat: [],
minGroupSize: "",
maxGroupSize: "",
minApplySize: "",
maxApplySize: "",
FlightID: "-1",
TCIDList: "",
WarningQuery: "-1",
RateOnDay: "-1",
RateOn: "-1",
Title: "", //团名
},
list: [],
LineList: [],
LineTeamList: [],
AimPlaceList: [],
airlineList: [],
companyList: [],
salePlace: [],
startCityList1: [],
TCIDList: null,
userInfo: {},
crmOrderObj: null
};
},
components: {
orderlist
},
methods: {
// 结束日期不能大于开始日期
dataDui() {
if (this.msg.StartTime > this.msg.EndTime && this.msg.EndTime !== "") {
this.$message.error("结束日期不能大于开始日期");
this.msg.EndTime = "";
}
},
getList() {
this.loading = true;
this.apipost(
"TaskManagemnet_get_GetSellProductCenter",
this.msg,
(res) => {
if (res.data.resultCode == 1) {
this.loading = false;
this.total = res.data.data.count;
for (let i = 0; i < res.data.data.pageData.length; i++) {
res.data.data.pageData[i]["wxImage"] = "";
}
this.list = res.data.data.pageData;
} else {
this.Error(res.data.message);
}
},
(err) => {}
);
},
getLineList() {
this.apipost("line_post_GetAllList_V2", {
LineDirection: 0
}, (res) => {
if (res.data.resultCode == 1) {
this.LineList = res.data.data;
}
});
},
//获取系列列表
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;
}
}
);
},
//获取目的地列表
getAimPlaceList(lineId, lineTeamId) {
let myLineId = lineId === "" ? this.msg.LineId : lineId;
let myLineTeamId = lineTeamId === "" ? this.msg.LineTeamId : lineTeamId;
this.AimPlaceList = [];
this.apipost(
"team_post_GetListForCascading", {
LineID: myLineId,
LtID: myLineTeamId,
},
(res) => {
if (res.data.resultCode == 1) {
this.msg.AimPlaceId = "-1";
this.AimPlaceList = res.data.data;
}
}
);
},
getStartList1() {
this.apipost(
"city_post_GetList", {
isDefault: -1,
priceType: -1,
},
(res) => {
if (res.data.resultCode == 1) {
this.startCityList1 = res.data.data;
} else {}
}
);
},
getCompanyList() {
let RB_Group_id = this.CurrentUserInfo.RB_Group_id;
let msg = {
Status: 0,
is_show: 0,
RB_Group_Id: RB_Group_id,
};
this.apipost(
"admin_get_BranchGetList",
msg,
(res) => {
if (res.data.resultCode == 1) {
this.companyList = [{
Id: "-1",
BName: "不限",
}, ];
res.data.data.forEach((x) => {
var obj = {
Id: "",
BName: "",
};
obj.Id = x.Id.toString();
obj.BName = x.BName;
this.companyList.push(obj);
});
}
},
(err) => {}
);
},
getAirlineList() {
//获取航空公司*
let msg = {};
this.apipost(
"airline_post_GetList",
msg,
(res) => {
this.airlineList = res.data.data;
},
(err) => {}
);
},
getSalePlace() {
this.apipost(
"travel_get_GetTravelSelectEnum", {},
(res) => {
if (res.data.resultCode == 1) {
this.salePlace = res.data.data.SalePlat;
}
},
(err) => {}
);
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
},
resetPageIndex() {
this.msg.pageIndex = 1;
this.currentPage = 1;
},
},
mounted() {
// crm自动登陆传过来的参数
if (this.$route.query.crmOrderObj) {
this.crmOrderObj = JSON.parse(this.$route.query.crmOrderObj)
this.addMsg.LureEmpId = this.crmOrderObj.LureEmpId //引流id
this.addMsg.CRMGuestId = this.crmOrderObj.CRMGuestId //客人ID
}
let userInfo = this.getLocalStorage();
this.userInfo = this.getLocalStorage();
this.CurrentUserInfo = userInfo;
this.userId = userInfo.EmployeeId;
this.msg.BranchId = userInfo.RB_Branch_id.toString();
if (this.$route.query.id) {
this.msg.BranchId = "-1";
this.msg.TCID = this.$route.query.id;
}
if (this.$route.query.TCIDList) {
this.msg.TCIDList = this.TCIDList = this.$route.query.TCIDList;
}
if (this.msg.StartTime === "") {
let nowDay = this.FormartDate(new Date());
this.msg.StartTime = nowDay;
}
this.getCompanyList();//出团公司
this.getList();
this.getLineList();//线路
this.getSalePlace();//销售平台
this.getAirlineList();//获取航空公司
this.getStartList1();//出发城市
},
};
</script>
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