Commit f961a466 by jscat

nyx weapp: 功能更新 & 页面更新

1. 暂时去除my.wxml的'我的活动', 因为暂时还没有电商功能
2. 调整like的数据流
parent c33dc349
// pages/activity/activity-info/activity-info.js // pages/activity/activity-info/activity-info.js
...@@ -58,7 +58,6 @@ Page({ ...@@ -58,7 +58,6 @@ Page({
var activityInfo = _this.__data__.activityInfo var activityInfo = _this.__data__.activityInfo
if (Object.keys(activityInfo).length==0 && options.title != "") if (Object.keys(activityInfo).length==0 && options.title != "")
{ {
activityInfo['index_id'] = options.index_id;
activityInfo['activity_id'] = options.activity_id; activityInfo['activity_id'] = options.activity_id;
activityInfo['note_image'] = options.note_image.split("::"); activityInfo['note_image'] = options.note_image.split("::");
activityInfo['title'] = options.title; activityInfo['title'] = options.title;
...@@ -145,7 +144,6 @@ Page({ ...@@ -145,7 +144,6 @@ Page({
var userId = _this.__data__.nyxCode var userId = _this.__data__.nyxCode
var activityId = _this.__data__.activityInfo['activity_id'] var activityId = _this.__data__.activityInfo['activity_id']
var numLike = _this.__data__.activityInfo['num_like'] var numLike = _this.__data__.activityInfo['num_like']
var indexId = _this.__data__.activityInfo['index_id']
// 如果存在update操作, 则更新 // 如果存在update操作, 则更新
if (likeDictUpdate.hasOwnProperty(activityId) && likeDictUpdate[activityId] != 0 ) { if (likeDictUpdate.hasOwnProperty(activityId) && likeDictUpdate[activityId] != 0 ) {
...@@ -157,7 +155,7 @@ Page({ ...@@ -157,7 +155,7 @@ Page({
//直接调用上一个页面的setData()方法,把数据存到上一个页面中去 //直接调用上一个页面的setData()方法,把数据存到上一个页面中去
prevPage.setData({ prevPage.setData({
likeDictSub: { 'index_id': indexId, 'num_like': numLike} likeDictSub: { 'activity_id': activityId, 'num_like': numLike}
}) })
} }
...@@ -312,7 +310,7 @@ Page({ ...@@ -312,7 +310,7 @@ Page({
// data.likeDictUpdate 负责数据库操作 // data.likeDictUpdate 负责数据库操作
var likeStatus = 0 var likeStatus = 0
var likeDictUpdate = _this.__data__.likeDictUpdate var likeDictUpdate = _this.__data__.likeDictUpdate
var likeDictStorage = wx.getStorageSync('likeDictStorage') var likeDictStorage = wx.getStorageSync('likeDictStorage') || {}
// 添加操作, 一定是storage的值为0或者undefined // 添加操作, 一定是storage的值为0或者undefined
if (!likeDictStorage.hasOwnProperty(activityId) || likeDictStorage[activityId] == 0 ) { if (!likeDictStorage.hasOwnProperty(activityId) || likeDictStorage[activityId] == 0 ) {
......
// pages/activity/activity.js // pages/activity/activity.js
...@@ -137,7 +137,7 @@ Page({ ...@@ -137,7 +137,7 @@ Page({
}) })
} }
// todo temp 暂时设置所有用户为个人(可以查看个人->商家管理) // step2 todo temp 暂时设置所有用户为个人(可以查看个人->商家管理)
wx.setStorageSync('memberId', "") wx.setStorageSync('memberId', "")
var device = wx.getSystemInfoSync() var device = wx.getSystemInfoSync()
...@@ -158,7 +158,12 @@ Page({ ...@@ -158,7 +158,12 @@ Page({
title: '酒肆活动', title: '酒肆活动',
}) })
//初始载入四个推荐的竞答活动 // step3 数据载入页面, 初始化
// 初始载入我收藏的清单, 存入storage
wx.setStorageSync('likeDictStorage', {})
_this.getCollectsStorage(0, 1, 100);
// 初始载入四个推荐的竞答活动
if(_this.__data__.activities.length == 0) if(_this.__data__.activities.length == 0)
{ {
var switchId = app.globalData.switchId var switchId = app.globalData.switchId
...@@ -175,6 +180,7 @@ Page({ ...@@ -175,6 +180,7 @@ Page({
} }
// event 订阅, 主要接受my-collect.js里 emit 发送的消息
event.on('DataChanged', this, function(data) { event.on('DataChanged', this, function(data) {
var activity_id = data['activity_id'] var activity_id = data['activity_id']
var num_like = data['num_like'] var num_like = data['num_like']
...@@ -216,10 +222,16 @@ Page({ ...@@ -216,10 +222,16 @@ Page({
var likeDictSub = _this.__data__.likeDictSub; var likeDictSub = _this.__data__.likeDictSub;
var activities = _this.__data__.activities; var activities = _this.__data__.activities;
if(likeDictSub.hasOwnProperty('index_id')) if(likeDictSub.hasOwnProperty('activity_id'))
{
var activity_id = likeDictSub['activity_id']
for(var i=0; i< activities.length; i++)
{
if(activity_id == activities[i]['activity_id'])
{ {
var index = likeDictSub['index_id'] activities[i]['num_like'] = likeDictSub['num_like']
activities[index]['num_like'] = likeDictSub['num_like'] }
}
_this.setData({ _this.setData({
activities: activities, activities: activities,
likeDictSub: {}, // 处理完之后, 重置为{} likeDictSub: {}, // 处理完之后, 重置为{}
...@@ -323,6 +335,7 @@ Page({ ...@@ -323,6 +335,7 @@ Page({
if (res.data.data.length < pageCount) { if (res.data.data.length < pageCount) {
bisHideLoadMoreType = true; bisHideLoadMoreType = true;
} }
for (var i = 0; i < res.data.data.length; i++) { for (var i = 0; i < res.data.data.length; i++) {
var index_id = i + _this.__data__.activities.length var index_id = i + _this.__data__.activities.length
var result = {} var result = {}
...@@ -570,8 +583,50 @@ Page({ ...@@ -570,8 +583,50 @@ Page({
var strSearch = _this.__data__.strSearch var strSearch = _this.__data__.strSearch
_this.getActivities(0, 1, 4, strCity, strCategory, strSearch); _this.getActivities(0, 1, 4, strCity, strCategory, strSearch);
},
// 获取collects数据
// scrollType: 是否是翻页
// tips; 该函数是my-collects函数的简略版, 而且是单次运行的
getCollectsStorage: function (scrollType, pageNum, pageCount) {
var _this = this;
var userId = _this.__data__.nyxCode
var query_url = '&userId=' + userId
var strUrl = config.collect_query_url + "?pageCount=" + pageCount
+ "&pageNum=" + pageNum + query_url
config.debug == 1 ? console.log("===strUrl is: \"" + strUrl + "\"") : ""
wx.request({
url: strUrl,
method: 'GET',
header: {
'Cookie': wx.getStorageSync('cookieKey'),
},
success: function (res) {
if (res.data.resultCode == 200) {
//表示HTTP请求成功
console.log(res.data);
// 设置全局的点赞标记 step1
var likeDictStorage = wx.getStorageSync('likeDictStorage') || {}
for (var i = 0; i < res.data.data.length; i++) {
var result = {}
result["activity_id"] = res.data.data[i].activityId
// 设置全局的点赞标记 step2
likeDictStorage[result["activity_id"]] = 1
} }
// 设置全局的点赞标记 step3
wx.setStorageSync('likeDictStorage', likeDictStorage)
}
}
})
},
}) })
......
<wxs module="tutil" src="./../../utils/date.wxs"></wxs> <wxs module="tutil" src="./../../utils/date.wxs"></wxs>
...@@ -30,12 +30,13 @@ ...@@ -30,12 +30,13 @@
<view class="workbench"> <view class="workbench">
<view class="list"> <view class="list">
<view class="items"> <!-- jscat todo 0828 以用户为主, 扫一扫暂时也不实现 -->
<!-- <view class="items">
<view bindtap="getQRCode"> <view bindtap="getQRCode">
<image src="../../icon/activity/scan.png"></image> <image src="../../icon/activity/scan.png"></image>
</view> </view>
<text>扫一扫</text> <text>扫一扫</text>
</view> </view> -->
<!-- todo 0820 以活动为主, 积分暂时也不实现 --> <!-- todo 0820 以活动为主, 积分暂时也不实现 -->
<!-- <view class="items"> <!-- <view class="items">
<navigator url="/pages/my/my-points/my-points"> <navigator url="/pages/my/my-points/my-points">
...@@ -44,30 +45,38 @@ ...@@ -44,30 +45,38 @@
<text>积分</text> <text>积分</text>
</view> --> </view> -->
<!-- todo 0728 热销暂时也不实现 --> <!-- todo 0728 热销暂时也不实现 -->
<view class="items"> <!-- todo 0828 我的活动暂时也不实现 -->
<!-- <view class="items">
<navigator url="/pages/my/my-orders/my-orders"> <navigator url="/pages/my/my-orders/my-orders">
<image src="../../icon/activity/order.png"></image> <image src="../../icon/activity/order.png"></image>
</navigator> </navigator>
<text>我的活动</text> <text>我的活动</text>
</view> </view> -->
<!-- jscat20200816 添加活动日历 for convinience --> <!-- jscat20200816 添加活动日历 for convinience -->
<block wx:if="{{memberId!=''}}"> <block wx:if="{{memberId!=''}}">
<view class="items"> <view class="items">
<navigator url="/pages/activity/activity-list/activity-list?city={{city}}"> <navigator url="/pages/activity/activity-list/activity-list?city={{city}}">
<image src="../../icon/member/schedule.png"></image> <image src="../../icon/member/schedule.png" style="margin-top:10rpx; margin-bottom:-10rpx"></image>
<text style="font-size:28rpx;">本周活动</text>
</navigator> </navigator>
<text>本周活动</text>
</view> </view>
</block> </block>
<block wx:else> <block wx:else>
<view class="items"> <view class="items">
<navigator url="/pages/member/schedule/schedule"> <navigator url="/pages/member/schedule/schedule">
<image src="../../icon/member/schedule.png"></image> <image src="../../icon/member/schedule.png"></image>
<text style="font-size:28rpx;">活动日历</text>
</navigator> </navigator>
<text>活动日历</text>
</view> </view>
</block> </block>
<view class="items">
<navigator url="/pages/my/my-collects/my-collects">
<image src="../../icon/my/fav.png" style="margin-top:10rpx; margin-bottom:-10rpx"></image>
<text style="font-size:28rpx;">我的收藏</text>
</navigator>
</view>
</view> </view>
</view> </view>
......
/* /*
...@@ -405,8 +405,8 @@ ...@@ -405,8 +405,8 @@
text-align: center; text-align: center;
} }
.workbench .items image{ .workbench .items image{
width: 80rpx; width: 60rpx;
height: 80rpx; height: 60rpx;
} }
.workbench .items image.service-icon{ .workbench .items image.service-icon{
width: 50rpx; width: 50rpx;
......
// pages/activity/activity.js // pages/activity/activity.js
...@@ -50,9 +50,12 @@ Page({ ...@@ -50,9 +50,12 @@ Page({
}) })
} }
// todo temp 暂时设置所有用户为个人(可以查看个人->商家管理) // step2: todo temp 暂时设置所有用户为个人(可以查看个人->商家管理)
wx.setStorageSync('memberId', "") wx.setStorageSync('memberId', "")
// step3 数据载入页面, 初始化
wx.setStorageSync('likeDictStorage', {})
var device = wx.getSystemInfoSync() var device = wx.getSystemInfoSync()
//self.device = app.globalData.myDevice //self.device = app.globalData.myDevice
// jscat miniprogram default width is 750rpx // jscat miniprogram default width is 750rpx
...@@ -93,17 +96,23 @@ Page({ ...@@ -93,17 +96,23 @@ Page({
*/ */
onShow: function () { onShow: function () {
var _this = this; var _this = this;
var likeDictSub = _this.__data__.likeDictSub; var likeDictSub = _this.__data__.likeDictSub;
var collects = _this.__data__.collects; var collects = _this.__data__.collects;
if(likeDictSub.hasOwnProperty('index_id')) if(likeDictSub.hasOwnProperty('activity_id'))
{ {
var index = likeDictSub['index_id'] // step1: 在这个页面只能直接取消; 故直接从collects里去除该记录
var activity_id = collects[index]['activity_id'] var activity_id = likeDictSub['activity_id']
var num_like = likeDictSub['num_like'] var num_like = likeDictSub['num_like']
collects[index]['num_like'] = likeDictSub['num_like'] for(var index=0; index< collects.length; index++)
//在这个页面只能直接取消; 故直接从collects里去除该记录 {
if(activity_id == collects[index]['activity_id'])
{
collects.splice(index, 1) collects.splice(index, 1)
}
}
// step2: 通过eventBus影响首页(activity)的数据
var data = { var data = {
'activity_id': activity_id, 'activity_id': activity_id,
'num_like' : num_like 'num_like' : num_like
...@@ -209,7 +218,7 @@ Page({ ...@@ -209,7 +218,7 @@ Page({
} }
// 设置全局的点赞标记 step1 // 设置全局的点赞标记 step1
var likeDictStorage = {} var likeDictStorage = wx.getStorageSync('likeDictStorage') || {}
for (var i = 0; i < res.data.data.length; i++) { for (var i = 0; i < res.data.data.length; i++) {
var result = {} var result = {}
......
<wxs module="tutil" src="./../../../utils/date.wxs"></wxs> <wxs module="tutil" src="./../../../utils/date.wxs"></wxs>
...@@ -2,6 +2,9 @@ ...@@ -2,6 +2,9 @@
<view class="page"> <view class="page">
<!-- 收藏列表 --> <!-- 收藏列表 -->
<view class="top_placeholder"></view>
<!-- <!--
title title
unit_price unit_price
......
/* /*
...@@ -438,4 +438,10 @@ ...@@ -438,4 +438,10 @@
} }
/* end of workbench*/ /* end of workbench*/
.top_placeholder {
position: relative;
width: 100%;
height: 40rpx;
line-height: 10rpx;
}
<view class="page"> <view class="page">
...@@ -31,13 +31,14 @@ ...@@ -31,13 +31,14 @@
<view class="weui-cell__bd">我的积分</view> <view class="weui-cell__bd">我的积分</view>
<view class="weui-cell__ft weui-cell__ft_in-access"></view> <view class="weui-cell__ft weui-cell__ft_in-access"></view>
</navigator> --> </navigator> -->
<navigator class="weui-cell weui-cell_access" hover-class="weui-cell_active" url="/pages/my/my-orders/my-orders"> <!-- jscat 20200828 与商家商谈之后再考虑 -->
<!-- <navigator class="weui-cell weui-cell_access" hover-class="weui-cell_active" url="/pages/my/my-orders/my-orders">
<view class="weui-cell__hd"> <view class="weui-cell__hd">
<image src="/icon/my/activity.png" /> <image src="/icon/my/activity.png" />
</view> </view>
<view class="weui-cell__bd">我的活动</view> <view class="weui-cell__bd">我的活动</view>
<view class="weui-cell__ft weui-cell__ft_in-access"></view> <view class="weui-cell__ft weui-cell__ft_in-access"></view>
</navigator> </navigator> -->
<navigator class="weui-cell weui-cell_access" hover-class="weui-cell_active" url="/pages/my/my-collects/my-collects"> <navigator class="weui-cell weui-cell_access" hover-class="weui-cell_active" url="/pages/my/my-collects/my-collects">
<view class="weui-cell__hd"> <view class="weui-cell__hd">
<image src="/icon/my/fav.png" /> <image src="/icon/my/fav.png" />
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论