
<!-- 可用组件:https://mp.weixin.qq.com/debug/wxadoc/dev/component/ -->
<view class="ordering">
<!--餐馆顶部-->
<view class="o-top">
<image class="o-top-img" src="{{ restaurant.img }}"></image>
<view class="o-top-name">
{{ restaurant.name }}
<text>{{ restaurant.status }}</text>
</view>
<view class="o-top-number">立即排号</view>
</view>
<!--中间导航-->
<view class="o-center">
<view bindtap="choose" data-tab="0" class="o-c-menu {{ currentmenu == 0 ? 'active' : ''}}">取号</view>
<view bindtap="choose" data-tab="1" class="o-c-call {{ currentmenu == 1 ? 'active' : ''}}">点菜</view>
<view bindtap="choose" data-tab="2" class="o-c-shop {{ currentmenu == 2 ? 'active' : ''}}">服务</view>
<view bindtap="choose" data-tab="3" class="o-c-shop {{ currentmenu == 3 ? 'active' : ''}}">商家</view>
</view>
<!--导航内容0-->
<view class="menu0" wx:if="{{ currentmenu == 0 }}">
<view data-desk="0" bindtap="getdesk">小桌(1-2人)</view>
<view data-desk="1" bindtap="getdesk">中桌(3-4人)</view>
<view data-desk="2" bindtap="getdesk">大桌(5人以上)</view>
</view>
<!--导航内容1-->
<view wx:if="{{ currentmenu == 1 }}">
<view class="menu1">
<!--左侧导航选项-->
<view class="menu0-left">
<scroll-view scroll-y="true" style="height: {{ scrollHeight }}rpx">
<view bindtap="leftChoose" data-menulistid="{{ item.id }}" class="{{ index == 0 ? 'iconfont icon-huo' : '' }} menu0-l-item {{ currentleftmenu == index ? 'active' : '' }}" data-menu="{{ index }}" wx:for="{{ restaurant.menuList }}" wx:key="unique">
{{ item.title }}
</view>
</scroll-view>
</view>
<!--商品选项-->
<view class="menu0-right">
<!--优惠卷-->
<view wx:if="{{ restaurant.coupon.id }}" class="shop-coupon posr">
<view class="circle-wrap posa">
<view class="circle" wx:for="0123456789"></view>
</view>
<view class="coupon">
<view class="coupon-left">
<text>{{ restaurant.coupon.delmoney }}元</text>
<text>满{{ restaurant.coupon.condition }}元使用</text>
</view>
<view class="coupon-right">
<view>{{ restaurant.name }}</view>
<view>{{ restaurant.coupon.time }}</view>
</view>
<view bindtap="getCoupon" class="get-coupon" data-couponid="{{ restaurant.coupon.id }}">点击领取</view>
</view>
</view>
<!--菜单内容-->
<scroll-view scroll-y="true" scroll-with-animation="true" scroll-into-view="{{ currentmenuid }}" style="height: {{ scrollHeight - needDistance }}rpx">
<block wx:for="{{ restaurant.menuList }}" wx:for-item="menu0List">
<!--商品分类标题-->
<view class="menu0-r-title" id="{{ menu0List.id }}">{{ menu0List.title }}</view>
<!--循环商品信息-->
<view class="menu0-r-goods" data-menus="{{ index }}" wx:for="{{ menu0List.list }}" wx:key="unique">
<image src="{{ item.img }}"></image>
<view class="menu0-r-g">
<view>{{ item.name }}</view>
<view>月售 {{ item.count }} 好评 {{ item.good }}</view>
<view class="menu0-r-price">
¥ {{ item.price }} 元
</view>
</view>
<!--购买商品按钮-->
<view class="order-btn">
<view style="visibility: {{ chooseGoods.goods[item.id] > 0 ? 'visible' : 'hidden' }}" class="del-btn" catchtap="delorder" data-goodsid="{{ item.id }}">-</view>
<view style="visibility: {{ chooseGoods.goods[item.id] > 0 ? 'visible' : 'hidden' }}" class="order-number">{{ chooseGoods.goods[item.id] }}</view>
<view class="add-btn" catchtap="addorder" data-goodsid="{{ item.id }}">+</view>
</view>
</view>
</block>
</scroll-view>
</view>
</view>
<!--购物车-->
<view class="shop-car-wrap {{ chooseGoods.allCount > 0 ? 'show' : '' }}">
<view wx:if="{{ showShopCarContent && chooseGoods.money > 0 }}" class="shop-car-content">
<view class="shop-car-content-title"><text style="color: #000;">我的购物车</text></view>
<!--已选商品信息-->
<scroll-view scroll-y="true" style="height: 470rpx">
<block wx:for="{{ restaurant.menuList }}" wx:for-item="menu0List">
<!--循环商品信息-->
<view wx:if="{{ chooseGoods.goods[item.id] > 0 }}" class="menu0-r-goods" data-menus="{{ index }}" wx:for="{{ menu0List.list }}" wx:key="unique">
<image src="{{ item.img }}"></image>
<view class="menu0-r-g">
<view>{{ item.name }}</view>
<!--<view>月售 {{ item.count }} 好评 {{ item.good }}</view>-->
<view class="menu0-r-price">
¥ {{ item.price }} 元
</view>
</view>
<!--购买商品按钮-->
<view class="order-btn">
<view style="visibility: {{ chooseGoods.goods[item.id] > 0 ? 'visible' : 'hidden' }}" class="del-btn" catchtap="delorder" data-goodsid="{{ item.id }}">-</view>
<view style="visibility: {{ chooseGoods.goods[item.id] > 0 ? 'visible' : 'hidden' }}" class="order-number">{{ chooseGoods.goods[item.id] }}</view>
<view class="add-btn" catchtap="addorder" data-goodsid="{{ item.id }}">+</view>
</view>
</view>
</block>
</scroll-view>
</view>
<view class="shop-car">
<text bindtap="showContent" class="iconfont icon-gouwuche2"><text wx:if="{{ chooseGoods.allCount > 0 }}" class="shop-car-count">{{ chooseGoods.allCount }}</text></text>
<text bindtap="showContent" class="shop-car-money">¥{{ chooseGoods.money }}元</text>
<text bindtap="goCheckOrder" class="shop-car-btn">提交订单</text>
</view>
</view>
<!--<view class="menu0-bottom"></view>-->
</view>
<!--导航内容2-->
<view class="menu2" wx:if="{{ currentmenu == 2 }}">
<view catchtap="menu1choose" data-tabmenu="{{ index }}" class="{{ item.icon }}" wx:for="{{ menu1content }}" wx:key="unique">
{{ item.title }}
</view>
</view>
<!--导航内容3-->
<view class="menu3" wx:if="{{ currentmenu == 3 }}">
<!--顶部地址和拨打电话-->
<view class="menu2-top">
<view class="menu2-top-left iconfont icon-icglobaltitlebar48iconfontmap">{{ restaurant.address }}</view>
<view class="iconfont icon-dianhua" bindtap="callPhone"></view>
</view>
<scroll-view scroll-y="true" style="height: {{ scrollHeight2 }}rpx;" class="menu2-user-comment">
<!--评分-->
<view class="menu2-grade">
<text class="menu2-grade-star iconfont icon-wuxing {{ restaurant.grade }}"></text>
<text class="posr">
<text>{{ restaurant.gradeNumber }}</text>
<text>综合评分</text>
</text>
</view>
<!--总体评论-->
<view class="menu2-comment">
<view class="menu2-comment-item" wx:for="{{ restaurant.comment}}" wx:key="unique">
{{ item.content }}({{ item.number }})
</view>
</view>
<!--用户评论-->
<view class="user-detail-comment" wx:for="{{ comment }}" wx:key="unique">
<view class="m-u-c-top">
<image src="{{ item.img }}"></image>
<view>{{ item.username }}</view>
<view class="iconfont icon-wuxing {{ item.grade }}"></view>
<view>{{ item.time }}</view>
</view>
<view class="menu2-comment">
<view class="menu2-comment-item" wx:for="{{ item.userComment}}" wx:key="unique" wx:for-item="detailitem">
{{ detailitem }}
</view>
</view>
</view>
</scroll-view>
</view>
</view>
<!--遮罩层-->
<view bindtap="showContent" wx:if="{{ chooseGoods.money > 0 }}" class="mask {{ showMask ? 'active' : '' }}"></view>
|
.o-top {
height: 181rpx;
box-sizing: border-box;
border-bottom: 1rpx solid #e5e5e5;
padding: 33rpx 20rpx 20rpx;
display: flex;
}
.o-top .o-top-img {
width: 110rpx;
height: 110rpx;
border-radius: 50%;
margin-right: 70rpx;
}
.o-top .o-top-name {
display: flex;
flex-direction: column;
font-size: 28rpx;
color: #333;
}
.o-top .o-top-name text {
margin-top: 18rpx;
font-size: 24rpx;
color: #999;
}
.o-top .o-top-name text::before {
content: '满';
color: #fff;
background-color: #f00;
padding: 2rpx 5rpx;
margin-right: 10rpx;
}
.o-top .o-top-number {
background-color: #f00;
color: #fff;
font-size: 24rpx;
height: 47rpx;
line-height: 47rpx;
padding: 5rpx 15rpx;
border-radius: 30rpx;
text-align: center;
transform: translate(200rpx, 80rpx);
}
.o-center {
display: flex;
align-items: center;
justify-content: space-around;
border-bottom: 1rpx solid #e5e5e5;
}
.o-center view {
text-align: center;
box-sizing: border-box;
width: 33.33%;
line-height: 54rpx;
font-size: 26rpx;
}
.o-center .active {
border-bottom: 6rpx solid #f00;
font-weight: 700;
text-shadow: 2rpx 2rpx 2rpx #eee;
}
.menu0 {
padding: 0 50rpx;
}
.menu0 view {
box-sizing: border-box;
width: 100%;
line-height: 70rpx;
background-color: #f00;
color: #fff;
font-weight: 700;
margin-top: 40rpx;
border-radius: 70rpx;
text-align: center;
}
.menu1 {
display: flex;
}
.menu1 .menu0-left scroll-view {
width: 168rpx;
box-sizing: border-box;
background-color: #eee;
}
.menu1 .menu0-left scroll-view view {
line-height: 96rpx;
margin: 0 20rpx;
text-align: center;
border-bottom: 1rpx dotted #c6c6c6;
}
.menu1 .menu0-left scroll-view .active {
background-color: #fff;
margin: 0;
border-radius: 10rpx;
}
.menu1 .menu0-left scroll-view .icon-huo {
margin: 0;
position: relative;
}
.menu1 .menu0-left scroll-view .icon-huo::before {
position: absolute;
color: #f00;
left: 0;
}
.menu1 .menu0-right {
flex: 1;
}
.menu1 .menu0-right .shop-coupon {
height: 142rpx;
background-color: #f6f6f6;
box-sizing: border-box;
border-bottom: 1rpx solid #e5e5e5;
padding: 22rpx 69rpx 23rpx 55rpx;
}
.menu1 .menu0-right .shop-coupon .circle-wrap {
transform: translate(-5rpx, -2rpx);
}
.menu1 .menu0-right .shop-coupon .circle {
width: 10rpx;
height: 10rpx;
border-radius: 50%;
background-color: #f6f6f6;
}
.menu1 .menu0-right .shop-coupon .coupon {
background-color: #fff;
height: 95rpx;
box-sizing: border-box;
display: flex;
}
.menu1 .menu0-right .shop-coupon .coupon .coupon-left {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
width: 160rpx;
font-size: 30rpx;
color: #fff;
font-weight: 700;
background: linear-gradient(90deg, #5394d5, #4984d5);
}
.menu1 .menu0-right .shop-coupon .coupon .coupon-left text:nth-child(2) {
font-size: 20rpx;
font-weight: 500;
}
.menu1 .menu0-right .shop-coupon .coupon .coupon-right {
margin-left: 15rpx;
display: flex;
flex-direction: column;
justify-content: space-around;
font-size: 24rpx;
color: #333;
}
.menu1 .menu0-right .shop-coupon .coupon .coupon-right view:nth-child(2) {
color: #999;
font-size: 20rpx;
}
.menu1 .menu0-right .shop-coupon .coupon .get-coupon {
width: 113rpx;
border: 1rpx solid #f00;
border-radius: 30rpx;
color: #f00;
font-size: 20rpx;
text-align: center;
height: 31rpx;
transform: translate(-9rpx, 50rpx);
line-height: 31rpx;
}
.menu1 .menu0-right .menu0-r-title {
line-height: 40rpx;
font-size: 24rpx;
padding-left: 16rpx;
background-color: #f6f6f6;
}
.menu0-r-goods {
padding: 25rpx 20rpx 22rpx 14rpx;
border-bottom: 1rpx solid #e5e5e5;
display: flex;
}
.menu0-r-goods image {
width: 103rpx;
height: 103rpx;
margin-right: 29rpx;
}
.menu0-r-goods .menu0-r-g {
display: flex;
flex-direction: column;
line-height: 38rpx;
}
.menu0-r-goods .menu0-r-g view:nth-child(1) {
color: #333;
font-size: 26rpx;
}
.menu0-r-goods .menu0-r-g view:nth-child(2) {
color: #666;
font-size: 22rpx;
}
.menu0-r-goods .menu0-r-g .menu0-r-price {
font-size: 24rpx;
color: #f00;
}
.order-btn {
display: flex;
transform: translate(10rpx, 70rpx);
}
.order-btn view {
width: 60rpx;
height: 60rpx;
text-align: center;
line-height: 60rpx;
font-size: 30rpx;
font-weight: 700;
color: #fff;
background-color: #0094ff;
border-radius: 50%;
margin-left: 5rpx;
}
.shop-car-wrap {
position: fixed;
bottom: 0;
width: 100%;
z-index: 9999;
background-color: #fff;
}
.shop-car-wrap .shop-car-content {
box-sizing: border-box;
position: fixed;
bottom: 85rpx;
width: 100%;
height: 500rpx;
background-color: #fff;
border: 1rpx solid #000;
}
.shop-car-wrap .shop-car-content .shop-car-content-title {
line-height: 30rpx;
font-size: 20rpx;
}
.shop-car-wrap .shop-car-content .menu0-r-goods {
padding: 0 20rpx;
border-bottom: 1rpx solid #e5e5e5;
display: flex;
justify-content: space-around;
}
.shop-car-wrap .shop-car-content .menu0-r-goods image {
width: 103rpx;
height: 103rpx;
}
.shop-car-wrap .shop-car-content .menu0-r-goods .menu0-r-g {
display: flex;
flex-direction: column;
}
.shop-car-wrap .shop-car-content .menu0-r-goods .menu0-r-g view:nth-child(1) {
color: #333;
font-size: 26rpx;
}
.shop-car-wrap .shop-car-content .menu0-r-goods .menu0-r-g view:nth-child(2) {
color: #666;
font-size: 22rpx;
}
.shop-car-wrap .shop-car-content .menu0-r-goods .menu0-r-g .menu0-r-price {
font-size: 24rpx;
color: #f00;
}
.shop-car-wrap .shop-car-content .order-btn {
display: flex;
transform: translate(10rpx, 10rpx);
}
.shop-car-wrap .shop-car-content .order-btn view {
width: 60rpx;
height: 60rpx;
text-align: center;
line-height: 60rpx;
font-size: 30rpx;
font-weight: 700;
color: #fff;
background-color: #0094ff;
border-radius: 50%;
margin-left: 5rpx;
}
.shop-car-wrap .shop-car {
display: flex;
align-items: center;
}
.shop-car-wrap .shop-car text {
width: 33.33%;
line-height: 85rpx;
}
.shop-car-wrap .shop-car text:nth-child(1) {
position: relative;
text-align: center;
font-size: 100rpx;
}
.shop-car-wrap .shop-car text:nth-child(1) .shop-car-count {
position: absolute;
top: -25rpx;
right: 85rpx;
background-color: #f00;
width: 30rpx;
text-align: center;
border-radius: 50%;
line-height: 30rpx;
font-size: 18rpx;
}
.shop-car-wrap .shop-car text:nth-child(1)::before {
display: block;
transform: translateY(-10rpx);
}
.shop-car-wrap .shop-car text:nth-child(3) {
text-align: center;
}
.show {
background-color: #0094ff;
color: #fff;
}
.show .iconfont::before {
text-shadow: 0rpx -1rpx 2rpx #0094ff;
}
.menu2 {
border-top: 10rpx solid #dfdfdf;
display: flex;
flex-wrap: wrap;
overflow: hidden;
}
.menu2 view {
width: 33.33%;
height: 288rpx;
box-sizing: border-box;
font-size: 36rpx;
line-height: 450rpx;
text-align: center;
position: relative;
overflow: hidden;
}
.menu2 .iconfont::before {
display: block;
position: absolute;
top: -100rpx;
left: 100rpx;
transform: scale(3);
}
.menu2 .iconfont:nth-child(1)::before {
color: #f15a24;
}
.menu2 .iconfont:nth-child(2)::before {
color: #ff9839;
}
.menu2 .iconfont:nth-child(3)::before {
color: #8cc63f;
}
.menu2 .iconfont:nth-child(4)::before {
color: #29abe2;
}
.menu3 {
border-top: 10rpx solid #dfdfdf;
}
.menu3 .menu2-top {
display: flex;
padding-left: 66rpx;
line-height: 130rpx;
border-bottom: 1rpx solid #eee;
}
.menu3 .menu2-top view:nth-child(2) {
width: 113rpx;
text-align: center;
}
.menu3 .menu2-top .menu2-top-left {
flex: 1;
position: relative;
font-size: 30rpx;
}
.menu3 .menu2-top .menu2-top-left::before {
display: inline-block;
font-size: 40rpx;
transform: translateX(-30rpx);
}
.menu3 .menu2-top .menu2-top-left::after {
content: '';
display: inline-block;
height: 95rpx;
width: 2rpx;
position: absolute;
top: 25rpx;
right: 0;
background-color: #efefef;
}
.menu3 .menu2-grade {
display: flex;
justify-content: center;
align-items: center;
line-height: 130rpx;
margin: 0 28rpx;
border-bottom: 3rpx solid #dfdfdf;
}
.menu3 .menu2-grade .menu2-grade-star {
flex: 1;
margin-left: 200rpx;
}
.menu3 .menu2-grade .menu2-grade-star::before {
color: #ccc;
}
.menu3 .menu2-grade .menu2-grade-star::after {
color: #faee00;
}
.menu3 .menu2-grade .posr {
width: 233rpx;
height: 130rpx;
box-sizing: border-box;
padding: 20rpx 0;
display: flex;
flex-direction: column;
}
.menu3 .menu2-grade .posr text {
display: block;
text-align: center;
line-height: 50rpx;
}
.menu3 .menu2-grade .posr text:nth-child(1) {
font-size: 40rpx;
font-weight: 700;
}
.menu3 .menu2-grade .posr text:nth-child(2) {
color: #acacac;
font-size: 30rpx;
}
.menu3 .menu2-grade .posr::before {
content: '';
display: inline-block;
height: 95rpx;
width: 2rpx;
position: absolute;
top: 25rpx;
left: -20rpx;
background-color: #efefef;
}
.menu3 .menu2-comment {
display: flex;
flex-wrap: wrap;
padding: 10px;
border-bottom: 1rpx solid #dfdfdf;
}
.menu3 .menu2-comment .menu2-comment-item {
font-size: 24rpx;
padding: 10rpx 30rpx;
border-radius: 30rpx;
background-color: #fdf899;
margin: 5rpx;
}
.menu3 .m-u-c-top {
display: flex;
padding: 20rpx 20rpx 0 20rpx;
align-items: center;
}
.menu3 .m-u-c-top view:nth-child(2) {
font-size: 24rpx;
font-weight: 700;
margin-left: 20rpx;
}
.menu3 .m-u-c-top .iconfont {
overflow: hidden;
margin-left: 20rpx;
}
.menu3 .m-u-c-top .iconfont::before {
color: #ccc;
}
.menu3 .m-u-c-top .iconfont::after {
color: #faee00;
}
.menu3 .m-u-c-top view:nth-child(4) {
flex: 1;
text-align: right;
font-size: 24rpx;
color: #969696;
}
.menu3 .menu2-user-comment image {
width: 40rpx;
height: 40rpx;
border-radius: 50%;
}
.mask {
width: 100%;
height: 100%;
background-color: rgba(0, 0, 0, 0.3);
position: fixed;
bottom: 0;
display: none;
z-index: 99;
}
.active {
display: block;
}
|
'use strict';
// 获取全局应用程序实例对象
// const app = getApp()
// 创建页面实例对象
Page({
/**
* 页面的初始数据
*/
data: {
title: 'ordering',
restaurant: {
img: 'http://img02.tooopen.com/images/20150928/tooopen_sy_143912755726.jpg',
name: '人马科技大饭堂',
id: 'remaid',
address: '汇德商业大厦501',
tel: '123412341234',
status: '满桌',
grade: 'four-star',
gradeNumber: '4.8',
comment: [{
content: '服务态度好',
number: '932'
}, {
content: '食材新鲜',
number: '932'
}, {
content: '味道赞',
number: '932'
}, {
content: '一',
number: '9132'
}, {
content: '两个',
number: '9132'
}, {
content: '四个个字',
number: '9132'
}, {
content: '三个字',
number: '9132'
}],
menuList: [{
title: '热销1',
id: 'list1',
list: [{
img: 'http://img02.tooopen.com/images/20150928/tooopen_sy_143912755726.jpg',
name: '红烧牛肉1',
count: '1805',
good: '173',
price: '23.5',
id: 'list1_1'
}, {
name: '红烧牛肉2',
count: '1805',
good: '173',
price: '23.5',
id: 'list1_2'
}, {
name: '红烧牛肉3',
count: '1805',
good: '173',
price: '23.5',
id: 'list1_3'
}, {
name: '红烧牛肉4',
count: '1805',
good: '173',
price: '23.5',
id: 'list1_4'
}]
}, {
title: '热销2',
id: 'list2',
list: [{
img: 'http://img02.tooopen.com/images/20150928/tooopen_sy_143912755726.jpg',
name: '红烧牛肉1',
count: '1805',
good: '173',
price: '23.5',
id: 'list2_1'
}, {
name: '红烧牛肉2',
count: '1805',
good: '173',
price: '23.5',
id: 'list2_2'
}, {
name: '红烧牛肉3',
count: '1805',
good: '173',
price: '23.5',
id: 'list2_3'
}, {
name: '红烧牛肉4',
count: '1805',
good: '173',
price: '23.5',
id: 'list2_4'
}]
}, {
title: '热销3',
id: 'list3',
list: [{
img: 'http://img02.tooopen.com/images/20150928/tooopen_sy_143912755726.jpg',
name: '红烧牛肉1',
count: '1805',
good: '173',
price: '23.5'
}, {
name: '红烧牛肉2',
count: '1805',
good: '173',
price: '23.5'
}, {
name: '红烧牛肉3',
count: '1805',
good: '173',
price: '23.5'
}, {
name: '红烧牛肉4',
count: '1805',
good: '173',
price: '23.5'
}]
}, {
title: '热销4',
id: 'list4',
list: [{
img: 'http://img02.tooopen.com/images/20150928/tooopen_sy_143912755726.jpg',
name: '红烧牛肉1',
count: '1805',
good: '173',
price: '23.5'
}, {
name: '红烧牛肉2',
count: '1805',
good: '173',
price: '23.5'
}, {
name: '红烧牛肉3',
count: '1805',
good: '173',
price: '23.5'
}, {
name: '红烧牛肉4',
count: '1805',
good: '173',
price: '23.5'
}]
}, {
title: '热销5',
id: 'list5',
list: [{
img: 'http://img02.tooopen.com/images/20150928/tooopen_sy_143912755726.jpg',
name: '红烧牛肉1',
count: '1805',
good: '173',
price: '23.5'
}, {
name: '红烧牛肉2',
count: '1805',
good: '173',
price: '23.5'
}, {
name: '红烧牛肉3',
count: '1805',
good: '173',
price: '23.5'
}, {
name: '红烧牛肉4',
count: '1805',
good: '173',
price: '23.5'
}]
}, {
title: '热销6',
id: 'list6',
list: [{
img: 'http://img02.tooopen.com/images/20150928/tooopen_sy_143912755726.jpg',
name: '红烧牛肉1',
count: '1805',
good: '173',
price: '23.5'
}, {
name: '红烧牛肉2',
count: '1805',
good: '173',
price: '23.5'
}, {
name: '红烧牛肉3',
count: '1805',
good: '173',
price: '23.5'
}, {
name: '红烧牛肉4',
count: '1805',
good: '173',
price: '23.5'
}]
}, {
title: '热销7',
id: 'list7',
list: [{
img: 'http://img02.tooopen.com/images/20150928/tooopen_sy_143912755726.jpg',
name: '红烧牛肉1',
count: '1805',
good: '173',
price: '23.5'
}, {
name: '红烧牛肉2',
count: '1805',
good: '173',
price: '23.5'
}, {
name: '红烧牛肉3',
count: '1805',
good: '173',
price: '23.5'
}, {
name: '红烧牛肉4',
count: '1805',
good: '173',
price: '23.5'
}]
}],
coupon: {
id: 'code123123',
delmoney: 10,
condition: 100,
time: '2017-12-12'
}
},
// 当前的tab
currentmenu: 0,
// 当前的left栏
currentleftmenu: 0,
// 侧边栏联动当前值
currentmenuid: 'list1',
// 设置scroll-view的高度
scrollHeight: 880,
needDistance: 0,
scrollHeight2: 815,
showShopCarContent: false,
showMask: false,
menu1content: [{
icon: 'iconfont icon-canshi',
title: '催促上菜'
}, {
icon: 'iconfont icon-lingdang-copy',
title: '呼叫服务员'
}, {
icon: 'iconfont icon-mifen2',
title: '加米饭'
}, {
icon: 'iconfont icon-jiubei',
title: '加酒水'
}],
comment: [{
username: '186****1234',
img: 'http://img02.tooopen.com/images/20150928/tooopen_sy_143912755726.jpg',
grade: 'five-star',
time: '2016-5-5',
userComment: ['一二三四', '一', '一二三四', '一二', '一二三', '一二三四']
}, {
username: '186****1234',
img: 'http://img02.tooopen.com/images/20150928/tooopen_sy_143912755726.jpg',
grade: 'one-star',
time: '2016-5-5',
userComment: ['一', '一二', '一二三', '一二三四']
}, {
username: '186****1234',
img: 'http://img02.tooopen.com/images/20150928/tooopen_sy_143912755726.jpg',
grade: 'two-star',
time: '2016-5-5',
userComment: ['一', '一二', '一二三', '一二三四']
}, {
username: '186****1234',
img: 'http://img02.tooopen.com/images/20150928/tooopen_sy_143912755726.jpg',
grade: 'four-star',
time: '2016-5-5',
userComment: ['一二三四', '一', '一二三四', '一二', '一二三', '一二三四']
}, {
username: '186****1234',
img: 'http://img02.tooopen.com/images/20150928/tooopen_sy_143912755726.jpg',
grade: 'three-star',
time: '2016-5-5',
userComment: ['一二三四', '一', '一二三四', '一二', '一二三', '一二三四']
}],
chooseGoods: {
// 饭店id
restaurant_id: 'renmaid',
// 选择的商品数量
goods: {},
// 总金额
money: 0,
// 总数
allCount: 0
}
},
/**
* 确认订单
*/
goCheckOrder: function goCheckOrder() {
if (this.data.chooseGoods.allCount <= 0) {
return wx.showToast({
title: '您还没有点餐',
icon: 'success',
mask: true
});
}
// todo 提交订单信息,然后去到确认页面
wx.navigateTo({
url: '../payorder/payorder?operation=checkOrder'
});
},
/**
* 计算消费金额
*/
calculateMoney: function calculateMoney() {
var goods = this.data.chooseGoods.goods;
var menuList = this.data.restaurant.menuList;
var money = 0;
var singleMoney = 0;
for (var goodsId in goods) {
// console.log(goodsId)
// console.log(goods[goodsId])
var _iteratorNormalCompletion = true;
var _didIteratorError = false;
var _iteratorError = undefined;
try {
for (var _iterator = menuList[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
var lists = _step.value;
// console.log(lists)
// 具体列表内的菜单
var list = lists.list;
// console.log(list)
var _iteratorNormalCompletion2 = true;
var _didIteratorError2 = false;
var _iteratorError2 = undefined;
try {
for (var _iterator2 = list[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
var goodsID = _step2.value;
if (goodsID.id === goodsId) {
// console.log(goodsID.price)
// console.log(goods[goodsId])
singleMoney = goodsID.price * goods[goodsId];
// console.log('success')
}
// return console.log(goodsID)
}
} catch (err) {
_didIteratorError2 = true;
_iteratorError2 = err;
} finally {
try {
if (!_iteratorNormalCompletion2 && _iterator2.return) {
_iterator2.return();
}
} finally {
if (_didIteratorError2) {
throw _iteratorError2;
}
}
}
}
} catch (err) {
_didIteratorError = true;
_iteratorError = err;
} finally {
try {
if (!_iteratorNormalCompletion && _iterator.return) {
_iterator.return();
}
} finally {
if (_didIteratorError) {
throw _iteratorError;
}
}
}
money += singleMoney;
}
return money;
},
/**
* 显示购物车内容
*/
showContent: function showContent() {
if (this.data.chooseGoods.money <= 0) return;
this.setData({
showShopCarContent: !this.data.showShopCarContent,
showMask: !this.data.showMask
});
},
/**
* 获取优惠券
* @param e
*/
getCoupon: function getCoupon(e) {
wx.showToast({
title: '领取优惠券',
icon: 'success',
duration: 2000,
mask: true
});
},
/**
* 设置右侧滚动栏的位置
*/
setNeedDistance: function setNeedDistance() {
if (!this.data.restaurant.coupon.id) return;
this.setData({
needDistance: 142
});
},
/**
* 改变menu选择
* @param e
*/
choose: function choose(e) {
// console.log(e)
this.setData({
currentmenu: e.currentTarget.dataset.tab
});
},
/**
* 改变left menu选择
* @param e
*/
leftChoose: function leftChoose(e) {
this.setData({
currentleftmenu: e.currentTarget.dataset.menu,
currentmenuid: e.currentTarget.dataset.menulistid
});
},
/**
* 选择桌子取号
*/
getdesk: function getdesk(e) {
var index = e.currentTarget.dataset.desk;
var title = null;
if (index === '0') {
title = '小桌取号成功';
} else if (index === '1') {
title = '中桌取号成功';
} else {
title = '大桌取号成功';
}
wx.showToast({
title: title,
icon: 'success',
duration: 2000
});
},
/**
* 户呼叫服务
* @param e
*/
menu1choose: function menu1choose(e) {
console.log(e.currentTarget.dataset.tabmenu);
},
/**
* 拨打电话
*/
callPhone: function callPhone() {
wx.makePhoneCall({
phoneNumber: this.data.restaurant.tel
});
},
/**
* 修改标题栏文字
*/
setNavigatorText: function setNavigatorText() {
var that = this;
wx.setNavigationBarTitle({
title: that.data.restaurant.name
});
},
/**
* 添加商品
* @param e
*/
addorder: function addorder(e) {
var goodsId = e.currentTarget.dataset.goodsid;
if (!goodsId) {
return wx.showModal({
title: '抱歉',
content: '您选的菜品暂时无法提供',
showCancel: false,
confirmText: '我知道了'
});
}
var chooseGoods = this.data.chooseGoods;
var goods = chooseGoods.goods;
var count = goods[goodsId];
// 已有该商品
if (count) {
goods[goodsId] = ++count;
} else {
goods[goodsId] = 1;
}
chooseGoods.goods = goods;
this.setData({
chooseGoods: chooseGoods
});
var money = this.calculateMoney();
chooseGoods.money = money;
// 增加计数
++chooseGoods.allCount;
this.setData({
chooseGoods: chooseGoods
});
wx.setStorageSync('chooseGoods', this.data.chooseGoods);
},
/**
* 删除商品
* @param e
*/
delorder: function delorder(e) {
var goodsId = e.currentTarget.dataset.goodsid;
var chooseGoods = this.data.chooseGoods;
var goods = chooseGoods.goods;
var count = goods[goodsId];
goods[goodsId] = --count;
chooseGoods.goods = goods;
this.setData({
chooseGoods: chooseGoods
});
var money = this.calculateMoney();
chooseGoods.money = money;
// 减少计数
--chooseGoods.allCount;
if (chooseGoods.allCount <= 0) {
this.setData({
showMask: false,
showShopCarContent: false
});
}
this.setData({
chooseGoods: chooseGoods
});
wx.setStorageSync('chooseGoods', this.data.chooseGoods);
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function onLoad() {
// TODO: onLoad
// 改变标题栏文字
this.setNavigatorText();
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function onReady() {
// TODO: onReady
this.setNeedDistance();
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function onShow() {
// TODO: onShow
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function onHide() {
// TODO: onHide
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function onUnload() {
// TODO: onUnload
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function onPullDownRefresh() {
// TODO: onPullDownRefresh
}
});
//# sourceMappingURL=ordering.js.map
|
模板简介:该模板名称为【微信小程序红色取号点菜服务页面样式模板制作设计下载】,大小是,文档格式为.,推荐使用打开,作品中的图片,文字等数据均可修改,图片请在作品中选中图片替换即可,文字修改直接点击文字修改即可,您也可以新增或修改作品中的内容,该模板来自用户分享,如有侵权行为请联系网站客服处理。欢迎来懒人模板【小程序教程】栏目查找您需要的精美模板。