毕业论文-基于软件公司的微信公众平台系统设计与实现_第1页
毕业论文-基于软件公司的微信公众平台系统设计与实现_第2页
毕业论文-基于软件公司的微信公众平台系统设计与实现_第3页
毕业论文-基于软件公司的微信公众平台系统设计与实现_第4页
毕业论文-基于软件公司的微信公众平台系统设计与实现_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕业设计中文题目基于软件公司的微信公众平台系统设计与实现英文题目DesignandImplementationofSoftwareCompanyWeChatPublicPlatform院系:计算机与信息工程学院年级专业:网络工程姓名:学号:指导教师:职称:2016年5月摘要本文主要是介绍了基于优盟通商软件公司的微信公众平台系统的设计与实现过程。该设计主要包括了两个部分,一个是优盟通商公司的官网部分,主要是以微信公众号的方式对普遍用户呈现,让用户可以随时以二维码的方式或搜索公众账号的方式即可进行关注,并且随时可以了解到该软件公司的相关情况,该公众号还会不定时更新发布一些与本公司相关的消息,或者相关行业内的一些新闻大事和观点看法;另一个则是针对该软件公司旗下的货代业务做的一个业务系统,主要是以微信企业号的形式来实现,针对的用户群体主要是对公司货代业务进行管理的经理以及更高级别的公司内部高层人员,让这些高层人员的办公更加便捷有效。该系统的设计,一方面利用了微信公众平台拥有广大用户群体的优势来对公司进行营销,另一方面则是利用微信公众平台符合广大用户习惯的优势来简化公司经理以及更高层对公司业务的管理,同时也减少了公司在开发方面的开支。本系统主要采用的是Struts2+Spring+Hibernate三个成熟的SSH2集成框架,以此为基础来进行本系统的设计和开发实现,运用的是Java开发语言,同时结合了MySQL数据库,以及微信公众平台预留的微信接口,配合ApacheTomcat服务器,搭建了一个基于软件公司的微信公众平台系统。在设计本系统的时候要充分考虑整个系统的灵活性和可扩展性的原则要求,通过对模块的合理划分,实现系统在之后业务新增或各种变更时的灵活性和适应能力,这也是开发者高效进行开发的一个保证。关键词:微信公众平台;货代;SSH2ABSTRACTThisarticleistointroducethedesignandimplementationoftradeunionexcellentsoftwarecompanyWeChatpublicplatformsystem.Thedesignincludestwoparts,apartofoptimizationistheofficialwebsiteofthecompanytradeunion,mainlybywayofWeChatpublicnumberofcommonuserispresented,allowingusersatanytimeinatwo-dimensionalcodeorawaytosearchpublicaccountsbeconcernedabout,andreadytohearaboutthecircumstancesofthesoftwarecompany,thepublicnumberwillbeupdatedregularlypublishsomeofthecompanyrelatednews,somenewsoreventsrelatedopinionsandviewswithintheindustry;theotherisforthesoftwarecompany'sfreightforwardingbusinesstodoabusinesssystem,mainlyintheformofWeChatenterprisetoimplement,usergroupsmainlyaimedatseniorstaffwithinthecompanytomanagethecompany'sfreightforwardingbusinessmanageraswellasahigherlevel,sothatthesehigh-levelofficestaffmoreconvenientandeffective.

Thesystemisdesigned,ontheonehandtakesadvantageofWeChatpublicplatformisavastusercommunitytothecompanyformarketing,ontheotherhandistheuseofWeChatpublicplatforminlinewiththemajorityofusersaccustomedtotheadvantageofsimplifyingthecompanymanagersandahigherlevelofthecompany'sbusinessmanagement,butalsoreducethecompany'scostsindevelopment.

