您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > 微信投票平台设计与实现-论文浓缩稿
微信投票平台的设计与实现学生姓名:张星星指导老师:鞠小林南通大学计算机科学与技术学院,软件工程专业,学号1313032038【摘要】:研究了微信应用开发方法。针对微信投票,提出投票规则定义、投票选项设计和投票结果统计分析的方法,并应用这些方法设计实现了一个微信投票平台。基于该平台开展投票活动设计、发布、微信投票及结果统计的实证研究。结果表明,我们的方法具备较好的可行性和扩展性。【关键词】:微信开发,投票平台,统计分析1引言近年来,微信应用发展迅速,微信开发成为移动应用开发的热点之一。微信公众平台提供了一种新的信息传播方式和强大的业务服务能力,得到海量用户的关注[1,2]。基于微信公众平台的微信投票活动是提升其关注度,增加用户数量的主要途径之一。对比过去的人工投票方式,微信投票以简单便捷、实时统计投票结果以及可以快速分析投票行为和用户等优势见长。现有的微信公众平台提供的投票系统功能单一,不能充分满足服务号、订阅号举办各类活动的复杂需求。此外我们调研发现,第三方投票平台虽然可以满足较复杂投票需求,但是这些平台与微信公众号对接存在一定的困难,并且这些平台多以盈利为主,用户的体验度较差,使用成本偏高[1]。为此我们研究提出了投票规则定义、投票选项设计和投票结果统计分析等方法,设计实现了一套基于微信公众号的投票平台。具体贡献如下:(1)实现对投票用户规范管理。包括用户审核注册,用户信息编辑以及投票用户权限分配等;(2)投票活动发起。包括对活动内容的设置、图片上传、投票规则定义、投票选项的设计、投票有效性检测等;(3)微信客户端投票实施。包括投票活动的推广,微信用户投票管理、投票进程跟踪、投票反馈等;(4)投票结果统计分析功能。包括对每次投票的时间、来源IP地址记录、投票排名统计、投票结果导出等。2系统设计微信投票系统主要实现了三大功能模块即系统用户管理模块、投票活动管理模块、微信用户管理模块。系统的结构如图1所示。图1微信投票系统结构如图1所示,管理员可以对微信用户进行管理。微信用户在绑定AppID和AppSecret后可以对公众号的订阅用户进行管理。微信用户可以创建投票活动包括对投票主题、投票选项、投票规则的编辑,然后通过微信群发接口将投票链接推送给微信用户。微信用户接收到投票链接进行投票,投票数据返回给服务器,投票完成可以查看简单的投票排名信息。用户可以查看投票结果统计,可以导出Excel文件格式的投票结果。2.1系统采用技术微信投票系统实现基于B/S架构,采用JavaWeb技术进行设计。开发环境是基于JDK1.7、Tomcat7.0、Maven3.9环境下搭建的Maven+SSM框架,数据存储基于MySQL数据库管理系统。2.2课题技术路线1)申请微信公众测试账号2)配置开发者模式3)设计微信投票系统UI4)实现系统后台代码5)系统测试与Bug修复3系统实现3.1系统用户管理只有管理员才可以实施系统用户管理。该模块起到管理员管理系统用户的作用,可以对系统用户进行添加、编辑、删除等操作。管理员添加的用户和注册的用户为普通用户,管理员可以对用户的账号权限、账号状态、密码、邮箱、手机号和年龄进行设置。管理员可以对普通用户进行删除或者禁用普通用户的账号。3.2投票活动管理系统用户创建好投票活动,可以点击推送到微信公众号,系统调用微信的群发接口将投票链接推送到公众号订阅用户的微信中,微信用户在微信客户端直接打开链接进行投票,投票数据返回给服务器,系统用户可以对投票统计的结果进行分析并能够导出投票数据到Excel文件。3.2.1创建投票活动1.创建投票主题。主要对投票活动标题、投票活动描述、投票完成显示信息进行设置,文字编辑使用kindeditor控件,用户可以改变字体、大小、颜色以及段落样式,插入网络图片等。2.添加投票选项。系统用户可以动态添加候选项,并设置候选项的显示名称,上传候选项的图片等。3.功能选项设置。主要是对投票页面排版、投票活动的规则和投票有效性进行设置。排版设置了下拉框选择每行显示两个候选项或者三个候选项;头部图标为投票界面的活动图片;可以为投票活动设置开始时间和结束时间,这里使用了timepicker控件,只有在开始时间和结束时间内才显示投票按钮即用户可以投票;可以设置是否开启每日IP限制,在打开每日每IP一次的选项后,用户每日只能投一次,这里调用了ip138查询网的API,可以查询投票者的外网IP。还设置了多选和单选的选项解决不同的投票个数需求,多选可设置最少投票个数、最多投票个数来限制用户选择候选项的个数。设置了是否打开关注按钮,按钮的文字和链接,在投票界面可以显示投票活动创建的时间以及公众号的关注链接,可以让用户关注公众号;还可以设置投票模式,只允许关注用户参加模式下未关注相应微信公众号的用户将不能投票,用户只有关注了相应的公众号,在点击投票链接时静默授权验证成功才能参与投票,允许所有用户参加模式下所有用户均可投票。3.2.2编辑投票活动编辑投票活动部分与创建投票部分编辑内容基本一致,在投票候选项的编辑时添加更多的候选项是在新的页面进行操作。3.2.3投票活动发布投票活动发布部分设计了在系统中打开链接、复制链接或者直接推送到公众号的功能。推送到公众号功能使用了WeixinJavaTools工具调用微信群发接口,实现消息的群发功能。这里推送的只是文本消息,由于纯文本消息推送的投票链接是无法点击打开的,所以在代码中给推送的链接字符串前后加上a、/a以实现纯文本消息变成链接[3]。3.2.4微信用户进行投票微信用户在微信客户端接收到系统推送的投票链接,用户打开链接的界面如图3所示。点击链接开始投票界面如图4所示,微信用户可以查看投票主题以及目前投票量、访问量等,可以搜索候选项。添加了滑动验证码防止机器刷票以及其他作弊行为。投票结束可以查看简单的投票排名、票数、候选项票数占总票数百分比等信息[4]。图3投票链接界面图4微信用户投票界面3.2.5投票结果统计投票结果统计概览中包括了候选项的投票量、投票前十名信息、投票量占总票数百分比,以及历史总访问量、历史总投票量、今日投票量、今日投票最多的候选项的名称和票数。其中投票排名信息支持Excel文件导出功能。还提供了最近投票记录,记录了最近投票用户的IP地址以及地理位置、投票的具体时间以及投票用户所投给候选项的名称,提供了一个查看更多的投票记录的按钮,点击可以跳转到投票明细日志部分。投票明细日志部分记录了该投票活动的所有投票记录。此外,系统提供了投票活动的票数与统计管理,用户可以清晰地查看所有投票候选项的排名、编号、名称、票数、票数所占总票数百分比和今日票数。3.3微信用户管理用户在个人信息中绑定微信公众号的AppID和AppSecret即可使用该模块。该模块提供对微信公众号的订阅者的信息的查看,利用微信官方提供的获取订阅者列表和获取微信个人信息的接口,实现查询公众号订阅用户的信息,包括对账号头像、账号昵称、所在地区、性别、是否订阅、备注、OpenID进行查看。3.4系统测试本次测试主要是用户界面测试、功能测试以及数据库测试。从系统用户管理、微信用户管理到投票活动管理逐一测试。经测试,系统界面的美观度和各个模块的功能都达到了预期的要求。微信投票平台与微信公众号的衔接也基本实现,系统会在不断的测试中完善出现的问题,及时对系统进行维护。4小结论文针对当前微信投票发展现状和背景以及主流开发技术开展深入的调研,对微信投票应用进行了理论和系统的研究,设计实现了一个实用性较强的微信投票系统。该系统能够与微信公众号关联通信,支持一组自定义的投票规则,实现了针对微信投票防作弊手段以及投票结果实时导出与分析。在功能方面主要实现了系统用户管理功能、微信用户管理功能、投票活动管理功能。其中主要对投票活动管理功能设计,完成了创建投票活动、编辑投票活动、发布投票活动、投票结果统计的功能。在发布投票功能中实现了将投票链接实时推送到微信公众号的功能,投票的结果导出Excel文件,能够满足微信投票平台基本需求。参考文献:[1]黄楚新,王丹.微信公众号的现状、类型及发展趋势[J].新闻与写作,2015(7):1-2.[2]张毅.高性能微信公众平台开发[J].程序员,2014(9):36-37.[3]刘莉,王健庆.基于微信开发模式的学院微信平台开发与实践[J].福建电脑,2016,32(11):120-121.[4]唐晓波,陈馥怡.微信用户满意度影响因素模型及实证研究[J].情报杂志,2015,34(6):114-120.
本文标题:微信投票平台设计与实现-论文浓缩稿
链接地址:https://www.777doc.com/doc-4745310 .html