Commit ac90965ca66ace622b672490e65cffafcf444be9

Authored by pengye
1 parent ec8c7eed

挂机短信链接加上充值和优惠券活动、入驻信息

... ... @@ -362,6 +362,7 @@
border-radius: 6rpx;
margin: 0 10rpx 0 20rpx;
font-family: PingFang SC;
padding: 0 6rpx;
}
.itemTop .priceText {
... ...
... ... @@ -400,6 +400,7 @@
border-radius: 6rpx;
margin: 0 10rpx 0 20rpx;
font-family: PingFang SC;
padding: 0 6rpx;
}
.itemTop .priceText {
... ...
... ... @@ -364,6 +364,7 @@
border-radius: 6rpx;
margin: 0 10rpx 0 20rpx;
font-family: PingFang SC;
padding: 0 6rpx;
}
.itemTop .priceText {
... ...
... ... @@ -382,6 +382,7 @@
border-radius: 6rpx;
margin: 0 10rpx 0 20rpx;
font-family: PingFang SC;
padding: 0 6rpx;
}
.itemTop .priceText {
... ...
... ... @@ -23,6 +23,16 @@ Page({
home: {},
sid: '',
IsCollectionSeller: false,
hasValueCertificate:false,//商家是否开通优惠券功能
hasValueRecharge:false,//商家是否开通充值功能
marketing: {},
recharge_data: {},
scoreInfo:'',
priceInfo:'',
certificate:'',
coupon_dataList:[],
dataStr: Date.now() * 1 / 1000,
StyleType:'',
},
/**
... ... @@ -35,6 +45,7 @@ Page({
})
this.getDetail(options.sid)
this.getIsCollectionSellerFun(options.sid)
this.getSellerVersionFun(options.sid)
}
},
// 获取商家是否收藏状态
... ... @@ -75,17 +86,78 @@ Page({
console.log(res, '详情请求失败');
})
},
// 获取商家版本,不是超能版或者没有开通对应模块,不显示
getSellerVersionFun(sellerid){
App.SellerVersion.GetSellerVersion({
sellerid
}).then((res) => {
console.log('版本列表',res.data);
if(res.data && res.data.length>0){
const hasValueCertificate = res.data.some(item => item.vid == '1' || item.vid == '2' || item.vid == '3' || item.vid == '8');
const hasValueRecharge = res.data.some(item => item.vid == '1' || item.vid == '2' || item.vid == '3' || item.vid == '9');
this.setData({
hasValueCertificate,
hasValueRecharge,
})
}
})
},
// 点击了解更多会员优惠政策
gotoFavourableList() {
let url = util.http_build_query({
sellerName: this.data.seller.sellName,
sellerid: this.data.sid,
types: '3'
}, '/pack-cookbook/pages/favourableList')
wx.navigateTo({
url
})
},
// 拨打电话
callPhone(e) {
const phone = e.currentTarget.dataset['phone'];
wx.makePhoneCall({
phoneNumber: phone
})
},
// 跳转到商家入驻页
gotoJoinSeller() {
wx.navigateTo({
url: '/pages/customer/joinSeller',
})
},
// 获取商家设置营销信息
getSellerTemplateConfFun(sid) {
App.Seller.GetSellerTemplateConf({
sid
}).then(res => {
let data = res.data
let home, chef, signboard, store;
let couponList = []
let home, chef, signboard, store, marketing, coupon, StyleType;
chef = util.determine(data.chef);
signboard = util.determine(data.signboard);
store = util.determine(data.store);
home = util.determine(data.home);
marketing = util.determine(data.marketing);
StyleType = data.type;
if (marketing) {
coupon = marketing.coupon_data ? util.determine(marketing.coupon_data) : '';
}
// is_cash 代金券 is_discount折扣券 is_dish菜品券 只有代金券有几折显示
if (coupon && util.getType(coupon) == 'object') {
couponList.push({
id: coupon.id
});
}
if (coupon && util.getType(coupon) == 'array') {
if (coupon.length > 0) {
coupon.forEach(item => {
couponList.push({
id: item.id
})
})
}
}
if (store && store.images.length > 0) store.images = util.determine(store.images);
if (signboard && signboard.images) signboard.images = util.determine(signboard.images);
let obj = {
... ... @@ -93,20 +165,81 @@ Page({
signboard,
store,
home,
marketing,
coupon,
couponList,
StyleType,
}
console.log('获取数据', {
...obj
});
// 根据券ID获取券详情
this.getActivityByIdFun(couponList, couponList.length)
// 根据充值ID获取充值详情
if (marketing && marketing.is_recharge == '1' && marketing.recharge_data) {
this.getRechargeDetail(marketing.recharge_data.id)
}
this.setData({
chef,
signboard,
store,
home,
marketing,
StyleType,
})
}).catch(res => {
console.log('GetSellerTemplateConf请求失败');
})
},
// 根据充值ID获取充值详情
getRechargeDetail(id) {
App.Activity.GetNewRecharge({
id
}).then(res => {
let detail = res.data
let exp_date = res.data.exp_date ? JSON.parse(res.data.exp_date) : ''
let recharge_list = res.data.recharge_list ? JSON.parse(res.data.recharge_list) : ''
let priceInfo, scoreInfo, certificate;
detail.recharge_list = recharge_list;
detail.exp_date = exp_date;
if (recharge_list.is_price == '1') priceInfo = '会员充值满' + detail.recharge_money + '元赠送' + recharge_list.price + '元余额';
if (recharge_list.is_score == '1') scoreInfo = '会员充值满' + detail.recharge_money + '元赠送' + recharge_list.score + '积分';
if (recharge_list.is_coupons == '1' && recharge_list.coupons_names.length > 0) certificate = recharge_list.coupons_names.join('、');
this.setData({
recharge_data: detail,
scoreInfo,
priceInfo,
certificate
})
})
},
// 根据券ID获取券详情
getActivityByIdFun(ids, length) {
let coupon_dataList = [];
ids.forEach(i => {
App.Activity.GetActivityById({
id: i.id
}).then(res => {
if (res.data.length > 0) {
let detail = res.data[0];
detail.stringifyUse = detail.use ? JSON.stringify(detail.use) : '';
detail.exp_date = detail.exp_date ? util.determine(detail.exp_date) : '';
detail.use = detail.use ? util.determine(detail.use) : '';
if ((detail.use && (!detail.use.is_cash || detail.use.is_cash == '1'))) {
let cash = detail.use.cash * 1;
let price = detail.price * 1;
detail.discount = cash != 0 ? ((price / cash) * 10).toFixed(1) : '';
}
coupon_dataList.push(detail);
if (length === ids.length) {
this.setData({
coupon_dataList,
})
}
}
})
})
},
// 导航
looklocation: function () {
wx.reportMonitor('1015', 1)
... ...
... ... @@ -19,9 +19,36 @@
</view>
</view>
</view>
<view class="preferential" wx:if="{{hasValueCertificate && marketing && marketing.is_coupon=='1' && coupon_dataList.length>0}}">
<block wx:for="{{coupon_dataList}}" wx:key="index" wx:for-index="index">
<view class="preferentialItems" wx:if="{{dataStr<(item.etime*1)}}">
<view class="itemLeft couponItem">
<view class="itemTop">
<text class="font28r">{{item.aname}}</text>
<view class="priceText font24r" wx:if="{{item.price}}">
<view class="icons font24r">¥</view>{{item.price}}
</view>
<!-- is_cash 代金券 is_discount折扣券 is_dish菜品券 只有代金券有几折显示 -->
<text wx:if="{{item.discount!='0.00' && (item.use.is_cash=='1' || item.use.is_cash) && item.discount}}" class="discountText font24r">{{item.discount}}折</text>
</view>
<text wx:if="{{item.exp_date.is_week=='1' || item.exp_date.is_week===true}}" class="bottom font24r">{{item.exp_date.week_show?item.exp_date.week_show+'可用':''}}{{item.desc?','+item.desc+'。':'。'}}</text>
<view wx:if="{{item.exp_date.is_none=='1' || item.exp_date.is_none===true}}" class="bottom font24r">
无限制{{item.desc?','+item.desc+'。':'。'}}
</view>
<view wx:if="{{item.exp_date.is_birthday=='1' || item.exp_date.is_birthday===true}}" class="bottom font24r">
会员生日当天可用{{item.desc?','+item.desc+'。':'。'}}
</view>
</view>
<navigator url="/pack-activity/pack/buyCoupon?id={{item.id}}&name={{seller.sellName}}&use={{item.stringifyUse}}&sid={{sid}}&types=3&StyleType={{StyleType}}" hover-class="navigator-hover">
<view class="font24r orderingFood">
抢购
</view>
</navigator>
</view>
</block>
</view>
<!-- 餐厅介绍图文分开 -->
<view class="oneIntroduce introduce" wx:if="{{store}}">
<view class="introduce" wx:if="{{store}}">
<view class="imgMask">
<view class="IntroduceColor" wx:if="{{store.introduce && (!store.is_introduce || store.is_introduce!='0')}}">
<view class="chefText font36r">餐厅介绍</view>
... ... @@ -33,7 +60,7 @@
</view>
<block wx:if="{{store.images.length>0 && (!store.is_images || store.is_images!='0')}}">
<block wx:for="{{store.images}}" wx:key="arryIndex" wx:for-index="arryIndex">
<image src="{{item}}" mode="aspectFill" />
<image src="{{item}}" mode="widthFix" />
</block>
</block>
</view>
... ... @@ -50,7 +77,7 @@
</view>
</view>
<block wx:if="{{(!chef.is_images || chef.is_images!='0') && chef.image}}">
<image src="{{chef.image}}" mode="aspectFill" />
<image src="{{chef.image}}" mode="widthFix" />
</block>
<view wx:if="{{chef.is_introduce || chef.is_images}}" class="{{(!chef.is_images || chef.is_images!='0')?'':'mtnone'}}"></view>
</view>
... ... @@ -63,10 +90,45 @@
<view class="lines"></view>
</view>
<block wx:for="{{signboard.images}}" wx:key="arryIndex" wx:for-index="arryIndex">
<image src="{{item}}" mode="aspectFill" />
<image src="{{item}}" mode="widthFix" />
</block>
</view>
</view>
<view class="preferential" wx:if="{{hasValueRecharge && marketing && (marketing.is_coupon=='1' || marketing.is_recharge=='1')}}">
<view class="chefText font36r" wx:if="{{marketing && marketing.is_recharge=='1' && recharge_data && (is_fix!='1' || (is_fix=='1' && dataStr<(recharge_data.exp_date.fix_edate*1)))}}">
特别优惠
</view>
<!-- 当前日期要大于限制结束日期 -->
<view class="preferentialItems" wx:if="{{marketing && marketing.is_recharge=='1' && recharge_data && (is_fix!='1' || (is_fix=='1' && dataStr<(recharge_data.exp_date.fix_edate*1)))}}">
<view class="itemLeft">
<view class="itemTop font28r">
<text>{{recharge_data.rname}}</text>
</view>
<view class="font24r" wx:if="{{priceInfo}}">
{{priceInfo}}{{(recharge_data.recharge_list.is_coupons=='0' && recharge_data.recharge_list.is_score=='0')?'。':';'}}
</view>
<view class="bottom font24r" wx:if="{{scoreInfo}}">
{{scoreInfo}}{{recharge_data.recharge_list.is_coupons=='0'?'。':';'}}
</view>
<view class="bottom font24r" wx:if="{{recharge_data.recharge_list.is_coupons=='1'}}">
{{recharge_data.recharge_list.is_coupons=='1'?'会员充值满'+recharge_data.recharge_money+'元赠送'+certificate:''}}。
</view>
</view>
<navigator url="/pack-activity/pack/vipRecharge?id={{recharge_data.id}}&name={{seller.sellName}}&sid={{sid}}&types=3&StyleType={{StyleType}}" hover-class="navigator-hover">
<view class="font24r orderingFood">
抢购
</view>
</navigator>
</view>
</view>
<view class="vips">
<view wx:if="{{hasValueRecharge && marketing.is_link=='1'}}" class="font24r favouredPolicy" bindtap="gotoFavourableList">
点击了解更多会员优惠政策
</view>
<text class="businessBox">
周到安排提供技术支持<text bindtap="callPhone" data-phone="4000009690">4000009690</text>,餐厅入驻请点击<text bindtap="gotoJoinSeller" style="text-decoration: underline;">这里</text>
</text>
</view>
<view class="all-button flex-lr between">
<navigator url="/pages/reserve/reserve?id={{sid}}&activeTab=reserve" class="book-item-font second-book-button flex-cc font30r" style="position: relative;">预订包间</navigator>
<button class="book-item-font flex-cc font30r shareItem" open-type="share">转发给朋友
... ...
... ... @@ -12,6 +12,7 @@
.sellBox {
width: 100%;
position: relative;
margin-bottom: 200rpx;
}
.info {
... ... @@ -85,7 +86,7 @@
}
.labelBox .texts {
width: 90%;
width: 100%;
line-height: 40rpx;
color: #515151;
font-family: PingFang SC;
... ... @@ -123,10 +124,6 @@
margin-top: 0;
}
.vegetableBox {
padding-bottom: 80px;
}
.chefText {
font-family: PingFang SC;
margin: 20rpx 20rpx 20rpx 0;
... ... @@ -134,8 +131,8 @@
color: #0143A3;
}
.oneIntroduce {
margin-top: 190rpx;
.preferential {
margin: 20rpx 0;
}
.between {
... ... @@ -173,4 +170,119 @@
margin: 0;
background: linear-gradient(104.24deg, #4c8dad -57.47%, #0143a3 55.72%, #42a5ff 148.72%);
color: #fff;
}
.preferential {
margin: 20rpx 40rpx 0 40rpx;
}
.rubric1 {
margin-bottom: 20rpx;
}
.preferentialItems {
padding: 20rpx 30rpx 20rpx 20rpx;
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 20rpx;
background: url('https://qn.colorcun.com/certificateBj.png') no-repeat;
background-size: 100% 100%;
}
.itemLeft {
width: 75%;
}
.itemTop {
display: flex;
width: 100%;
align-items: center;
margin-bottom: 20rpx;
}
.itemBottom {
color: #515151;
font-family: PingFang SC;
font-weight: 500;
display: -webkit-box;
word-break: break-all;
word-wrap: break-word;
overflow: hidden;
text-align: left;
}
.itemTop text:nth-of-type(1) {
max-width: 65%;
font-weight: 600;
color: #515151;
}
.itemTop .discountText {
text-align: center;
color: #E34D59;
border: 2rpx solid #E34D59;
border-radius: 6rpx;
margin: 0 10rpx 0 20rpx;
font-family: PingFang SC;
padding: 0 10rpx;
}
.itemTop .priceText {
color: #E34D59;
font-weight: 500;
}
.priceText {
display: flex;
align-items: center;
justify-content: center;
}
.priceText .icons {
margin-left: 18rpx;
color: #E34D59;
font-size: 20rpx;
}
.orderingFood {
padding: 0 26rpx;
border-radius: 22rpx;
text-align: center;
color: #fff;
border-radius: 32rpx;
margin: 20rpx 0;
line-height: 44rpx;
height: 44rpx;
background: linear-gradient(104.24deg, #4c8dad -57.47%, #0143a3 55.72%, #42a5ff 148.72%);
}
.vips {
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
padding-bottom: 200rpx;
margin-top: 20rpx;
}
.businessBox {
color: #515151;
font-size: 24rpx;
font-family: PingFang SC;
}
.businessBox text {
color: #0143A3;
}
.favouredPolicy {
width: 45%;
color: #5C95D7;
font-family: PingFang SC;
font-weight: 500;
border: 2rpx solid #5C95D7;
border-radius: 22rpx;
text-align: center;
padding: 10rpx;
}
\ No newline at end of file
... ...