ThissystemismainlyusedinStruts2+Spring+HibernatethreematureSSH2integratedframeworkasabasisforcarryingoutthedesignanddevelopmentofthesystem,usingtheJavadevelopmentlanguage,combinedwiththeMySQLdatabase,aswellasWeChatpublicplatformWeChatinterfacesreserved,withtheApacheTomcatserver,setupaWeChatpublicplatform-basedsoftwarecompany.Inthedesignofthissystemtimetofullyconsidertherequirementsoftheprincipleofflexibilityandscalabilityofthesystem,throughtherationaldivisionofmodulesforsystemflexibilityandabilitytoadapttonewbusinessorwhen,aftervariouschanges,whichisdeveloperswithhighefficiencyaguaranteedevelopment.KeyWords:WeChatPublicPlatform;FreightForwarding;SSH2目录第1章引言 11.1研究背景 11.2现状研究 11.3主要研究内容 31.3.1微信服务号 31.3.2微信企业号 4第2章关键技术 52.1共同技术 52.1.1Struts+Spring+Hibernate 52.1.2Tomcat服务器 62.1.3MySQL数据库 62.2微信官网所用技术 72.2.1Flex 72.2.2HTML5 82.3货代系统所用技术 92.3.1微信接口API 9第3章系统设计 113.1总体设计 113.2各模块设计 113.2.1微信官网模块 123.2.2微业务模块 123.2.3数据表设计 13第4章系统实现 154.1微信官网 154.1.1导航 154.1.2图片轮换 164.1.3主要功能模块展示 174.2微业务系统 184.2.1任务 184.2.2超期 214.2.3查询 22第5章总结与展望 255.1结论 255.2进一步工作的方向 26参考文献 27致谢 28引言研究背景微信公众平台,是“腾讯”在微信手机软件的基础上开发的新功能平台。微信推出不久,不少企业就利用微信加强与客户的沟通交流。但是随着微信用户的爆发式增长,企业产生了构建一个专门进行微信用户的管理平台需求。腾讯公司基于这样的需求,开发了微信公众平台,企业可以打造一个微信的公众号,为客户提供各种特色服务及分享信息咨询;也可以将产品及服务推广给上亿的微信用户,用较低的成本来提高企业品牌的知名度,打造更具影响力的企业品牌形象。自从2013年微信5.0推出后,微信作为移动互联网平台入口的形态已经初步形成[1],发展到现在,它已经不再是一个简单的通讯工具,它已经成为一个综合性的大平台,一个社交平台、一个用户平台、一个轻量级App平台、一个电商平台,微信已经成为我们生活的入口,未来必将成为我们日常生活不可分割的一部分[2]。对于一个企业而言,微信公众平台可以为他们提供一个具有无比广阔的平台以及无限想象的空间,企业可以在公众平台开发的API基础上根据自己企业的业务需求开发出各种功能,公众平台的二次开发对企业而言尤为重要,将成为企业是否能利用微信改善公司经营状况的关键。现状研究优盟通商是一个以客户的需求为基础,为客户开发软件、建立平台的软件公司,货代是公司旗下的一个子业务,货代业务刚起步,因此货代的业务还处于人工操作状态,随着业务量的。公司目前也还未建设一个属于公司自己的网站。这也是优盟通商目前面临的两个问题,所以最好是设计一个系统,以便可以同时解决掉这两大问题。首先对于一个公司而言,建设一个公司的官网,是极其重要的。原因有三点:一来,可以利用公司的官网来提升公司的知名度和可信度;二来,可以通过官网来寻求合作伙伴,在官网上发布关于本公司的相关介绍,可以让对方较为简易的了解到本公司的概况以及产品介绍等信息之后进行下一步的实施考察和技术交流活动,减少一系列不必要的费用支出;三来,公司内部员工可以通过登录公司的网站,来进行一些公司业务流程的必要操作和管理。再者,因为现在是移动互联网的时代,随着移动设备的普及,人们渐渐倾向于在移动设备上进行上网和办公。以前,人们办公都要在笨重的台式机面前,现在随着人们开始把传统的网页和移动互联网相结合,方便人们随时随地办公,这也是目前社会所提倡的BYOD,即携带你自己的个人移动设备办公,如此一来,人们的办公地点将不再收到限制,而办公时间也不再局限于在办公室里的那几个小时里,这无论是对员工还是对老板来说,都是一件值得令人高兴和推崇的事情。瞻顾整个社会的网络发展趋势,不难发现,现在最受欢迎的即时通讯软件是一个叫微信的移动应用程序,微信从诞生至今短短几年,已经拥有了8亿的用户量。从微信推出5.0版本后,就已经不再是一个单纯的即时通讯软件了,微信作为移动互联网平台入口的形态已经初步形成[1],这主要取决于微信在5.0版本后推出的微信公众平台,也让微信因此受到各行各业的重点关注,微信作为一个互联网开发平台,与各个行业和领域的融合正不断加深[1]。基于目前微信用户的继续爆炸式增长,以及微信公众平台的特点和未来发展趋势,最终选择把优盟通商的网站和货代的业务都在微信公众平台上进行设计部署开发。通过微信公众平台,优盟通商公司可以把想要给用户展示的各种相对静态的信息都部署到平台上,打造一个方便管理、用户浏览简易且符合用户使用习惯的微信公众平台系统,以此来实现优盟通商与一些特定的用户群体使用文字、图片、语音等方式来进行全方位的沟通和互动。微信公众平台最大的亮点就是用户在通过对优盟通商的公众账号进行关注之后,该公众账号所发布的所有消息都可以直接发送到有进行关注的用户的微信上,每个有关注本公众号的用户都可以浏览到该信息,这是相对于直接把优盟通商的网站部署到网络上来说更精准的一种营销方式。优盟通商还需要解决的货代业务系统部分,是要开发一个移动应用软件还是在微信公众平台上进行开发呢?这是系统设计初期考虑的问题。开发移动应用软件和在微信公众平台上进行开发,最主要考虑到的是使用者,即最大程度提高用户的使用满意度。而开发一个移动应用程序和直接在移动应用程序微信的公众平台上进行开发,最大的区别是用户可以不需要再多安装一个应用程序,而且在公司对该货代业务系统进行更新的时候,用户不需要再重新去进行更新的安装,这是微信公众平台上进行二次开发的一个好处。再加上用户经常会去使用微信,所以直接在微信的公众平台上进行设计开发,也完全可以符合用户的使用习惯。综上所述,决定把优盟通商的货代业务系统也在微信公众平台上进行部署开发。主要研究内容微信公众账号分为“服务号”、“订阅号”和“企业号”三种类型。微信公众平台的官网上解释说,服务号是为企业或是组织提供更强大的业务服务与用户管理的能力[3],可以帮助企业在微信公众平台上设计开发自己的系统,对于关注者来说,微信公众平台就是一个能够为其提供业务服务的平台;而订阅号旨在为媒体和个人提供一种新的信息传播方式[3],构建了一种公司与关注者之间能进行更好的沟通与管理的模式;最后一种账号类型是企业号,企业号则是主要为企业和组织提供移动应用的入口,帮助企业能够快速建立与供内部员工、上下游供应链以及企业应用之间的连接[3]。根据微信公众账号的特征,本系统选用了两个类型的公众账号来实现,一个是主要服务号来实现公司网站与微信的结合,实现对公司的营销管理;一个是企业号,通过微信接口开发一个货代平台的业务系统,实现了公司货代业务的负责管理人员对该业务的操作管理。微信服务号通过对微信服务号的开发,可以实现传统网站和微信平台的对接。通过微信认证后,后台管理员就可以在每个月给有进行关注的用户群发信息,并且群发的消息将会显示在聊天列表上,而不会像订阅号一样折叠起来,只要下发消息就可以即时通知到有进行关注的用户,这样用户就不会错过任何一条消息。同时服务号可以申请自定义菜单,来进行二次开发。在微信服务号上部署优盟通商的官方网站,以期通过微信公众平台实现公司营销产品、扩大知名度的目的。微信公众平台有群发模块、高级模块和商户模块等模块,其中高级模块最为重要,该模块在公众账号审核通过后才能看到[2],高级功能包含编辑模式和开发模式[2]。本系统目前只采用了公众平台的群发模块和高级模块进行设计。群发模块群发功能是微信公众平台最常用也最重要的功能之一[4],也是优盟通商选择建设运营公众账号的原因之一。优盟通商可以在公司完成新的案例、发布新的产品以及本行业发生大新闻的时候给有关注本公众号的用户发送相关消息,用户不定时接收到优盟通商发送的消息,如此来提升优盟通商在用户中的印象,同时,发布一些本行业中,用户会比较关注的消息,也能提升优盟通商在用户心目中的好感度。高级模块高级功能包含编辑模式和开发模式[2],在编辑模式下,后台管着者可以通过简单的界面编辑来设置自动回复、自定义菜单等功能;在开发模式下,开发者就可以直接通过微信公众平台所提供的接口来实现自动回复、自定义菜单等功能。优盟通商在服务号上只需要部署简单的静态网站,以便于用户在上面进行浏览,对公司有一个简单的了解,因此只需要选用高级模块下的编辑模式进行部署即可。微信企业号微信企业号与公众号最主要的区别是,只有在限定范围内的用户才可以关注对应的企业号,在本系统中即限定了必须是公司内部负责货代业务的经理及更高级别的高层管理人员才可以成功关注该企业号,后台管理者使用企业号发送的消息数量也几乎没有限制[5]。因此,把优盟通商的货代业务部署在微信企业号上再合适不过了。微信企业号与微信服务号的功能模块一样,在微信企业号上,只选择使用高级模块下的开发模式来开发货代系统。在企业号的高级模块下,有开发模式,在开发模式下,开发者通过微信公众平台上提供的微信接口可以更加灵活便捷地在微信公众平台上开发设计自己的系统。在微信企业号的开发模式下有两种连接模式,一种是主动调用模式,一种是回调模式,二者最大的区别之一就是主动调用模式不加密,而回调模式以AES方式进行加密。本次系统开发选用了企业号的开发模式下的回调模式来进行设计实现优盟通商公司旗下的货代业务系统。关键技术本系统的公司微信官网(简称微官网)采用Struts2+Spring+Hibernate三大集成框架加Flex、HTML5,结合MySQL数据库进行开发,而货代系统也采用了Struts2+Spring+Hibernate三大集成框架,结合微信API、MySQL数据库进行设计实现。共同技术Struts2+Spring+HibernateStruts2+Spring+Hibernate简称SSH2三大框架,是目前开发相对较成熟的一个开源集成框架。集成SSH2框架主要根据其不同的职责,可以分为四个层,分别为表示层、域模块层、逻辑表示层和数据持久层。为了让开发人员能在更短的时间内即可搭建出结构比较清晰,并且可复用性比较好、维护也相对更方便简单的Web应用程序,使得开发人员可以更高效的进行Web应用程序的开发,并且在缩短开发周期的同时也能提高系统的性能。其中,Struts框架在系统的整体基础架构起着重要的作用,它是基于典型的MVC(模型-视图-控制)模式下的一个属于表示层的集成框架,它通过提供了一个叫做ActionServlet的控制器来实现MVC架构,通过此控制器可以控制管理JSP(JavaServerPages,Java服务器页面)与其他的表现层之间的流程,Struts通过使用ActionForward和ActionMapping两个类来保证表现层之外的控制流决策来实现MVC模式[6]。JSP可以引用一个逻辑目标,控制器组件在运行的时候可以提供准确的URL,从而实现页面的控制。在Struts实现了整个业务跳转控制的过程中,使用了Hibernate框架技术来支持数据持久层,而Spring的性质较为形象的一个说法就是相当于在做管理,主要是对Struts和Hibernate进行管理。Struts2是Struts的第二代产品,但不是Struts直接升级,而是在WebWork与Struts的技术基础上整合而成[5]。Struts2以WebWork为核心,采用拦截器(Filter)的机制来处理客户端的请求,并作出相应的动作(Action)处理数据,最后在将结果(Result)呈现给客户端。Struts2的Action实例并没有与ServletAPI耦合,因为拦截器设计使得控制层能够与ServletAPI完全脱离开。Hibernate是一个面向Java环境的O/R(对象/关系)数据库映射的映射工具,这样的映射工具主要的用途就是把要对象模型中所表示出来的对象直接映射到最基本的SQL关系模型数据结构当中,并且通过使用配置文件与数据库共同来为Web应用程序提供JSP的数据持久化服务。在最开始Spring加入程序的时候,它就是相当于之前在单一的Hibernate环境下开发的过程[7]。而现在Spring管理了SessionFactory后,就简化了这中间的一些繁琐步骤,之前不能直接读取某些映射文件,现在却完全可以通过读取spring.xml就可以轻轻松松获取ApplicationContext操作,然后被作为对象注入之后可被读取,以获得产生的相应Session,再去调用所需的业务方法,非常便捷,省去了重新创建事物方法的麻烦。这也是Spring出现后给Hibernate和Struts带来的高效率。Tomcat服务器Tomcat服务器是一个免费的开放源代码的轻量级Web服务器,经常在Java应用程序的开发过程中,用来部署Web应用程序的网络环境,方便开发者在开发过程中可以直接验证并调试程序运行的实际效果。Tomcat服务器属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache服务器,可利用它响应HTML(标准通用标记语言下的一个应用)页面的访问请求。实际上Tomcat部分是Apache服务器的扩展,但它是独立运行的,所以当你运行tomcat时,它实际上作为一个与Apache独立的进程单独运行的。当配置正确时,Apache为HTML页面服务,而Tomcat实际上运行JSP页面和Servlet。另外,Tomcat和IIS等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。目前Tomcat最新版本为9.0。Tomcat技术先进、性能稳定[2],是调试JSP的最佳选择。对于使用Java作为开发语言的开发者来说,其以小型、灵活及快速等特点深受广大J2EE的开发者喜爱。MySQL数据库目前市场上主流的数据库有Oracle、SQLServer、DB2、MySQL等,前三者具有数据储存量大、安全性强、收费等特点,MySQL相对而言储存量较小,功能相对较少,但现有功能已经可以满足中小型项目,又因其开源免费的特性,大大降低了项目开发的成本,同时MySQL是一个轻量级的数据库管理系统,适用于中小型网站的开发。在进行数据库关联的方式中,MySQL是将所有的数据进行分布式的管理,然后将其储存在不同的数据表中,取代了传统的数据存储方式,即把所有的数据全部放在一个大仓库的方式,这样可以提高数据的访问效率和安全性,不会因为一张表的损坏而危害到其它所有的表。因为本基于软件公司的微信公众平台系统定位为中小型企业,属于中小型项目,故采用对中小型企业非常友好的MySQL数据库。MySQL具有可靠、快速、易用、体积小等的特点,是目前最流行的关系型数据库管理系统[11]。MySQL所采用的语言是最常使用的、标准化的SQL语言。本系统使用的是NavicatPremium数据库管理工具,相比之前使用过的一众数据库管理软件,它明显具有更多出众的优点,它的高兼容性允许它任意访问不同类型的数据库,并且可以快速便捷的提取和传递数据库之间的数据,可以对数据库进行各种权限范围内的操作。微信官网所用技术微信官网建设过程中采用SSH2技术结合HTML5进行前台界面的开发,Flex框架语言开发后台管理界面,以及使用NavicatPremium作为MySQL数据库管理软件,在Tomcat服务器搭建出的网络环境下,一步一步地实现。Flex+SSH2Flex是一个开发RIA(丰富互联网程序)的技术,其具有多种组件,在动画效果以及互动界面等方面都有比较好的设计体验。本系统使用到的后台创建软件AdobeFlashBuilder,它就可以用来运行Flex框架构建出来的应用程序,高效的智能编码以及交互式遍历调试都可以提高后台开发效率。此软件在可视化用户界面布局上也给开发者带来了福利。Flex所使用的是MXXM语言,它所构建的应用和基于HTML的应用相比,最大的优点就是不需要在每次请求时,都去加载一次服务器上的数据,而是从头到尾只需要加载一次,这大大减少了系统工作量。所以,Flex也尝试将文件机构的逻辑和设计进行分离化管理。SSH2是目前国内业界主流的Web开发框架,Flex是一个主流的构建具有丰富表现力的Web应用程序的框架,四者的结合很好地发挥出各自的技术优势,实现绝大多数业务场景的处理,充分利用Flex强大的接近于桌面应用的Web端表现力以JavaEE服务器端的优势,使得客户既能够体验到一流的用户体验,又能发挥出J2EE应用的高稳定性、高扩展性和可移植性。使用Flex+SSH2的框架,具有以下优点:开源免费,文档较完备;有相对比较成熟的Flex开源框架和丰富的功能插件可供使用。实现效果友好,足以应付所有功能需求;配置简单;Flex与后台Java通信方便;标准的MVC框架,系统各层次清晰。HTML5HTML5是一个新的网络标准,现在仍处于发展阶段。目标是取代现有的HTML4.01和XHTML1.0标准。它希望能够减少互联网富应用(RIA)对Flash、Silverlight、JavaFX等的依赖,并且提供更多能有效增强网络应用的API。HTML5与八大特性。HTML5引入了新的HTML元素,通过使用这些元素,开发者可以更细致的描述文档结构,让文档更加易读,搜索引擎也能更好的理解页面中各部分间的关系,我们也可以搜索到更快、更准确的信息。程序缓存,即web应用可以进行缓存,并且可在没有因特网连接时进行访问。设备通用,直接使用HTML5原生的Drag&Drop拖拽事件,再结合FileAPI中的FileReader来实现网页中的拖拽效果,操作简单。WebSockets是在一个(TCP)接口进行双向通信的技术,PUSH技术类型,在WebSocketAPI中,浏览器和服务器只需要做一个握手动作,而后,浏览器和服务器之间就形成了一条快速通道,两者之间就直接可以进行数据互相传送。Audio和Video是首批添加到HTML规范中的标签,它们的加入使得开发者可以像插入图片一样来处理音频和视频文件。通过WebGL技术,编写THML脚本即可实现3D图像的展示,无需任何浏览器插件支持,且通过统一的、标准的、跨平台的OpenGL接口来实现利用底层的图像硬件加速功能进行图像渲染。XMLHttpRequestLevel2在功能上相较XMLHttpRequest有了很大的改进,支持跨源XMLHttpRequest好进度事件。使用CSS3,更快捷的得到遗忘需要使用很多插件才能实现的效果。货代系统所用技术货代业务系统采用的是SSH2框架,结合微信API接口和MySQL数据库进行设计部署,实现了在微信公众号上操作管理货代业务系统。微信接口API微信公众平台设计开发开放了消息接口和通用接口两大模块。微信公众平台消息接口,它可以为开发者提供一种新的处理消息的方式,同时也为开发者提供了一个可以与用户随时来进行消息交互的能力[9]。对于那些可以成功接入消息接口的微信公众账号,当已经关注了该公众账号的用户向其发送消息的时候,微信公众平台的服务器就会对公众账号所对应的服务器请求对接入的网址进行消息的推送,此时第三方服务器就可以直接通过使用一个响应包来以特定结构进行回复,从而达到回复消息的目的[10]。通用接口的作用主要是可以实现一些比较特别的功能,比如可以获取到关注该微信公众账号的用户的部分资料,也可以上传媒体文件,消息接口可以回复语音、图片和视频等多媒体消息的功能,在对消息接口进行丰富的同时也能够支持主动给关注的用户推送消息[12]。微信公众平台通用接口,是可以让开发者直接与微信服务器进行交互,实现媒体文件上传、媒体文件获取等功能,以达到获取语音、图片、视频等媒体文件的目的。微信公众平台调用接口需要access_token,而access_token又必须通过获取凭借接口来获取,代码如下所示。调用所有微信接口时均需使用https协议[4]。图2.1获取access_token接口代码多线程编程现在大部分操作系统都支持多进程,因为只支持一个进程远远不够用。如果系统有许多任务,就必须有更多的进程去解决这些任务,还不能干扰其它编程,所以现在怎样能够以最简单的方式去解决最难的问题就成了大家所要关注的问题。轻量级进程。线程可以在一个作用域范围内进行操作,搭建线程比搭建进程简单很多。但是计算机也不一样都有线程,还是要看效果,而且执行项目时需要外力的协助。多线程在生活中就好比拿好多个一模一样的事情分给许多个人来同时完成,但是中间有一个领导者承担调度的作用,其他的工作者就依赖这个领导的存在,也可以让领导自己展开工作。以前我听说过你是单CPU的话,那多线程就毫无意义,其实不然,单CPU只能代表线程被使用瞬间只接受一个命令,并不代表只能接受一个。系统设计总体设计本系统主要基于优盟通商这家软件公司设计的一个微信公众平台系统,主要实现把公司官网和公司旗下的一个货代业务在微信公众平台上部署,实现普通用户通过二维码扫描或者搜索微信号就可以进行关注,并且能也只能看到公司官网的信息。而货代业务是只能公司相关经理以及更高级别的员工可以进行关注,并可处理货代业务的业务流程。整个系统的框架设计图如图3.1所示。在微官网中,可以给关注的用户展示公司的一些静态的基本信息,可以供用户随时了解本公司的相关信息。微业务模块,即货代系统模块,主要提供给用户货代业务的业务处理流程,以及提供了货代业务的财务和业务查询功能模块,而超期功能模块则是用来提醒用户,关于公司财务超期的相关条目。图3.1系统整体设计框架图各模块设计该系统分为两个部分进行设计,包括普遍用户可随时进行关注的微信官网模块和只限公司特定人员可进行关注的货代业务系统模块,这两个模块都是在微信公众平台系统上进行实现的。微信官网模块微官网模块主要是为用户提供公司简要概况等一些几乎不怎么更新的静态信息供用户了解。静态信息主要是指一些不需要经常变更的信息,如公司的介绍,产品介绍以及案例等。微官网可以满足用户对公司的各种需求信息:公司简介,主要是介绍本公司的简要情况,用户通过本功能模块即可对本公司有一个大体的了解。新闻中心,主要是发布一些本公司相关的新闻,或IT行业内发生的值得关注的一些大事件,让用户在浏览浏览本公司官网时还能同时了解到行业内大事。产品中心,主要介绍了公司经营的产品和业务,让用户可以能够清楚的知道本公司的经营方向,以便有相关需求的时候知道可以找到本公司。服务中心,主要是介绍优盟通商公司可以给用户提供的售后服务的具体内容。案例锦集,主要是发布了公司已经做过的一些案例,供用户可以参考了解,也可以让用户了解到本公司的技术实力。人才招聘,优盟通商不定时会在本功能模块上发布一些公司的招聘信息。联系我们,主要是公司的联系方式,用户在有需要的时候,可以快速的联系到本公司相关人员。微业务模块微业务模块,主要针对的用户群体是公司负责货代业务的经理以及更高级别的管理层人员,在该模块下,包括三个功能模块,即任务、超期和查询。任务功能,主要是在连接后台的数据库后,把需要处理的任务单据条目逐条以列表的形式在本功能模块的界面上进行显示,以供用户对任务单据进行查看和操作管理。超期功能,主要是检索出后台数据库中已经超期但还未处理的财务账单条目逐条在本功能界面的模块上进行显示,并自动以邮件、短信以及微信消息的方式发送给指定的用户进行提醒。查询功能,可以通过选择相关搜索条件对货代业务进行财务或业务的查询,从而让用户可以更清楚的了解到整个货代业务的基本运营情况。数据表设计在本次系统设计中,涉及到许多的表,下面只列取三张较为简单的数据表,并做简单说明。用户表设计图3.2用户表如图3.2用户表是货代业务系统中,用于储存用户关注该微信企业号时注册登记的信息。其中username是用来存储用户的微信账户,password是用来存储用户的微信账户密码,phoneNumber是用来存储用户用来接收微信公众平台发送的消息的电话号码,eamil是用来存储用户用来接收微信公众平台发送的邮件的邮箱账号。任务单据表图3.3任务单据表如图3.3所示,是任务单据表,主要是储存并调用相关的其他诸如海运数据表、空运数据表等数据表的内容,用来显示在货代业务系统下的任务界面的信息。角色权限关联表图3.4权限表如图3.4所示,是货代业务系统的权限表,用来存储需要做权限管理的数据,比如用户的权限。其中,code是用来存储权限角色的编码,parentid是用来存储父级ID,而cName是用来存储权限角色的中文名称,eName是用来存储权限角色的英文名称。系统实现基于优盟通商软件公司的微信公众平台系统总共分为两个子系统模块,即微信官网模块和微业务系统模块。微信官网微信官网中,主要是通过Flex来实现后台管理,而前台界面主要是展示公司的信息供用户来浏览,采用B/S模式,用户通过微信便可轻松访问。根据需求,前台包括7个栏目,分别为:公司简介、新闻中心、产品中心、案例紧急、服务支持、联系我们、人才招聘。前台界面采用“三段式”布局,分为头部、中部和尾部,其中头部和尾部固定,每个栏目都拥有,各个栏目的中部不同。其中,头部内容包含企业的logo、技术热线、轮播图片和导航。尾部内容包含版权信息和企业联系方式。中部内容依据各栏目需求而定。微信官网的网站首页界面如图4.1所示。在网站右上角可以看到有一个搜索框,只要输入关键字即可在本网站内进行泉网搜索。在网站底部左边,有公司的地址邮编等信息,右边是一个二维码,是本官网的公众号的二维码,用户可以扫码关注该公众号。关键字搜索当在搜索框中输入关键字,网站会将站内资源与关键字相关的标题按时间进行排序,查询结果通过页面响应给客户端,当输入例如“adsfadjhjahdkjlfh”做为关键字时,网站的站内资源并无该内容,则系统查询不到相应的结果。导航在微官网中,设置了鼠标移入移出的效果,在鼠标移动到相应导航栏中,如果对应的导航栏目有子菜单的话,就会弹出一个下拉框显示该栏目对应的子菜单,否则就不会弹出下拉框。网站的导航,包括网站首页总共有8个栏目,栏目下依据情况又各自的子栏目,子栏目可以根据需要进行更改。在导航管理模块的后台,通过使用图片上传储存功能,做为内容的封面图片,内容编辑器则是调用Rtfeditor控件。Rtfeditor是一个简单的开源文本编辑器,能实现字体的调整、内容拍板等一些基本的文本编辑器的功能。图4.1微官网首页界面图片轮换轮换图片是通过上传图片,在前台界面上轮流播放展示给用户观看,达到宣传公司的目的。该模块展示是通过一个DIV装载,通过一个JavaScript脚本语言实现轮流播放,再用Action动作获取图片列表,整个过程就实现了自动轮流播放指定的图片的工。在图片轮换的模块下,设置了图片每3秒换一次,循环轮换。如图4.2所示。图4.2图片轮换模块界面主要功能模块展示在网站首页位于下面的布局,设置了三个模块,主要是新闻中心模块、产品中心模块和服务支持模块。主要是在首页下方的三个模块内展示最新的消息题目,用户如果感兴趣就可以直接点击进去进行浏览。图4.3主要功能模块展示界面群发功能微信公众平台的群发功能是微信最核心的营销功能之一,也是微信公众平台最吸引的地方,相当于群发短信一样,这样的营销效果是十分强大的。在微官网模块下,为了可以更好的经营优盟通商的微信服务号,需要后台管理员不定时在通过微信公众平台系统上向用户推送一些消息,比如公司新产品推出的消息、案例共享以及行业内发生的大事件,不定时的出现在有关注的用户的面前,可以加深用户对本公司的印象,同时也让有相关需求的用户可以更快发现本公司的存在[11]。同时,在推送消息的时候需要后台管理员进行认真筛选,因为在移动网络时代,推送枯燥生硬的广告或者是到处都有的咨询,都有可能造成粉丝流失的后果,所以需要进行有选择的推送消息。微业务系统在货代业务的微业务系统中,整合了货代业务的大部分业务流程,为相关业务管理者提供更加便捷的管理。主要功能模块包括任务、超期和查询。整体功能设计如图4.4所示。基于微信企业号的货代业务系统,业务管理层人员只需要使用手机进入微信即可对业务流程进行必要的操作,无需再进行多余的登录,简单方便,用户体验满意度高。图4.4业务系统整体功能模块在使用进入业务系统前,需要用户先登录微信,并扫描二维码关注微信企业号,在通过管理微信公众平台的管理员对该用户的信息进行认证核实后进行授权,此时用户才得以进入业务系统进行相关的操作。该货代业务系统的微信企业号,用户可以点击下面自定义菜单“业务系统”即可以进入到货代的业务系统中,才可以对货代业务进行管理操作。任务任务功能模块主要的基本功能是让用户对公司相关的单据进行审批。审批功能实现流程图,见图4.5。用户在登录微信后,查找并进入到该企业号的业务系统,之后在对话窗口点击任务按钮,系统会自动弹出需要用户进行审批的单据列表,用户可以对单据的相关明细进行审核,如果信息确认无误可以选择通过该单据,否则就可以选择退回该单据,并且需要填写退回单据的原因,后台管理在处理退回的单据时可以清楚该单据存在的问题,并及时改进,避免耽误后面的工作。图4.5任务功能的审批流程任务模块的界面如图4.6所示,以列表的形式可以显示出相关任务单据的一些简要信息,包括任务单据的类型、销售者的名字、数据录入者的名字、工作号以及任务单据生成的较为详细的时间。用户可以很直观的从该任务模块界面上了解到每个任务单据的相关信息,而后通过任务单据的简要信息去选择相关的任务单据条目,而后进一步进行流程管理操作。任务单据的排列顺序是按照时间顺序,以时间最新的任务单据排在前面,当任务单据已经被处理完成,即会自动在任务模块的界面上消息,任务模块的界面上只会显示已处理完毕的任务单据,而不会显示已处理完毕的任务单据,避免使用者搞混。图4.6任务界面如图4.7所示,在用户选择了相应的任务单据后,就进入到该界面,会显示具体的单据内容,用户可以对单据内容进行审核,核对确认后用户可以选择确认,如果要选择退回的话,会弹出一个窗口,让用户书写退回的理由,以便后台管理人员对该任务单据进行下一步的流程操作。图4.7任务单据审核界面超期该模块主要是对本公司财务进行管理和提醒。在用户点击超期的按钮时,系统会弹出本公司超期未付的账单条目,用户可以点击相应账单条目,核对相关的超期内容,并及时对此内容采取支付等相应措施。超期的界面如图4.8所示。图4.8超期模块界面系统在后台数据库中,一旦发现有超期未付的财务账单条目,即生成超期账单显示在超期列表中,并通过短信、邮件以及微信公众平台直接发送到指定用户的微信上的形式给系统指定的相关人员发送提醒消息,消息内容包含超期未付的财务账单条目的明细。具体流程如图4.9所示。图4.9超期功能模块流程图如图4.10所示的代码实现的是通过微信的接口在后台数据库检测到货代系统中有超期为未处理的账单条目时,自动给指定相关人员以短信、邮件以及微信公众平台直接发送到指定用户的微信上的方式发送消息。图4.10发送消息的代码查询查询主要包括业务查询和财务查询。用户在点击查询的按钮后,系统会直接弹出查询的整体界面,如图4.11。用户在选择需要查询的类别后,可以按照界面上已有的查询条件进行选择查询。在用户点击选择相关的查询条件后,系统会根据查询的类别进行显示,比如查询的是业务,则系统用柱状图来表示查询结果;用户选择查询的是财务时,则会以列表的形式来展示结果。模块实现流程图,如图4.12所示。图4.11查询模块界面如图4.11的查询界面,可以看到有业务查询和财务查询,业务查询的界面下就有几个相关的搜索条件可以让用户进行选择,如图4.13所示,在指定年业务查询时,弹出一个选择插件,供用户选择具体要查询的年份,之后再弹出查询的相应年份的结果,以柱状图的形式显示。在查询财务业务时,显示结果是以列表的形式显示,如图4.14所示。图4.12查询流程图图4.13业务查询结果显示界面图4.14财务查询结果显示界面总结与展望结论系统的开发,一共花了将近4个月,从最开始跟公司进行需求分析了解,并确定了系统的结构后,花了2个多月的时间来进行底层框架和开发环境的搭建,之后开始进行具体模块的实现,花了一个多月的时间初步实现了整个系统的模块,并且实现了业务系统下的大部分功能。同时也花费了3周的时间进行系统具体功能的测试,修正了部分bug,以确保功能可以正确的运行。在整个系统的开发过程中,碰到太多的问题,在底层框架和开发环境的搭建就花费了很多的时间,在微信官网的设计过程中,因为之前对html5语言的不熟悉,所以对微信官网的页面布局方面也花了较多的时间。开发货代的业务系统时,遇到的问题是最多的,包括前端界面的格式调试问题、后台的编码实现、逻辑问题、数据库的连接以及语法的调试等等,各种各样的问题。在查阅了各种的相关书籍,请教公司同事以及指导老师,才慢慢的把问题一个一个的克服了。在此过程中,学到了SSH框架下的各个层的功能实现和MVC设计模式等方面的知识,更是深刻的体会到了一句话,“实践是最好的老师”。通过本次的毕业设计,才发现软件开发真的很难,看着非常简单的一个小功能,得花去好多好多时间来进行研究学习,同时也发现,一个人独立进行开发真的很难,幸亏有学校老师和同学的支持以及帮助,才能比较顺利的完成了本次的毕业设计。经过这次的毕业设计,使得自己对大学四年来所学的东西有了一个更透彻的理解,并且专业知识和编程的动手能力也都提高了很多,并且学会了独立思科解决问题和不断学习的学习能力。整个系统的实

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论