Browse Source

活动详情逻辑编写,接口未对接

feature/v1.1.0
lfs3 7 years ago
parent
commit
9ffa27dcf4
6 changed files with 280 additions and 65 deletions
  1. BIN
      images/空.png
  2. 258
      pages/activity_detail/activity_detail.js
  3. 31
      pages/activity_detail/activity_detail.wxml
  4. 49
      pages/activity_detail/activity_detail.wxss
  5. 5
      pages/index/index.wxss
  6. 2
      pages/mcenter/mcenter.js

BIN
images/空.png

Before After
Width: 81  |  Height: 98  |  Size: 7.3 KiB

258
pages/activity_detail/activity_detail.js

@ -8,45 +8,85 @@ Page({
* 页面的初始数据
*/
data: {
bottomBGColor: '#21BE8D',//
buttomText: '我要开团',
rule_image_height:0,//活动规则图片高度
activityNo: "",
groupNo: "",
memberList: [],
activityDetail: {},
currentMemberType: -1,//参与人角色,-1游客,0发起者,10参与者
groupStatus:0,//团状态,0发起拼团,10正在拼团,20拼团成功,90拼团失败
rule_image_height: 0,//活动规则图片高度
detail_image_height: 0,//活动详情图片高度
bannerImage: '/images/activity_banner.png',
ruleImage: '/images/banner1.png',
countDownDay: 0,
countDownHour: 0,
countDownMinute: 0,
countDownSecond: 0,
memberList:[],
activityDetail:{},
grounpInfo:"block",
activityNo:"",
groupNo: "",
countDownSecond: 0,
//根据状态切换样式
grounpInfo: "block",
grounpInfo2: "none",
one_content: "block",
two_content: "none",
bottomBGColor: '#F36619',
buttomText: '我要开团',
tagColor: "#F8B551",
remark: "none",
remarkText:"已退款",
//分享
show: false,
cancelWithMask: true,
actions: [{
name: '微信好友',
icon: '../../images/wechat_ico.png',
openType: 'share'
}, {
name: '朋友圈',
icon: '../../images/moments_ico.png'
}],
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
this.setData({
activityNo: options.activityNo == undefined ? "" : options.activityNo,
groupNo: options.groupNo == undefined ? "" : options.groupNo,
});
console.log("activityNo1231" + this.data.activityNo);
this.getActivityDetail()
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
//this.countActivityTime(1527609600);
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
//获取活动详情
this.getActivityDetail();
},
getActivityDetail: function (){
let that = this;
wx.showNavigationBarLoading() //在标题栏中显示加载
getActivityDetail: function () {
let that = this;
wx.showNavigationBarLoading(); //在标题栏中显示加载
var url = "";
var data = {};
if (that.data.groupNo != "") {
url = "/mall/wxa/activity/group/detail";
} else {
url = "/mall/wxa/activity/detail";
}
wx.request({
url: app.gw.hostUrl + '/mall/wxa/activity/detail',
url: app.gw.hostUrl + url,
method: 'get',
data: {
activityNo: that.data.activityNo,
groupNo: that.data.groupNo,
},
header: {
'Content-Type': 'application/x-www-form-urlencoded'
@ -56,13 +96,106 @@ Page({
var status = data.code;
console.log(res);
if (status == 0) {
that.setData({
activityDetail: data.response,
grounpInfo: "none",
});
activityNo: data.response.activityNo,
groupNo: data.response.groupNo == undefined ? "" : data.response.groupNo,
memberList: data.response.memberList,
groupStatus: data.response.status,
currentMemberType: data.response.currentMemberType == undefined ? -1 : data.response.currentMemberType,
});
let activityContent = data.response.activityContent;
WxParse.wxParse('activityContent', 'html', activityContent, that);
//根据状态切换样式
if (that.data.groupNo !=""){
//开团后页面变化
if (that.data.status == 10){
//团倒计时时
countActivityTime()
//正在拼团
that.setData({
grounpInfo: "block",
grounpInfo2: "none",
tagColor: "#F8B551",
});
if (that.data.currentMemberTyp == -1){
//游客
that.setData({
one_content: "none",
two_content: "block",
buttomText: '我要开团',
});
} else if (that.data.currentMemberType == 0 || that.data.currentMemberType == 10){
//发起人和邀请人
that.setData({
one_content: "block",
two_content: "none",
bottomBGColor: '#21BE8D',
buttomText: '邀请好友拼团',
});
}
} else if (that.data.status == 20){
//拼团成功
if (that.data.currentMemberTyp == -1) {
//游客
that.setData({
one_content: "block",
two_content: "none",
bottomBGColor: '#F36619',
buttomText: '我要开团',
grounpInfo: "none",
grounpInfo2: "block",
});
} else if (that.data.currentMemberType == 0 || that.data.currentMemberType == 10) {
//发起人和邀请人
that.setData({
tagColor: "#21BE8D",
one_content: "block",
two_content: "none",
bottomBGColor: '#21BE8D',
buttomText: '立即预约',
grounpInfo: "block",
grounpInfo2: "none",
remarkText: "",
});
}
} else if (that.data.status == 90){
//拼团失败
if (that.data.currentMemberTyp == -1) {
//游客
that.setData({
one_content: "block",
two_content: "none",
bottomBGColor: '#F36619',
buttomText: '我要开团',
grounpInfo: "none",
grounpInfo2: "block",
});
} else if (that.data.currentMemberType == 0 || that.data.currentMemberType == 10) {
//发起人和邀请人
that.setData({
tagColor: "#999999",
one_content: "block",
two_content: "none",
bottomBGColor: '#F36619',
buttomText: '重新开团',
grounpInfo: "block",
grounpInfo2: "none",
remarkText: "已退款",
});
}
}
}else{
that.setData({
grounpInfo: "none",
grounpInfo2: "none",
});
}
} else {
wx.showToast({
title: data.msg,
@ -88,7 +221,7 @@ Page({
/**
*活动倒计时方法
*/
countActivityTime: function (timeStamp){
countActivityTime: function (timeStamp) {
var totalSecond = timeStamp - Date.parse(new Date()) / 1000;
var interval = setInterval(function () {
// 秒数
@ -133,7 +266,7 @@ Page({
countDownSecond: '00',
});
}
}.bind(this), 1000);
}.bind(this), 1000);
},
// 图片加载
ruleImageLoad: function (image) {
@ -153,19 +286,57 @@ Page({
})
},
groupTap:function(e){
//点击团按钮操作
groupTap: function (e) {
var url = "";
if (that.data.groupNo == ""){
url = '/mall/wxa/activity/group/group';
//首次开团
this.groupOpenOrJoin(url);
}else{
if (that.data.status == 10) {
//正在拼团
if (that.data.currentMemberTyp == -1) {
//游客
url = '/mall/wxa/activity/group/join';
this.groupOpenOrJoin(url);
}else{
//团长与参与人点击分享
}
} else if (that.data.status == 20) {
//拼团成功
if (that.data.currentMemberTyp == -1) {
//游客
url = '/mall/wxa/activity/group/group';
this.groupOpenOrJoin(url);
} else {
//团长与参与人立即预约
}
} else if (that.data.status == 90){
//拼团失败
url = '/mall/wxa/activity/group/group';
this.groupOpenOrJoin(url);
}
}
},
//开团与参团
groupOpenOrJoin: function (url) {
let that = this;
wx.showToast({
title: '正在调起支付',
icon: 'loading'
})
wx.request({//获取微信支付想要的数据
url: app.gw.hostUrl + '/mall/wxa/activity/group/open',
url: app.gw.hostUrl + url,
method: 'get',
data: {
openid: app.globalData.openid,
activityNo: that.data.activityNo
activityNo: that.data.activityNo,
groupNo: that.data.groupNo,
},
header: {
'Content-Type': 'application/x-www-form-urlencoded',
@ -199,15 +370,10 @@ Page({
icon: 'success',
duration: 2000
})
// wx.switchTab({//跳转到订单页面
// url: '../order/order',
// success: function (e) {
// var page = getCurrentPages().pop();
// if (page == undefined || page == null) return;
// console.log(page);
// page.onShow();
// }
// })
wx.navigateTo({
url: '../pay_result/pay_result?activityNo=' + that.data.activityNo + '&groupNo=' + that.data.groupNo
})
},
"fail": function (res) {
console.log(res);
@ -236,53 +402,41 @@ Page({
},
});
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
//this.countActivityTime(1527609600);
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
}
})

31
pages/activity_detail/activity_detail.wxml

@ -29,16 +29,19 @@
</view>
<view class='grounp_info' style='display: {{grounpInfo}};'>
<view class='status'>
<text class="tag">拼团中</text>
<view class='remark'>还差
<text class='num'>4</text>人拼团成功
<text class="tag" style='border-color: {{tagColor}};color: {{tagColor}};'>拼团中</text>
<view class='remark' style='display: {{remark}};'>还差
<text class='num'>{{activityDetail.limitNum - memberList.length}}</text>人拼团成功
</view>
<view class="countDownTimeView">
<view class="countDownTimeView" style='display: {{remark}};'>
<text class="countDownTimeText">{{countDownDay}}天</text>
<text class="countDownTimeText">{{countDownHour}}时</text>
<text class="countDownTimeText">{{countDownMinute}}分</text>
<text class="countDownTimeText">{{countDownSecond}}秒</text>
</view>
<view class='remarkText' style='display: {{remark == "none" ? "block" : "none"}};'>
{{remarkText}}
</view>
</view>
<view class='list'>
<scroll-view scroll-x="{{true}}" scroll-y="{{false}}" class='list'>
@ -51,16 +54,26 @@
</scroll-view>
</view>
</view>
<view class='grounp_info2' style='display: {{grounpInfo2}};'>
<view class='row1'>
<image src='/images/空.png' class='image'></image>
<text class='text'>你来晚了</text>
</view>
<view class='row2'>176****6411发起的拼团已结束</view>
</view>
<image src="{{ruleImage}}" bindload="ruleImageLoad" style="width:100%;margin: 5rpx auto;height:{{rule_image_height}}px"></image>
<view class="global_focus intro-box" style='margin: 5rpx auto;'>
<template is="wxParse" data="{{wxParseData:activityContent.nodes}}" />
</view>
</scroll-view>
<view class='bottom_view'>
<view class='one_content' id='one_button' style='background-color:{{bottomBGColor}};' bindtap='groupTap'>{{buttomText}}</view>
<view class='two_content' id='two_content'>
<view class='left'>¥499</view>
<view class='right' >{{buttomText}}</view>
<view class='one_content' id='one_button' style='display: {{one_content}};background-color:{{bottomBGColor}};' bindtap='groupTap;'>{{buttomText}}</view>
<view class='two_content' id='two_content' style='display: {{one_content}};'>
<view class='left'>¥{{activityDetail.participantPrice / 100}}</view>
<view class='right' bindtap='groupTap'>{{buttomText}}</view>
</view>
</view>
</view>
</view>
<!--底部弹出框-->
<zan-actionsheet show="{{ show }}" actions="{{ actions }}" cancel-with-mask="{{ cancelWithMask }}" bind:cancel="closeActionSheet" bind:actionclick="clickAction" mask-class="tiny" />

49
pages/activity_detail/activity_detail.wxss

@ -90,6 +90,44 @@ image{
margin: 30rpx auto;
}
.grounp_info2{
width: 100%;
background: white;
height: 220rpx;
margin: 30rpx auto;
}
.grounp_info2 .row1{
width: 100%;
height: 33px;
margin: 20px auto;
display: flex;
flex-direction: row;
justify-content:center;
}
.grounp_info2 .row1 .image{
margin-top: 14px;
width: 27px;
height: 33px;
}
.grounp_info2 .row1 .text{
margin-top: 18px;
width: 90px;
height: 33px;
margin-left: 10px;
color: #999999;
font-size: 18px;
}
.grounp_info2 .row2{
margin-top: 10px;
width: 100%;
height: 20px;
color: #F44054;
font-size: 16px;
text-align: center;
}
.grounp_info .status{
width: 100%;
height: 80rpx;
@ -104,9 +142,8 @@ image{
border-radius:18px;
border-width: 2rpx;
border-style: solid;
border-color: #F8B551;
margin-left: 26rpx;
color: #F8B551;
}
.grounp_info .status .remark{
@ -117,6 +154,14 @@ image{
font-size: 26rpx;
}
.grounp_info .status .remarkText{
width: 300rpx;
height: 30rpx;
margin: -40rpx 150rpx auto;
color: #F44054;
font-size: 26rpx;
}
.grounp_info .status .remark .num{
color: #F44053;
font-size: 26rpx;

5
pages/index/index.wxss

@ -49,12 +49,15 @@ image{
.menu .list{
width: 100%;
height: 100%;
display: flex;
flex-direction: row;
justify-content:center;
}
.menu .list .view{
height: 46rpx;
width: 150rpx;
float: left;
/* float: left; */
margin: 22rpx auto;
}
.menu .list .view .green_button{

2
pages/mcenter/mcenter.js

@ -34,7 +34,7 @@ Page({
})
},
goOrder: function (e) {
wx.switchTab({
wx.navigateTo({
url: '../order/order'
})
},

Loading…
Cancel
Save