Commit 7d84f2fe authored by 黄奎's avatar 黄奎

11

parent bc963964
......@@ -20,12 +20,13 @@ Vue.prototype.$message = message
Vue.prototype.$product = product
//域名管理对象
Vue.prototype.domainManager = function () {
let domainUrl = "http://192.168.5.214";
let domainUrl = "http://192.168.5.46";
let domainNameUrl = this.GetDomain();
if (domainNameUrl.indexOf('oytour') !== -1) {
domainUrl = "https://reborn.oytour.com";
}
domainUrl = "https://reborn.oytour.com";
var obj = {
//主地址
DomainUrl: domainUrl,
......@@ -224,6 +225,8 @@ Vue.prototype.CommonJump = function (path, obj, type = 'push') {
});
}
}
Vue.prototype.$user = user
Vue.prototype.createCalendar = function (dateStr) {
var days = [];
......
......@@ -346,7 +346,7 @@
</q-menu>
</q-btn>-->
<q-btn flat dense class="social-btn">
<q-btn flat dense class="social-btn" v-if="yyzlImg&&yyzlImg!=''">
<img src="../../assets/img/wechat.png" class="btn-img" style="width:25px;height:25px;display: block;" />
<div class="social-pop">
<div class="arrow"></div>
......@@ -356,7 +356,7 @@
</div>
</div>
</q-btn>
<q-btn flat dense class="social-btn">
<q-btn flat dense class="social-btn" v-if="xhsImgList&&xhsImgList.length>0">
<img src="../../assets/img/xiaohongshu.png" class="btn-img" style="width:25px;height:25px;display: block;" />
<div class="social-pop xhs-pop">
<div class="arrow"></div>
......@@ -368,13 +368,22 @@
</div>
</div>
</q-btn>
<q-btn flat dense class="social-btn" v-if="wbImg&&wbImg!=''">
<img src="../../assets/img/weibo.png" class="btn-img" style="width:25px;height:25px;display: block;" />
<div class="social-pop">
<div class="arrow"></div>
<div class="social-qrcode">
<img :src="wbImg" />
<div class="social-tip">扫码关注微博</div>
</div>
</div>
</q-btn>
<q-btn v-if="LoginUser.id <= 0" label="注册" flat></q-btn>
<template v-if="LoginUser.token">
<q-btn-dropdown style="color: #444; font-weight: bold" class="q-ml-lg" unelevated>
<template v-slot:label>
<img class="avatar" v-if="LoginUser.photo" :src="LoginUser.photo" />
<img class="avatar" v-else src="../../assets/img/avatar.png" />
<!-- <span>{{LoginUser.name || LoginUser.mailbox}}</span> -->
</template>
<div class="row no-wrap">
......@@ -520,12 +529,9 @@
selectedAreaId: "",
isHome: false,
isSearch: true,
yyzlImg: "https://imgfile.oytour.com/static/b2c/yyzl.jpg",
xhsImgList: [
"https://imgfile.oytour.com/static/b2c/JPtravel.png",
"https://imgfile.oytour.com/static/b2c/RoyalHolidays1.png",
"https://imgfile.oytour.com/static/b2c/RoyalHolidays2.png",
]
yyzlImg: "", //印象之旅
xhsImgList: [], //小红书
wbImg: "", //微博
};
},
watch: {
......@@ -562,6 +568,18 @@
if (localStorage.b2bUser) {
this.LoginUser = JSON.parse(window.localStorage.getItem("b2bUser"));
}
var baseInfo = JSON.parse(window.localStorage.getItem('baseifo'));
if (baseInfo && baseInfo.Config && baseInfo.Config.platObj) {
if (baseInfo.Config.platObj.yyzlImg) {
this.yyzlImg = baseInfo.Config.platObj.yyzlImg;
}
if (baseInfo.Config.platObj.xhsImgList && baseInfo.Config.platObj.xhsImgList.length > 0) {
this.xhsImgList = baseInfo.Config.platObj.xhsImgList;
}
if (baseInfo.Config.platObj.wbImg) {
this.wbImg = baseInfo.Config.platObj.wbImg;
}
}
var newStartDate = new Date();
var newStartDateStr = this.formatDate(
newStartDate.getFullYear(),
......
<style lang="scss" scoped>
.newHor_BtmContent {
width: 100%;
background: $primary;
padding-top: 60px;
}
.newLogoText span:last-child{
font-size: 1.1rem;
top: -4px;
}
.tracking-0{
transition: all .3s;
}
.tracking-0:hover{
/* opacity: .5; */
}
.tracking-1{
color: #fff;
}
.tracking-1 a{
color: inherit;
cursor: pointer;
display: inline-block;
text-decoration: none;
transition: opacity .3s;
}
.tracking-1 a:hover{
/* opacity: .5; */
}
.tracking-1 span::after {
.newHor_BtmContent {
width: 100%;
background: $primary;
padding-top: 60px;
}
.newLogoText span:last-child {
font-size: 1.1rem;
top: -4px;
}
.tracking-0 {
transition: all .3s;
}
.tracking-0:hover {
/* opacity: .5; */
}
.tracking-1 {
color: #fff;
}
.tracking-1 a {
color: inherit;
cursor: pointer;
display: inline-block;
text-decoration: none;
transition: opacity .3s;
}
.tracking-1 a:hover {
/* opacity: .5; */
}
.tracking-1 span::after {
content: "";
display: block;
height: 1px;
......@@ -37,92 +44,174 @@
transform: rotate(-50deg) translateY(-50%);
background-color: #fff;
width: 6px;
}
.l-footer--list a,.newHorw a{
text-decoration: none;
}
.l-footer--list li::after{
background: linear-gradient(to bottom, $primary, #fff, $primary);
content: "";
height: 100%;
position: absolute;
right: 0;
top: 0;
width: 1px;
}
.l-footer--list li a p:first-child{
font-size: 1rem;
transition: all .3s;
}
.l-footer--list li a:hover p:first-child{
opacity: .5;
}
.l-footer--list li{
padding: 0 20px;
}
.l-footer--list li:last-child::after{
width: 0;
}
.newHorText{
padding: 60px 0;
}
.newHorText a{
text-decoration: none;
color: #fff;
position: relative;
padding: 0 20px;
}
.newHorText a span{
transition: all .3s;
}
.newHorText a:hover span{
opacity: .5;
}
.newHorText a::after{
content: "";
display: block;
height: 1px;
position: absolute;
right: -3px;
top: calc(50% - 0.5px);
transform: rotate(-50deg) translateY(-50%);
background-color: #fff;
width: 6px;
}
.newHorText a:last-child::after{
width: 0;
}
.newHorw{
opacity: .5;
padding: 12px 0;
}
.newHorw,.newHorw a{
color: #fff;
}
.newHor-right span{
position: relative;
}
.newHor-right span::after{
content: "";
display: block;
height: 1px;
position: absolute;
right: -3px;
top: calc(50% - 0.5px);
transform: rotate(-50deg) translateY(-50%);
background: #fff;
width: 6px;
}
}
.l-footer--list a,
.newHorw a {
text-decoration: none;
}
.l-footer--list li::after {
background: linear-gradient(to bottom, $primary, #fff, $primary);
content: "";
height: 100%;
position: absolute;
right: 0;
top: 0;
width: 1px;
}
.l-footer--list li a p:first-child {
font-size: 1rem;
transition: all .3s;
}
.l-footer--list li a:hover p:first-child {
opacity: .5;
}
.l-footer--list li {
padding: 0 20px;
}
.l-footer--list li:last-child::after {
width: 0;
}
.newHorText {
padding: 60px 0;
}
.newHorText a {
text-decoration: none;
color: #fff;
position: relative;
padding: 0 20px;
}
.newHorText a span {
transition: all .3s;
}
.newHorText a:hover span {
opacity: .5;
}
.newHorText a::after {
content: "";
display: block;
height: 1px;
position: absolute;
right: -3px;
top: calc(50% - 0.5px);
transform: rotate(-50deg) translateY(-50%);
background-color: #fff;
width: 6px;
}
.newHorText a:last-child::after {
width: 0;
}
.newHorw {
opacity: .5;
padding: 12px 0;
}
.newHorw,
.newHorw a {
color: #fff;
}
.newHor-right span {
position: relative;
}
.newHor-right span::after {
content: "";
display: block;
height: 1px;
position: absolute;
right: -3px;
top: calc(50% - 0.5px);
transform: rotate(-50deg) translateY(-50%);
background: #fff;
width: 6px;
}
</style>
<style scoped>
@import url("../../assets/css/home.css");
@import url("../../assets/css/app.css");
</style>
<style scoped>
/* ===== 平台整体(三列) ===== */
.platImg {
display: flex;
gap: 40px;
/* 三列之间的间距 */
align-items: flex-start;
justify-content: flex-start;
margin-top: 16px;
}
/* ===== 单列 ===== */
.plat-col {
display: flex;
flex-direction: column;
align-items: center;
gap: 10px;
min-width: 120px;
/* 保证三列对齐 */
}
/* 平台标题 */
.plat-title {
font-size: 13px;
color: rgba(255, 255, 255, .8);
line-height: 1;
white-space: nowrap;
}
/* 二维码区域 */
.plat-qrs {
display: flex;
gap: 10px;
flex-wrap: wrap;
/* 小红书多张自动换行 */
justify-content: center;
}
/* 二维码 */
.plat-qrs img {
width: 80px;
height: 80px;
object-fit: cover;
border-radius: 6px;
background: #fff;
box-shadow: 0 4px 10px rgba(0, 0, 0, .12);
}
/* 手机端 */
@media (max-width: 768px) {
.platImg {
justify-content: center;
gap: 24px;
}
.plat-qrs img {
width: 60px;
height: 60px;
}
}
</style>
<template>
<div class="relative newHor_BtmContent" v-if="dataList&&dataList.Config">
<div class="homeContainer">
<div v-if="dataList.Config.FootLogo2" class="row justify-center" style="margin-bottom: 30px;">
<q-img :src="dataList.Config.FootLogo2" style="width:40px;height:auto;"/>
<q-img :src="dataList.Config.FootLogo2" style="width:40px;height:auto;" />
</div>
<div class="row justify-between items-end">
......@@ -146,17 +235,15 @@
<div :class="[!$q.platform.is.desktop?'hidden':'']">
<ul class="l-footer--list row">
<li class="l-footer--list__item relative cursor-pointer" v-for="(item,index) in plugData.MenuList">
<a @click="OpenNewUrl(item.LinkUrl)"
class="flex justify-center group">
<p class="font-serif writing-modes-vertical leading-28 tracking-5 text-white
<a @click="OpenNewUrl(item.LinkUrl)" class="flex justify-center group">
<p class="font-serif writing-modes-vertical leading-28 tracking-5 text-white
transition-base pointer-events-none">{{item.MenuName}}</p>
<p class="font-serifEn writing-modes-vertical text-s
<p class="font-serifEn writing-modes-vertical text-s
tracking-normal text-stone pointer-events-none">{{item.MenuSubName}}</p>
</a>
</li>
</ul>
</div>
<div :class="[$q.platform.is.desktop?'':'q-pt-lg']">
<ul class="text-xs font-light newHor-right">
<!-- <li class="flex -mx-4 my-2 tracking-1 sm:justify-end">
......@@ -197,18 +284,37 @@
</li>
</ul>
</div>
<div class="platImg">
<!-- 公众号 -->
<div class="plat-col" v-if="yyzlImg&&yyzlImg!=''">
<div class="plat-title">公众号</div>
<div class="plat-qrs">
<img :src="yyzlImg" />
</div>
</div>
<!-- 小红书 -->
<div class="plat-col" v-if="xhsImgList&&xhsImgList.length>0">
<div class="plat-title">小红书</div>
<div class="plat-qrs">
<img v-for="(item, index) in xhsImgList" :key="index" :src="item" />
</div>
</div>
<!-- 微博 -->
<div class="plat-col" v-if="wbImg&&wbImg!=''">
<div class="plat-title">微博</div>
<div class="plat-qrs">
<img :src="wbImg" />
</div>
</div>
</div>
</div>
<div class="row newHorText justify-center"
:class="[$q.platform.is.desktop?'':'hidden']">
<a @click="OpenNewUrl(item.LinkUrl)" v-for="(item,index) in plugData.BottomList"
target="_self" class="text-xs font-serif icon-slash icon-slash-white transition-base cursor-pointer">
<div class="row newHorText justify-center" :class="[$q.platform.is.desktop?'':'hidden']">
<a @click="OpenNewUrl(item.LinkUrl)" v-for="(item,index) in plugData.BottomList" target="_self"
class="text-xs font-serif icon-slash icon-slash-white transition-base cursor-pointer">
<span>{{item.LinkTitle}}</span>
</a>
</div>
</div>
<div class="container newHorw">
<div class="flex items-center justify-center font-light text-xs">
<div class="hidden icon-slash icon-slash-white">
......@@ -216,7 +322,8 @@
</div>
<div :class="[$q.platform.is.desktop?'text-center':'text-left q-px-md']">
<a href="https://beian.miit.gov.cn/#/Integrated/index" target="_blank"
style="text-decoration: none;">蜀ICP备13000760号 ©</a> 2010-{{year}} {{ dataList.Config.Name }}. All Rights Reserved. 旅行社业务经营许可证 {{ dataList.Config.UnifyCode }}
style="text-decoration: none;">蜀ICP备13000760号 ©</a> 2010-{{year}} {{ dataList.Config.Name }}. All Rights
Reserved. 旅行社业务经营许可证 {{ dataList.Config.UnifyCode }}
</div>
</div>
</div>
......@@ -231,7 +338,10 @@
year: '',
windowWidth: window.innerWidth,
HomeData: [],
plugData: {}
plugData: {},
yyzlImg: "", //印象之旅
xhsImgList: [], //小红书
wbImg: "", //微博
};
},
destroyed() {
......@@ -245,8 +355,23 @@
var myDate = new Date();
this.year = myDate.getFullYear();
var jObj = JSON.parse(window.localStorage.getItem('HomeData'));
this.HomeData = jObj.filter(x=>{ return x.Id == 'index_nav' })
if(this.HomeData.length>0) this.plugData = this.HomeData[0].plugData
this.HomeData = jObj.filter(x => {
return x.Id == 'index_nav'
})
if (this.HomeData.length > 0) this.plugData = this.HomeData[0].plugData
var baseInfo = JSON.parse(window.localStorage.getItem('baseifo'));
if (baseInfo && baseInfo.Config && baseInfo.Config.platObj) {
if (baseInfo.Config.platObj.yyzlImg) {
this.yyzlImg = baseInfo.Config.platObj.yyzlImg;
}
if (baseInfo.Config.platObj.xhsImgList && baseInfo.Config.platObj.xhsImgList.length > 0) {
this.xhsImgList = baseInfo.Config.platObj.xhsImgList;
}
if (baseInfo.Config.platObj.wbImg) {
this.wbImg = baseInfo.Config.platObj.wbImg;
}
}
},
computed: {
handleResize() {
......@@ -279,7 +404,7 @@
},
methods: {
navigateTo(urlInfo) {
if(urlInfo.IsNewOpen === 1) {
if (urlInfo.IsNewOpen === 1) {
window.open(urlInfo.NavUrl)
} else {
window.location.href = urlINfo.NavUrl
......
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