Commit f97cfc41 authored by youjie's avatar youjie

签证产品

parent 86856946
......@@ -171,7 +171,8 @@ module.exports = function( /* ctx */ ) {
'QToggle',
'QTime',
'QSpace',
'QInnerLoading'
'QInnerLoading',
'QOptionGroup',
],
directives: [
......
......@@ -25,7 +25,7 @@ Vue.prototype.domainManager = function () {
if (domainNameUrl.indexOf('oytour') !== -1) {
domainUrl = "http://reborn.oytour.com";
}
//domainUrl = "http://192.168.5.46";
domainUrl = "http://192.168.5.56";
var obj = {
//主地址
DomainUrl: domainUrl,
......
......@@ -326,7 +326,7 @@
<template v-for="(x, i) in categoryList">
<div class="category-btn" :key="i" :label="x.CategoryName" flat unelevated
:content-style="{ hover: '#ff0000' }" @mouseenter="typeHover(i, true)" @mouseleave="typeHover(i, false)"
@click="x.SubList&&x.SubList.length>0&&x.CategoryName!='行程线路'?'':handleCategoryChage(x)"
@click="x.SubList&&x.SubList.length>0&&x.CategoryName!='行程线路'?'':productSearch(x)"
:class="[x.SubList&&x.SubList.length>0&&x.CategoryName!='行程线路'?'':'cursor-pointer']">
{{ x.CategoryName }}
<q-menu ref="menu" :key="i" @mouseenter="menuFocus = 2" @mouseleave="menuLeave(i)">
......@@ -404,7 +404,7 @@
},
$route: {
handler: function (val, oldVal) {
this.isHome = val.path === "/searchProduct" || val.path === "/search";
this.isHome = val.path === "/searchProduct" || val.path === "/search" || val.path === "/searchVisa" || val.path === "/planeticket";
},
// 深度观察监听
deep: true,
......@@ -459,11 +459,15 @@
};
},
mounted() {
this.isSearch = this.$router.history.current.path === "/search" || this.$router.history.current.path ===
"/searchProduct";
this.isSearch = this.$router.history.current.path === "/search" ||
this.$router.history.current.path ==="/searchProduct" ||
this.$router.history.current.path === "/searchVisa" ||
this.$router.history.current.path === "/planeticket";
this.isHome =
this.$router.history.current.path === "/searchProduct" ||
this.$router.history.current.path === "/search";
this.$router.history.current.path === "/search" ||
this.$router.history.current.path === "/searchVisa" ||
this.$router.history.current.path === "/planeticket";
if (localStorage.b2bUser) {
this.LoginUser = JSON.parse(window.localStorage.getItem("b2bUser"));
......@@ -495,19 +499,37 @@
handleSelectArea(item) {
this.CommonJump("/city/" + item.Id);
},
handleCategoryChage(item) {
handleCategoryChage(item,type) {
if(!type){
this.CommonJump("/search", {
qsearchKey: this.searchKey,
qsearchDate: this.searchDate,
qsearchEndDate: this.searchEndDate,
categoryId: item.Id,
});
}else{
if(type==1){//自由
}else if(type==2){//机票
this.CommonJump("/planeticket", {
Name: this.searchKey,
});
}else if(type==3){//签证
this.CommonJump("/searchVisa", {
Name: this.searchKey,
});
}
}
setTimeout(() => {
if (this.isSearch) {
window.location.reload()
}
}, 300)
},
productSearch(item){
// if(item.CategoryName=='机票') this.handleCategoryChage(item,2)
if(item.CategoryName=='签证') this.handleCategoryChage(item,3)
},
mouseenterAddress() {
this.menuFocusAll = 0;
this.menuFocus = 0;
......
......@@ -270,7 +270,7 @@
</q-card>
</div>
<div class="col q-mt-sm">
<div class="rounded-borders bg-white q-col-gutter-sm">
<div class="rounded-borders bg-white">
<div class="row q-col-gutter-sm items-center q-pa-md">
<div class="text-subtitle2 q-mr-md">
<span class="text-weight-bold text-primary q-mr-sm">
......
<template>
<!-- 豆腐块 -->
<div class="Search_center">
<ul class="pd-list">
<li class="pd-box" v-for="(item,index) in DataList" :key="index">
<a class="pd-link">
<div class="pd-img"
:style="{backgroundImage:`url('${item.newCoverImg}')`}">
<div class="pd-price">
<div class="price">
{{item.dayNum}}
<small class="unit"></small> {{item.b2BPrice}}
<small class="unit">元起</small>
</div>
</div>
</div>
<div class="pd-content">
<h3 class="pd-title">{{item.title}}</h3>
<div class="pd-departure">
出發日期:{{item.startDate}}
<span class="more" @click="GotoDetails(item)" style="cursor:pointer">...更多</span>
</div>
</div>
</a>
</li>
</ul>
</div>
</template>
<script>
export default {
props: ["DataList", "PageCount"],
data() {
return {
};
},
methods: {
GotoDetails(item) {
this.CommonJump('/details/' + encodeURIComponent(item.id) + "/" + item.tcid, {});
}
}
}
</script>
This diff is collapsed.
<template>
<!-- 列表 -->
<div class="group-result-list">
<div class="group-statis-block">
<div class="group-share" style="display:none;"></div>
<div class="group-statis-detail">
<span class="title" v-if="qMsg.searchKey">{{qMsg.searchKey}} :</span>
找到
<span class="num"> {{qMsg.TotalCount}} </span>個行程
<span class="pc">,目前在第<span style="color: #7f7f7f;"> {{qMsg.pageIndex}} </span></span>
</div>
</div>
<div>
<div class="group-box" v-for="(item,index) in DataList" :key="index">
<a class="group-cover">
<img v-if="item.newCoverImg" :src="item.newCoverImg" />
</a>
<div class="group-main">
<div class="group-info">
<div class="group-name" style="margin-bottom:5px;cursor:pointer" @click="GotoDetails(item)">
{{item.title}}
</div>
<div class="group-detail">
<i class="iconfont iconaddress"></i>
<span>{{item.countryName}}</span>
</div>
<div class="group-detail">
<i class="iconfont icontime"></i>
<span>{{item.dayNum}}</span>
</div>
<ul class="group-list">
<li>
<a>{{item.startDate}}</a>
</li>
</ul>
</div>
<div class="price-info">
<div class="price-wrap">
<div class="price_Search">
<small class="price_unit">TWD$</small> {{item.b2BPrice}}
</div>
<a class="btn_warning" @click="GotoDetails(item)" style="cursor:pointer">更多出發日</a>
</div>
</div>
</div>
</div>
<div style="display:flex;justify-content: center;">
<q-pagination v-if="qMsg.PageCount>1" v-model="qMsg.pageIndex" :max="qMsg.PageCount" @input="gerOrderList()"
:direction-links="true">
</q-pagination>
</div>
</div>
</div>
</template>
<script>
export default {
props: ["DataList", "qMsg"],
data() {
return {
};
},
methods: {
GotoDetails(item) {
this.CommonJump('/details/' + encodeURIComponent(item.id) + "/" + item.tcid, {});
},
//调用
gerOrderList(){
this.$emit('getPage')
}
}
}
</script>
......@@ -329,7 +329,8 @@ export default {
created() {
},
mounted() {
this.isSearch = this.$router.history.current.path === "/search"||this.$router.history.current.path === "/searchProduct";
this.isSearch = this.$router.history.current.path === "/search"||this.$router.history.current.path === "/searchProduct"
||this.$router.history.current.path === "/searchVisa"||this.$router.history.current.path === "/planeticket";
this.initAreaList()
var jObj = JSON.parse(window.localStorage.getItem('baseifo'));
const hotList = this.getHotList(jObj.AreaList)
......@@ -411,28 +412,34 @@ export default {
},
handleHotTagClick(item) {
this.setectHotTag = item.Id
// let val = item.Name
// if(val!='' && typeof val == 'string'){
// this.searchKey=val
// }
let val = item.Name
if(val!='' && typeof val == 'string'){
this.searchKey=val
}
// this.historys=Array.from(new Set([this.searchKey].concat(this.historys)))
// localStorage['recent_search'] = JSON.stringify(this.historys)
if(this.$route.path==='/searchProduct') {
this.CommonJump("/searchProduct", {
qsearchKey: item.Name,
qsearchDate: this.searchDate,
qsearchEndDate: this.searchEndDate,
areaId: item.Id
var currentUrl = window.location.href;
let urlName="/search";
if(currentUrl.includes('/#/searchProduct')){
urlName="/searchProduct";
}else if(currentUrl.includes('/#/planeticket')){
urlName="/planeticket";
}else if(currentUrl.includes('/#/searchVisa')){
urlName="/searchVisa";
}
if(urlName=='/searchVisa'||urlName=='/planeticket'){
this.CommonJump(urlName, {
Name: this.searchKey,
VisaCountryId: item.Id
});
}else{
this.CommonJump("/search", {
this.CommonJump(urlName, {
qsearchKey: this.searchKey,
qsearchDate: this.searchDate,
qsearchEndDate: this.searchEndDate,
areaId: item.Id
});
}
if(this.isSearch) {
window.location.reload()
}
......@@ -507,13 +514,25 @@ export default {
let urlName="/search";
if(currentUrl.includes('/#/searchProduct')){
urlName="/searchProduct";
}else if(currentUrl.includes('/#/planeticket')){
urlName="/planeticket";
}else if(currentUrl.includes('/#/searchVisa')){
urlName="/searchVisa";
}
if(urlName=='/searchVisa'||urlName=='/planeticket'){
this.CommonJump(urlName, {
Name: this.searchKey,
VisaCountryIds: this.areaTicked.join(',')
});
}else{
this.CommonJump(urlName, {
qsearchKey: this.searchKey,
areaIds: this.areaTicked.join(','),
qsearchDate: this.searchDate,
qsearchEndDate: this.searchEndDate,
});
}
this.showSplitPannel = false
if(this.isSearch) {
window.location.reload()
......
......@@ -230,7 +230,7 @@
</q-card>
</div>
<div class="col q-mt-sm">
<div class="rounded-borders bg-white q-col-gutter-sm">
<div class="rounded-borders bg-white">
<div class="row q-col-gutter-sm items-center q-pa-md">
<div class="text-subtitle2 q-mr-md">
<span class="text-weight-bold text-primary q-mr-sm">
......@@ -536,6 +536,15 @@ export default {
},
handleTicked(target) {
let goodsType = this.goodsType.filter(x=>{return x.Id==target})
if(goodsType&&goodsType.length>0) {
if(goodsType[0].CategoryName=='签证'){
return this.CommonJump("/searchVisa", {});
}
if(goodsType[0].CategoryName=='机票'){
return this.CommonJump("/planeticket", {});
}
}
this.msg.pageIndex = 1
this.ticked = target;
this.goSearchHandler();
......
This diff is collapsed.
This diff is collapsed.
......@@ -773,8 +773,8 @@ export default {
}
} else {
this.$message.error(res.data.message);
this.submiting = false;
}
this.submiting = false;
},
(err) => {
this.submiting = false;
......
This diff is collapsed.
......@@ -39,6 +39,11 @@ const routes = [{
meta: { title: '行程' },
component: () =>
import ('pages/detailsProduct.vue')
}, { //签证详情
path: '/detailsVisa/:Pid',
meta: { title: '签证' },
component: () =>
import ('pages/detailsVisa.vue')
}, { // 包车,接机
meta: { title: '包车,接机' },
path: '/detailCar/:id',
......@@ -83,6 +88,11 @@ const routes = [{
meta: { title: '出行检索' },
component: () =>
import ('pages/SearchProduct.vue')
},{
path: '/searchVisa', //出行产品(签证)检索
meta: { title: '出行检索' },
component: () =>
import ('pages/SearchVisa.vue')
},{
path: '/planeticket', //出行产品(机票)检索
meta: { title: '出行检索' },
......@@ -197,6 +207,12 @@ const routes = [{
component: () =>
import ('pages/line/orderPreview.vue')
},
{
path: '/visaOrderPriview/:id?', //签证订单确认
meta: { title: '订单确认' },
component: () =>
import ('pages/line/visaOrderPreview.vue')
},
{
path: '/planeticketOrder/:id?', //机票订单确认
meta: { title: '订单确认' },
......
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