web端限时活动逻辑处理总结
由于要在web端做一个限时活动的功能,功能大致为:一个小时内可以报名参加活动,然后给予报名者奖品,先到先得。用到一些处理逻辑做下总结,以前没有做过类似的东西,都是自己先体验其他网站的报名方式,然后再摸索出来的,有哪些不完善的地方还请多提出建议,非常感谢。
活动的大概情况是:某月的2号下午16点到17点是活动报名时间,按报名顺序前50名有奖品。活动开始前要进行浏览人数记录,至少1号和2号两天的浏览活动内容的要记录人数。由于是web端,当用户点击活动介绍按钮进去活动页时,即可记为用户浏览了活动内容。另外根据需求,要判断用户上次浏览的时间和这次浏览的时间是否相差超过一个小时,如果超过一个小时就把用户浏览的次数+1,如果用户上次浏览的时间和这次浏览的时间相差一天,则直接添加一条用户浏览记录。所以这次活动一要记录用户点击活动按钮的时间,二要记录用户浏览活动内容的次数和时间。所以设计表大致为:id,userid,phone,viewtime,clicktime,viewcount,recordtype 也就是说当recordtype=1时设置为浏览活动,recordtype=2时设置为点击活动,浏览活动的时候判断是否超过了一个小时,超过了就把viewcount加1,超过一天就直接添加一条浏览活动记录,后台用的框架为springmvc。
所以大致处理的流程伪代码如下:
用户点击活动按钮进入活动界面-->判断是否是活动时间,如果是活动开始前,则直接添加用户浏览活动信息,如果是活动时间,查询该用户是否已参与活动,如果已经参与返回友好提示,如果未参与则进一步判断是否活动时间已经结束,如果已经结束则后台记录当前用户ID、电话等信息,再返回友好提示活动结束,(每次记录浏览活动信息都要判断时间差是否相差一个小时或者一天,然后根据上面说的需求做处理),如果用户已经参与报名则按钮为灰色不能点击,如果超过了活动时间用户点击的时候提示活动结束,这些都可以用js来实现。
-->用户点击活动报名,前台js判断时间,如果活动时间前点击或者活动时间后点击给予对应的友好提示,如果是活动时间,则直接进入后台记录用户点击信息
-->后台判断时间,如果是活动时间记录参与者信息,如果不是活动时间则返回友好提示
大致的思路就是这样,这次活动是临时加的,时间比较紧,或许思路有些欠缺,代码就不贴了。
web端限时活动逻辑处理总结的更多相关文章
- 使用HslCommunication实现PLC数据的远程客户端监视,以及web端实时监视,远程操作设备示例
前言 本文主要是演示一个例子,服务器后台程序从PLC采集数据,并推送给在线客户端显示,以及推送给web端进行实时的显示,还支持远程操作,支持安卓端的同步监视和远程操作,关于HslCommunicati ...
- 移动web端的react.js组件化方案
背景: 随着互联网世界的兴起,web前端开发的方式越来越多,出现了很多种场景开发的前端架构体系,也对前端的要求日益增高,早已经不是靠一个JQuery.js来做前端页面的时代了,而今移动端变化最大,近 ...
- Web端测试和移动端测试的区别
1.记录bug 在Web端可以通过系统自带的截图和QQ截图等方式来截取bug的图片,对于错误的地方可以用工具自带的标识来重点标记. 对于移动端设备可以用手机自带的截图工具来截图然后传到电脑上,个人一般 ...
- web端测试和移动端测试的区别小记
转:http://qa.blog.163.com/blog/static/19014700220157128345318/ 之前一直参与web端的测试,最近一个项目加入了移动端,本人有幸参与了移动端的 ...
- Web端的Tab控件在切换Tab时Load数据出错的处理
我们在应用Web端的Tab控件时,不管是Jquery easyui的还是Ext的Tab控件都会遇到一个问题,在Tab1正在加载数据的时候我们切换到Tab2,再切换回来,Load数据的控件就会出错,出错 ...
- 阿里云物联网套件(iot)设备间通信(M2M)在web端的实践
之前通过nodejs连接到阿里云物联网mqtt,后又用浏览器连接,总结一下: 由于项目是SPA,使用webpack,关键代码: 同样使用mqtt.js之前先install: npm install - ...
- 数据採集之Web端上传文件到Hadoop HDFS
前言 近期在公司接到一个任务.是关于数据採集方面的. 需求主要有3个: 通过web端上传文件到HDFS; 通过日志採集的方式导入到HDFS; 将数据库DB的表数据导入到HDFS. 正好近期都有在这方面 ...
- Web端测试和移动端测试
之前参加的项目有涉及Web端测试和移动端测试,简单的记录下他们之间的区别: 1.记录bug 在Web端可以通过系统自带的截图和QQ截图等方式来截取bug的图片,对于错误的地方可以用工具自带的标识来 ...
- 记一次爬虫经历(友话APP的Web端)
背景:学校为迎接新生举办了一个活动,在友话APP的校园圈子内发布动态即可参与活动,最终抽取数名同学赠送福利. 分析:动态的数量会随着迎新的开始逐渐增加,人工统计显然不现实,因此可以使用爬虫脚本在友话A ...
随机推荐
- 测试css
<h1>shell使用指南</h1> <h2>ZMODEM功能</h2> <pre><code>yum install lrzs ...
- 获取url中指定的参数
function GetRequest(name){ var reg = new RegExp("(^|&)"+ name +"=([^&]*)(& ...
- 微信小程序资料
作者:初雪链接:https://www.zhihu.com/question/50907897/answer/128494332来源:知乎著作权归作者所有,转载请联系作者获得授权. 1:下载开发者工具 ...
- URL
URL的格式:protocol :// hostname[:port] / path / [;parameters][?query]#fragment URL出现了有+,空格,/,?,%,#,& ...
- php字符串匹配
$a='abcdef'; $b='abc'; similar_text($a,$b,$num); $num=3;
- linux python更新
linux的yum依赖自带的Python,为了防止错误,此处更新其实是再安装一个Python 1.查看默认python版本 python -v 2.安装gcc,用于编辑Python源码 yum ins ...
- NoSQL 数据库分类
类型 部分代表 特点 列存储 Hbase Cassandra Hypertable 顾名思义,是按列存储数据的.最大的特点是方便存储结构化和半结构化数据,方便做数据压缩,对针对某一列或者某几列的查询有 ...
- 在Myeclipse中提交代码到GitHub中
这需要借助插件Egit,首先就是先下载该插件了,可以再eclipse中下载,也可以在外面下载,下载就不说了.下载地址git://github.com/houyongchao/plugin-Egit.g ...
- 历年NOIP水题泛做
快noip了就乱做一下历年的noip题目咯.. noip2014 飞扬的小鸟 其实这道题并不是很难,但是就有点难搞 听说男神错了一个小时.. 就是$f_{i,j}$表示在第$i$个位置高度为$j$的时 ...
- uva12063数位dp
辣鸡军训毁我青春!!! 因为在军训,导致很长时间都只能看书yy题目,而不能溜到机房鏼题 于是在猫大的帮助下我发现这道习题是数位dp 然后想起之前讲dp的时候一直在补作业所以没怎么写,然后就试了试 果然 ...