由于要在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端限时活动逻辑处理总结的更多相关文章

  1. 使用HslCommunication实现PLC数据的远程客户端监视,以及web端实时监视,远程操作设备示例

    前言 本文主要是演示一个例子,服务器后台程序从PLC采集数据,并推送给在线客户端显示,以及推送给web端进行实时的显示,还支持远程操作,支持安卓端的同步监视和远程操作,关于HslCommunicati ...

  2. 移动web端的react.js组件化方案

     背景: 随着互联网世界的兴起,web前端开发的方式越来越多,出现了很多种场景开发的前端架构体系,也对前端的要求日益增高,早已经不是靠一个JQuery.js来做前端页面的时代了,而今移动端变化最大,近 ...

  3. Web端测试和移动端测试的区别

    1.记录bug 在Web端可以通过系统自带的截图和QQ截图等方式来截取bug的图片,对于错误的地方可以用工具自带的标识来重点标记. 对于移动端设备可以用手机自带的截图工具来截图然后传到电脑上,个人一般 ...

  4. web端测试和移动端测试的区别小记

    转:http://qa.blog.163.com/blog/static/19014700220157128345318/ 之前一直参与web端的测试,最近一个项目加入了移动端,本人有幸参与了移动端的 ...

  5. Web端的Tab控件在切换Tab时Load数据出错的处理

    我们在应用Web端的Tab控件时,不管是Jquery easyui的还是Ext的Tab控件都会遇到一个问题,在Tab1正在加载数据的时候我们切换到Tab2,再切换回来,Load数据的控件就会出错,出错 ...

  6. 阿里云物联网套件(iot)设备间通信(M2M)在web端的实践

    之前通过nodejs连接到阿里云物联网mqtt,后又用浏览器连接,总结一下: 由于项目是SPA,使用webpack,关键代码: 同样使用mqtt.js之前先install: npm install - ...

  7. 数据採集之Web端上传文件到Hadoop HDFS

    前言 近期在公司接到一个任务.是关于数据採集方面的. 需求主要有3个: 通过web端上传文件到HDFS; 通过日志採集的方式导入到HDFS; 将数据库DB的表数据导入到HDFS. 正好近期都有在这方面 ...

  8. Web端测试和移动端测试

    之前参加的项目有涉及Web端测试和移动端测试,简单的记录下他们之间的区别:   1.记录bug 在Web端可以通过系统自带的截图和QQ截图等方式来截取bug的图片,对于错误的地方可以用工具自带的标识来 ...

  9. 记一次爬虫经历(友话APP的Web端)

    背景:学校为迎接新生举办了一个活动,在友话APP的校园圈子内发布动态即可参与活动,最终抽取数名同学赠送福利. 分析:动态的数量会随着迎新的开始逐渐增加,人工统计显然不现实,因此可以使用爬虫脚本在友话A ...

随机推荐

  1. 【转】Caffe初试(八)Blob,Layer和Net以及对应配置文件的编写

    深度网络(net)是一个组合模型,它由许多相互连接的层(layers)组合而成.Caffe就是组建深度网络的这样一种工具,它按照一定的策略,一层一层的搭建出自己的模型.它将所有的信息数据定义为blob ...

  2. 前端实现图片懒加载(lazyload)的两种方式

    在实际的项目开发中,我们通常会遇见这样的场景:一个页面有很多图片,而首屏出现的图片大概就一两张,那么我们还要一次性把所有图片都加载出来吗?显然这是愚蠢的,不仅影响页面渲染速度,还浪费带宽.这也就是们通 ...

  3. PHP7函数大全(4553个函数)

    转载来自: http://www.infocool.net/kb/PHP/201607/168683.html a 函数 说明 abs 绝对值 acos 反余弦 acosh 反双曲余弦 addcsla ...

  4. 为什么说在使用多条件判断时switch case语句比if语句效率高?

    在学习JavaScript中的if控制语句和switch控制语句的时候,提到了使用多条件判断时switch case语句比if语句效率高,但是身为小白的我并没有在代码中看出有什么不同.去度娘找了半个小 ...

  5. 安装hadoop+zookeeper ha

    安装hadoop+zookeeper ha 前期工作配置好网络和主机名和关闭防火墙 chkconfig iptables off //关闭防火墙 1.安装好java并配置好相关变量 (/etc/pro ...

  6. java 对List进行物理分页

    /* * To change this template, choose Tools | Templates * and open the template in the editor. */ pac ...

  7. C#开发中常用方法3------Cookie的存取

    ---------------------------------------------------------------------------------------------------- ...

  8. linux 负载均衡

    [博文推荐]关于负载均衡技术使用的一些误区 如今,负载均衡已经不是一个新鲜的词,也不是什么新技术,主要用于解决单机负载能力的局限性,但问题是你的应用真的到了单 机的负载上限了吗,未必,很多不知道如何推 ...

  9. datatable 加序号列

    最近使用datatable时,发现没有像jqgrid那样生成序号列,在国外网站搜罗了一下还是很简单的,就要在aoColumns中添加一空列占位就行,然后再用fnRowCallback添加序号 示例如下 ...

  10. 【转】npm publish 发布

    <h3 class="catListTitle">一.npm包结构(编写)</h3> npm包实际是一个存档文件,即一个目录直接打包为.zip或tar.gz ...