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 ...
随机推荐
- LINUX 6.x 内核升级全过程
1. 准备工作 确认内核及版本信息 [root@hostname ~]# uname -r 2.6.32-220.el6.x86_64 [root@hostname ~]# cat /etc/cent ...
- HTML5窗口间同域和跨域的通信
一丶同域下的 1.如果我们要操作iframe里面的元素,首先获取到引入的页面的window.获取iframe里面的window对象. var oIframe=getElementsByTagName( ...
- jquery的live转on的办法
<!DOCTYPE html> <html> <head> <script src="http://libs.baidu.com/jquery/1. ...
- Oracle
# Oracle 客户端免安装配置 1. oracle11g http://bbs.chinaunix.net/forum.php?mod=viewthread&tid=1511607 ...
- Breakpad Google的crash捕获、抓取开源库
简介: Breadpad为google chrominum项目下用于处理dump的一套工具:内部采用跨平台方式实现捕获.生成.解析与平台无关的dump,便于统一处理:支持进程内与进程外捕获,当为进程外 ...
- jQuery对象与dom对象相互转换
核心提示:jquery选择器得到的jquery对象和标准的 javascript中的document.getElementById()取得的dom对象是两种不同的对象类型,一般情况下,如S('#id' ...
- oracle对/dev/shm的使用
查看共享内存打开的文件数 [root@db2 ~]# lsof -n | grep /dev/shm | wc -l 34693 共享内存中总共文件数 [root@db2 ~]# ls -l /dev ...
- 《Scalable IO in Java》笔记
Scalable IO in Java http://gee.cs.oswego.edu/dl/cpjslides/nio.pdf 基本上所有的网络处理程序都有以下基本的处理过程:Read reque ...
- resin实现域名访问
1.修改resin.properties 2.修改hosts文件 3.添加一行记录 配置完后就可以通过test.com访问项目了.
- RPC框架性能基本比较测试
RPC框架:gRPC.Thrift.Wildfly.Dubbo 原文链接:http://www.open-open.com/lib/view/open1426302068107.html gRPC是G ...