Commit d79ef437 by 严立

Merge branch 'master' of http://120.77.182.185/yanl/mini-shimao

parents 330c65f6 9d452e3a
......@@ -59,6 +59,7 @@
"usingComponents": {
"navigation": "./component/navigation/navigation",
"swiper-point": "./component/swiper-point/swiper-point",
"strategy-item": "./component/strategy-item/strategy-item",
"l-avatar": "./miniprogram_npm/lin-ui/avatar/index",
"l-button": "./miniprogram_npm/lin-ui/button/index",
"l-capsule-bar": "./miniprogram_npm/lin-ui/capsule-bar/index",
......
......@@ -12,7 +12,6 @@ Component({
data: {
},
lifetimes: {
attached: function () {
// console.log(this.data.data)
......
......@@ -2,6 +2,11 @@
<view class="component-strategy-item">
<image wx:if="{{data.index === 1}}" class="short" src="{{data.image}}" mode="aspectFill"></image>
<image wx:else src="{{data.image}}" mode="widthFix"></image>
<view class="component-strategy-item-tags row align-c">
<block wx:for="{{data.tags}}" wx:key="index">
<text>{{'# ' + item}}</text>
</block>
</view>
<text class="component-strategy-item-title">{{data.title}}</text>
<text class="component-strategy-item-content">{{data.date}}</text>
</view>
\ No newline at end of file
......@@ -16,13 +16,28 @@
height: 354rpx;
}
.component-strategy-item-tags {
margin: 24rpx 24rpx 0;
height: 44rpx;
flex-wrap: wrap;
overflow: hidden;
}
.component-strategy-item-tags text{
margin-right: 16rpx;
padding: 4rpx 12rpx;
color: #fff;
font-size: 18rpx;
line-height: 32rpx;
background-color: #15191F;
border-radius: 4rpx;
}
.component-strategy-item-title {
display: -webkit-box;
margin: 24rpx 20rpx;
margin: 24rpx 24rpx 0;
font-size: 26rpx;
font-weight: bolder;
color: #000000;
overflow: hidden;
text-overflow: ellipsis;
line-clamp: 2;
......@@ -31,7 +46,7 @@
}
.component-strategy-item-content {
margin: 0 24rpx 24rpx 24rpx;
margin: 12rpx 24rpx 24rpx 24rpx;
font-size: 22rpx;
color: #959DA9;
}
\ No newline at end of file

3.17 KB | W: | H:

1.48 KB | W: | H:

image/wechat.png
image/wechat.png
image/wechat.png
image/wechat.png
  • 2-up
  • Swipe
  • Onion skin
let App = getApp()
let logicData = {
pageScrollLock: false,
pageScrollTimer: 0,
}
Page({
data: {
// 导航栏相关属性
navigationStyle: {
normal: {
backIcon: '/image/back.png',
color: '#000000',
background: 'rgba(255, 255, 255, 0)'
},
change: {
backIcon: '/image/back.png',
color: '#000000',
background: 'rgba(255, 255, 255, 1)'
},
scroll: '100rpx',
},
navigationScroll: 0,
sideBarTopMargin: 0,
history: {}
},
onLoad: function (options) {
let { index } = options
this.setSideBarStyle()
this.getBrands(index)
},
onPageScroll: function (funcEvent) {
// console.log(funcEvent)
// 优化滚动事件触发频率
if (logicData.pageScrollLock) return
logicData.pageScrollLock = true
this.setData({
navigationScroll: funcEvent.scrollTop
})
// 恢复滚动事件
logicData.pageScrollTimer = setTimeout(function () {
logicData.pageScrollLock = false
clearTimeout(logicData.pageScrollTimer)
}, 10)
},
// 获取导航栏高度
setSideBarStyle: function () {
this.setData({
sideBarTopMargin: wx.getStorageSync('navigationStatusHeight') + wx.getStorageSync('navigationCapsuleHeight') + 16
})
},
getBrands: function (index) {
App.wxRequest({
url: '/api/v1/common/getBrands',
......
<navigation class="navigation" titleText="{{history.name}}" backIcon="/image/back.png"></navigation>
<navigation class="navigation" titleText="{{history.name}}" backIcon="/image/back.png" scrollStyle="{{navigationStyle}}" scrollHeight="{{navigationScroll}}"></navigation>
<view class="container">
<view class="container" style="{{'margin-top: ' + sideBarTopMargin + 'px;'}}">
<block wx:for="{{history.content}}" wx:key="index">
<image mode="widthFix" src="{{item}}"></image>
</block>
......
.container {
margin-top: 208rpx;
}
image {
width: 750rpx;
}
\ No newline at end of file
......@@ -78,9 +78,14 @@ Page({
},
setLogin: function () {
let funcUserInfo = wx.getStorageSync('userInfo')
if (funcUserInfo.phone && funcUserInfo.name && funcUserInfo.avatar) {
// if (funcUserInfo.phone && funcUserInfo.name && funcUserInfo.avatar) {
// this.setData({
// isLogin: true,
// })
// }
if (funcUserInfo.isSignIn) {
this.setData({
isLogin: true,
isLogin: true
})
}
},
......

35.7 KB | W: | H:

141 KB | W: | H:

pages/home/home/image/into.png
pages/home/home/image/into.png
pages/home/home/image/into.png
pages/home/home/image/into.png
  • 2-up
  • Swipe
  • Onion skin
......@@ -2,32 +2,58 @@ let App = getApp()
Page({
data: {
imageResourcesBase: App.globalData.appResourcesBase,
showMenu: false,
menu: '全 部',
menuList: [
{id: 0, name: '全 部'},
{id: 1, name: '获 取'},
{id: 2, name: '已使用'}
menuList: [{
id: '',
name: '全 部'
},
{
id: 0,
name: '获 取'
},
{
id: 1,
name: '已使用'
}
],
pageNo: '1',
pageSize: '-1',
type: '', // "" 全部 0 获取 1消费(0 发放 1 兑换)
type: '', // "" 全部 0 获取 1消费(0 发放 1 兑换)
accumulateList: [],
selectedList: []
selectedList: [],
integral: '0',
type: ''
},
onLoad: function (options) {
this.getAccumulate()
let integral = options.integral
this.setData({
integral: integral
})
App.login({
timeout: 0,
success: (result) => {
this.getAccumulate()
},
})
},
// 获取积分列表
getAccumulate: function () {
wx.showLoading({
title: '加载中',
})
App.wxRequest({
url: '/api/v1/smUser/getIntegralDetails',
data: {
'pageNo': this.data.pageNo,
'pageSize': this.data.pageSize,
type: ''
type: this.data.type
},
success: (response) => {
wx.hideLoading({
success: (res) => {},
})
let accumulateList = response.data
let selectedList = accumulateList
this.setData({
......@@ -57,18 +83,23 @@ Page({
* @returns
*/
onTabMenu: function (event) {
let { index } = event.currentTarget.dataset
let {
index,
type
} = event.currentTarget.dataset
let menu = this.data.menuList[index].name
let selectedList = []
if (index === 0) {
selectedList = this.data.accumulateList
} else {
selectedList = selectedList.filter(v => v.type === index-1)
selectedList = selectedList.filter(v => v.type === index - 1)
}
this.setData({
menu,
selectedList
selectedList,
type: type
})
this.onHideMenu()
this.getAccumulate()
}
})
\ No newline at end of file
......@@ -2,22 +2,24 @@
<view class="container con-s" bindtap="onHideMenu">
<!-- 积分背景图 -->
<image class="banner" src=""></image>
<image class="banner" src="{{imageResourcesBase + 'mine/home/integral-bg.png'}}"></image>
<view class="opacity-cover"></view>
<view class="my-accumulate">
<text>1888</text>
<text>{{integral}}</text>
</view>
<view class="accumulate-tips">
<text>积分用于兑换积分商品,积分商城即将上线,敬请期待</text>
</view>
<view class="banner-menu row con-b align-c" catchtap="onShowMenu">
<view class="banner-menu row con-b align-c" catchtap="onShowMenu">
<text>{{menu}}</text>
<image src="/image/icon/arrow-b-2.png"></image>
<view class="banner-menu-down col" wx:if="{{showMenu}}">
<block wx:for="{{menuList}}" wx:key="id">
<text class="{{menu === item.name ? 'selected' : ''}}" catchtap="onTabMenu" data-index="{{index}}">{{item.name}}</text>
<text class="{{menu === item.name ? 'selected' : ''}}" data-type="{{item.id}}" catchtap="onTabMenu"
data-index="{{index}}">{{item.name}}</text>
</block>
</view>
</view>
......
......@@ -9,6 +9,15 @@ page {
.banner {
position: fixed;
z-index: -2;
top: 0;
left: 0;
width: 750rpx;
height: 480rpx;
}
.opacity-cover {
position: fixed;
z-index: -1;
top: 0;
left: 0;
......@@ -54,11 +63,11 @@ page {
width: 166rpx;
height: 180rpx;
background: rgba(255, 255, 255, 0.95);
box-shadow: 10px 4px 40px 0px rgba(181,164,164,0.3);
box-shadow: 10px 4px 40px 0px rgba(181, 164, 164, 0.3);
border-radius: 4rpx;
}
.banner-menu-down text{
.banner-menu-down text {
flex: 1;
padding-left: 24rpx;
color: #959CA8;
......@@ -123,9 +132,11 @@ page {
font-size: 30rpx;
color: #E66060;
}
.accumulate-right text {
margin-left: 6rpx;
}
.accumulate-type-color {
color: #959DA9;
}
\ No newline at end of file
......@@ -8,6 +8,7 @@ Page({
data: {
isCheckPermission: false,
imageBase: App.globalData.appImageBase,
imageResourcesBase: App.globalData.appResourcesBase,
orderType: 1, // 1 - 年卡/月卡,2 - 次票, 3 - SPA, 4 - 文创, 5 - 餐品, 6 - 活动, 7 - 观影
......@@ -79,7 +80,8 @@ Page({
title: '日落观光游船体验活动之船行碧波共赏美景',
num: 3
}],
orderListBackup: []
orderListBackup: [],
integral: 0, //积分
},
close() {
......@@ -90,14 +92,7 @@ Page({
animation: true,
})
},
maskShow() {
this.setData({
mask: true
});
wx.hideTabBar({
animation: true,
})
},
/**
* 生命周期函数--监听页面加载
*/
......@@ -108,6 +103,13 @@ Page({
onShow: function () {
this.setUserInfo()
},
// 查看积分明细
goIntegralDetail(event) {
let integral = event.currentTarget.dataset.integral
wx.navigateTo({
url: '/pages/mine/accumulate/accumulate?integral=' + integral,
})
},
// 去核销
goCouponInput(event) {
wx.navigateTo({
......@@ -115,7 +117,7 @@ Page({
})
},
// 获取核销权限
// api/v1/login/getPermissions权限更上去了
getPermissions() {
let that = this
App.wxRequest({
......@@ -143,6 +145,23 @@ Page({
}
})
},
// 获取积分
getIntegral() {
let that = this
App.wxRequest({
url: '/api/v1/smUser/getIntegral', //api/v1/smUser/getIntegral
data: {},
success: function (res) {
let integral = res.data ? res.data.integral : '0'
that.setData({
integral: integral
})
}
})
},
//获取待使用订单
getWillUseOrders() {
let that = this
......@@ -227,10 +246,16 @@ Page({
isRegister: true,
userInfo: funcUserInfo
})
this.getMyActivityList()
this.getCardList()
this.getWillUseOrders()
this.getPermissions()
App.login({
timeout: 0,
success: (result) => {
this.getMyActivityList()
this.getCardList()
this.getWillUseOrders()
this.getPermissions()
this.getIntegral()
},
})
} else {
this.setData({
isRegister: false,
......
......@@ -9,12 +9,13 @@
</view>
<view wx:if="{{isRegister}}" class="mine-info col">
<view class="row align-c">
<view class="row align-c" style="height:76rpx">
<text>{{userInfo.name}}</text>
<image src="./image/inform.png" bindtap="goMyInfo"></image>
</view>
<view>
<text>{{userInfo.phone}}</text>
<view class="owner-tag">
<!-- <text>{{userInfo.phone}}</text> -->
<button class="user-type">游客</button>
</view>
</view>
<view wx:else class="mine-info col">
......@@ -22,31 +23,43 @@
<text style="color:#333333;font-weight:500;">登录/注册</text>
</view>
</view>
<view bindtap="goIntegralDetail" data-integral="{{integral}}" class="integral "
style="position:relative;z-index:2; flex:1">
<view class="integral-num">{{integral}}</view>
<view class="integral-title">我的积分 <image class="arrow-r"
src="{{imageResourcesBase+'mine/home/huise_arrow_right.png'}}"></image>
</view>
</view>
</view>
</view>
<view class="mine" style="height:512rpx" wx:if="{{type == 1}}">
<image class="background-image" style="height:512rpx;" src="http://upload.miaomiao-bao.com/8f046202008201043321555.jpg"></image>
<view class="mine" style="height:512rpx" wx:if="{{type == 1}}">
<image class="background-image" style="height:512rpx;"
src="http://upload.miaomiao-bao.com/8f046202008201043321555.jpg"></image>
<view class="row align-c approve">
<view class="mine-avatar">
<l-avatar size="112" src="{{userInfo.avatar}}"/>
<l-avatar size="112" src="{{userInfo.avatar}}" />
</view>
<view class="mine-info col">
<view class="row align-c">
<text style="color:#F0DABB;font-weight:500;">{{userInfo.name}}</text>
<view class="row align-c" style="height:76rpx">
<text style="color:#F0DABB;font-weight:500;" class="padding-l-18">{{userInfo.name}}</text>
<image src="/image/inform-w.png" bindtap="goMyInfo"></image>
</view>
<view>
<text>{{userInfo.phone}}</text>
<view class="owner-tag">
<!-- <text>{{userInfo.phone}}</text> -->
<image mode="aspectFill" src="{{imageResourcesBase+'mine/home/ownerTag.png'}}"></image>
</view>
</view>
<view bindtap="maskShow" class="align-c" style="positive:relative;margin-left:68rpx;display:flex;">
<image src="http://upload.miaomiao-bao.com/62e04202008201417045326.png" class="approve-icon"></image>
<view class="rule">园区业主</view>
<view bindtap="goIntegralDetail" data-integral="{{integral}}" class=" integral glod"
style="position:relative;z-index:2; flex:1">
<view class="integral-num">{{integral}}</view>
<view class="integral-title">我的积分 <image class="arrow-r"
src="{{imageResourcesBase+'mine/home/glod_arrow_right.png'}}"></image>
</view>
</view>
</view>
</view>
<view class="coupon row align-c" bindtap="goCouponInput" wx:if="{{isCheckPermission}}">
<view class="cpopon-info col">
<text>券码核销</text>
......@@ -87,35 +100,40 @@
<view class="order-activity-icon-wrapper col align-c">
<view class="order-activity-icon row con-c align-c">
<image src="/image/audit-err.png"></image>
<view class="order-activity-badge {{ passBadge > 9 ? 'badge-widen' : ''}}" wx:if="{{passBadge > 0}}">{{passBadge > 99 ? '···' : passBadge}}</view>
<view class="order-activity-badge {{ passBadge > 9 ? 'badge-widen' : ''}}"
wx:if="{{passBadge > 0}}">{{passBadge > 99 ? '···' : passBadge}}</view>
</view>
<text>门票</text>
</view>
<view class="order-activity-icon-wrapper col align-c">
<view class="order-activity-icon row con-c align-c">
<image src="/image/audit-err.png"></image>
<view class="order-activity-badge {{ foodBadge > 9 ? 'badge-widen' : ''}}" wx:if="{{foodBadge > 0}}">{{foodBadge > 99 ? '···' : foodBadge}}</view>
<view class="order-activity-badge {{ foodBadge > 9 ? 'badge-widen' : ''}}"
wx:if="{{foodBadge > 0}}">{{foodBadge > 99 ? '···' : foodBadge}}</view>
</view>
<text>餐饮</text>
</view>
<view class="order-activity-icon-wrapper col align-c">
<view class="order-activity-icon row con-c align-c">
<image src="/image/audit-err.png"></image>
<view class="order-activity-badge {{ movieBadge > 9 ? 'badge-widen' : ''}}" wx:if="{{movieBadge > 0}}">{{movieBadge > 99 ? '···' : movieBadge}}</view>
<view class="order-activity-badge {{ movieBadge > 9 ? 'badge-widen' : ''}}"
wx:if="{{movieBadge > 0}}">{{movieBadge > 99 ? '···' : movieBadge}}</view>
</view>
<text>影票</text>
</view>
<view class="order-activity-icon-wrapper col align-c">
<view class="order-activity-icon row con-c align-c">
<image src="/image/audit-err.png"></image>
<view class="order-activity-badge {{ spaBadge > 9 ? 'badge-widen' : ''}}" wx:if="{{spaBadge > 0}}">{{spaBadge > 99 ? '···' : spaBadge}}</view>
<view class="order-activity-badge {{ spaBadge > 9 ? 'badge-widen' : ''}}"
wx:if="{{spaBadge > 0}}">{{spaBadge > 99 ? '···' : spaBadge}}</view>
</view>
<text>SPA</text>
</view>
<view class="order-activity-icon-wrapper col align-c">
<view class="order-activity-icon row con-c align-c">
<image src="/image/audit-err.png"></image>
<view class="order-activity-badge {{ artBadge > 9 ? 'badge-widen' : ''}}" wx:if="{{artBadge > 0}}">{{artBadge > 99 ? '···' : artBadge}}</view>
<view class="order-activity-badge {{ artBadge > 9 ? 'badge-widen' : ''}}"
wx:if="{{artBadge > 0}}">{{artBadge > 99 ? '···' : artBadge}}</view>
</view>
<text>文创</text>
</view>
......@@ -127,7 +145,10 @@
<view class="pass-bg-one" wx:if="{{myOrder.passOrder.length > 1}}"></view>
<view class="pass-bg-two" wx:if="{{myOrder.passOrder.length > 1}}"></view>
<view class="pass-logo-wrapper row align-c">
<image src="{{myOrder.passOrder[0].logo}}"></image>
<view class="logo-box">
<image src="{{myOrder.passOrder[0].logo}}"></image>
</view>
<text>{{myOrder.passOrder[0].officeName}}</text>
</view>
<view class="pass-title">
......@@ -153,7 +174,8 @@
<text>{{item.officeName}}</text>
</view>
<view class="goods-content row align-c">
<image src="{{k.imgUrl}}" wx:for="{{item.smOrderDetails}}" wx:for-item="k" wx:key="*this"></image>
<image src="{{k.imgUrl}}" wx:for="{{item.smOrderDetails}}" wx:for-item="k" wx:key="*this">
</image>
<text wx:if="{{item.smOrderDetails.length == 1}}">{{item.smOrderDetails[0].name}}</text>
</view>
<view class="goods-footer row align-c con-b">
......@@ -161,7 +183,7 @@
<text>共{{item.smOrderDetails.length}}</text>
</view>
</view>
<!-- more -->
<view class="more row align-c con-c" bindtap="onShowMoreOrder">
<text wx:if="{{!showMoreOrder}}">展开更多</text>
......@@ -187,21 +209,24 @@
<view class="order-activity-icon-wrapper col align-c">
<view class="order-activity-icon row con-c align-c">
<image src="/image/audit-err.png"></image>
<view class="order-activity-badge {{ badge > 9 ? 'badge-widen' : ''}}" wx:if="{{badge}}">{{badge}}</view>
<view class="order-activity-badge {{ badge > 9 ? 'badge-widen' : ''}}" wx:if="{{badge}}">
{{badge}}</view>
</view>
<text>主题活动</text>
</view>
<view class="order-activity-icon-wrapper col align-c">
<view class="order-activity-icon row con-c align-c">
<image src="/image/audit-err.png"></image>
<view class="order-activity-badge {{ badge > 9 ? 'badge-widen' : ''}}" wx:if="{{badge}}">{{badge}}</view>
<view class="order-activity-badge {{ badge > 9 ? 'badge-widen' : ''}}" wx:if="{{badge}}">
{{badge}}</view>
</view>
<text>夜间入园预约</text>
</view>
<view class="order-activity-icon-wrapper col align-c">
<view class="order-activity-icon row con-c align-c">
<image src="/image/audit-err.png"></image>
<view class="order-activity-badge {{ badge > 9 ? 'badge-widen' : ''}}" wx:if="{{badge}}">{{badge}}</view>
<view class="order-activity-badge {{ badge > 9 ? 'badge-widen' : ''}}" wx:if="{{badge}}">
{{badge}}</view>
</view>
<text>看房预约</text>
</view>
......@@ -215,7 +240,7 @@
<view class="appointment-activity-img">
<image src=""></image>
</view>
<view class="appointment-activity-info col con-a">
<view class="appointment-activity-info col con-a">
<view class="appointment-activity-title">
<text>日落观光游船体验活动</text>
</view>
......@@ -233,7 +258,7 @@
<view class="appointment-activity-img">
<image src=""></image>
</view>
<view class="appointment-activity-info col con-a">
<view class="appointment-activity-info col con-a">
<view class="appointment-activity-title">
<text>日落观光游船体验活动之船行碧波共赏美景</text>
</view>
......@@ -258,7 +283,8 @@
</view>
</view>
<view class="border-right"></view>
<view class="appointment-subscribe" data-item="{{item}}" bindtap="gohotelAccommodation">预约凭证</view>
<view class="appointment-subscribe" data-item="{{item}}" bindtap="gohotelAccommodation">预约凭证
</view>
</view>
</view>
<!-- 看房预约 -->
......@@ -273,7 +299,8 @@
</view>
</view>
<view class="border-right"></view>
<view class="appointment-subscribe" data-item="{{item}}" bindtap="gohotelAccommodation">预约凭证</view>
<view class="appointment-subscribe" data-item="{{item}}" bindtap="gohotelAccommodation">预约凭证
</view>
</view>
</view>
</view>
......@@ -300,7 +327,8 @@
<view class="row con-c">
<image src="http://upload.miaomiao-bao.com/ea238202008201146199955.png" class="mask-img"></image>
</view>
<image src="http://upload.miaomiao-bao.com/62e04202008201417045326.png" style="width:750rpx;height:458rpx;margin-left:-73.5rpx;"></image>
<image src="http://upload.miaomiao-bao.com/62e04202008201417045326.png"
style="width:750rpx;height:458rpx;margin-left:-73.5rpx;"></image>
<view class="row align-c con-c" style="margin-top:20rpx;">
<image src="/image/xingxing.png" class="mask-icon"></image>
<text class="mask-font">业主特权</text>
......@@ -311,6 +339,6 @@
</view>
</view>
<view class="close" bindtap="close">
<l-icon name="close" color="black" size="28"/>
<l-icon name="close" color="black" size="28" />
</view>
</l-mask>
\ No newline at end of file
......@@ -23,6 +23,26 @@
padding: 220rpx 0 0 48rpx;
}
.user-type {
width: 126rpx;
height: 40rpx;
font-weight: 500;
font-size: 22rpx;
color: #fff;
background-color: #6783AE;
text-align: center;
line-height: 40rpx;
border-radius: 4rpx;
letter-spacing: 10rpx;
margin-top: 20rpx;
}
.owner-tag {
height: 80rpx;
width: 142rpx;
/* margin-top: 8rpx!important; */
}
.mine-avatar {
z-index: 11;
margin-right: 32rpx;
......@@ -40,6 +60,43 @@
font-size: 42rpx;
font-weight: bolder;
}
.padding-l-18{
padding-left: 18rpx;
}
/* 积分 */
.integral {
color: #0D0D0E;
text-align: right;
}
.glod {
color: #F0DABB;
}
.integral-num {
font-size: 54rpx;
line-height: 76rpx;
padding-right: 80rpx;
}
.integral-title {
display: flex;
height: 80rpx;
align-items: center;
font-size: 26rpx;
line-height: 36rpx;
flex-direction: row;
justify-content: flex-end;
padding-right: 40rpx;
}
.arrow-r {
width: 32rpx;
height: 32rpx;
margin-left: 8rpx;
}
.mine-info view:nth-child(1) image {
z-index: 11;
......@@ -64,7 +121,7 @@
padding: 41rpx 32rpx;
background-color: #fff;
border-radius: 4rpx;
margin-top:48rpx;
margin-top: 48rpx;
}
.cpopon-info {
......@@ -557,8 +614,6 @@
border-radius: 4rpx;
}
.appointment-activity-content {}
.appointment-activity-img {
width: 140rpx;
height: 136rpx;
......@@ -642,4 +697,17 @@
image {
width: 100%;
height: 100%;
}
.logo-box {
width: 100rpx;
height: 80rpx;
line-height: 80rpx;
text-align: center;
margin-right: 20rpx;
}
.logo-box image {
max-width: 100%!important;
max-height: 100%!important;
}
\ No newline at end of file
......@@ -344,10 +344,10 @@ page {
height: 80rpx;
line-height: 80rpx;
text-align: center;
margin-right: 20rpx;
}
.logo-box image {
max-width: 100%!important;
max-height: 100%!important;
}
\ No newline at end of file
......@@ -828,6 +828,7 @@ image {
height: 80rpx;
line-height: 80rpx;
text-align: center;
margin-right: 20rpx;
}
.logo-box image {
......
let App = getApp()
let logicData = {
pageScrollLock: false,
pageScrollTimer: 0,
}
Page({
data: {
bannerIndex: 0,
......@@ -9,50 +14,42 @@ Page({
statusList: [],
movieInfo: {},
showList: {},
// 导航栏相关属性
navigationStyle: {
normal: {
backIcon: '/image/back-w.png',
color: '#FFFFFF',
background: 'rgba(255, 255, 255, 0)'
},
change: {
backIcon: '/image/back-w.png',
color: '#ffffff',
background: 'rgba(28, 28, 37, 1)'
},
scroll: '200rpx',
},
navigationScroll: 0,
},
onLoad: function (options) {
let activityId = options.id
App.wxRequest({
url: '/api/v1/film/getFilmDetail',
data: {
'activityId': activityId,
},
success: (response) => {
let movieInfo = response.data
movieInfo.tags = movieInfo.tags.split(' ')
// for (let key in movieInfo.allTimes) {
// console.log(key)
// }
let showList = {}
showList[0] = movieInfo.today
showList[1] = movieInfo.tomorrow
this.setData({
movieInfo,
showList
})
}
})
this.getNowTime()
this.queryDetail(activityId)
},
// 获取标签日期
getNowTime: function () {
let now = new Date()
let month = now.getMonth() + 1
let day = now.getDate()
if (month < 10) {
month = '0' + month
}
if (day < 10) {
day = '0' + day
}
console.log(month, day)
console.log(App.modular.miment().format('YYYY-MM-DD'))
onPageScroll: function (funcEvent) {
// console.log(funcEvent)
// 优化滚动事件触发频率
if (logicData.pageScrollLock) return
logicData.pageScrollLock = true
this.setData({
statusList: [
{ 'id': 0, 'name': `今日${month}${day}日`},
{ 'id': 1, 'name': `明日${month}${day+1}日`},
],
navigationScroll: funcEvent.scrollTop
})
// 恢复滚动事件
logicData.pageScrollTimer = setTimeout(function () {
logicData.pageScrollLock = false
clearTimeout(logicData.pageScrollTimer)
}, 10)
},
// 选择标签页日期
onSelectionStatus: function (event) {
......@@ -72,7 +69,70 @@ Page({
bannerIndex: funcEvent.detail.current
})
},
// 获取电影详情场次
queryDetail: function (activityId) {
App.wxRequest({
url: '/api/v1/film/getFilmDetail',
data: {
'activityId': activityId,
},
success: (response) => {
let movieInfo = response.data
console.log(movieInfo)
let showList = {}
let statusList = []
let day = 2
let index = 0
let timeList = []
// 添加电影日期场次
for (let key in movieInfo.allTimes) {
timeList.push(App.modular.miment(key).stamp())
}
timeList = timeList.sort((a, b) => a-b )
timeList = timeList.map(v => App.modular.miment(v).format('YYYY-MM-DD'))
// console.log(timeList)
timeList.forEach(key => {
let tempItem = {}
if (key === App.modular.miment().format('YYYY-MM-DD')) {
tempItem = {
id: 0,
name: '今日' + App.modular.miment().format('MM月DD日')
}
statusList.push(tempItem)
showList[index] = movieInfo.allTimes[key]
index++
} else if (key === App.modular.miment().add(1, 'DD').format('YYYY-MM-DD')) {
tempItem = {
id: 1,
name: '明日' + App.modular.miment().add(1, 'DD').format('MM月DD日')
}
statusList.push(tempItem)
showList[index] = movieInfo.allTimes[key]
index++
} else if (key === App.modular.miment().add(day, 'DD').format('YYYY-MM-DD')) {
tempItem = {
id: day,
name: App.modular.miment().add(day, 'DD').format('MM月DD日')
}
statusList.push(tempItem)
showList[index] = movieInfo.allTimes[key]
index++
day++
}
})
// console.log(showList)
movieInfo.tags = movieInfo.tags.replace(/( )?热映影片( )?/, ' ').split(' ')
movieInfo.free = movieInfo.ownerPrice == '0' && movieInfo.visitorPrice == '0' ? '免费' : `¥${movieInfo.ownerPrice.toFixed(2)}`
this.setData({
movieInfo,
showList,
statusList
})
}
})
},
// 跳转到报名页面
onReportMovie: function (event) {
let id = event.currentTarget.dataset.movieid
......
<navigation class="navigation" titleText="{{movieInfo.filmName}}" color="#ffffff" backIcon="/image/back-w.png"></navigation>
<navigation class="navigation" titleText="{{movieInfo.filmName}}" color="#ffffff" backIcon="/image/back-w.png" scrollStyle="{{navigationStyle}}" scrollHeight="{{navigationScroll}}"></navigation>
<view class="container">
<!-- 顶部轮播图 -->
......@@ -82,7 +82,7 @@
<text>{{item.endTime + '散场'}}</text>
</view>
<view class="show-free">
<text>{{item.ownerPrice === 0 ? '免费' : item.ownerPrice}}</text>
<text>{{movieInfo.free}}</text>
</view>
<view class="show-btn" bindtap="onReportMovie" data-movieId="{{item.filmId}}">
<text>报名观影</text>
......@@ -90,4 +90,5 @@
</view>
</block>
</view>
<view class="blank"></view>
</view>
\ No newline at end of file
......@@ -114,16 +114,25 @@ page {
width: 750rpx;
height: 76rpx;
margin-top: 48rpx;
padding: 0 8rpx;
padding: 0 40rpx;
border-bottom: 1px #3A3A40 solid;
overflow: scroll;
flex-wrap: nowrap;
}
.status-item {
width: 220rpx;
height: 76rpx;
font-size: 26rpx;
margin-right: 64rpx;
font-size: 30rpx;
font-weight: 400;
color: #959DA9;
}
.status-item text {
display: inline-block;
white-space: nowrap;
}
.status-item:last-child {
padding-right: 40rpx;
}
.status-item-active {
height: 76rpx;
color: #fff;
......@@ -131,6 +140,12 @@ page {
border-bottom: 4rpx #fff solid;
}
.status::-webkit-scrollbar {
width: 0;
height: 0;
color: transparent;
}
.show-wrapper {
width: 710rpx;
height: 160rpx;
......@@ -150,7 +165,6 @@ page {
font-size: 26rpx;
}
.show-free {
width: 60rpx;
margin-left: 130rpx;
color: #fff;
font-size: 26;
......@@ -174,7 +188,6 @@ page {
.show-end image {
width: 112rpx;
height: 112rpx;
background-color: #ccc;
}
.show-end text{
margin-top: 10rpx;
......@@ -185,4 +198,9 @@ page {
image {
width: 100%;
height: 100%;
}
.blank {
width: 100%;
height: 168rpx;
}
\ No newline at end of file
let App = getApp()
let logicData = {
pageScrollLock: false,
pageScrollTimer: 0,
}
Page({
data: {
// 请求参数
......@@ -8,6 +13,22 @@ Page({
pageSize: '-1'
},
// 导航栏相关属性
navigationStyle: {
normal: {
backIcon: '/image/back-w.png',
color: '#FFFFFF',
background: 'rgba(255, 255, 255, 0)'
},
change: {
backIcon: '/image/back-w.png',
color: '#ffffff',
background: 'rgba(28, 28, 37, 1)'
},
scroll: '100rpx',
},
navigationScroll: 0,
statusActive: 0,
statusList: [
{ 'id': 0, 'name': '今日放映' },
......@@ -32,6 +53,22 @@ Page({
this.getTodayFilm()
this.getAllFilm()
},
onPageScroll: function (funcEvent) {
// console.log(funcEvent)
// 优化滚动事件触发频率
if (logicData.pageScrollLock) return
logicData.pageScrollLock = true
this.setData({
navigationScroll: funcEvent.scrollTop
})
// 恢复滚动事件
logicData.pageScrollTimer = setTimeout(function () {
logicData.pageScrollLock = false
clearTimeout(logicData.pageScrollTimer)
}, 10)
},
/**
* 查询今日放映
* @function
......@@ -53,8 +90,8 @@ Page({
v.filmType = v.filmType.replace(/\//g, ' / ')
v.filmDirector = v.filmDirector.replace(/\//g, ' ')
v.filmLead = v.filmLead.replace(/\//g, ' ')
v.free = v.ownerPrice === '0' ? '免费' : `¥${v.ownerPrice.toFixed(2)}`
v.tags = v.tags.split(' ')
v.free = v.ownerPrice == '0' ? '免费' : `¥${v.ownerPrice.toFixed(2)}`
v.tags = v.tags.replace(/( )?热映影片( )?/, ' ').split(' ')
})
this.setData({
movieToday
......@@ -87,8 +124,8 @@ Page({
v.filmType = v.filmType.replace(/\//g, ' / ')
v.filmDirector = v.filmDirector.replace(/\//g, ' ')
v.filmLead = v.filmLead.replace(/\//g, ' ')
v.free = v.ownerPrice === 0 ? '免费' : `¥${v.ownerPrice.toFixed(2)}`
v.tags = v.tags.split(' ')
v.free = v.ownerPrice == '0' ? '免费' : `¥${v.ownerPrice.toFixed(2)}`
v.tags = v.tags.replace(/( )?热映影片( )?/, ' ').replace(/( )+$/, '').split(' ')
})
this.setData({
'movieAll.movieWeek': {
......@@ -112,8 +149,8 @@ Page({
v.filmType = v.filmType.replace(/\//g, ' / ')
v.filmDirector = v.filmDirector.replace(/\//g, ' ')
v.filmLead = v.filmLead.replace(/\//g, ' ')
v.free = v.ownerPrice === 0 ? '免费' : `¥${v.ownerPrice.toFixed(2)}`
v.tags = v.tags.split(' ')
v.free = v.ownerPrice == '0'? '免费' : `¥${v.ownerPrice.toFixed(2)}`
v.tags = v.tags.replace(/( )?热映影片( )?/, ' ').split(' ')
})
this.setData({
'movieAll.movieNextWeek': {
......
<navigation class="navigation" titleText="所有影片" color="#ffffff" backIcon="/image/back-w.png"></navigation>
<navigation class="navigation" titleText="所有影片" color="#ffffff" backIcon="/image/back-w.png" scrollStyle="{{navigationStyle}}" scrollHeight="{{navigationScroll}}"></navigation>
<view class="contaniner con-s">
<view class="status row align-c">
......@@ -12,7 +12,7 @@
</view>
<view wx:if="{{statusActive === 0}}">
<block wx:for="{{movieToday}}" wx:key="id">
<block wx:for="{{movieToday}}" wx:key="id" wx:if="{{movieToday.length !== 0}}">
<view class="movie-wrapper row" bindtap="onToMovieDetail" data-movieId="{{item.activityId}}">
<view class="movie-time-wrapper row align-c">
<view class="movie-time-start">
......@@ -34,7 +34,7 @@
</view>
<view class="movie-tags row">
<block wx:for="{{item.tags}}" wx:for-item="tagsItem" wx:for-index="tagsIndex" wx:key="tagsIndex">
<text>{{tagsItem}}</text>
<text wx:if="{{tagsItem}}">{{tagsItem}}</text>
</block>
</view>
</view>
......@@ -63,7 +63,7 @@
</view>
</view>
<view class="movie-label">
<text>{{item.keyword}}</text>
<text wx:if="{{item.keyword}}">{{item.keyword}}</text>
</view>
<view class="movie-free">
<text>{{item.free}}</text>
......@@ -75,9 +75,16 @@
</view>
</view>
</block>
<block wx:if="{{movieToday.length === 0}}">
<view class="show-end col align-c">
<image src="/image/no-movie.png"></image>
<text>观影已结束,请期待后续排片</text>
</view>
</block>
</view>
<view wx:else>
<block wx:for="{{movieAll}}" wx:for-index="key" wx:for-item="movieList" wx:key="key">
<block wx:for="{{movieAll}}" wx:for-index="key" wx:for-item="movieList" wx:key="key" wx:if="{{movieAll.moviewWeek.list.length > 0 || movieAll.movieNextWeek.list.length > 0}}">
<view class="movie-week row align-c con-c" wx:if="{{movieList.list.length > 0}}">
<view class="line"></view>
<view class="movie-week-title">
......@@ -137,6 +144,12 @@
</view>
</block>
</block>
<block wx:if="{{movieAll.moviewWeek.list.length === 0 && movieAll.movieNextWeek.list.length === 0}}">
<view class="show-end col align-c">
<image src="/image/no-movie.png"></image>
<text>观影已结束,请期待后续排片</text>
</view>
</block>
</view>
<view class="footer-img">
<image src="/image/movie-bottom.png"></image>
......
page {
background-color: #1C1C25;
}
.navigation {
z-index: 1900;
position: fixed;
top: 0;
left: 0;
width: 750rpx;
}
.navigation-bar-image {
z-index: 1100;
position: fixed;
top: 60rpx;
left: 50rpx;
width: 200rpx;
height: 60rpx;
}
.contaniner {
margin-top: 200rpx;
}
......@@ -207,6 +222,20 @@ page {
margin-top: 64rpx;
}
.show-end {
width: 750rpx;
margin-top: 400rpx;
}
.show-end image {
width: 112rpx;
height: 112rpx;
}
.show-end text{
margin-top: 10rpx;
font-size: 26rpx;
color: #959DA9;
}
image {
width: 100%;
height: 100%;
......
......@@ -25,7 +25,7 @@ Page({
color: '#000000',
background: 'rgba(255, 255, 255, 1)'
},
scroll: '600rpx',
scroll: '200rpx',
},
navigationStyleBlack: {
normal: {
......@@ -76,6 +76,9 @@ Page({
this.queryDetail(Number(options.id))
if (Number(options.id) === 2) {
this.queryDetailMovie()
this.setData({
navigationStyle: this.data.navigationStyleBlack
})
} else {
this.queryDetailCommodity()
}
......@@ -89,11 +92,13 @@ Page({
* @returns
*/
queryDetail: function (funcAppId) {
let that = this
let funcIndex = 0
// 预设数据
let funcDetail = [
{
appId: 1,
id: App.globalData.pointInfo[0].id,
banner: [
App.globalData.appResourcesBase + 'shop/banner/banner-1-1-1.png',
App.globalData.appResourcesBase + 'shop/banner/banner-1-1-2.png',
......@@ -155,6 +160,7 @@ Page({
contact: '13316748039'
}, {
appId: 5,
id: App.globalData.pointInfo[4].id,
banner: [
App.globalData.appResourcesBase + 'shop/banner/banner-1-2-1.png',
App.globalData.appResourcesBase + 'shop/banner/banner-1-2-2.png',
......@@ -170,6 +176,7 @@ Page({
contact: '13316748039'
}, {
appId: 7,
id: App.globalData.pointInfo[6].id,
banner: [
App.globalData.appResourcesBase + 'shop/banner/banner-2-1-1.png',
App.globalData.appResourcesBase + 'shop/banner/banner-2-1-2.png',
......@@ -188,6 +195,7 @@ Page({
contact: '13316748039'
}, {
appId: 6,
id: App.globalData.pointInfo[5].id,
banner: [
App.globalData.appResourcesBase + 'shop/banner/banner-3-1-1.png',
App.globalData.appResourcesBase + 'shop/banner/banner-3-1-2.png',
......@@ -209,6 +217,7 @@ Page({
contact: '13316748039'
}, {
appId: 4,
id: App.globalData.pointInfo[3].id,
banner: [
App.globalData.appResourcesBase + 'shop/banner/banner-3-2-1.png',
App.globalData.appResourcesBase + 'shop/banner/banner-3-2-2.png',
......@@ -224,6 +233,7 @@ Page({
contact: '13316748039'
}, {
appId: 2,
id: App.globalData.pointInfo[1].id,
banner: [
App.globalData.appResourcesBase + 'shop/banner/banner-4-1-1.png',
App.globalData.appResourcesBase + 'shop/banner/banner-4-1-2.png',
......@@ -242,6 +252,38 @@ Page({
contact: '13316748039'
}
]
App.wxRequest({
url: '/api/v1/park/getList',
success: function(res) {
let funcData = res.list
funcDetail.forEach(shop => {
funcData.forEach(item => {
if (shop.id === item .id) {
shop.banner = item.rotationImg
shop.name = item.name
shop.date = item.businessTime
shop.describe = item.content
shop.contact = item.hotTel
}
})
})
that.setData({
banner: funcDetail[funcIndex].banner,
shareImage: funcDetail[funcIndex].shareImage,
info: {
id: funcDetail[funcIndex].id,
name: funcDetail[funcIndex].name,
title: funcDetail[funcIndex].title,
date: funcDetail[funcIndex].date,
describe: funcDetail[funcIndex].describe,
contact: funcDetail[funcIndex].contact,
},
// detailActivity: funcDetail[funcIndex].activity,
// detailCommodity: funcDetail[funcIndex].commodity,
// detailEvaluate: funcDetail[funcIndex].evaluate,
})
}
})
// 读取预设信息,banner 图片等等
for (let i = 0, l = funcDetail.length; i < l; i++) {
......@@ -267,27 +309,27 @@ Page({
}
}
this.setData({
banner: funcDetail[funcIndex].banner,
shareImage: funcDetail[funcIndex].shareImage,
info: {
id: funcDetail[funcIndex].id,
name: funcDetail[funcIndex].name,
title: funcDetail[funcIndex].title,
date: funcDetail[funcIndex].date,
describe: funcDetail[funcIndex].describe,
contact: funcDetail[funcIndex].contact,
},
detailActivity: funcDetail[funcIndex].activity,
detailCommodity: funcDetail[funcIndex].commodity,
detailEvaluate: funcDetail[funcIndex].evaluate,
})
if (this.data.info.id === 6) {
this.setData({
isBlack: true
})
}
// this.setData({
// banner: funcDetail[funcIndex].banner,
// shareImage: funcDetail[funcIndex].shareImage,
// info: {
// id: funcDetail[funcIndex].id,
// name: funcDetail[funcIndex].name,
// title: funcDetail[funcIndex].title,
// date: funcDetail[funcIndex].date,
// describe: funcDetail[funcIndex].describe,
// contact: funcDetail[funcIndex].contact,
// },
// detailActivity: funcDetail[funcIndex].activity,
// detailCommodity: funcDetail[funcIndex].commodity,
// detailEvaluate: funcDetail[funcIndex].evaluate,
// })
// if (this.data.info.id === 6) {
// this.setData({
// isBlack: true
// })
// }
},
queryDetailActivity: function () {
......
......@@ -21,7 +21,7 @@
<view class="commodity">
<!-- 详情标题,分享,位置 -->
<view class="commodity-title row align-c">
<text>{{info.title}}</text>
<text>{{info.name}}</text>
<image src="{{imageBase + 'icon/share-2.png'}}" bindtap="onShare"></image>
<image src="{{imageBase + 'icon/location-2.png'}}" bind:tap="onLocation"></image>
</view>
......
......@@ -16,6 +16,7 @@ Page({
},
queryDetail: function () {
let that = this
let response = [
{
describe: [
......@@ -23,17 +24,18 @@ Page({
],
shop: [{
appId: 1,
id: App.globalData.pointInfo[0].id,
name: '海错图展馆',
cover: App.globalData.appResourcesBase + 'play/detail/detail-1-2.png',
x: 108,
y: 232,
cover: App.globalData.appResourcesBase + 'play/detail/shop-bg-1-1.png',
subCover: App.globalData.appResourcesBase + 'play/detail/shop-bg-1-2.png',
logo: App.globalData.appResourcesBase + 'shop/logo-1.png',
shopType: '4'
}, {
appId: 5,
id: App.globalData.pointInfo[4].id,
name: '拾光花坊',
cover: App.globalData.appResourcesBase + 'play/detail/detail-1-3.png',
x: 108,
y: 246,
cover: App.globalData.appResourcesBase + 'play/detail/shop-bg-1-3.png',
logo: App.globalData.appResourcesBase + 'shop/logo-5.png',
shopType: ''
}]
}, {
......@@ -42,10 +44,10 @@ Page({
],
shop: [{
appId: 7,
id: App.globalData.pointInfo[6].id,
name: '水元养韵SPA',
cover: App.globalData.appResourcesBase + 'play/detail/detail-2-2.png',
x: 108,
y: 246,
cover: App.globalData.appResourcesBase + 'play/detail/shop-bg-2-1.png',
logo: App.globalData.appResourcesBase + 'shop/logo-7.png',
shopType: '2'
}]
}, {
......@@ -54,17 +56,17 @@ Page({
],
shop: [{
appId: 6,
id: App.globalData.pointInfo[5].id,
name: '原味舒食',
cover: App.globalData.appResourcesBase + 'play/detail/detail-3-2.png',
x: 108,
y: 232,
cover: App.globalData.appResourcesBase + 'play/detail/shop-bg-3-1.png',
logo: App.globalData.appResourcesBase + 'shop/logo-6.png',
shopType: '5'
}, {
appId: 4,
id: App.globalData.pointInfo[3].id,
name: '原野MOJITO',
cover: App.globalData.appResourcesBase + 'play/detail/detail-3-3.png',
x: 108,
y: 246,
cover: App.globalData.appResourcesBase + 'play/detail/shop-bg-bg-3-2.png',
logo: App.globalData.appResourcesBase + 'shop/logo-4.png',
shopType: '5'
}]
}, {
......@@ -73,10 +75,10 @@ Page({
],
shop: [{
appId: 2,
id: App.globalData.pointInfo[1].id,
name: '星空影院',
cover: App.globalData.appResourcesBase + 'play/detail/detail-4-2.png',
x: 108,
y: 246,
cover: App.globalData.appResourcesBase + 'play/detail/shop-bg-bg-4-1.png',
logo: App.globalData.appResourcesBase + 'shop/logo-2.png',
shopType: ''
}]
}, {
......@@ -86,9 +88,25 @@ Page({
shop: []
},
]
this.setData({
tabDetail: response
App.wxRequest({
url: '/api/v1/park/getList',
success: function(res) {
let funcData = res.list
response.forEach(res => {
res.shop.forEach(shop => {
funcData.forEach(item => {
if (shop.id === item.id) {
shop.name = item.name
shop.summary = item.summary
shop.time = item.businessTime
}
})
})
})
that.setData({
tabDetail: response
})
}
})
},
......
......@@ -8,7 +8,7 @@
</view>
<view class="shop">
<block wx:for="{{tabDetail[tabIndex].shop}}" wx:for-index="index" wx:for-item="item" wx:key="index">
<!-- <block wx:for="{{tabDetail[tabIndex].shop}}" wx:for-index="index" wx:for-item="item" wx:key="index">
<view class="shop-item">
<image src="{{item.cover}}"></image>
<button
......@@ -21,6 +21,133 @@
<text>立即预定</text>
</button>
</view>
</block>
</block> -->
<view class="shop-wrapper" wx:if="{{tabIndex === '0'}}">
<image class="shop-bg" src="{{tabDetail[0].shop[0].cover}}"></image>
<image class="shop-art-cover" src="{{tabDetail[0].shop[0].subCover}}"></image>
<view class="shop-content">
<view class="shop-logo">
<image class="art-logo" src="{{tabDetail[0].shop[0].logo}}"></image>
</view>
<view class="shop-name">
<text>{{tabDetail[0].shop[0].name}}</text>
</view>
<view class="shop-summary">
<text>{{tabDetail[0].shop[0].summary}}</text>
</view>
<view class="shop-date">
<text>时间</text>
<text>{{tabDetail[0].shop[0].time}}</text>
</view>
<view class="shop-btn" data-id="{{tabDetail[0].shop[0].appId}}" data-type="{{tabDetail[0].shop[0].shopType}}" bindtap="onShopDetail">
<text>立即购票</text>
</view>
</view>
</view>
<view class="shop-wrapper" wx:if="{{tabIndex === '0'}}">
<image class="shop-bg" src="{{tabDetail[0].shop[1].cover}}"></image>
<view class="shop-content">
<view class="shop-logo">
<image class="flower-logo" src="{{tabDetail[0].shop[1].logo}}"></image>
</view>
<view class="shop-name">
<text>{{tabDetail[0].shop[1].name}}</text>
</view>
<view class="shop-summary">
<text>{{tabDetail[0].shop[1].summary}}</text>
</view>
<view class="shop-date">
<text>时间</text>
<text>{{tabDetail[0].shop[1].time}}</text>
</view>
<view class="shop-btn" data-id="{{tabDetail[0].shop[1].appId}}" data-type="{{tabDetail[0].shop[1].shopType}}" bindtap="onShopDetail">
<text>查看详情</text>
</view>
</view>
</view>
<view class="shop-wrapper" wx:if="{{tabIndex === '1'}}">
<image class="shop-bg" src="{{tabDetail[1].shop[0].cover}}"></image>
<view class="shop-content">
<view class="shop-logo">
<image class="spa-logo" src="{{tabDetail[1].shop[0].logo}}"></image>
</view>
<view class="shop-name">
<text>{{tabDetail[1].shop[0].name}}</text>
</view>
<view class="shop-summary">
<text>{{tabDetail[1].shop[0].summary}}</text>
</view>
<view class="shop-date">
<text>时间</text>
<text>{{tabDetail[1].shop[0].time}}</text>
</view>
<view class="shop-btn" data-id="{{tabDetail[1].shop[0].appId}}" data-type="{{tabDetail[1].shop[0].shopType}}" bindtap="onShopDetail">
<text>立即购票</text>
</view>
</view>
</view>
<view class="shop-wrapper" wx:if="{{tabIndex === '2'}}">
<image class="shop-bg" src="{{tabDetail[2].shop[0].cover}}"></image>
<view class="shop-content">
<view class="shop-logo">
<image class="food-logo" src="{{tabDetail[2].shop[0].logo}}"></image>
</view>
<view class="shop-name">
<text>{{tabDetail[2].shop[0].name}}</text>
</view>
<view class="shop-summary">
<text>{{tabDetail[2].shop[0].summary}}</text>
</view>
<view class="shop-date">
<text>时间</text>
<text>{{tabDetail[2].shop[0].time}}</text>
</view>
<view class="shop-btn" data-id="{{tabDetail[2].shop[0].appId}}" data-type="{{tabDetail[2].shop[0].shopType}}" bindtap="onShopDetail">
<text>立即预订</text>
</view>
</view>
</view>
<view class="shop-wrapper" wx:if="{{tabIndex === '2'}}">
<image class="shop-bg" src="{{tabDetail[2].shop[1].cover}}"></image>
<view class="shop-content">
<view class="shop-logo">
<image class="mojito-logo" src="{{tabDetail[2].shop[1].logo}}"></image>
</view>
<view class="shop-name">
<text>{{tabDetail[2].shop[1].name}}</text>
</view>
<view class="shop-summary">
<text>{{tabDetail[2].shop[1].summary}}</text>
</view>
<view class="shop-date">
<text>时间</text>
<text>{{tabDetail[2].shop[1].time}}</text>
</view>
<view class="shop-btn" data-id="{{tabDetail[2].shop[1].appId}}" data-type="{{tabDetail[2].shop[1].shopType}}" bindtap="onShopDetail">
<text>立即预订</text>
</view>
</view>
</view>
<view class="shop-wrapper" wx:if="{{tabIndex === '3'}}">
<image class="shop-bg" src="{{tabDetail[3].shop[0].cover}}"></image>
<view class="shop-content">
<view class="shop-logo">
<image class="movie-logo" src="{{tabDetail[3].shop[0].logo}}"></image>
</view>
<view class="shop-name">
<text>{{tabDetail[3].shop[0].name}}</text>
</view>
<view class="shop-summary">
<text>{{tabDetail[3].shop[0].summary}}</text>
</view>
<view class="shop-date">
<text>时间</text>
<text>{{tabDetail[3].shop[0].time}}</text>
</view>
<view class="shop-btn" data-id="{{tabDetail[3].shop[0].appId}}" data-type="{{tabDetail[3].shop[0].shopType}}" bindtap="onShopDetail">
<text>立即购票</text>
</view>
</view>
</view>
</view>
</view>
\ No newline at end of file
page {
background: linear-gradient(182deg,#FFFFFF 0%,#EBEDF7 100%);
}
.navigation {
z-index: 1900;
}
.container {
margin-top: 120rpx;
padding-bottom: 20rpx;
background: linear-gradient(182deg, #FFFFFF 0%, #EBEFF7 100%);
}
/* 详情 */
......@@ -50,4 +48,107 @@ page {
font-weight: 500;
color: #ffffff;
line-height: 42rpx;
}
.shop-wrapper {
position: relative;
width: 750rpx;
height: 1106rpx;
}
.shop-bg {
width: 750rpx;
height: 436rpx;
}
.shop-art-cover {
position: absolute;
right: 0;
top: 0;
z-index: 3;
width: 478rpx;
height: 362rpx;
}
.shop-content {
position: absolute;
top: 231rpx;
left: 48rpx;
width: 654rpx;
height: 716rpx;
background-color: #fff;
}
.shop-logo {
height: 206rpx;
}
.art-logo {
width: 66rpx;
height: 122rpx;
margin: 42rpx 0 0 66rpx;
}
.art-logo {
width: 66rpx;
height: 122rpx;
margin: 42rpx 0 0 66rpx;
}
.flower-logo {
width: 124rpx;
height: 88rpx;
margin: 62rpx 0 0 60rpx;
}
.spa-logo {
width: 124rpx;
height: 100rpx;
margin: 56rpx 0 0 50rpx;
}
.food-logo {
width: 100rpx;
height: 104rpx;
margin: 56rpx 0 0 60rpx;
}
.mojito-logo {
width: 182rpx;
height: 70rpx;
margin: 74rpx 0 0 60rpx;
}
.movie-logo {
width: 168rpx;
height: 66rpx;
margin: 84rpx 0 0 60rpx;
}
.shop-name text {
margin: 10rpx 60rpx 0;
font-size: 38rpx;
font-weight: 600;
color: #15191F;
line-height: 52rpx;
}
.shop-summary {
height: 72rpx;
margin: 40rpx 60rpx 0;
font-size: 26rpx;
color: #959DA9;
line-height: 36rpx;
}
.shop-date {
margin: 80rpx 60rpx 0;
}
.shop-date text:nth-child(1) {
font-size: 26rpx;
color: #959DA9;
line-height: 36rpx;
}
.shop-date text:nth-child(2) {
margin-left: 48rpx;
font-size: 26rpx;
color: #15191F;
line-height: 36rpx;
}
.shop-btn {
width: 534rpx;
height: 96rpx;
margin: 64rpx 60rpx;
color: #fff;
font-size: 30rpx;
line-height: 96rpx;
text-align: center;
background: #86C5E1;
border-radius: 4rpx;
}
\ No newline at end of file
.navigation {
z-index: 1900;
position: fixed;
top: 0;
left: 0;
width: 750rpx;
}
.banner {
position: relative;
width: 750rpx;
height: 870rpx;
background: #ffffff;
}
.banner-swiper,
.banner-swiper-item,
.banner-swiper-image {
position: absolute;
top: 0 !important;
left: 0 !important;
width: 750rpx;
height: 870rpx;
}
.banner-swiper-point {
position: relative;
top: 760rpx;
left: 0;
}
.detail {
width: 750rpx;
padding: 6px 32rpx;
}
.detail-title {
width: 670rpx;
margin: 80rpx 0 64rpx 0;
font-size: 38rpx;
font-weight: 800;
color:#15191F;
line-height: 52rpx;
}
.detail-date {
/* width: 152rpx; */
height: 40rpx;
margin: 64rpx 0 32rpx 0;
font-size: 26rpx;
font-weight: 400;
color: #959DA9;
line-height: 40rpx;
}
.detail > image {
min-width: 100%;
}
rich-text {
margin-bottom: 52rpx;
font-size: 30rpx;
font-weight: 300;
color: #15191F;
line-height: 52rpx;
}
/* 攻略相关 */
.relation-title {
margin: 0 40rpx 90rpx 40rpx;
padding-top: 64rpx;
border-top: 1px #E2E7EF solid;
}
.relation-title text {
width: 120rpx;
height: 42rpx;
margin-top: 40rpx;
font-size: 30rpx;
font-weight: bold;
color:rgba(21,25,31,1);
}
.relation-item {
position: relative;
width: 670rpx;
height: 238rpx;
margin: 0 40rpx 104rpx 40rpx;
background:rgba(245, 246, 248, 1);
border-radius: 2px;
}
.relation-item > image {
position: absolute;
top: -24rpx;
left: 24rpx;
width: 176rpx;
height: 214rpx;
border-radius: 2px;
overflow: hidden;
}
.relation-item {
padding: 32rpx 32rpx 48rpx 230rpx;
}
.relation-item-info text:nth-child(1) {
font-size: 30rpx;
font-weight: bold;
line-height: 42rpx;
color:rgba(21, 25, 31, 1);
}
.relation-item-info text:nth-child(2) {
margin-top: 30rpx;
font-size: 26rpx;
line-height: 36rpx;
color: #656E7B;
}
.relation-item-info text:nth-child(3) {
margin-top: 12rpx;
font-size: 26rpx;
line-height: 36rpx;
color: #656E7B;
}
.relation-item-more {
height: 100%;
}
.relation-item-more image {
width: 32rpx;
height: 32rpx;
.navigation {
z-index: 1900;
position: fixed;
top: 0;
left: 0;
width: 750rpx;
}
.banner {
position: relative;
width: 750rpx;
height: 870rpx;
background: #ffffff;
}
.banner-swiper,
.banner-swiper-item,
.banner-swiper-image {
position: absolute;
top: 0 !important;
left: 0 !important;
width: 750rpx;
height: 870rpx;
}
.banner-swiper-point {
position: relative;
top: 760rpx;
left: 0;
}
.detail {
width: 750rpx;
padding: 6px 32rpx;
}
.detail-title {
width: 670rpx;
margin: 80rpx 0 64rpx 0;
font-size: 38rpx;
font-weight: 800;
color:#15191F;
line-height: 52rpx;
}
.detail-date {
/* width: 152rpx; */
height: 40rpx;
margin: 64rpx 0 32rpx 0;
font-size: 26rpx;
font-weight: 400;
color: #959DA9;
line-height: 40rpx;
}
.detail > image {
min-width: 100%;
}
rich-text {
margin-bottom: 52rpx;
font-size: 30rpx;
font-weight: 300;
color: #15191F;
line-height: 52rpx;
}
/* 攻略相关 */
.relation-title {
margin: 0 40rpx 90rpx 40rpx;
padding-top: 64rpx;
border-top: 1px #E2E7EF solid;
}
.relation-title text {
width: 120rpx;
height: 42rpx;
margin-top: 40rpx;
font-size: 30rpx;
font-weight: bold;
color:rgba(21,25,31,1);
}
.relation-item {
position: relative;
width: 670rpx;
height: 238rpx;
margin: 0 40rpx 104rpx 40rpx;
background:rgba(245, 246, 248, 1);
border-radius: 2px;
}
.relation-item > image {
position: absolute;
top: -24rpx;
left: 24rpx;
width: 176rpx;
height: 214rpx;
border-radius: 2px;
overflow: hidden;
}
.relation-item {
padding: 32rpx 32rpx 48rpx 230rpx;
}
.relation-item-info text:nth-child(1) {
font-size: 30rpx;
font-weight: bold;
line-height: 42rpx;
color:rgba(21, 25, 31, 1);
}
.relation-item-info text:nth-child(2) {
margin-top: 30rpx;
font-size: 26rpx;
line-height: 36rpx;
color: #656E7B;
}
.relation-item-info text:nth-child(3) {
margin-top: 12rpx;
font-size: 26rpx;
line-height: 36rpx;
color: #656E7B;
}
.relation-item-more {
height: 100%;
}
.relation-item-more image {
width: 32rpx;
height: 32rpx;
}
\ No newline at end of file
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 sign in to comment