Commit 430001b7 authored by 罗超's avatar 罗超

临时提交

parent 51d6b1da
......@@ -15,11 +15,20 @@ export default {
font-family: "oswald";
src: url("https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/smallapp/Oswald-Regular.ttf");
}
@font-face{
font-family: 'FZDBSJW';
src: local('FZDaBiaoSong-B06S')
}
.text-subtitle1 {
font-size: 1.25rem !important;
}
body {
font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto,
Helvetica Neue, Arial, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol,
Noto Color Emoji, MicrosoftJhengHeiBoldFix, "\5FAE\8EDF\6B63\9ED1\9AD4",
Microsoft JhengHei;
font-family: Roboto, Arial,微軟正黑體修正, 微軟正黑體, "Microsoft JhengHei","Microsoft JhengHei UI", sans-serif !important;
background-color: #f6f6f6;
}
.rounded-borders{
......@@ -53,4 +62,46 @@ body {
letter-spacing: 0;
text-align: right;
}
/************************************ 重新Tree样式 BEGIN************************************/
.q-tree__node-header{
padding:8px 16px !important;
position: relative;
border-radius: unset;
}
body.desktop .q-tree__node .q-focusable:focus > .q-focus-helper,
body.desktop .q-tree__node .q-manual-focusable--focused > .q-focus-helper,
body.desktop .q-tree__node .q-hoverable:hover > .q-focus-helper{
background: none !important;
opacity: 1 !important;
}
body.desktop .q-tree__node .q-focus-helper:before,
body.desktop .q-tree__node .q-focus-helper:after{
background: none !important;
}
.q-tree__node-header:hover{
background: #f1416c1a;
}
.q-tree__arrow{
position: absolute;
top:50%;
margin-top: -8px;
right: 16px;
color:transparent;
}
.q-tree__arrow::after{
content: 'keyboard_arrow_down' !important;
margin-left: -16px;
font-size: 20px;
color:#666;
}
.q-tree__arrow--rotate{
transform: rotate3d(0, 0, 1, 180deg) !important;
}
.q-checkbox__bg{
border: 1px solid currentColor !important;
}
.q-checkbox__inner{
color: rgb(0 0 0 / 72%) !important;
}
/************************************ 重新Tree样式 END************************************/
</style>
......@@ -7,15 +7,15 @@ import 'viewerjs/dist/viewer.css'
import VueViewer from 'v-viewer'
// import VueCoreVideoPlayer from 'vue-core-video-player'
Vue.prototype.$EventBus = new Vue()
// Vue.use(VueCoreVideoPlayer)
// Vue.use(VueCoreVideoPlayer)
Vue.use(VueViewer)
//域名管理对象
Vue.prototype.domainManager = function () {
//域名管理对象
Vue.prototype.domainManager = function() {
let domainUrl = '';
domainUrl = "http://192.168.2.214:8082";
domainUrl = "http://127.0.0.1";
let domainNameUrl = this.GetDomain();
domainNameUrl="http://tmb2b.oytour.com/"
domainNameUrl = "http://tmb2b.oytour.com/"
if (domainNameUrl.indexOf('testerp.oytour') !== -1) {
domainUrl = "http://testapi.oytour.com";
} else if (domainNameUrl.indexOf('oytour') !== -1) {
......@@ -31,15 +31,14 @@ Vue.prototype.domainManager = function () {
};
return obj;
}
//获取当前域名
Vue.prototype.GetDomain=function()
{
var domainNameUrl =window.location.hostname;
domainNameUrl="t.oytour.com";
}
//获取当前域名
Vue.prototype.GetDomain = function() {
var domainNameUrl = window.location.hostname;
domainNameUrl = "t.oytour.com";
return domainNameUrl;
}
Vue.prototype.groupBy = function (array, f){
Vue.prototype.groupBy = function(array, f) {
const groups = {};
array.forEach((item) => {
const group = JSON.stringify(f(item));
......@@ -48,13 +47,13 @@ Vue.prototype.groupBy = function (array, f){
});
return Object.keys(groups).map((group) => {
return {
key:group.replace(/\"/g,""),
data:groups[group]
key: group.replace(/\"/g, ""),
data: groups[group]
};
});
}
Vue.prototype.moneyFormat = function(num, decimal = 2, split = ',') {
function thousandFormat (num){
function thousandFormat(num) {
const len = num.length
return len <= 3 ? num : thousandFormat(num.substr(0, len - 3)) + split + num.substr(len - 3, 3)
}
......@@ -65,9 +64,9 @@ Vue.prototype.moneyFormat = function(num, decimal = 2, split = ',') {
var res = ''
var dotIndex = String(num).indexOf('.')
if (dotIndex === -1) { // 整数
res = thousandFormat(String(num)) + (decimal>0?'.':'') + '0'.repeat(decimal)
res = thousandFormat(String(num)) + (decimal > 0 ? '.' : '') + '0'.repeat(decimal)
} else {
decimal = decimal==0?2:decimal
decimal = decimal == 0 ? 2 : decimal
const numStr = String((Math.round(num * Math.pow(10, decimal)) / Math.pow(10, decimal)).toFixed(decimal)) // 四舍五入,然后固定保留2位小数
const decimals = numStr.slice(dotIndex, dotIndex + decimal + 1) // 截取小数位
res = thousandFormat(numStr.slice(0, dotIndex)) + decimals
......@@ -77,9 +76,9 @@ Vue.prototype.moneyFormat = function(num, decimal = 2, split = ',') {
} else {
return '--'
}
}
//HTTP提交数据
Vue.prototype.apipost = function (cmd, msg, successCall, faildCall) {
}
//HTTP提交数据
Vue.prototype.apipost = function(cmd, msg, successCall, faildCall) {
if (msg == null || msg == "") {
msg = {}
}
......@@ -120,7 +119,7 @@ Vue.prototype.apipost = function (cmd, msg, successCall, faildCall) {
}, faildCall)
}
Vue.prototype.apiJavaPost = function (cmd, msg, successCall, faildCall) {
Vue.prototype.apiJavaPost = function(cmd, msg, successCall, faildCall) {
if (msg == null || msg == "") {
msg = {}
}
......@@ -161,7 +160,7 @@ Vue.prototype.apiJavaPost = function (cmd, msg, successCall, faildCall) {
//获取缓存
Vue.prototype.getLocalStorage = function () {
Vue.prototype.getLocalStorage = function() {
try {
var localStorageData = window.localStorage["b2bUser"];
if (localStorageData !== undefined && localStorageData != 'undefined') {
......@@ -176,7 +175,7 @@ Vue.prototype.apiJavaPost = function (cmd, msg, successCall, faildCall) {
}
//向外跳转
Vue.prototype.OpenNewUrl = function (URL) {
Vue.prototype.OpenNewUrl = function(URL) {
if (URL && URL != '') {
if (URL.indexOf("https") != -1) {
var str = 'http://' + URL.substring(8);
......@@ -191,14 +190,14 @@ Vue.prototype.OpenNewUrl = function (URL) {
}
//公用跳转
Vue.prototype.CommonJump = function (path, obj) {
Vue.prototype.CommonJump = function(path, obj) {
this.$router.push({
path: path,
query: obj
});
}
Vue.prototype.createCalendar = function (dateStr) {
Vue.prototype.createCalendar = function(dateStr) {
var days = [];
var date;
if (dateStr) {
......@@ -251,9 +250,9 @@ Vue.prototype.createCalendar = function (dateStr) {
CurrentYear: currentYear,
CurrentWeek: currentWeek
};
}
//格式化日期
Vue.prototype.formatDate = function (year, month, day) {
}
//格式化日期
Vue.prototype.formatDate = function(year, month, day) {
var y = year;
var m = month;
if (m < 10) m = "0" + m;
......@@ -263,7 +262,7 @@ Vue.prototype.formatDate = function (year, month, day) {
}
//格式化日期二
Vue.prototype.formatDate2 = function (dateStr) {
Vue.prototype.formatDate2 = function(dateStr) {
var date = new Date(dateStr);
return {
CYear: date.getFullYear(),
......@@ -273,7 +272,7 @@ Vue.prototype.formatDate2 = function (dateStr) {
}
//添加月份
Vue.prototype.AddMonth = function (dateStr, month) {
Vue.prototype.AddMonth = function(dateStr, month) {
var v = new Date(dateStr);
if (v) {
var t = new Date(v.getFullYear(), v.getMonth(), v.getDate(), v.getHours(), v.getMinutes(), v.getSeconds(), v.getMilliseconds());
......@@ -286,10 +285,10 @@ Vue.prototype.AddMonth = function (dateStr, month) {
}
//获取URL中参数
Vue.prototype.getUrlKey = function (name, url) {
Vue.prototype.getUrlKey = function(name, url) {
return decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(url) || [, ""])[1].replace(/\+/g, '%20')) || null
}
Vue.prototype.GetHtml = function (str) {
Vue.prototype.GetHtml = function(str) {
if (str && str != "") {
return str.replace(/&lt;/g, '<').replace(/&gt;/g, '>')
.replace(/&amp;/g, '&').replace(/&quot;/g, '"').replace(/&apos;/g, "'");
......
......@@ -213,7 +213,6 @@ export default {
methods: {
handleScroll(e) {
this.currentHeight = this.getScroll().top;
console.log(this.currentHeight);
let h=document.location.hash
if(h!='#/' && h!='#/index'){
window.removeEventListener("scroll", this.handleScroll)
......
......@@ -359,7 +359,8 @@ color: #EE4454;
</template>
</div>
</q-toolbar>
<div class="header-box flex">
<q-separator color="grey-2" v-if="isHome"/>
<div class="header-box flex q-py-sm" v-if="isHome">
<q-tabs align="center" shrink>
<q-btn flat class="address-btn" @mouseenter="mouseenterAddress" @mouseleave="mouseeleaveAddress">
<span slot="default" class="flex item-center">
......@@ -500,7 +501,8 @@ export default {
navsStyle: 1,
areas: [],
selectedArea: [],
selectedAreaId: ''
selectedAreaId: '',
isHome:false
};
},
watch: {
......@@ -513,6 +515,13 @@ export default {
this.initAreas();
},
deep: true
},
$route: {
handler: function(val, oldVal){
this.isHome = val.path==='/' || val.path==='/index'
},
// 深度观察监听
deep: true
}
},
meta() {
......@@ -524,6 +533,7 @@ export default {
};
},
mounted() {
this.isHome = this.$router.history.current.path==='/' || this.$router.history.current.path==='/index'
if (localStorage.b2bUser) {
this.LoginUser = JSON.parse(window.localStorage.getItem("b2bUser"));
}
......
<style>
.hor_BtmContent {
display: inline-block;
/*display: inline-block;*/
width: 100%;
background: #fff;
background: #2B2B2B;
padding-top: 60px;
}
.hor_BtmContent .footer-content {
max-width: 1200px;
margin:0 auto;
}
.hor_BtmContent .footer-top {
padding: 0 40px 18px;
background: #2B2B2B;
max-width: 1200px;
margin:0 auto;
}
.hor_BtmContent .footer-link {
......@@ -289,7 +293,7 @@ cursor: pointer;
</style>
<template>
<div class="hor_BtmContent">
<template v-if="dataList&&dataList.Config">
<template v-if="dataList&&dataList.Config && 1==0">
<div class="footer-top">
<div class="foot_content">
<div class="footer-box">
......@@ -301,8 +305,8 @@ cursor: pointer;
<div class="fb-page" :data-href="dataList.Config.FaceBookUrl" data-tabs="timeline" data-width="340"
data-height="130" data-small-header="false" data-adapt-container-width="false" data-hide-cover="false"
data-show-facepile="false">
<blockquote :cite="dataList.Config.FaceBookUrl" class="fb-xfbml-parse-ignore"><a
:href="dataList.Config.FaceBookUrl">{{dataList.Config.Name}}</a></blockquote>
<!-- <blockquote :cite="dataList.Config.FaceBookUrl" class="fb-xfbml-parse-ignore"><a
:href="dataList.Config.FaceBookUrl">{{dataList.Config.Name}}</a></blockquote> -->
</div>
</a>
</div>
......@@ -358,6 +362,36 @@ cursor: pointer;
</template>
</div>
</template>
<div class="footer-content" v-if="dataList&&dataList.Config">
<div class="row justify-between full-width">
<div class="">
<img style="width:auto;height:35px;" :src="dataList.Config.WhiteLogo" />
<div class="rounded-borders q-mt-lg q-pa-md text-grey-8" style="background:rgba(255,255,255,.05)">
<div class="f12">服务热线:{{ dataList.Config.Tel }}</div>
<div class="q-mt-md">服务时间:08:00 至 21:00</div>
</div>
</div>
<div class="row">
<div v-for="(item,i) in dataList.FooterList" :key="item.Id" :class="{'q-ml-xl':i>0}">
<div class="text-subtitle1 text-weight-bold text-white">{{ item.NavTitle }}</div>
<div class="q-mt-xl" v-if="item.SubList">
<div class="q-mb-lg text-subtitle2 text-regular text-grey-8 cursor-pointer" v-for="item2 in item.SubList" :key="item2.Id" @click="navigateTo(item2)">{{item2.NavTitle}}</div>
</div>
</div>
</div>
<div v-for="item in dataList.BottomList" :key="item.Id">
<div class="text-subtitle1 text-weight-bold text-white">{{ item.NavTitle }}</div>
<div class="q-mt-xl row" style="width:210px">
<div class="bg-white rounded-borders q-pa-xs overflow-hidden q-mb-md q-mr-md" @click="navigateTo(item2)" v-for="item2 in item.SubList" :key="item2.Id" style="width:40px;height:34px;">
<img style="width:100%" :src="item2.Icon" :title="item2.NavTitle" />
</div>
</div>
</div>
</div>
<div class="text-center q-py-xl text-grey-8" style="margin-top:35px">
蜀ICP备13000760号 © 2010-{{year}} {{ dataList.Config.Name }}. All Rights Reserved. 旅行社业务经营许可证 {{ dataList.Config.UnifyCode }}
</div>
</div>
</div>
</template>
<script>
......
......@@ -61,6 +61,7 @@
tick-strategy="leaf"
@update:ticked="handleAreaTicked"
:ticked="areaTicked"
text-color="#666"
/>
</q-card>
<q-card flat class="rounded-borders q-py-md q-mt-lg">
......@@ -145,7 +146,7 @@
<q-card flat class="rounded-borders q-pa-md q-mt-lg">
<div class="text-subtitle1 text-weight-bold">價錢篩選(CNY)</div>
<div
class="q-mt-md text-grey-6 text-subtitle1"
class="q-mt-md text-grey-6 text-subtitle2 text-regular"
>{{ msg.priceRange.min }} - {{ msg.priceRange.max }}</div>
<q-range
v-model="msg.priceRange"
......@@ -169,7 +170,7 @@
:key="yi"
>
<q-checkbox v-model="y.checked" size="xs" @input="changeTripDayHandler" />
<span class="col text-grey-8" style="font-weight: 400">
<span class="col text-grey-8 text-subtitle2 text-regular q-mt-xs" style="font-weight: 400">
{{
y.text
}}
......@@ -217,7 +218,7 @@
>{{ x.label }}</q-chip>
</div>
</div>
<div class="q-mt-lg">
<div class="q-mt-lg" v-if="!$q.loading.isActive && DataList.length>0">
<div
class="rounded-borders cursor-pointer overflow-hidden q-mb-md row bg-white"
@click="GotoDetails(x)"
......@@ -275,7 +276,21 @@
</div>
</div>
</div>
<div v-else-if="!$q.loading.isActive && DataList.length==0" class="text-center q-mt-xl">
<div class="text-center inline-block">
<p>
<img
src="~assets/sad.svg"
style="width:30vw;max-width:150px;"
>
</p>
<p class="text-faded">
我们找不到有关
<span v-if="msg.searchKey">\"{{msg.searchKey}}\"</span>
的旅游体验,输入其他字眼重试或探索以下人气体验
</p>
</div>
</div>
<div style="display: flex; justify-content: center">
<q-pagination
v-if="PageCount > 1"
......@@ -413,6 +428,7 @@ export default {
});
this.dateRange = { from: this.msg.startDate, to: this.msg.endDate };
this.goSearchHandler();
console.log(this.msg)
},
methods: {
handleSelected(target) {
......@@ -651,8 +667,8 @@ export default {
console.log('filterAddress2',this.areaListJSON, addressList)
},
goSearchHandler() {
this.msg.webSiteCategoryIds = this.ticked.join(',')
// this.$q.loading.show();
this.msg.webSiteCategoryIds = this.areaTicked.join(',')
this.$q.loading.show();
this.DataList = [];
let minTripDay = -1,
maxTripDay = -1,
......@@ -686,6 +702,7 @@ export default {
this.msg,
res => {
this.$q.loading.hide();
if (res.data.resultCode == 1) {
this.PageCount = res.data.data.pageCount;
this.TotalCount = res.data.data.count;
......
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