Commit 72998b00 authored by 罗超's avatar 罗超

1

parent 6c0d235b
<template> <template>
<div class="mynav" :style="{ background: bg }"> <div class="mynav" :style="{ background: `${bg}`, height: `${height}rpx` }">
<swiper :autoplay="false" :style="{ Height: height + 'rpx' }"> <swiper
:autoplay="false"
style="min-height: 140rpx"
:style="{ height: `${height}rpx` }"
>
<swiper-item v-for="(item, index) in cols" :key="index"> <swiper-item v-for="(item, index) in cols" :key="index">
<view :style="[formatStyle]"> <view :style="[formatStyle]">
<!-- #ifdef MP-WEIXIN --> <!-- #ifdef MP-WEIXIN -->
...@@ -65,7 +69,6 @@ export default { ...@@ -65,7 +69,6 @@ export default {
created() { created() {
let tempArray = []; let tempArray = [];
this.height = this.navs.rows * this.height; this.height = this.navs.rows * this.height;
console.log(66, this.height);
this.navs.navs.forEach((x, i) => { this.navs.navs.forEach((x, i) => {
tempArray.push(x); tempArray.push(x);
if ( if (
...@@ -102,7 +105,7 @@ export default { ...@@ -102,7 +105,7 @@ export default {
}; };
</script> </script>
<style> <style scoped>
.mynva .grid-text { .mynva .grid-text {
font-size: 28rpx; font-size: 28rpx;
margin-top: 4rpx; margin-top: 4rpx;
...@@ -111,11 +114,19 @@ export default { ...@@ -111,11 +114,19 @@ export default {
.grid-text view { .grid-text view {
background: transparent !important; background: transparent !important;
} }
/* #ifdef MP-ALIPAY */
.mynav {
display: flex;
align-items: center;
justify-content: space-between;
}
.gridnav-box { .gridnav-box {
height: 100%;
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: space-between; justify-content: space-between;
box-sizing: border-box; box-sizing: border-box;
padding: 0 30rpx; padding: 0 30rpx;
} }
/* #endif */
</style> </style>
...@@ -13,10 +13,18 @@ ...@@ -13,10 +13,18 @@
> >
<img :src="navs.customerService.picUrl" /> <img :src="navs.customerService.picUrl" />
</button> </button>
<view class="nav-item" v-if="navs.tel.opened" @click="goPhone(navs.tel.number)"> <view
class="nav-item"
v-if="navs.tel.opened"
@click="goPhone(navs.tel.number)"
>
<img :src="navs.tel.picUrl" /> <img :src="navs.tel.picUrl" />
</view> </view>
<view class="nav-item" v-if="navs.web.opened" @click="goUrl(navs.web.url)"> <view
class="nav-item"
v-if="navs.web.opened"
@click="goUrl(navs.web.url)"
>
<img :src="navs.web.picUrl" /> <img :src="navs.web.picUrl" />
</view> </view>
<navigator <navigator
...@@ -59,7 +67,7 @@ export default { ...@@ -59,7 +67,7 @@ export default {
showArrow: true, showArrow: true,
showNavs: false, showNavs: false,
arrowImg: "", arrowImg: "",
currentParent: "" currentParent: "",
}; };
}, },
created() { created() {
...@@ -78,24 +86,24 @@ export default { ...@@ -78,24 +86,24 @@ export default {
goHome() { goHome() {
let t = getCurrentPages(); let t = getCurrentPages();
let crtPath = "/" + t[t.length - 1].route; let crtPath = "/" + t[t.length - 1].route;
uni.redirectTo({ url: "/pages/index/index" }); uni.redirectTo({ url: "/pages/index/index" });
}, },
goLink(url) { goLink(url) {
if (url && url.length > 0) { if (url && url.length > 0) {
uni.redirectTo({ uni.redirectTo({
url: url url: url,
}); });
} }
}, },
goPhone(num) { goPhone(num) {
uni.makePhoneCall({ uni.makePhoneCall({
phoneNumber: num phoneNumber: num,
}); });
}, },
goUrl(url) { goUrl(url) {
if (url && url.length > 0) { if (url && url.length > 0) {
uni.redirectTo({ uni.redirectTo({
url: "/pages/webbox/webbox?u=" + encodeURIComponent(url) url: "/pages/webbox/webbox?u=" + encodeURIComponent(url),
}); });
} }
}, },
...@@ -110,10 +118,12 @@ export default { ...@@ -110,10 +118,12 @@ export default {
uni.openLocation({ uni.openLocation({
latitude: loca[0], latitude: loca[0],
longitude: loca[1], longitude: loca[1],
scale: 28 scale: 28,
name: "",
address: "",
}); });
} },
} },
}; };
</script> </script>
......
...@@ -256,11 +256,17 @@ ...@@ -256,11 +256,17 @@
} }
this.scrollToAnchorIndex = index; this.scrollToAnchorIndex = index;
const anchor = this.children.find((item) => item.index === this.indexList[index]); const anchor = this.children.find((item) => item.index === this.indexList[index]);
console.log(anchor,this.scrollTop)
if (anchor) { if (anchor) {
this.$emit('select', anchor.index); this.$emit('select', anchor.index);
uni.pageScrollTo({ uni.pageScrollTo({
duration: 0, scrollTop: anchor.top + this.scrollTop,
scrollTop: anchor.top + this.scrollTop success:(res)=>{
console.log(1,res)
},
fail:(err)=> {
console.log(2,err)
}
}); });
} }
} }
......
...@@ -54,7 +54,6 @@ ...@@ -54,7 +54,6 @@
:list="list" :list="list"
:is-scroll="false" :is-scroll="false"
:show-bar="false" :show-bar="false"
duration="0"
font-size="28" font-size="28"
:activeFontSize="34" :activeFontSize="34"
:bold="true" :bold="true"
......
...@@ -1020,10 +1020,10 @@ export default { ...@@ -1020,10 +1020,10 @@ export default {
openmap() { openmap() {
//打开地图选择详情地址 //打开地图选择详情地址
let that = this; let that = this;
// #ifdef MP-WEIXIN
uni.getSetting({ uni.getSetting({
success(res) { success(res) {
console.log("res是否开启授权", res); console.log("res是否开启授权", res);
// #ifdef MP-WEIXIN
if (!res.authSetting["scope.userLocation"]) { if (!res.authSetting["scope.userLocation"]) {
uni.authorize({ uni.authorize({
scope: "scope.userLocation", scope: "scope.userLocation",
...@@ -1048,20 +1048,18 @@ export default { ...@@ -1048,20 +1048,18 @@ export default {
that.getNLocation(); that.getNLocation();
} }
} }
// #endif
// #ifdef MP-ALIPAY
if (res.authSetting.location) {
if (that.latitude != "" && that.longitude != "") {
that.getYLocation();
} else {
that.getNLocation();
}
} else {
that.fetchAgainLocation();
}
// #endif
}, },
}); });
// #endif
// #ifdef MP-ALIPAY
if (that.latitude != "" && that.longitude != "") {
that.getYLocation();
} else {
that.getNLocation();
}
// #endif
}, },
fetchAgainLocation() { fetchAgainLocation() {
let that = this; let that = this;
...@@ -1077,6 +1075,7 @@ export default { ...@@ -1077,6 +1075,7 @@ export default {
if (tip.confirm) { if (tip.confirm) {
uni.openSetting({ uni.openSetting({
success: (data) => { success: (data) => {
console.log(data);
// #ifdef MP-WEIXIN // #ifdef MP-WEIXIN
if (data.authSetting["scope.userLocation"]) { if (data.authSetting["scope.userLocation"]) {
uni.showToast({ uni.showToast({
...@@ -1412,6 +1411,7 @@ export default { ...@@ -1412,6 +1411,7 @@ export default {
opacity: 0.5; opacity: 0.5;
width: 1.3rem; width: 1.3rem;
height: 15rpx; height: 15rpx;
border-radius: 4rpx;
background-color: #dfbe6e; background-color: #dfbe6e;
} }
</style> </style>
<template> <template>
<view class="pickcarcity" :style="{'height':contentHeight}"> <view class="pickcarcity" :style="{ height: contentHeight }">
<view class="qcity"> <view class="qcity">
<view class="ctrl-box"> <view class="ctrl-box">
<u-search <u-search
action-text="搜索" action-text="搜索"
:focus="true" :focus="true"
:show-action="true"
:show-action="true" radius="40"
radius="40" v-model="searchKey"
v-model="searchKey" @search="searchHandler"
@search="searchHandler" @custom="searchHandler"
@custom="searchHandler" @change="changeHandler"
@change="changeHandler" ></u-search>
></u-search> </view>
</view> <view v-if="show == true">
<view v-if="show==true"> <scroll-view :scroll-y="true" style="height: calc(100vh - 50px)">
<scroll-view <view class="txtype">
:scroll-y="true" <view
style="height: calc(100vh - 50px)"> class="list-cell"
<view class="txtype"> v-for="(x, index) in searchList"
<view class="list-cell" v-for="(x, index) in searchList" :key="index" @click="goback(x,2)"> :key="index"
{{x.Name}} @click="goback(x, 2)"
</view> >
</view> {{ x.Name }}
</scroll-view> </view>
</view> </view>
<view class="kaitong" v-if="show==false"> </scroll-view>
<div style='width: 100%;'><span style='color: #9A9A9A;font-size: 12px;'>已开通城市</span></div> </view>
<view v-for="(item, index) in RegionList" :key="index" class="region" @click="goback(item,1)"> <view class="kaitong" v-if="show == false">
{{item.RegionName}} <div style="width: 100%">
</view> <span style="color: #9a9a9a; font-size: 12px">已开通城市</span>
</view> </div>
<view
<div style='height: calc(100vh - 50px);' v-if="show==false"> v-for="(item, index) in RegionList"
<u-index-list :scrollTop="scrollTop"> :key="index"
<view v-for="(item, index) in indexList" :key="index"> class="region"
<u-index-anchor :index="item.ti" /> @click="goback(item, 1)"
<view class="list-cell" v-for="(x,y) in item.children" :key='y' @click="goback(x,2)"> >
{{x.Name}} {{ item.RegionName }}
</view> </view>
</view>
</view>
</u-index-list> <div style="height: calc(100vh - 50px)" v-if="show == false">
</div> <u-index-list :scrollTop="scrollTop">
<view v-for="(item, index) in indexList" :key="index">
</view> <u-index-anchor :index="item.ti" />
<view
</view> class="list-cell"
v-for="(x, y) in item.children"
:key="y"
@click="goback(x, 2)"
>
{{ x.Name }}
</view>
</view>
</u-index-list>
</div>
</view>
</view>
</template> </template>
<script> <script>
export default { export default {
data() { data() {
return { return {
pageTitle: "取车城市", pageTitle: "取车城市",
scrollTop:0, scrollTop: 0,
contentHeight:0, contentHeight: 0,
mainColor:'', mainColor: "",
secondary:'', secondary: "",
RegionList:[], RegionList: [],
cityList:[], cityList: [],
searchList:[],//搜索出来的 searchList: [], //搜索出来的
searchKey: "", searchKey: "",
show:false, show: false,
indexList: [{ti:"A"}, {ti:"B"}, {ti:"C"}, {ti:"D"}, {ti:"E"}, {ti:"F"}, {ti:"G"},{ ti:"H"}, {ti:"I"}, {ti:"J"}, {ti:"K"}, {ti:"L"}, indexList: [
{ti:"M"}, {ti:"N"}, {ti:"O"}, {ti:"P"},{ ti:"Q"}, {ti:"R"}, {ti:"S"}, {ti:"T"}, {ti:"U"}, { ti: "A" },
{ti:"V"}, {ti:"W"}, {ti:"X"}, {ti:"Y"}, {ti:"Z"} { ti: "B" },
] { ti: "C" },
} { ti: "D" },
}, { ti: "E" },
onLoad(option){ { ti: "F" },
{ ti: "G" },
}, { ti: "H" },
created(){ { ti: "I" },
this.contentHeight = this.$utils.calcContentHeight(-40)+'px'; { ti: "J" },
this.mainColor = this.$uiConfig.mainColor; { ti: "K" },
this.secondary = this.$uiConfig.secondary; { ti: "L" },
this.init()//城市列表 { ti: "M" },
this.getSiteRegionList() { ti: "N" },
{ ti: "O" },
{ ti: "P" },
{ ti: "Q" },
{ ti: "R" },
{ ti: "S" },
{ ti: "T" },
{ ti: "U" },
{ ti: "V" },
{ ti: "W" },
{ ti: "X" },
{ ti: "Y" },
{ ti: "Z" },
],
};
},
onLoad(option) {},
created() {
this.contentHeight = this.$utils.calcContentHeight(-40) + "px";
this.mainColor = this.$uiConfig.mainColor;
this.secondary = this.$uiConfig.secondary;
this.init(); //城市列表
this.getSiteRegionList();
},
mounted() {
uni.setNavigationBarTitle({
title: this.pageTitle,
});
},
methods: {
init() {
uni.showLoading({
title: "加载中",
});
this.request2(
{
url: "/api/AppletGuideCar/GetAllList",
data: {},
},
(res) => {
this.cityList = res.data;
this.indexList.forEach((x) => {
x.children = [];
this.cityList.forEach((j) => {
let obj = {};
if (x.ti == j.PinYin.substr(0, 1)) {
x.children.push(j);
}
});
});
uni.hideLoading();
}
);
},
getSiteRegionList() {
this.request2(
{
url: "/api/AppletGuideCar/GetSiteRegionList",
data: {},
},
}, (res) => {
mounted() { this.RegionList = res.data;
}
uni.setNavigationBarTitle({ );
title: this.pageTitle, },
}); onPageScroll(e) {
}, this.scrollTop = e.scrollTop;
methods: { },
init(){ goback(item, type) {
uni.showLoading({ let Name;
title: "加载中", if (type == 1) {
}); Name = item.RegionName;
this.request2( } else {
{ Name = item.Name;
url: '/api/AppletGuideCar/GetAllList', }
data: {} let pages = getCurrentPages(); // 当前页面
}, let beforePage;
beforePage = pages[pages.length - 2]; // 前一个页面
(res) => { // console.log( beforePage.$vm)
this.cityList = res.data; setTimeout(() => {
this.indexList.forEach(x=>{ uni.navigateBack({
x.children=[]; delta: 1,
this.cityList.forEach(j=>{ success: function () {
let obj={} beforePage.$vm.getPickcar(Name); // 执行前一个页面的方法
if(x.ti==j.PinYin.substr(0,1)){ },
x.children.push(j) });
} }, 100);
}) },
searchHandler(val) {
}) if (val != "") {
this.searchList = [];
uni.hideLoading(); this.cityList.forEach((x) => {
} if (x.Name.indexOf(val) != -1) {
); this.searchList.push(x);
}, }
getSiteRegionList(){ });
this.request2(
{ this.show = true;
url: '/api/AppletGuideCar/GetSiteRegionList', } else {
data: {} this.show = false;
}, }
},
(res) => { changeHandler(val) {
this.RegionList = res.data if (val == "") {
} this.show = false;
); }
}, },
onPageScroll(e) { },
this.scrollTop = e.scrollTop; };
},
goback(item,type){
let Name
if(type==1){
Name=item.RegionName
}else{
Name=item.Name
}
let pages = getCurrentPages(); // 当前页面
let beforePage
beforePage = pages[pages.length - 2]; // 前一个页面
// console.log( beforePage.$vm)
setTimeout(()=>{
uni.navigateBack({
delta:1,
success: function() {
beforePage.$vm.getPickcar(Name); // 执行前一个页面的方法
}
});
},100)
},
searchHandler(val){
if(val!=''){
this.searchList = []
this.cityList.forEach(x=>{
if(x.Name.indexOf(val)!=-1){
this.searchList.push(x)
}
})
this.show=true
}else{
this.show=false
}
},
changeHandler(val) {
if(val==''){
this.show=false
}
},
}
}
</script> </script>
<style> <style>
.pickcarcity{ .pickcarcity {
background: #FFFFFF; background: #ffffff;
}
.pickcarcity .qcity {
}
.pickcarcity .list-cell {
display: flex;
box-sizing: border-box;
width: 100%;
padding: 10px 24rpx;
overflow: hidden;
color: #323233;
font-size: 14px;
line-height: 24px;
background-color: #fff;
position: relative;
}
.pickcarcity .anchor-text {
color: red;
}
.pickcarcity .kaitong {
width: 100%;
padding: 15px;
background: #faf8f9;
display: flex;
flex-direction: row;
align-items: center;
flex-wrap: wrap;
}
.pickcarcity .region {
width: 200rpx;
height: 68rpx;
background: #fff;
display: flex;
align-items: center;
justify-content: center;
margin-right: 30rpx;
margin-top: 30rpx;
}
.pickcarcity .ctrl-box {
padding: 5px 10px;
} }
.pickcarcity .qcity{ .pickcarcity .txtype {
width: 100%;
background: #fff;
height: calc(100vh - 50px);
} }
.pickcarcity .list-cell {
display: flex;
box-sizing: border-box;
width: 100%;
padding: 10px 24rpx;
overflow: hidden;
color: #323233;
font-size: 14px;
line-height: 24px;
background-color: #fff;
position: relative;
}
.pickcarcity .anchor-text {
color: red;
}
.pickcarcity .kaitong{
width: 100%;
padding: 15px;
background: #FAF8F9;
display: flex;
flex-direction: row;
align-items: center;
flex-wrap: wrap;
}
.pickcarcity .region{
width: 200rpx;
height: 68rpx;
background: #fff;
display: flex;
align-items: center;
justify-content: center;
margin-right: 30rpx;
margin-top: 30rpx;
}
.pickcarcity .ctrl-box {
padding: 5px 10px;
}
.pickcarcity .txtype{
width: 100%;
background: #FFF;
height: calc(100vh - 50px);
}
</style> </style>
<template> <template>
<view style="height: 100vh"> <view style="height: 100vh" v-if="hotelObj.HotelId > 0">
<view style="padding: 0 45rpx"> <view style="padding: 0 45rpx">
<u-tabs <u-tabs
:is-scroll="false" :is-scroll="false"
...@@ -163,12 +163,14 @@ export default { ...@@ -163,12 +163,14 @@ export default {
active: 0, active: 0,
scrollTop: 0, scrollTop: 0,
oldScrollTop: 0, oldScrollTop: 0,
id: 0,
hotelObj: {}, //酒店信息 hotelObj: {}, //酒店信息
}; };
}, },
onLoad(options) { onLoad(options) {
if (options.hotelObj) { if (options.hotelObj) {
this.hotelObj = JSON.parse(decodeURIComponent(options.hotelObj)); let obj = JSON.parse(decodeURIComponent(options.hotelObj));
this.getHotelDetail(parseInt(obj.id), obj.start, obj.end);
} }
}, },
created() { created() {
...@@ -204,6 +206,26 @@ export default { ...@@ -204,6 +206,26 @@ export default {
// this.clickItem = this.navs.navs[i]; // this.clickItem = this.navs.navs[i];
// }) // })
}, },
//获取酒店详情
getHotelDetail(id, start, end) {
let msg = {
HotelId: id,
StartDate: start,
EndDate: end,
};
this.request2(
{
url: "/api/Hotel/GetHotelInfo",
data: msg,
},
(res) => {
if (res.resultCode == 1) {
// console.log(res, '详情数据');
this.hotelObj = res.data;
}
}
);
},
}, },
}; };
</script> </script>
......
...@@ -77,29 +77,32 @@ ...@@ -77,29 +77,32 @@
</view> </view>
</view> </view>
</view> </view>
<!-- #ifdef MP-WEIXIN -->
<view <view
@click="goback" @click="goback"
:style="[titleStyle, { opacity: '100% !important' }]" :style="[titleStyle, { opacity: '100% !important' }]"
style="position: fixed; top: 0; left: 0; padding-left: 6rpx" style="position: fixed; top: 0; left: 0; padding-left: 6rpx"
> >
<!-- #ifdef MP-WEIXIN -->
<u-icon <u-icon
name="arrow-left" name="arrow-left"
size="44" size="44"
color="#FFF" color="#FFF"
style="margin-top: 22rpx" style="margin-top: 22rpx"
></u-icon> ></u-icon>
<!-- #endif -->
</view> </view>
<!-- #endif -->
</view> </view>
<view class="hotel-title" :style="[titleStyle]"> <view class="hotel-title" :style="[titleStyle]">
<view @click="goback"> <view @click="goback">
<!-- #ifdef MP-WEIXIN -->
<u-icon name="arrow-left" size="44"></u-icon> <u-icon name="arrow-left" size="44"></u-icon>
<!-- #endif -->
</view> </view>
<view style="flex: 1; margin-left: 30rpx; text-align: left">{{ <view
dataList.HotelName style="flex: 1; margin-left: 30rpx; text-align: left"
}}</view> class="name-ali"
>{{ dataList.HotelName }}</view
>
</view> </view>
<view class="hotel-content"> <view class="hotel-content">
<view class="hotel-base"> <view class="hotel-base">
...@@ -356,7 +359,9 @@ export default { ...@@ -356,7 +359,9 @@ export default {
}, },
], ],
boxOption: 0, boxOption: 0,
titleStyle: {}, titleStyle: {
opacity: 0,
},
mainColor: "", mainColor: "",
showTimePopup: false, showTimePopup: false,
controls: false, controls: false,
...@@ -422,11 +427,6 @@ export default { ...@@ -422,11 +427,6 @@ export default {
this.Up = uni.getStorageSync("mall_UserInfo") this.Up = uni.getStorageSync("mall_UserInfo")
? uni.getStorageSync("mall_UserInfo").UserPageType ? uni.getStorageSync("mall_UserInfo").UserPageType
: 0; : 0;
// #ifdef MP-ALIPAY
if (my.canIUse("hideBackHome")) {
my.hideBackHome();
}
// #endif
}, },
onLoad(options) { onLoad(options) {
this.id = options.id; this.id = options.id;
...@@ -437,13 +437,12 @@ export default { ...@@ -437,13 +437,12 @@ export default {
that.titleStyle = { that.titleStyle = {
height: "45px", height: "45px",
paddingTop: `${res.statusBarHeight}px`, paddingTop: `${res.statusBarHeight}px`,
opacity: "0%", opacity: "0",
}; };
}, },
}); });
this.mainColor = this.$uiConfig.mainColor; this.mainColor = this.$uiConfig.mainColor;
if (options.dayObj) { if (options.dayObj) {
// console.log(options.dayObj,'options.dayObj');
var tempDay = JSON.parse(options.dayObj); var tempDay = JSON.parse(options.dayObj);
this.roomMsg.StartDate = tempDay.start; this.roomMsg.StartDate = tempDay.start;
this.roomMsg.EndDate = tempDay.end; this.roomMsg.EndDate = tempDay.end;
...@@ -507,11 +506,12 @@ export default { ...@@ -507,11 +506,12 @@ export default {
goMap(name, lon, lat) { goMap(name, lon, lat) {
let newLon = parseFloat(lon); let newLon = parseFloat(lon);
let newLat = parseFloat(lat); let newLat = parseFloat(lat);
wx.openLocation({ uni.openLocation({
latitude: newLat, latitude: newLat,
longitude: newLon, longitude: newLon,
scale: 18, scale: 18,
name, name: name,
address: name,
success: (res) => {}, success: (res) => {},
fail: (err) => {}, fail: (err) => {},
}); });
...@@ -523,7 +523,11 @@ export default { ...@@ -523,7 +523,11 @@ export default {
}); });
}, },
openDescription() { openDescription() {
let hotelObj = JSON.stringify(this.dataList); let hotelObj = JSON.stringify({
id: this.id,
start: this.dayObj.start,
end: this.dayObj.end,
});
uni.navigateTo({ uni.navigateTo({
url: url:
"/pages/hotel/description?hotelObj=" + encodeURIComponent(hotelObj), "/pages/hotel/description?hotelObj=" + encodeURIComponent(hotelObj),
...@@ -648,9 +652,11 @@ export default { ...@@ -648,9 +652,11 @@ export default {
scroll(e) { scroll(e) {
this.boxOption = Math.floor((e.detail.scrollTop - 50) / 1.5); this.boxOption = Math.floor((e.detail.scrollTop - 50) / 1.5);
this.titleStyle.opacity = this.titleStyle.opacity =
(e.detail.scrollTop - 100 < 0 e.detail.scrollTop - 100 < 0
? 0 ? 0
: Math.floor(e.detail.scrollTop - 100)) + "%"; : Math.floor(e.detail.scrollTop - 100) / 100 > 1
? 1
: Math.floor(e.detail.scrollTop - 100) / 100;
this.$forceUpdate(); this.$forceUpdate();
}, },
enlarge(file) { enlarge(file) {
...@@ -701,6 +707,7 @@ export default { ...@@ -701,6 +707,7 @@ export default {
} }
); );
}, },
// #ifdef MP-WEIXIN
//分享朋友圈 //分享朋友圈
onShareTimeline() { onShareTimeline() {
let uid = uni.getStorageSync("mall_UserInfo") let uid = uni.getStorageSync("mall_UserInfo")
...@@ -778,6 +785,7 @@ export default { ...@@ -778,6 +785,7 @@ export default {
: "", : "",
}; };
}, },
// #endif
}, },
}; };
</script> </script>
...@@ -1228,4 +1236,10 @@ export default { ...@@ -1228,4 +1236,10 @@ export default {
top: 0; top: 0;
opacity: 0; opacity: 0;
} }
.name-ali {
/* #ifdef MP-ALIPAY */
box-sizing: border-box;
padding-left: 30rpx;
/* #endif */
}
</style> </style>
<style lang="scss" scoped> <style lang="scss" scoped>
.allorderdetails{ .allorderdetails {
width: 100%; width: 100%;
height: 100vh; height: 100vh;
background: #FFFFFF; background: #ffffff;
.box-top{ .box-top {
width: 100%; width: 100%;
height: 65px; height: 65px;
background: #FFFFFF; background: #ffffff;
box-shadow: 0px 1px 8px 0px rgba(76, 76, 76, 0.13); box-shadow: 0px 1px 8px 0px rgba(76, 76, 76, 0.13);
border-radius: 0px 0px 30px 30px; border-radius: 0px 0px 30px 30px;
padding: 0 20px; padding: 0 20px;
display: flex; display: flex;
align-items: center; align-items: center;
font-size: 20px; font-size: 20px;
font-weight: 800; font-weight: 800;
color: #111111; color: #111111;
image{ image {
width: 27px;height: 27px;margin-right: 10px; width: 27px;
} height: 27px;
} margin-right: 10px;
.box-top2{ }
width: 100%; }
padding:0 20px; .box-top2 {
margin-top: 20px; width: 100%;
.box-top2-text{ padding: 0 20px;
font-size: 16px; margin-top: 20px;
font-weight: 800; .box-top2-text {
color: #111111; font-size: 16px;
line-height: 22px; font-weight: 800;
color: #111111;
} line-height: 22px;
} }
.order_xu{ }
width: 100%; .order_xu {
height: 14px; width: 100%;
border-bottom: 1px dashed #E6E6E6; height: 14px;
} border-bottom: 1px dashed #e6e6e6;
.box-center{ }
width: 100%; .box-center {
padding: 0 20px; width: 100%;
.hotelbox{ padding: 0 20px;
display: flex; .hotelbox {
margin-top: 15px; display: flex;
.hotelbox-r{ margin-top: 15px;
width: calc(100vw - 50px - 80px); .hotelbox-r {
font-size: 12px; width: calc(100vw - 50px - 80px);
.text-t{ font-size: 12px;
width: 100%; .text-t {
} width: 100%;
}
} }
}
} .box-top-car {
.box-top-car{ width: 100%;
width: 100%; display: flex;
display: flex; align-items: center;
align-items: center; padding: 0 10px;
padding: 0 10px; justify-content: space-between;
justify-content: space-between; font-size: 16px;
font-size: 16px; font-weight: 800;
font-weight: 800; color: #111111;
color: #111111; margin-top: 15px;
margin-top: 15px; .onetext {
.onetext{ // overflow: hidden;white-space: nowrap;text-overflow: ellipsis;
// overflow: hidden;white-space: nowrap;text-overflow: ellipsis; width: calc((100vw - 40px - 40px) / 2);
width: calc((100vw - 40px - 40px)/2); text-align: center;
text-align: center; }
} .box-top-c {
.box-top-c{ width: 113px;
width: 113px; display: flex;
display: flex; flex-direction: column;
flex-direction: column; align-items: center;
align-items: center; .box-top-ct {
.box-top-ct{ width: 30px;
width: 30px; height: 21px;
height: 21px; border-radius: 2px;
border-radius: 2px; background: rgba(223, 190, 110, 0.1);
background: rgba(223, 190, 110, 0.1); font-size: 12px;
font-size: 12px; font-family: PingFang SC;
font-family: PingFang SC; font-weight: 500;
font-weight: 500; color: #dfbe6e;
color: #DFBE6E; text-align: center;
text-align: center; line-height: 21px;
line-height: 21px; margin-bottom: 4px;
margin-bottom: 4px; }
} }
} }
} }
} .box-c-car {
.box-c-car{ width: 100%;
width: 100%; border-radius: 8px;
border-radius: 8px; box-shadow: 0px 1px 8px 0px rgba(76, 76, 76, 0.13);
box-shadow: 0px 1px 8px 0px rgba(76, 76, 76, 0.13); padding: 0 15px;
padding: 0 15px; margin-top: 15px;
margin-top: 15px; .box-c-caritem {
.box-c-caritem{ width: 100%;
width: 100%; min-height: 40px;
min-height:40px; display: flex;
display: flex; align-items: center;
align-items: center; justify-content: space-between;
justify-content: space-between; .box-c-caritem-l {
.box-c-caritem-l{ font-size: 12px;
font-size: 12px; color: rgba(8, 9, 14, 0.6);
color: rgba(8, 9, 14, 0.6); width: 130rpx;
width: 130rpx; }
} .box-c-caritem-r {
.box-c-caritem-r{ font-size: 14px;
font-size: 14px; color: #08090e;
color: #08090E; font-weight: bold;
font-weight: bold; width: 1;
width: 1; flex: 1;
flex:1; text-align: right;
text-align: right; }
.box-c-caritem-r2 {
} font-size: 14px;
.box-c-caritem-r2{ color: #08090e;
font-size: 14px; font-weight: bold;
color: #08090E; }
font-weight: bold; }
} }
} .xian {
} width: 100%;
.xian{ height: 1px;
width: 100%; background: rgba(0, 0, 0, 0.1);
height: 1px; }
background: rgba(0, 0, 0, 0.1); .btn-box {
} display: flex;
.btn-box { flex-direction: row-reverse;
display: flex; height: 45px;
flex-direction: row-reverse; padding: 5px 20px;
height: 45px; position: fixed;
padding: 5px 20px; bottom: 0;
position: fixed; left: 0;
bottom: 0; right: 0;
left: 0; z-index: 2;
right: 0; border-top: 1px solid #f5f5f5;
z-index: 2; background: #fff;
border-top: 1px solid #f5f5f5; }
background: #fff; .kefu {
} display: flex;
.kefu{ flex-direction: column;
display: flex; align-items: center;
flex-direction: column; margin-left: 5px;
align-items: center; }
margin-left: 5px; .contButton {
} width: 100%;
.contButton { height: 100%;
width: 100%; position: absolute;
height: 100%; left: 0;
position: absolute; top: 0;
left: 0; opacity: 0;
top: 0; }
opacity: 0; }
}
}
</style> </style>
<template> <template>
<view class="allorderdetails"> <view class="allorderdetails">
<view class="box-top"> <view class="box-top">
<image v-if="OrderInfo.OrderStatus==1 || OrderInfo.OrderStatus==2" src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/CustomizedCar/orderdfk.png" ></image> <image
<image v-if="OrderInfo.OrderStatus==4 || OrderInfo.OrderStatus==5" src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/CustomizedCar/orderquxiao.png" ></image> v-if="OrderInfo.OrderStatus == 1 || OrderInfo.OrderStatus == 2"
<image v-if="OrderInfo.OrderStatus==3" src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/CustomizedCar/orderwancheng.png" ></image> src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/CustomizedCar/orderdfk.png"
<span>{{OrderInfo.OrderStatusName}}</span> ></image>
</view> <image
<view class="box-top2"> v-if="OrderInfo.OrderStatus == 4 || OrderInfo.OrderStatus == 5"
<view style="display: flex;align-items: center;justify-content: space-between;"> src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/CustomizedCar/orderquxiao.png"
<span class='box-top2-text'>{{OrderInfo.OrderTypeName}}</span> ></image>
<view style="display: flex;align-items: center;"> <image
<span class='box-top2-text' style='font-size: 12px;font-weight: normal;'>{{OrderInfo.OrderNo}}</span> v-if="OrderInfo.OrderStatus == 3"
<view style='margin-left: 5px;'> src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/CustomizedCar/orderwancheng.png"
<u-button size="mini" shape="circle" @click="paste(OrderInfo.OrderNo)">复制</u-button> ></image>
</view> <span>{{ OrderInfo.OrderStatusName }}</span>
</view>
</view> <view class="box-top2">
<view
</view> style="
display: flex;
<view class="order_xu"></view> align-items: center;
</view> justify-content: space-between;
<!-- 酒店 --> "
<view class="box-center" v-if="OrderInfo.OrderType == 1"> >
<view v-for="(x,y) in OrderInfo.HotelList" :key ='y'> <span class="box-top2-text">{{ OrderInfo.OrderTypeName }}</span>
<view class="hotelbox"> <view style="display: flex; align-items: center">
<image :src="getIconLink(x.HotelImage)" style="width: 80px;height: 80px;border-radius: 8px;margin-right: 10px;"></image> <span
<view class="hotelbox-r"> class="box-top2-text"
<view class="text-t">{{x.HotelName}}</view> style="font-size: 12px; font-weight: normal"
<view>数量:{{x.RoomNumber}}</view> >{{ OrderInfo.OrderNo }}</span
<view>单价:¥{{x.Unit_Price}}</view> >
</view> <view style="margin-left: 5px">
</view> <u-button
<view class="box-c-car"> size="mini"
<view class="box-c-caritem" > shape="circle"
<view class="box-c-caritem-l">入店时间</view> @click="paste(OrderInfo.OrderNo)"
<view class="box-c-caritem-r">{{x.StartDate}}</view> >复制</u-button
</view> >
<view class="box-c-caritem" > </view>
<view class="box-c-caritem-l">离店时间</view> </view>
<view class="box-c-caritem-r">{{x.EndDate}}</view> </view>
</view>
<view class="box-c-caritem" > <view class="order_xu"></view>
<view class="box-c-caritem-l">到店时间</view> </view>
<view class="box-c-caritem-r">{{x.ArrivalTime}}</view> <!-- 酒店 -->
</view> <view class="box-center" v-if="OrderInfo.OrderType == 1">
</view> <view v-for="(x, y) in OrderInfo.HotelList" :key="y">
</view> <view class="hotelbox">
</view> <image
<!-- 餐厅 --> :src="getIconLink(x.HotelImage)"
<view class="box-center" v-if="OrderInfo.OrderType == 2"> style="
<view v-for="(x,y) in OrderInfo.DiningList" :key ='y'> width: 80px;
<view class="hotelbox"> height: 80px;
<image :src="getIconLink(x.DiningImg)" style="width: 80px;height: 80px;border-radius: 8px;margin-right: 10px;"></image> border-radius: 8px;
<view class="hotelbox-r"> margin-right: 10px;
<view class="text-t">{{x.MealName}}</view> "
<view>数量:{{x.PeopleNumber}}</view> ></image>
<view>单价:¥{{x.Unit_Price}}</view> <view class="hotelbox-r">
<view>就餐时间:{{x.Date}}</view> <view class="text-t">{{ x.HotelName }}</view>
</view> <view>数量:{{ x.RoomNumber }}</view>
</view> <view>单价:¥{{ x.Unit_Price }}</view>
</view> </view>
</view> </view>
<!-- 门票 --> <view class="box-c-car">
<view class="box-center" v-if="OrderInfo.OrderType == 3"> <view class="box-c-caritem">
<view v-for="(x,y) in OrderInfo.TicketList" :key ='y'> <view class="box-c-caritem-l">入店时间</view>
<view class="hotelbox"> <view class="box-c-caritem-r">{{ x.StartDate }}</view>
<image :src="getIconLink(x.TicketImg)" style="width: 80px;height: 80px;border-radius: 8px;margin-right: 10px;"></image> </view>
<view class="hotelbox-r"> <view class="box-c-caritem">
<view class="text-t">{{x.TicketName}}</view> <view class="box-c-caritem-l">离店时间</view>
<view>数量:{{x.PeopleNumber}}</view> <view class="box-c-caritem-r">{{ x.EndDate }}</view>
<view>单价:¥{{x.Unit_Price}}</view> </view>
<view>入园时间:{{x.Date}}</view> <view class="box-c-caritem">
</view> <view class="box-c-caritem-l">到店时间</view>
</view> <view class="box-c-caritem-r">{{ x.ArrivalTime }}</view>
<view v-if="x.GuestList.length>0" class="box-c-caritem-r" style="text-align: left;font-weight: bold;">携带以下全部证件 直接进园</view> </view>
<view class="box-c-car" v-if="x.GuestList.length>0"> </view>
<view class="box-c-caritem" v-for="(n,m) in x.GuestList" :key='m' :style="{'justify-content': 'space-between','border-bottom':x.GuestList.length-1 !=m? '1px solid #E2E2E2':''}"> </view>
<view class="box-c-caritem-r2" >{{n.Name}}</view> </view>
<view class="box-c-caritem-r2" >{{n.IdCard.substring(0,5)}}***{{n.IdCard.substring(n.IdCard.length-4,n.IdCard.length)}}</view> <!-- 餐厅 -->
<view class="box-c-caritem-r2" >{{n.Mobile}}</view> <view class="box-center" v-if="OrderInfo.OrderType == 2">
</view> <view v-for="(x, y) in OrderInfo.DiningList" :key="y">
</view> <view class="hotelbox">
</view> <image
</view> :src="getIconLink(x.DiningImg)"
<!-- 专车 --> style="
<view class="box-center" v-if="OrderInfo.OrderType == 4"> width: 80px;
<view v-for="(x,y) in OrderInfo.CarList" :key ='y'> height: 80px;
<view class="box-top-car"> border-radius: 8px;
<div class='onetext'>{{x.StartCityName}}</div> margin-right: 10px;
<view class="box-top-c"> "
<!-- <image src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Test/Upload/Goods/1622098352000_930.png" mode="widthFix" style="width: 30px;height: auto;"></image> --> ></image>
<image v-if="OrderInfo.IsGoBack == 2" src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/CustomizedCar/zhuanghuan.png" mode="aspectFill" style="width: 18px;height: 18px;"></image> <view class="hotelbox-r">
<image v-if="OrderInfo.IsGoBack == 1 && y==0" src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/CustomizedCar/gocar.png" mode="aspectFill" style="width: 18px;height: 18px;"></image> <view class="text-t">{{ x.MealName }}</view>
<image v-if="OrderInfo.IsGoBack == 1 && y==1" src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/CustomizedCar/returncar.png" mode="aspectFill" style="width: 18px;height: 18px;"></image> <view>数量:{{ x.PeopleNumber }}</view>
</view> <view>单价:¥{{ x.Unit_Price }}</view>
<div class='onetext'>{{x.ArriveCityName}}</div> <view>就餐时间:{{ x.Date }}</view>
</view> </view>
<view class="box-c-car"> </view>
<view class="box-c-caritem"> </view>
<view class="box-c-caritem-l">上车地点</view> </view>
<view class="box-c-caritem-r" @click="goopenlocation(x.DepartLonlat)" style="display: flex;align-items: flex-start;justify-content: flex-end;"> <!-- 门票 -->
<u-icon name="location-o" size="34"></u-icon> <view class="box-center" v-if="OrderInfo.OrderType == 3">
{{x.DepartAddress}} <view v-for="(x, y) in OrderInfo.TicketList" :key="y">
</view> <view class="hotelbox">
</view> <image
<view class="box-c-caritem"> :src="getIconLink(x.TicketImg)"
<view class="box-c-caritem-l">下车地点</view> style="
<view class="box-c-caritem-r" @click="goopenlocation(x.ArriveLonlat)" style="display: flex;align-items: flex-start;justify-content: flex-end;"> width: 80px;
<u-icon name="location-o" size="34"></u-icon> height: 80px;
{{x.ArriveAddress}} border-radius: 8px;
</view> margin-right: 10px;
"
</view> ></image>
<view class="xian"></view> <view class="hotelbox-r">
<view class="box-c-caritem"> <view class="text-t">{{ x.TicketName }}</view>
<view class="box-c-caritem-l">出行时间</view> <view>数量:{{ x.PeopleNumber }}</view>
<view class="box-c-caritem-r">{{x.Date}} {{x.DepartureTime}}</view> <view>单价:¥{{ x.Unit_Price }}</view>
</view> <view>入园时间:{{ x.Date }}</view>
<view class="box-c-caritem" > </view>
<view class="box-c-caritem-l">单价</view> </view>
<view class="box-c-caritem-r">{{x.Unit_Price}}</view> <view
</view> v-if="x.GuestList.length > 0"
</view> class="box-c-caritem-r"
</view> style="text-align: left; font-weight: bold"
>携带以下全部证件 直接进园</view
</view> >
<view class="box-center" v-if="OrderInfo.OrderType == 4"> <view class="box-c-car" v-if="x.GuestList.length > 0">
<view class="box-c-car"> <view
<view class="box-c-caritem" v-if="OrderInfo.CarList[0].PeopleNumber>0"> class="box-c-caritem"
<view class="box-c-caritem-l">成人</view> v-for="(n, m) in x.GuestList"
<view class="box-c-caritem-r">{{OrderInfo.CarList[0].PeopleNumber}}</view> :key="m"
</view> :style="{
<view class="box-c-caritem" v-if="OrderInfo.CarList[0].ChildNumber>0"> 'justify-content': 'space-between',
<view class="box-c-caritem-l">儿童</view> 'border-bottom':
<view class="box-c-caritem-r">{{OrderInfo.CarList[0].ChildNumber}}</view> x.GuestList.length - 1 != m ? '1px solid #E2E2E2' : '',
</view> }"
</view> >
<view class="box-c-caritem-r2">{{ n.Name }}</view>
</view> <view class="box-c-caritem-r2"
>{{ n.IdCard.substring(0, 5) }}***{{
<view class="box-center"> n.IdCard.substring(n.IdCard.length - 4, n.IdCard.length)
<view class="box-c-car"> }}</view
<view class="box-c-caritem" > >
<view class="box-c-caritem-l">联系人</view> <view class="box-c-caritem-r2">{{ n.Mobile }}</view>
<view class="box-c-caritem-r">{{OrderInfo.Consignee}}</view> </view>
</view> </view>
<view class="box-c-caritem" > </view>
<view class="box-c-caritem-l">联系电话</view> </view>
<view class="box-c-caritem-r">{{OrderInfo.Mobile}}</view> <!-- 专车 -->
</view> <view class="box-center" v-if="OrderInfo.OrderType == 4">
<view class="box-c-caritem" v-if="OrderInfo.BuyerMessage && OrderInfo.BuyerMessage!=''"> <view v-for="(x, y) in OrderInfo.CarList" :key="y">
<view class="box-c-caritem-l">留言</view> <view class="box-top-car">
<view class="box-c-caritem-r">{{OrderInfo.BuyerMessage}}</view> <div class="onetext">{{ x.StartCityName }}</div>
</view> <view class="box-top-c">
<view class="box-c-caritem" > <!-- <image src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Test/Upload/Goods/1622098352000_930.png" mode="widthFix" style="width: 30px;height: auto;"></image> -->
<view class="box-c-caritem-l">创建时间</view> <image
<view class="box-c-caritem-r">{{OrderInfo.CreateDate}}</view> v-if="OrderInfo.IsGoBack == 2"
</view> src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/CustomizedCar/zhuanghuan.png"
<view class="box-c-caritem" > mode="aspectFill"
<view class="box-c-caritem-l">付款方式</view> style="width: 18px; height: 18px"
<view class="box-c-caritem-r">{{OrderInfo.PaymentWayName}}</view> ></image>
</view> <image
<!-- <view class="box-c-caritem" > v-if="OrderInfo.IsGoBack == 1 && y == 0"
src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/CustomizedCar/gocar.png"
mode="aspectFill"
style="width: 18px; height: 18px"
></image>
<image
v-if="OrderInfo.IsGoBack == 1 && y == 1"
src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/CustomizedCar/returncar.png"
mode="aspectFill"
style="width: 18px; height: 18px"
></image>
</view>
<div class="onetext">{{ x.ArriveCityName }}</div>
</view>
<view class="box-c-car">
<view class="box-c-caritem">
<view class="box-c-caritem-l">上车地点</view>
<view
class="box-c-caritem-r"
@click="goopenlocation(x.DepartLonlat, x.DepartAddress)"
style="
display: flex;
align-items: flex-start;
justify-content: flex-end;
"
>
<u-icon name="location-o" size="34"></u-icon>
{{ x.DepartAddress }}
</view>
</view>
<view class="box-c-caritem">
<view class="box-c-caritem-l">下车地点</view>
<view
class="box-c-caritem-r"
@click="goopenlocation(x.ArriveLonlat, x.ArriveAddress)"
style="
display: flex;
align-items: flex-start;
justify-content: flex-end;
"
>
<u-icon name="location-o" size="34"></u-icon>
{{ x.ArriveAddress }}
</view>
</view>
<view class="xian"></view>
<view class="box-c-caritem">
<view class="box-c-caritem-l">出行时间</view>
<view class="box-c-caritem-r"
>{{ x.Date }} {{ x.DepartureTime }}</view
>
</view>
<view class="box-c-caritem">
<view class="box-c-caritem-l">单价</view>
<view class="box-c-caritem-r">{{ x.Unit_Price }}</view>
</view>
</view>
</view>
</view>
<view class="box-center" v-if="OrderInfo.OrderType == 4">
<view class="box-c-car">
<view
class="box-c-caritem"
v-if="OrderInfo.CarList[0].PeopleNumber > 0"
>
<view class="box-c-caritem-l">成人</view>
<view class="box-c-caritem-r"
>{{ OrderInfo.CarList[0].PeopleNumber }}</view
>
</view>
<view class="box-c-caritem" v-if="OrderInfo.CarList[0].ChildNumber > 0">
<view class="box-c-caritem-l">儿童</view>
<view class="box-c-caritem-r"
>{{ OrderInfo.CarList[0].ChildNumber }}</view
>
</view>
</view>
</view>
<view class="box-center">
<view class="box-c-car">
<view class="box-c-caritem">
<view class="box-c-caritem-l">联系人</view>
<view class="box-c-caritem-r">{{ OrderInfo.Consignee }}</view>
</view>
<view class="box-c-caritem">
<view class="box-c-caritem-l">联系电话</view>
<view class="box-c-caritem-r">{{ OrderInfo.Mobile }}</view>
</view>
<view
class="box-c-caritem"
v-if="OrderInfo.BuyerMessage && OrderInfo.BuyerMessage != ''"
>
<view class="box-c-caritem-l">留言</view>
<view class="box-c-caritem-r">{{ OrderInfo.BuyerMessage }}</view>
</view>
<view class="box-c-caritem">
<view class="box-c-caritem-l">创建时间</view>
<view class="box-c-caritem-r">{{ OrderInfo.CreateDate }}</view>
</view>
<view class="box-c-caritem">
<view class="box-c-caritem-l">付款方式</view>
<view class="box-c-caritem-r">{{ OrderInfo.PaymentWayName }}</view>
</view>
<!-- <view class="box-c-caritem" >
<view class="box-c-caritem-l">应收</view> <view class="box-c-caritem-l">应收</view>
<view class="box-c-caritem-r">{{OrderInfo.PreferPrice}}</view> <view class="box-c-caritem-r">{{OrderInfo.PreferPrice}}</view>
</view> --> </view> -->
<view class="box-c-caritem" > <view class="box-c-caritem">
<view class="box-c-caritem-l">金额</view> <view class="box-c-caritem-l">金额</view>
<view class="box-c-caritem-r"><span style='color:#F20707'>{{OrderInfo.Income}}</span></view> <view class="box-c-caritem-r"
</view> ><span style="color: #f20707"
</view> >{{ OrderInfo.Income }}</span
</view> ></view
<view style='width: 100%;height: 80px;'></view> >
<view class="btn-box" > </view>
<view class="kefu" style="position: relative;" > </view>
</view>
<u-icon name="service-o" color="#111" size="24rpx"></u-icon> <view style="width: 100%; height: 80px"></view>
<span style='margin-left: 3px;'>客服</span> <view class="btn-box">
<view class="kefu" style="position: relative">
<button open-type="contact" class="contButton" ></button> <u-icon name="service-o" color="#111" size="24rpx"></u-icon>
</view> <span style="margin-left: 3px">客服</span>
<view class="item" v-if="OrderInfo.OrderStatus==1 ">
<u-button shape="circle" size="medium" @click.stop="queren(OrderInfo)" :custom-style="customStyle2" >待付款</u-button> <button open-type="contact" class="contButton"></button>
</view> </view>
<view class="item" v-if="OrderInfo.OrderStatus==3|| OrderInfo.OrderStatus==4||OrderInfo.OrderStatus==5"> <view class="item" v-if="OrderInfo.OrderStatus == 1">
<u-button shape="circle" size="medium" @click.stop="onemoreorder(OrderInfo)" :custom-style="customStyle2" >再来一单</u-button> <u-button
</view> shape="circle"
<view @click.stop="getCancel(OrderInfo)" class="item" v-if="OrderInfo.IsApplyForCancel!=1 && (OrderInfo.OrderStatus==1||OrderInfo.OrderStatus==2 ||OrderInfo.OrderStatus==3)&& getquxiao(OrderInfo)"> size="medium"
<u-button shape="circle" size="medium" :custom-style="customStyle" >取消订单</u-button> @click.stop="queren(OrderInfo)"
</view> :custom-style="customStyle2"
>待付款</u-button
<view class="item" style="line-height: 34px;font-size: 16px;color: gray;font-weight: 600;" v-if="OrderInfo.OrderStatus == 4"> >
已取消 </view>
</view> <view
<view class="item" style="line-height: 34px;font-size: 16px;color: gray;font-weight: 600;" v-if="OrderInfo.OrderStatus == 5"> class="item"
待处理 v-if="
</view> OrderInfo.OrderStatus == 3 ||
OrderInfo.OrderStatus == 4 ||
OrderInfo.OrderStatus == 5
</view> "
<u-popup v-model="showModal" mode="center" length="80%"> >
<view style='display: flex;flex-direction: column;align-items: center;background: #fff;'> <u-button
<view style="display: flex;align-items: center;justify-content: center;height:70px ;"> shape="circle"
<Text>是否取消订单?</Text> size="medium"
</view> @click.stop="onemoreorder(OrderInfo)"
<view style="display: flex;flex-direction: column;height:80px ;margin-left: 15px;width: 100%;" v-if='OrderInfo.OrderStatus!=1'> :custom-style="customStyle2"
<Text style='margin-left: 10px;margin-top: 5px;'>备注</Text> >再来一单</u-button
<input class="uni-input inputM" style='margin-left: 10px;margin-top: 5px;' v-model="Cancelmsg.Remark" placeholder="输入备注" /> >
</view> </view>
<view style="display: flex;flex-direction: row;align-items: center;height: 50px;border-top: 1px solid #F5F5F5;width: 100%;"> <view
<view style="width: 50%;display: flex;align-items: center;justify-content: center" @click="showModal=false"> @click.stop="getCancel(OrderInfo)"
<Text>取消</Text> class="item"
</view> v-if="
<view style="width: 50%;color: #2979ff;display: flex;align-items: center;justify-content: center" @click="confirm"> OrderInfo.IsApplyForCancel != 1 &&
<Text>确定</Text> (OrderInfo.OrderStatus == 1 ||
</view> OrderInfo.OrderStatus == 2 ||
</view> OrderInfo.OrderStatus == 3) &&
</view> getquxiao(OrderInfo)
</u-popup> "
</view> >
<u-button shape="circle" size="medium" :custom-style="customStyle"
>取消订单</u-button
>
</view>
<view
class="item"
style="
line-height: 34px;
font-size: 16px;
color: gray;
font-weight: 600;
"
v-if="OrderInfo.OrderStatus == 4"
>
已取消
</view>
<view
class="item"
style="
line-height: 34px;
font-size: 16px;
color: gray;
font-weight: 600;
"
v-if="OrderInfo.OrderStatus == 5"
>
待处理
</view>
</view>
<u-popup v-model="showModal" mode="center" length="80%">
<view
style="
display: flex;
flex-direction: column;
align-items: center;
background: #fff;
"
>
<view
style="
display: flex;
align-items: center;
justify-content: center;
height: 70px;
"
>
<Text>是否取消订单?</Text>
</view>
<view
style="
display: flex;
flex-direction: column;
height: 80px;
margin-left: 15px;
width: 100%;
"
v-if="OrderInfo.OrderStatus != 1"
>
<Text style="margin-left: 10px; margin-top: 5px">备注</Text>
<input
class="uni-input inputM"
style="margin-left: 10px; margin-top: 5px"
v-model="Cancelmsg.Remark"
placeholder="输入备注"
/>
</view>
<view
style="
display: flex;
flex-direction: row;
align-items: center;
height: 50px;
border-top: 1px solid #f5f5f5;
width: 100%;
"
>
<view
style="
width: 50%;
display: flex;
align-items: center;
justify-content: center;
"
@click="showModal = false"
>
<Text>取消</Text>
</view>
<view
style="
width: 50%;
color: #2979ff;
display: flex;
align-items: center;
justify-content: center;
"
@click="confirm"
>
<Text>确定</Text>
</view>
</view>
</view>
</u-popup>
</view>
</template> </template>
<script> <script>
export default{ export default {
data(){ data() {
return{ return {
pageTitle: "我的订单", pageTitle: "我的订单",
mainColor: '', mainColor: "",
OrderId:0, OrderId: 0,
OrderInfo:{},//详情数据 OrderInfo: {}, //详情数据
customStyle: { customStyle: {
marginLeft: "20px", marginLeft: "20px",
padding: "0 30rpx", padding: "0 30rpx",
}, },
customStyle2:{ customStyle2: {
marginLeft: "20px", marginLeft: "20px",
padding: "0 30rpx", padding: "0 30rpx",
background: '#111111', background: "#111111",
color:'#FFF' color: "#FFF",
}, },
Cancelmsg:{ Cancelmsg: {
OrderId:0, OrderId: 0,
Type:0, Type: 0,
Remark:'', Remark: "",
}, },
showModal:false, showModal: false,
} };
}, },
onLoad(options) { onLoad(options) {
if(options && options.OrderId){ if (options && options.OrderId) {
this.OrderId = options.OrderId; this.OrderId = options.OrderId;
this.getMyOrderInfo() this.getMyOrderInfo();
} }
uni.setNavigationBarTitle({ uni.setNavigationBarTitle({
title: this.pageTitle, title: this.pageTitle,
}); });
this.mainColor = this.$uiConfig.mainColor; this.mainColor = this.$uiConfig.mainColor;
}, },
methods:{ methods: {
getMyOrderInfo(){ getMyOrderInfo() {
this.request2({ this.request2(
url: '/api/AppletOrder/GetMyDmcOrderInfo', {
data: {OrderId:this.OrderId} url: "/api/AppletOrder/GetMyDmcOrderInfo",
}, data: { OrderId: this.OrderId },
res => { },
if (res.resultCode == 1) { (res) => {
this.OrderInfo = res.data if (res.resultCode == 1) {
this.OrderInfo = res.data;
} }
}, },
err => { (err) => {}
} );
); },
}, goopenlocation(x, addr) {
goopenlocation(x){ console.log(y);
uni.openLocation({ uni.openLocation({
latitude: Number(x.split(',')[1]) , latitude: Number(x.split(",")[1]),
longitude: Number(x.split(',')[0]), longitude: Number(x.split(",")[0]),
success: function () { name: addr,
console.log('success'); address: addr,
}, success: function () {
fail:function(err){ console.log("success");
console.log(err) },
} fail: function (err) {
}); console.log(err);
}, },
getIconLink(url){//https的处理 });
let str= '' },
if (url && url != '') { getIconLink(url) {
if (url.indexOf('https') != -1) { //https的处理
str = url let str = "";
} else { if (url && url != "") {
str = url.replace(/^http:\/\//i,'https://'); if (url.indexOf("https") != -1) {
} str = url;
return str; } else {
} str = url.replace(/^http:\/\//i, "https://");
}, }
getquxiao(item){//判断是否显示取消 return str;
let show = true }
if(item.OrderType==1){//酒店 },
show = this.getquxiaoshow(item.HotelList) getquxiao(item) {
}else if(item.OrderType==2){//餐食 //判断是否显示取消
show = this.getquxiaoshow(item.DiningList) let show = true;
if (item.OrderType == 1) {
}else if(item.OrderType==3){//景点 //酒店
show = this.getquxiaoshow(item.TicketList) show = this.getquxiaoshow(item.HotelList);
}else if(item.OrderType==4){//专车 } else if (item.OrderType == 2) {
show = this.getquxiaoshow(item.CarList) //餐食
} show = this.getquxiaoshow(item.DiningList);
return show } else if (item.OrderType == 3) {
}, //景点
getquxiaoshow(list){ show = this.getquxiaoshow(item.TicketList);
let show = true; } else if (item.OrderType == 4) {
list.map(x=>{ //专车
if(new Date() >= new Date(x.Date)){ show = this.getquxiaoshow(item.CarList);
show = false; }
return return show;
} },
}) getquxiaoshow(list) {
return show let show = true;
}, list.map((x) => {
getCancel(e){//取消订单 if (new Date() >= new Date(x.Date)) {
this.showModal = true; show = false;
this.Cancelmsg.Remark = '', return;
}
this.Cancelmsg.OrderId = e.OrderId; });
this.Cancelmsg.Type = e.OrderStatus; return show;
}, },
getCancel(e,index){//取消订单 getCancel(e) {
this.showModal = true; //取消订单
this.Cancelmsg.Remark = '', this.showModal = true;
this.index = index; (this.Cancelmsg.Remark = ""), (this.Cancelmsg.OrderId = e.OrderId);
this.item = e; this.Cancelmsg.Type = e.OrderStatus;
this.Cancelmsg.OrderId = e.OrderId; },
this.Cancelmsg.Type = e.OrderStatus; getCancel(e, index) {
}, //取消订单
this.showModal = true;
queren(data){ (this.Cancelmsg.Remark = ""), (this.index = index);
let url='/api/WeChatPay/GetDmcPayInfo' this.item = e;
let GoodsName = '' this.Cancelmsg.OrderId = e.OrderId;
if(data.OrderType==1){ this.Cancelmsg.Type = e.OrderStatus;
GoodsName = data.HotelList[0].HotelName },
}else if(data.OrderType==2){
GoodsName = data.DiningList[0].MealName queren(data) {
}else if(data.OrderType==3){ let url = "/api/WeChatPay/GetDmcPayInfo";
GoodsName = data.TicketList[0].TicketName let GoodsName = "";
}else if(data.OrderType==4){ if (data.OrderType == 1) {
GoodsName = data.CarList[0].DepartAddress+'-'+data.CarList[0].ArriveCityName GoodsName = data.HotelList[0].HotelName;
} } else if (data.OrderType == 2) {
GoodsName = GoodsName.slice(0, 10) GoodsName = data.DiningList[0].MealName;
this.request2({ } else if (data.OrderType == 3) {
url: url, GoodsName = data.TicketList[0].TicketName;
data: { } else if (data.OrderType == 4) {
OrderId:data.OrderId, GoodsName =
GoodsName:GoodsName, data.CarList[0].DepartAddress + "-" + data.CarList[0].ArriveCityName;
OrderPayType:1, }
OpenId:uni.getStorageSync('mall_UserInfo').OpenId, GoodsName = GoodsName.slice(0, 10);
} this.request2(
}, {
res => { url: url,
let orderInfo = JSON.parse(res.data); data: {
console.log(orderInfo) OrderId: data.OrderId,
this.Pay(orderInfo) GoodsName: GoodsName,
} OrderPayType: 1,
); OpenId: uni.getStorageSync("mall_UserInfo").OpenId,
}, },
Pay(orderInfo){ },
let that=this; (res) => {
uni.requestPayment({ let orderInfo = JSON.parse(res.data);
provider: 'wxpay', console.log(orderInfo);
timeStamp: orderInfo.timeStamp, this.Pay(orderInfo);
nonceStr: orderInfo.nonceStr, }
package: orderInfo.package, );
signType: orderInfo.signType, },
paySign: orderInfo.sign, Pay(orderInfo) {
success: function(res) { let that = this;
console.log('success', res); uni.requestPayment({
uni.showToast({ provider: "wxpay",
title: "支付成功" timeStamp: orderInfo.timeStamp,
}) nonceStr: orderInfo.nonceStr,
// that.getMyOrderInfo() package: orderInfo.package,
uni.redirectTo({ signType: orderInfo.signType,
url: '/pages/jiuzhai/paysuccess?PreferPrice='+that.OrderInfo.PreferPrice paySign: orderInfo.sign,
}); success: function (res) {
}, console.log("success", res);
fail: function(err) { uni.showToast({
console.log('fail:', err); title: "支付成功",
uni.showToast({ });
title: "支付失败", // that.getMyOrderInfo()
icon:'none' uni.redirectTo({
}) url:
} "/pages/jiuzhai/paysuccess?PreferPrice=" +
}); that.OrderInfo.PreferPrice,
}, });
confirm(){//确认取消 },
let that = this fail: function (err) {
if (that.Cancelmsg.Type != 1 && that.Cancelmsg.Remark == '') { console.log("fail:", err);
uni.showToast({ uni.showToast({
title: '备注不能为空', title: "支付失败",
icon: 'none' icon: "none",
}) });
return },
} });
uni.requestSubscribeMessage({ },
tmplIds: [], confirm() {
complete(res) { //确认取消
that.request2({ let that = this;
url: '/api/AppletOrder/CancelAppletMyOrder', if (that.Cancelmsg.Type != 1 && that.Cancelmsg.Remark == "") {
data: that.Cancelmsg uni.showToast({
}, title: "备注不能为空",
(res) => { icon: "none",
that.showModal = false; });
that.getMyOrderInfo() return;
} }
); uni.requestSubscribeMessage({
} tmplIds: [],
}) complete(res) {
}, that.request2(
onemoreorder(data){//再来一单的处理 {
url: "/api/AppletOrder/CancelAppletMyOrder",
if(data.OrderType==1){//酒店 data: that.Cancelmsg,
uni.navigateTo({ },
url: '/pages/hotel/list?Name='+data.HotelList[0].HotelName, (res) => {
}) that.showModal = false;
}else if(data.OrderType==2){//餐厅 that.getMyOrderInfo();
uni.navigateTo({ }
url: '/pages/restaurant/list?Name='+data.DiningList[0].DiningName, );
}) },
}else if(data.OrderType==3){//门票 });
uni.navigateTo({ },
url: '/pages/ticketCoupons/list?Name='+data.TicketList[0].TitekCounponName, onemoreorder(data) {
}) //再来一单的处理
}else if(data.OrderType==4){//车
let obj = { if (data.OrderType == 1) {
StartCityId:data.CarList[0].StartCityId, //酒店
StartCityType:data.CarList[0].StartCityType, uni.navigateTo({
ArriveCityId:data.CarList[0].ArriveCityId, url: "/pages/hotel/list?Name=" + data.HotelList[0].HotelName,
ArriveCityType:data.CarList[0].ArriveCityType, });
StartCityName:data.CarList[0].StartCityName, } else if (data.OrderType == 2) {
ArriveCityName:data.CarList[0].ArriveCityName, //餐厅
} uni.navigateTo({
console.log(obj) url: "/pages/restaurant/list?Name=" + data.DiningList[0].DiningName,
uni.navigateTo({ });
url: '/pages/guidecar/index?obj='+encodeURIComponent(JSON.stringify(obj)), } else if (data.OrderType == 3) {
}) //门票
} uni.navigateTo({
}, url:
paste(value) { "/pages/ticketCoupons/list?Name=" +
uni.setClipboardData({ data.TicketList[0].TitekCounponName,
data: value, });
}); } else if (data.OrderType == 4) {
}, //车
} let obj = {
} StartCityId: data.CarList[0].StartCityId,
StartCityType: data.CarList[0].StartCityType,
ArriveCityId: data.CarList[0].ArriveCityId,
ArriveCityType: data.CarList[0].ArriveCityType,
StartCityName: data.CarList[0].StartCityName,
ArriveCityName: data.CarList[0].ArriveCityName,
};
console.log(obj);
uni.navigateTo({
url:
"/pages/guidecar/index?obj=" +
encodeURIComponent(JSON.stringify(obj)),
});
}
},
paste(value) {
uni.setClipboardData({
data: value,
});
},
},
};
</script> </script>
...@@ -60,7 +60,9 @@ ...@@ -60,7 +60,9 @@
</view> </view>
<view class="top-title" :style="[titleStyle]"> <view class="top-title" :style="[titleStyle]">
<view @click="goback"> <view @click="goback">
<!-- #ifdef MP-WEIXIN -->
<u-icon name="arrow-left" size="44"></u-icon> <u-icon name="arrow-left" size="44"></u-icon>
<!-- #endif -->
</view> </view>
<view <view
style=" style="
...@@ -71,6 +73,7 @@ ...@@ -71,6 +73,7 @@
text-overflow: ellipsis; text-overflow: ellipsis;
white-space: nowrap; white-space: nowrap;
" "
class="name-ali"
>{{ dataList.title }}</view >{{ dataList.title }}</view
> >
</view> </view>
...@@ -1780,4 +1783,10 @@ export default { ...@@ -1780,4 +1783,10 @@ export default {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
} }
.name-ali {
/* #ifdef MP-ALIPAY */
box-sizing: border-box;
padding-left: 30rpx;
/* #endif */
}
</style> </style>
...@@ -34,7 +34,9 @@ ...@@ -34,7 +34,9 @@
</view> </view>
<view class="restaurant-title" :style="[titleStyle]"> <view class="restaurant-title" :style="[titleStyle]">
<view @click="goback"> <view @click="goback">
<!-- #ifdef MP-WEIXIN -->
<u-icon name="arrow-left" size="44"></u-icon> <u-icon name="arrow-left" size="44"></u-icon>
<!-- #endif -->
</view> </view>
<view <view
style=" style="
...@@ -45,6 +47,7 @@ ...@@ -45,6 +47,7 @@
overflow: hidden; overflow: hidden;
text-overflow: ellipsis; text-overflow: ellipsis;
" "
class="name-ali"
>{{ details.Name }}</view >{{ details.Name }}</view
> >
</view> </view>
...@@ -448,7 +451,7 @@ export default { ...@@ -448,7 +451,7 @@ export default {
that.titleStyle = { that.titleStyle = {
height: "45px", height: "45px",
paddingTop: `${res.statusBarHeight}px`, paddingTop: `${res.statusBarHeight}px`,
opacity: "0%", opacity: "0",
}; };
}, },
}); });
...@@ -471,12 +474,12 @@ export default { ...@@ -471,12 +474,12 @@ export default {
goMap(name, lon, lat) { goMap(name, lon, lat) {
let newLon = parseFloat(lon); let newLon = parseFloat(lon);
let newLat = parseFloat(lat); let newLat = parseFloat(lat);
wx.openLocation({ uni.openLocation({
latitude: newLat, latitude: newLat,
longitude: newLon, longitude: newLon,
scale: 18, scale: 18,
name, name,
// address:"武侯区科华中路 2 号", address: name,
success: (res) => { success: (res) => {
// console.log(res) // console.log(res)
}, },
...@@ -516,9 +519,11 @@ export default { ...@@ -516,9 +519,11 @@ export default {
scroll(e) { scroll(e) {
this.boxOption = Math.floor((e.detail.scrollTop - 50) / 1.5); this.boxOption = Math.floor((e.detail.scrollTop - 50) / 1.5);
this.titleStyle.opacity = this.titleStyle.opacity =
(e.detail.scrollTop - 100 < 0 e.detail.scrollTop - 100 < 0
? 0 ? 0
: Math.floor(e.detail.scrollTop - 100)) + "%"; : Math.floor(e.detail.scrollTop - 100) / 100 > 1
? 1
: Math.floor(e.detail.scrollTop - 100) / 100;
this.$forceUpdate(); this.$forceUpdate();
}, },
...@@ -1144,4 +1149,10 @@ export default { ...@@ -1144,4 +1149,10 @@ export default {
.restaurant-detail .media .media-info .mi-left { .restaurant-detail .media .media-info .mi-left {
flex: 1; flex: 1;
} }
.name-ali {
// #ifdef MP-ALIPAY
box-sizing: border-box;
padding-left: 30rpx;
// #endif
}
</style> </style>
<template> <template>
<view> <view>
<view class="hotel-list-item" v-for="(item,index) in scenicArr" :key="index" @click="goHotelDetail(item.ID)"> <view
<view class="img-box"> class="hotel-list-item"
<image :src="item.CoverImg" mode="aspectFill"></image> v-for="(item, index) in scenicArr"
</view> :key="index"
<view class="hotel-info"> @click="goHotelDetail(item.ID)"
<view class="hotel-name">{{item.Name}}</view> >
<view class="hotel-start"> <view class="img-box">
<!-- TODO:判定是否为星级酒店,如果是显示星级,不是,显示另外一种方式 --> <image :src="item.CoverImg" mode="aspectFill"></image>
<view class="rate" v-if="item.ScoreNum>=1&&item.ScoreNum<=5"> </view>
<u-rate active-color="#FEB969" inactive-color="#FFF" :current="item.ScoreNum" active-icon="star" inactive-icon="star" disabled></u-rate> <view class="hotel-info">
<text style="margin-left: 20rpx;vertical-align: top;">{{item.ScoreNum}} <view class="hotel-name">{{ item.Name }}</view>
<text v-if="item.ScoreNum===1||item.ScoreNum===2||item.ScoreNum===3||item.ScoreNum===4||item.ScoreNum===5">.0</text> <view class="hotel-start">
</text> <!-- TODO:判定是否为星级酒店,如果是显示星级,不是,显示另外一种方式 -->
</view> <view class="rate" v-if="item.ScoreNum >= 1 && item.ScoreNum <= 5">
<!-- <view class="other-rate" v-if="item.Star==9"> <u-rate
active-color="#FEB969"
inactive-color="#FFF"
:current="item.ScoreNum"
active-icon="star"
inactive-icon="star"
disabled
></u-rate>
<text style="margin-left: 20rpx"
>{{ item.ScoreNum }}
<text
v-if="
item.ScoreNum === 1 ||
item.ScoreNum === 2 ||
item.ScoreNum === 3 ||
item.ScoreNum === 4 ||
item.ScoreNum === 5
"
>.0</text
>
</text>
</view>
<!-- <view class="other-rate" v-if="item.Star==9">
<text>温泉酒店</text> <text>温泉酒店</text>
<span class="line"></span> <span class="line"></span>
</view> </view>
...@@ -22,145 +44,154 @@ ...@@ -22,145 +44,154 @@
<text>精选民宿</text> <text>精选民宿</text>
<span class="line"></span> <span class="line"></span>
</view> --> </view> -->
</view> </view>
<view class="localtion">{{item.Address}}</view> <view class="localtion">{{ item.Address }}</view>
<view> <view>
<u-tag text="亲子设施" bg-color="#FFF" border-color="#DFBE6E" color="#DFBE6E" size="mini"></u-tag> <u-tag
</view> text="亲子设施"
<view class="price"> bg-color="#FFF"
<text></text> border-color="#DFBE6E"
<text class="money">{{$utils.getretailer()==true? item.B2BPrice:item.SalesPrice}}</text> color="#DFBE6E"
<text></text> size="mini"
</view> ></u-tag>
</view> </view>
</view> <view class="price">
</view> <text></text>
<text class="money">{{
$utils.getretailer() == true ? item.B2BPrice : item.SalesPrice
}}</text>
<text></text>
</view>
</view>
</view>
</view>
</template> </template>
<script> <script>
export default { export default {
props:{ props: {
scenicArr:{ scenicArr: {
type:Array, type: Array,
default:null default: null,
}, },
dayObj:{ dayObj: {
type:Object, type: Object,
default:null default: null,
}, },
searchObj:{ searchObj: {
type:Object, type: Object,
default:null default: null,
} },
}, },
data() { data() {
return { return {};
} },
}, mounted() {},
mounted(){ created() {
}, console.log(this.scenicArr);
created(){ },
console.log(this.scenicArr) methods: {
}, goHotelDetail(id) {
methods:{ // let myDayObj = JSON.stringify(this.dayObj);
goHotelDetail(id){ uni.navigateTo({
// let myDayObj = JSON.stringify(this.dayObj); // url: "/pages/ticketCoupons/detail?id=" + id +'&dayObj=' + myDayObj+'&searchObj='+JSON.stringify(this.searchObj)
uni.navigateTo({ url: "/pages/ticketCoupons/detail?id=" + id,
// url: "/pages/ticketCoupons/detail?id=" + id +'&dayObj=' + myDayObj+'&searchObj='+JSON.stringify(this.searchObj) });
url: "/pages/ticketCoupons/detail?id=" + id },
}); },
} };
}
}
</script> </script>
<style> <style>
.hotel-list-item{ .hotel-list-item {
margin: 30rpx 0; margin: 30rpx 0;
padding-bottom: 30rpx; padding-bottom: 30rpx;
/* border-bottom: 1rpx solid #E2E2E2; */ /* border-bottom: 1rpx solid #E2E2E2; */
display: flex; display: flex;
align-items: center; align-items: center;
} }
.hotel-list-item .img-box{ .hotel-list-item .img-box {
width: 220rpx; width: 220rpx;
height: 280rpx; height: 280rpx;
border-radius: 20rpx; border-radius: 20rpx;
overflow: hidden; overflow: hidden;
margin-right: 30rpx; margin-right: 30rpx;
box-shadow: 0rpx 10rpx 30rpx 0rpx rgba(36, 36, 36, 0.2); box-shadow: 0rpx 10rpx 30rpx 0rpx rgba(36, 36, 36, 0.2);
} }
.hotel-list-item .img-box image{ .hotel-list-item .img-box image {
width: 100%; width: 100%;
height: 100%; height: 100%;
} }
.hotel-list-item .hotel-info{ .hotel-list-item .hotel-info {
width: 1px; width: 1px;
flex: 1; flex: 1;
} }
.hotel-list-item .hotel-info .hotel-name{ .hotel-list-item .hotel-info .hotel-name {
/* width: 80%; */ /* width: 80%; */
font-weight: 500; font-weight: 500;
color: #111111; color: #111111;
line-height: 30rpx; line-height: 30rpx;
font-size: 30rpx; font-size: 30rpx;
white-space: nowrap; white-space: nowrap;
overflow: hidden; overflow: hidden;
text-overflow: ellipsis; text-overflow: ellipsis;
} }
.hotel-list-item .hotel-info .hotel-start{ .hotel-list-item .hotel-info .hotel-start {
/* width: 20%; */ /* width: 20%; */
/* margin:10rpx 0; */ /* margin:10rpx 0; */
} display: flex;
.hotel-list-item .hotel-info .hotel-start .rate{ align-items: center;
font-size: 30rpx; }
font-weight: 500; .hotel-list-item .hotel-info .hotel-start .rate {
color: #999999; font-size: 30rpx;
line-height: 30rpx; font-weight: 500;
margin: 20rpx 0; color: #999999;
} line-height: 30rpx;
.hotel-list-item .hotel-info .hotel-start .other-rate{ margin: 20rpx 0;
display: inline-block; }
position: relative; .hotel-list-item .hotel-info .hotel-start .other-rate {
} display: inline-block;
.hotel-list-item .hotel-info .hotel-start .other-rate text{ position: relative;
position: relative;z-index: 2; }
font-size: 30rpx; .hotel-list-item .hotel-info .hotel-start .other-rate text {
line-height: 30rpx; position: relative;
font-weight: 500; z-index: 2;
color: #111; font-size: 30rpx;
} line-height: 30rpx;
.hotel-list-item .hotel-info .hotel-start .other-rate .line{ font-weight: 500;
background-color: #DFBE6E; color: #111;
height: 6px; }
bottom: 2px; .hotel-list-item .hotel-info .hotel-start .other-rate .line {
left: 0; background-color: #dfbe6e;
right: 0; height: 6px;
position: absolute; bottom: 2px;
z-index: 1; left: 0;
} right: 0;
.hotel-list-item .hotel-info .localtion{ position: absolute;
font-size: 24rpx; z-index: 1;
font-weight: 400; }
color: #999999; .hotel-list-item .hotel-info .localtion {
line-height: 30rpx; font-size: 24rpx;
font-weight: 400;
text-overflow: -o-ellipsis-lastline; color: #999999;
overflow: hidden; line-height: 30rpx;
text-overflow: ellipsis;
display: -webkit-box; text-overflow: -o-ellipsis-lastline;
-webkit-line-clamp: 2; overflow: hidden;
-webkit-box-orient: vertical; text-overflow: ellipsis;
margin-bottom: 10rpx; display: -webkit-box;
} -webkit-line-clamp: 2;
.hotel-list-item .hotel-info .price{ -webkit-box-orient: vertical;
margin-top: 10rpx; margin-bottom: 10rpx;
font-weight: 500; }
color: #000; .hotel-list-item .hotel-info .price {
font-size: 20rpx; margin-top: 10rpx;
text-align: right; font-weight: 500;
} color: #000;
.hotel-list-item .hotel-info .price .money{ font-size: 20rpx;
font-size: 36rpx; text-align: right;
} }
.hotel-list-item .hotel-info .price .money {
font-size: 36rpx;
}
</style> </style>
...@@ -44,12 +44,15 @@ ...@@ -44,12 +44,15 @@
@click="goUrl('/pages/ticketCoupons/imgList')" @click="goUrl('/pages/ticketCoupons/imgList')"
></image> ></image>
</view> </view>
<view class="ticket-title" :style="[titleStyleFix]"> <view class="ticket-title-bar" :style="[titleStyle]">
<view @click="goback"> <view @click="goback">
<!-- #ifdef MP-WEIXIN -->
<u-icon name="arrow-left" size="44"></u-icon> <u-icon name="arrow-left" size="44"></u-icon>
<!-- #endif -->
</view> </view>
<view <view
style="flex: 1;margin-left: 30rpx; text-align: left;'background-color':'#000';white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" style="flex: 1;margin-left: 30rpx; text-align: left;'background-color':'#000';white-space: nowrap;overflow: hidden;text-overflow: ellipsis;"
class="name-ali"
> >
{{ details.Name }} {{ details.Name }}
</view> </view>
...@@ -438,7 +441,6 @@ export default { ...@@ -438,7 +441,6 @@ export default {
Date: "", //日期 Date: "", //日期
details: {}, details: {},
titleStyle: {}, titleStyle: {},
titleStyleFix: {},
active: 0, active: 0,
mainColor: "", mainColor: "",
controls: false, //显示默认控件 controls: false, //显示默认控件
...@@ -551,16 +553,7 @@ export default { ...@@ -551,16 +553,7 @@ export default {
that.titleStyle = { that.titleStyle = {
height: "45px", height: "45px",
paddingTop: `${res.statusBarHeight}px`, paddingTop: `${res.statusBarHeight}px`,
opacity: "0%", opacity: "0",
};
that.titleStyleFix = {
height: "45px",
position: "fixed",
top: "0",
left: "0",
paddingTop: `${res.statusBarHeight}px`,
"background-color": "#f6f6f6",
opacity: "0%",
}; };
}, },
}); });
...@@ -670,15 +663,12 @@ export default { ...@@ -670,15 +663,12 @@ export default {
scroll(e) { scroll(e) {
this.titleStyle.opacity = this.titleStyle.opacity =
(e.detail.scrollTop - 100 < 0 e.detail.scrollTop - 100 < 0
? 0 ? 0
: Math.floor(e.detail.scrollTop - 100)) + "%"; : Math.floor(e.detail.scrollTop - 100) / 100 > 1
? 1
: Math.floor(e.detail.scrollTop - 100) / 100;
this.tooltipShow = false; this.tooltipShow = false;
this.titleStyleFix.opacity =
(e.detail.scrollTop - 100 < 0
? 0
: Math.floor(e.detail.scrollTop - 100)) + "%";
this.$forceUpdate(); this.$forceUpdate();
}, },
goback() { goback() {
...@@ -690,12 +680,12 @@ export default { ...@@ -690,12 +680,12 @@ export default {
goMap(name, lon, lat) { goMap(name, lon, lat) {
let newLat = parseFloat(lat); let newLat = parseFloat(lat);
let newLon = parseFloat(lon); let newLon = parseFloat(lon);
wx.openLocation({ uni.openLocation({
latitude: newLat, latitude: newLat,
longitude: newLon, longitude: newLon,
scale: 18, scale: 18,
name, name,
// address:"", address: name,
success: (res) => {}, success: (res) => {},
fail: (err) => {}, fail: (err) => {},
}); });
...@@ -847,7 +837,7 @@ export default { ...@@ -847,7 +837,7 @@ export default {
height: 500rpx; height: 500rpx;
} }
.ticket-title { .ticket-title-bar {
line-height: 45px !important; line-height: 45px !important;
font-size: 16px; font-size: 16px;
text-align: center; text-align: center;
...@@ -1422,4 +1412,11 @@ export default { ...@@ -1422,4 +1412,11 @@ export default {
color: #dfbe6e; color: #dfbe6e;
background: rgba(223, 190, 110, 0.2); background: rgba(223, 190, 110, 0.2);
} }
.name-ali {
// #ifdef MP-ALIPAY
box-sizing: border-box;
padding-left: 30rpx;
// #endif
}
</style> </style>
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