Commit 5542524b authored by 罗超's avatar 罗超

Merge branch 'master' of http://gitlab.oytour.com/viitto/million

# Conflicts:
#	src/router/routes.js
parents a8ce39e2 8f30a7f0
...@@ -17,6 +17,7 @@ ...@@ -17,6 +17,7 @@
"@quasar/extras": "^1.15.10", "@quasar/extras": "^1.15.10",
"axios": "^0.18.1", "axios": "^0.18.1",
"babel-plugin-transform-remove-console": "^6.9.4", "babel-plugin-transform-remove-console": "^6.9.4",
"dayjs": "^1.11.7",
"js-md5": "^0.7.3", "js-md5": "^0.7.3",
"qrcode.vue": "^1.7.0", "qrcode.vue": "^1.7.0",
"qrcodejs2": "^0.0.2", "qrcodejs2": "^0.0.2",
......
...@@ -526,15 +526,12 @@ export default { ...@@ -526,15 +526,12 @@ export default {
this.searchEndDate = newEndDateStr; this.searchEndDate = newEndDateStr;
// this.initAreas() // this.initAreas()
// this.initNavs(); // this.initNavs();
this.getCategoryList(); // this.getCategoryList();
}, },
methods: { methods: {
handleSelectArea(item) { handleSelectArea(item) {
this.CommonJump("/search", { this.CommonJump("/city/" + item.Id, {
qsearchKey: this.searchKey, id: item.Id
qsearchDate: this.searchDate,
qsearchEndDate: this.searchEndDate,
areaId: item.Id
}); });
}, },
handleCategoryChage(item) { handleCategoryChage(item) {
......
...@@ -178,7 +178,7 @@ ...@@ -178,7 +178,7 @@
</div> </div>
<div class="text-weight-bold q-pa-sm">熱門目的地</div> <div class="text-weight-bold q-pa-sm">熱門目的地</div>
<q-separator /> <q-separator />
<div> <div class="flex flex-wrap">
<div class="hot-tag" @click="handleHotTagClick(item)" :class="{'hot-tag-select': setectHotTag === item.Id}" :key="item.Id" v-for="item in hotList">{{item.Name}}</div> <div class="hot-tag" @click="handleHotTagClick(item)" :class="{'hot-tag-select': setectHotTag === item.Id}" :key="item.Id" v-for="item in hotList">{{item.Name}}</div>
</div> </div>
<!-- <div class="col full-width row"> <!-- <div class="col full-width row">
......
This diff is collapsed.
...@@ -5,6 +5,9 @@ ...@@ -5,6 +5,9 @@
.justify-between { .justify-between {
justify-content: space-between; justify-content: space-between;
} }
.flex-end {
justify-content: end;
}
.item-center { .item-center {
align-items: center; align-items: center;
} }
...@@ -87,9 +90,21 @@ ...@@ -87,9 +90,21 @@
.f16 { .f16 {
font-size: 16px; font-size: 16px;
} }
.f18 {
font-size: 18px;
}
.f20 {
font-size: 20px;
}
.f26 { .f26 {
font-size: 26px; font-size: 26px;
} }
.f30 {
font-size: 30px;
}
.f36 {
font-size: 36px;
}
.text-center { .text-center {
text-align: center; text-align: center;
} }
......
This diff is collapsed.
...@@ -41,16 +41,16 @@ color: #36A1FA; ...@@ -41,16 +41,16 @@ color: #36A1FA;
class="iconfont icondingweixiao q-icon notranslate" class="iconfont icondingweixiao q-icon notranslate"
style="font-size: 14px; margin-right: 8px" style="font-size: 14px; margin-right: 8px"
></i> ></i>
<span>大阪·住宿</span> <span>大阪·{{data.ProductType}}</span>
</div> </div>
<img <img
class="card-img" class="card-img"
src="https://imgfile.oytour.com/Upload/DMC/202110131151571540000000139.jpeg" :src="data.ImgCover"
/> />
</div> </div>
<div class="content"> <div class="content">
<div class="title ellipsis-2">是否私联粉丝沙发萨芬很多事第三方介绍很舒服舒服是否舒服舒服所发生的多多多多多多多多多多多多多多多多多多是否舒服舒服盛世芳华</div> <div class="title ellipsis-2">{{data.Title}}</div>
<div> <!-- <div>
<i <i
class="iconfont icondingweixiao q-icon notranslate" class="iconfont icondingweixiao q-icon notranslate"
style="font-size: 14px; margin-right: 8px" style="font-size: 14px; margin-right: 8px"
...@@ -59,10 +59,10 @@ color: #36A1FA; ...@@ -59,10 +59,10 @@ color: #36A1FA;
</div> </div>
<div> <div>
<span class="tag-item mb mt" v-for="item in 4" :key="item">开发日志{{item}}</span> <span class="tag-item mb mt" v-for="item in 4" :key="item">开发日志{{item}}</span>
</div> </div> -->
<div class="bold mt"> <div class="bold mt">
CNY CNY
<span>200000</span> <span>{{data.B2CPrice}}</span>
<span class="ml-5 normal"></span> <span class="ml-5 normal"></span>
</div> </div>
</div> </div>
...@@ -70,6 +70,11 @@ color: #36A1FA; ...@@ -70,6 +70,11 @@ color: #36A1FA;
</template> </template>
<script> <script>
export default { export default {
props: {
data: {
default: () => ({})
}
},
data() { data() {
return {}; return {};
} }
......
<style scoped> <style scoped>
.title { .title {
font-size: 26px; font-size: 26px;
font-family: Microsoft JhengHei; font-family: Microsoft JhengHei;
font-weight: bold; font-weight: bold;
color: #000000; color: #000000;
line-height: 44px; line-height: 44px;
margin-top: 30px; margin-top: 30px;
margin-bottom: 10px; margin-bottom: 10px;
} }
.card { .card {
width: 210px; width: 210px;
height: 290px; height: 290px;
border-radius: 10px; border-radius: 10px;
margin-right: 20px;
} }
.card-img { .card-img {
width: 210px; width: 210px;
height: 290px; height: 290px;
border-radius: 10px; border-radius: 10px;
object-fit: cover;
} }
.info { .info {
position: absolute; position: absolute;
...@@ -27,38 +29,63 @@ border-radius: 10px; ...@@ -27,38 +29,63 @@ border-radius: 10px;
.all { .all {
margin: 20px auto; margin: 20px auto;
width: 320px; width: 320px;
height: 42px; height: 42px;
border: 1px solid #474747; border: 1px solid #474747;
border-radius: 8px; border-radius: 8px;
} }
</style> </style>
<template> <template>
<div>
<div class="title">附近的城市</div>
<div> <div>
<div class="relative card"> <div class="title">附近的城市</div>
<img <div class="flex">
class="card-img" <div
src="https://imgfile.oytour.com/Upload/DMC/202110131151571540000000139.jpeg" @click="navToSearch(item)"
/> class="relative card"
v-for="item in cityList"
:key="item.Id"
>
<img class="card-img" :src="item.ImageList[0]" />
<div class="info"> <div class="info">
<div>大版</div> <div>{{ item.AreaName }}</div>
<div>10Km</div> <!-- <div>10Km</div> -->
</div> </div>
</div> </div>
</div> </div>
<div class="flex flex-center"> <div class="flex flex-center">
<q-btn <q-btn
@click="navToSearch()"
label="所有目的地" label="所有目的地"
class="all" class="all"
unelevated></q-btn> unelevated
></q-btn>
</div>
</div> </div>
</div>
</template> </template>
<script> <script>
export default { export default {
props: {
cityList: {
default: () => [],
},
name: {
default: () => ({}),
},
},
data() { data() {
return {}; return {};
},
methods: {
navToSearch(item) {
console.log("navToDetail", item);
let params = {
qsearchDate: this.searchDate,
qsearchEndDate: this.searchEndDate,
};
if (item) {
params.qsearchKey = item.AreaName
} }
this.CommonJump("/search", params);
},
},
}; };
</script> </script>
\ No newline at end of file
<style scoped> <style scoped>
.card { .card {
display: inline-block;
width: 272px; width: 272px;
margin: 10px;
/* background-color: #fff; */ /* background-color: #fff; */
} }
.address { .address {
...@@ -44,7 +46,7 @@ color: #36A1FA; ...@@ -44,7 +46,7 @@ color: #36A1FA;
class="iconfont icondingweixiao q-icon notranslate" class="iconfont icondingweixiao q-icon notranslate"
style="font-size: 14px; margin-right: 8px" style="font-size: 14px; margin-right: 8px"
></i> ></i>
<span>大阪·住宿</span> <span>{{data.ProductType}}</span>
</div> </div>
<div class="like"> <div class="like">
<i <i
...@@ -54,11 +56,11 @@ color: #36A1FA; ...@@ -54,11 +56,11 @@ color: #36A1FA;
</div> </div>
<img <img
class="card-img" class="card-img"
src="https://imgfile.oytour.com/Upload/DMC/202110131151571540000000139.jpeg" :src="data.ImgCover"
/> />
</div> </div>
<div class="title ellipsis-2">是否私联粉丝沙发萨芬很多事第三方介绍很舒服舒服是否舒服舒服所发生的多多多多多多多多多多多多多多多多多多是否舒服舒服盛世芳华</div> <div class="title ellipsis-2">{{data.Title}}</div>
<div> <!-- <div>
<i <i
class="iconfont icondingweixiao q-icon notranslate" class="iconfont icondingweixiao q-icon notranslate"
style="font-size: 14px; margin-right: 8px" style="font-size: 14px; margin-right: 8px"
...@@ -67,16 +69,21 @@ color: #36A1FA; ...@@ -67,16 +69,21 @@ color: #36A1FA;
</div> </div>
<div> <div>
<span class="tag-item mb mt" v-for="item in 4" :key="item">开发日志{{item}}</span> <span class="tag-item mb mt" v-for="item in 4" :key="item">开发日志{{item}}</span>
</div> </div> -->
<div class="bold mt"> <div class="bold mt">
CNY CNY
<span>200000</span> <span>{{data.B2CPrice}}</span>
<span class="ml-5 normal"></span> <span class="ml-5 normal"></span>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
export default { export default {
props: {
data: {
default: () => {}
}
},
data() { data() {
return {}; return {};
} }
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
<style scoped>
.card {
padding: 20px;
width: 560px;
border: 1px solid #f0efef;
border-radius: 8px;
}
.avator {
width: 34px;
height: 34px;
background: #000000;
border-radius: 50%;
}
.img {
width: 80px;
height: 80px;
border-radius: 8px;
}
</style>
<template>
<div class="card">
<div class="flex item-center justify-between">
<div class="flex item-center">
<img
class="avator"
src="https://imgfile.oytour.com/Upload/DMC/202110131151571540000000139.jpeg"
/>
<span class="ml">昵称</span>
</div>
<span class="f12 text-grey-14">评价日期:2023年2月21日</span>
</div>
<div class="mt mb flex">
<star :value="3.5"></star><span>超赞</span>
</div>
<div class="f12 text-grey-14">
高级双人房。两人。一晚
</div>
<div class="mt mb">
评价内容
</div>
<div class="flex flex-wrap">
<img
class="img"
src="https://imgfile.oytour.com/Upload/DMC/202110131151571540000000139.jpeg"
/>
</div>
</div>
</template>
<script>
import star from './star.vue'
export default {
components: {star},
data() {
return {};
},
};
</script>
<style scoped>
.number {
font-size: 46px;
font-weight: bold;
color: #000;
line-height: 42px;
}
.all {
height: 10px;
width: 230px;
border-radius: 5px;
background: #eee;
}
.fill {
height: 10px;
width: 230px;
border-radius: 5px;
background: #2D90FF;
}
</style>
<template>
<div class="q-mt-lg">
<div class="flex justify-between">
<div class="flex items-center">
<div class="flex items-end mr">
<span class="number">4.5</span>
<span>/5</span>
</div>
<star :value="4"></star>
</div>
<div class="ml custom-pointer" @click="showCommentsList">
<span>200+條評價</span>
</div>
</div>
<div class="flex justify-between q-mt-lg">
<div v-for="item in list" :key="item.id">
<div>{{item.label}}</div>
<div class="flex items-center">
<div class="relative all">
<span class="absolute fill" :style="{width: item.score/5 * 100 + '%'}"></span>
</div>
<span class="q-ml-sm">{{item.score}}</span>
</div>
</div>
</div>
<div class="flex justify-between wrap">
<comment class="margin" v-for="item in 3" :key="item"></comment>
</div>
</div>
</template>
<script>
import comment from "./comment.vue";
import star from "./star.vue";
export default {
components: { comment, star },
data() {
return {
list: [{
label: '位置',
score: 4,
id: 1
},{
label: '服务',
score: 5,
id: 2
},{
label: '清洁',
score: 3.6,
id: 3
},{
label: '环境&卫生',
score: 4.5,
id: 4
}]
};
},
methods: {
showCommentsList() {
this.show = true;
}
}
};
</script>
<style scoped>
.card {width: 380px;
height: 139px;
padding: 20px;
border: 1px solid #F0EFEF;
border-radius: 8px;}
.des {
margin-top: 5px;
height: 70px;
overflow: hidden;
}
</style>
<template>
<div class="card">
<div class="f16 bold">酒店简介</div>
<div class="f12 des">[位于深圳(罗湖)]Innogo Hotel位于深圳罗湖,距离罗湖口岸只有 4 分钟车程,且距离东门步行街也只有 6 分钟车程。 此酒店距离大埔旧墟 10.3 英里(16.6 公里),距离国际贸易中心大厦 1.1 英里(1.8 公里)。 价格说明: 划线价格为参考价格,指商品或服务的门市价、服务提供商的指导价、零售价或曾经展示过的销售价格,并非原价,该价格仅供您参考。 未划线价格指商品或服务的实时标价,为划线价基础上计算出来的优惠价格。具体成交价格根据商品或服务参加活动,或会员使用优惠券等发生变化,最终以订单结算页价格为准。</div>
</div>
</template>
<script>
export default {
data() {
return {}
}
}
</script>
<style scoped>
.card {width: 380px;
height: 139px;
border: 1px solid #F0EFEF;
border-radius: 8px;}
</style>
<template>
<div class="card" id="baidu-map"></div>
</template>
<script>
export default {
data() {
return {}
},mounted() {
this.createMap();
this.addMarker();
this.addLabel()
},
methods: {
createMap() {
if (!BMapGL) {
return;
}
let map = new BMapGL.Map("baidu-map"); // 创建地图实例
let point = new BMapGL.Point(116.404, 39.915); // 创建点坐标
map.centerAndZoom(point, 15); // 初始化地图,设置中心点坐标和地图级别
this.map = map;
},
addMarker() {
let icon = require(`../../assets/img/info-time.png`);
var myIcon = new BMapGL.Icon(icon, new BMapGL.Size(23, 25), {
// 指定定位位置。
// 当标注显示在地图上时,其所指向的地理位置距离图标左上
// 角各偏移10像素和25像素。您可以看到在本例中该位置即是
// 图标中央下端的尖角位置。
anchor: new BMapGL.Size(10, 25),
// 设置图片偏移。
// 当您需要从一幅较大的图片中截取某部分作为标注图标时,您
// 需要指定大图的偏移位置,此做法与css sprites技术类似。
// imageOffset: new BMapGL.Size(0, 0 - 25) // 设置图片偏移
});
let point = new BMapGL.Point(116.404, 39.915); // 创建点坐标
// 创建标注对象并添加到地图
var marker = new BMapGL.Marker(point, { icon: myIcon });
this.map.addOverlay(marker);
},
addLabel() {
var point = new BMapGL.Point(116.404, 39.915);
var content = "label";
var label = new BMapGL.Label(content, {
// 创建文本标注
position: point, // 设置标注的地理位置
offset: new BMapGL.Size(10, -80), // 设置标注的偏移量
});
this.map.addOverlay(label); // 将标注添加到地图中
label.addEventListener("click", function () {
alert("您点击了标注");
});
label.setStyle({
// 设置label的样式
color: "#000",
fontSize: "30px",
border: "2px solid #1E90FF",
});
},
},
}
</script>
<style scoped>
.card {
width: 380px;
height: 139px;
padding: 20px;
border: 1px solid #f0efef;
border-radius: 8px;
}
.number {
font-size: 56px;
font-weight: bold;
color: #2d90ff;
line-height: 42px;
}
.avator {width: 34px;
height: 34px;
background: #000000;
border-radius: 50%;}
</style>
<template>
<div class="card">
<div class="flex">
<div>
<span class="number">4.5</span>
<span>/5</span>
</div>
<div class="ml">
<star :value="4"></star>
<span>
<span class="f16">超讚</span>
<span>200+條評價</span>
</span>
</div>
</div>
<div class="flex mt">
<img
class="avator"
src="https://imgfile.oytour.com/Upload/DMC/202110131151571540000000139.jpeg"
/>
<div class="ml f12">
<div>昵称</div>
<div class="ellipsis">评论内容</div>
</div>
</div>
</div>
</template>
<script>
import star from "./star.vue";
export default {
components: { star },
data() {
return {};
},
};
</script>
<style scoped>
.star {
width: 17px;
height: 18px;
margin-right: 7px;
}
</style>
<template>
<div>
<img v-for="item in starValue" :key="item"
class="star"
:src="require(`../../assets/img/star-fill.png`)"
/><img v-if="isHalf"
class="star"
:src="require(`../../assets/img/star-half.png`)"
/><img v-for="item in residue" :key="item"
class="star"
:src="require(`../../assets/img/star-none.png`)"
/>
</div>
</template>
<script>
export default {
props: {
value: {
default: 5
}
},
data() {
return {
starValue: 5,
isHalf: false,
residue: 0
}
},
created() {
this.starValue = Math.floor(this.value)
this.isHalf = this.starValue !== this.value
this.residue = 5 - Math.ceil(this.value)
}
}
</script>
This diff is collapsed.
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