基于微信公众号家教信息平台研发
赖权威 张涌 曾兴旺 胡安明 陈惠娥
摘 要:小程序不仅可以在微信内被共享使用,作为一种新的开放能力,还拥有极好的用户体验,用户不用关心是否安装了太多的应用程序,应用将无处不在,随时可用,但是又无需安装。本项目通过目前广泛使用的微信公众平台,在此平台上进行二次开发,用MySQL作为后台数据库系统,使用ThinkPHP框架建立一个家教中心所要服务的客户主体信息交流中心,平台实现了浏览、统计、推荐、购买、修改等管理功能,增加大学生勤工俭学和社会实践的机会。
关键词:微信;公众号;家教平台
中图分类号:TP399 文献标识码:A
文章编号:2096-1472(2018)-07-46-04
1 引言(Introduction)
国外学者开展家教研究较早,如马克·贝磊[1]从国际比较的角度对各国数据进行了系统化地处理,提出了政策性建议。Lee[2]、Tseng[3]和Russell[4]等人分别对我国香港、台湾和日本的课外补习研究表明:45%的香港小学生参加补习,81%的台湾高中生参与私人补习,近70%的日本学生会在中学毕业前参与课外辅导。由于社会补习需求大,因此为大学生提供了许多就业机会。
2016年1月9日,微信创始人、腾讯高级副总裁张小龙在公众场合提出应用号的概念,它的出现是为了弥补现有公众号拆分出来的服务号提供的服务,不久后应用号正式发布改名为小程序。小程序不仅可以在微信内被共享使用,作为一种新的开放能力,还拥有极好的用户体验。它无需下载安装即可使用和原有的三种公众号是并行的体系。
大学生家教是大学生运用课余时间为第三方提供有偿家教服务的行为,符合学校学生管理中勤工俭学的规定。但目前大学寻找家教信息,只能通过自己粘贴广告,或去中介公司,非常不便利。随着计算机技术的发展,微信小程序为实现此类信息平台提供了较好的契机。
本课题致力于开发基于微信小程序的荔湖教育商城和商城管理系统,通过商城管理系统实现对微信小程序商城的管理,从而使消费者能够选择心仪的课程产品。并且通过微信小程序的吸引力,快速在人群中推广出来。
2 关键技术(Key technology)
(1)微信开发者工具
为了帮助开发者简单和高效地开发和调试微信小程序,腾讯公司开发了公众号网页调试和小程序调试两种开发模式。小程序开发工具基于小程序开发框架(MINA),框架的核心是一个相应的数据绑定系统,让数据库与视图能保持同步。小程序开发框架的存在使开发更加简单和高效。最外层的三个文件,app.js、app.json和app.wxss是必不可少的。app.js是小程序的脚本代码,负责监听和小程序的生命周期,声明全局变量,调用框架API,也是小程序入口;app.json是负责小程序的配置文件,包含小程序的所有页面声明;app.wxss是小程序的公共样式表,语法和CSS类似。
为了减少配置项,小程序一个页面的所有文件都具有相同的路径和文件名。例如User页面的目录下,将会有user.js、user.json、user.wxml、user.wxss四个文件,其中user.js和user.wxml是必须的文件,分别是页面逻辑和页面结构。user.wxss和user.json为非必须文件,存放页面的样式表和配置信息。
(2)ThinkPHP技术与JavaScript技术
ThinkPHP的出现简化了企业级应用开发,最早诞生于2006年初,ThinkPHP注重易用性的同时始终保持代码至简。ThinkPHP可以支持Windows/Unix/Linux等服务器环境,同时支持MySql、PgSQL、Sqlite多种数据库和PDO扩展。ThinkPHP拥有底层架构、基类库、数据库访问层、模板引擎、缓存机制、插件机制、角色认证、表单处理等常用的组件,能够解决应用开发中的大多数需要,并且具有跨版本、跨平台和跨数据库性能。JavaScript是一种直译型适用于客户端的脚本语言,最早用来给HTML网页增加动态功能。
研究发现,无论是基于ASP的家教平台的设计与应用研究[5]、基于J2EE平台的家教信息管理系统的设计与实现[6],基于PHP技术的家教信息平台的设计与实現[7]、还是基于HTML5的跨平台移动家教信息服务系统的设计与实现[8],都应用了主流技术,提高了平台的交互性能和优质服务信息。而基于微信公众号家教平台的研发,具有极好的用户体验,便于下载共享使用。
3 家教信息平台系统分析(Analysis of tutor information platform system)
本系统设计开发一个基于微信小程序的荔湖教育商城,采用微信web开发者工具作为前台开发工具。MySQL作为后台数据库平台的系统,运用ThinkPHP框架设计一个后台管理商城页面。
荔湖教育商城分为前台商城和后台管理。下面将主要针对后台各模块进行功能需求分析与性能分析。
(1)功能分析
本系统的后台主要功能模块概述如下:
①综合管理模块:该模块可管理小程序首前台、首页图标设置、小程序配置等功能。
a.前台管理:修改或添加与网站相关的信息,例如:关于我们、联系我们、实名认证协议。
b.首页图标管理:添加、排序和修改首页图标和其标题,设置点击跳转事件,以及轮播顺序。
c.小程序配置:添加或更改小程序名称、logo、简介、客服微信号。
d.广告管理:添加、修改、删除小程序首页面轮播广告。
②管理员管理模块:该模块主要用于管理员分配管理员账号及密码。
③老师管理模块:该模块主要用于管理员管理老师信息:包含老师的添加、修改、删除。模块信息包括:老师名称、所在地、联系电话、手机、学历、QQ、老师图文介绍。
④名师管理模块:a.名师管理:添加、修改、删除、搜索名师;b.名师信息管理:名师名称、名师介绍、名师图片。
⑤课程管理模块:a.信息管理:添加、修改、删除、搜索产品信息;b.课程基本信息:课程名称、广告语、所属老师;c.课程分类:所属科目、课程类型;d.课程单位:添加课程的量词;e.其他信息:课程价格、赠送积分、课程编号、库存数量、缩略图、轮播图;f.抢购课程:选择课程、抢购价格、设置抢购开始结束时间。
⑥订单管理模块:对用户下的订单进行修改操作,管理员可修改订单状态。订单信息:订单ID、买家、金额、支付类型、订单转态、订单时间。
⑦优惠券管理模块:管理员添加优惠券,设置优惠券名称、开始时间、满减金额、所需积分、发行数量、课程优惠券使用范围。
⑧管理员模块:管理员登录页面后可进行管理所有功能,并且能安全退出。本系统的前台主要功能模块包括:首页展示轮播广告、抢购商品、商品品牌、并能提供搜索商品功能。分页为:店铺展示页面、购物车页面、顾客个人信息。店铺展示页面:显示卖家个人信息、商店商品。购物车页面:顾客可对购物车商品数量进行增加、减少、删除,订单结算。顾客个人信息:可查看订单信息、个人地址信息、并且也支持开设店铺。
(2)性能分析
通过对用户的需求分析,对本系统的性能规定如下:操作方便、界面友好、响应速度快、角色识别。
本系统有三种角色,系统管理员、普通管理员、用户。
系统管理员:管理系统用户、角色与权限,拥有最高级管理权限。
普通管理员:管理课程、老师、订单、课程优惠券管理、广告管理、实名认证、抢购课程、课程分类管理。
用户:通过微信小程序端,可以浏览到广告、促销信息、品牌信息、商品信息、购物车信息、订单信息、个人信息。系统用例图如图1—3所示。
4 家教信息平台的设计(Design of tutor information platform)
该系统登录划分为:系统管理员登录、普通管理员登录、微信用户小程序登录,使用MySQL作为后台数据库。
(1)系统管理员登录
登录成功可以查看信息、销量统计,分配普通管理员账号,也可以对小程序的管理,包括小程序界面的综合管理、课程管理、老师管理、订单管理、广告管理、优惠券管理、安全退出,如图4所示。
(2)普通管理员登录
登录成功,可以查看信息、销量统计,分配普通管理员账号,也可以对小程序的管理,包括小程序界面的综合管理、课程管理、教师管理、订单管理、广告管理、优惠券管理、安全退出。
(3)微信用户小程序登录
通过手机微信端登录荔湖教育小程序,用户可在主页产看促销课程,以及广告信息,也能查看各类课程信息和老师开设课程信息,以及查看个人购物车和个人订单信息。如图5所示。
5 家教平台的实现过程(Implementation process of tutor platform)
(1)部署ThinkPHP至服务器
在本次开发中使用腾讯云服务器,腾讯云小程序解决方案是腾讯云专为微信小程序用户提供的解决方案,使用户能够一键自动完成域名注册解析,以及云端资源分配初始化,快速搭建具备云端能力的专属小程序底层能力。为了能够快速的部署,本次开发中选用的服务器系统为CentOS 7.4 64位,运用了宝塔Linux面板快速部署项目。
(2)功能实现
后台管理主要功能包括:综合管理、会员管路、管理员管理、教师管理、课程管理、抢购课程管理、明星教师管理、订单管理、课程分类管理、优惠卷管理、广告管理。如图6所示。
用户通过小程序端查看促销课程和课程广告,也能查看各类课程信息和名师开设课程信息,购买课程,查看个人购物车和个人订单信息。主要购物功能如图7—图9所示。
6 结论(Conclusion)
小程序更好为消费者在购买课程时带来直观的感受,用户无需下载app,即可体验小程序方便快捷。并且开发成本较低。小程序解决了客户端界面操作设备兼容的问题,不用分别雇用iOS系统、安卓系统的工程师,很大程度上降低了开发成本。
此次设计中,用MYSQL数据库,ThinkPHP作为框架,并把后台和代码部署到服务器,实现在互联网中访问。同时,在原有的UML系统建模知识上,对系统用例进行建模,建立分析模型,设计系统逻辑模型、编码,后台数据库的创建与改进,以及系统的维护与调试。
参考文献(References)
[1] Bray,M.The shadow education system:Private tutoring and its implications for planners[M].Paris:IIEP of UNESCO,1999:22-25.
[2] Lee,C..Children and private tuition[J].Youth Poll Series,No.34.Hong Kong Federation of Youth Groups,1996:13-15.
[3] Tseng,J..Private supplementary tutoring at the senior secondary level in Taiwan and Hong Kong[D].M.Ed.dissertation,The university of Hong Kong,1998:15-17.
[4] Russell,N.u..Lessons from Japanese Cram Schools[A].In:Cummings,w.k.Altbach.P.(eds.).The Challenge of Eastern-Asian education:Lessons for America[M].Albany:State university of New York Press,1996:153-170.
[5] 王鵬文,施阳.基于ASP的家教平台的设计与应用探究[J].电脑知识与技术,2017,13(7):79-80.
[6] 廖立雄.基于J2EE平台的家教信息管理系统设计与实现[D].电子科技大学,2014(5):11.
[7] 刘淑英.基于PHP技术的家教信息平台的设计与实现[J].现代信息科技,2018,2(12):10-21.
[8] 殷杰.基于HTML 5的跨平台移动家教信息服务系统的设计与实现[D].华南理工大学,2015,4(5):10.
作者简介:
赖权威(1996-),男,本科生.研究领域:计算机应用.
张 涌(1996-),男,本科生.研究领域:计算机应用.
曾兴旺(1995-),男,本科生.研究领域:计算机应用.
胡安明(1982-),男,硕士,讲师.研究领域:计算机应用,人工智能.
陈惠娥(1984-),女,硕士,讲师.研究领域:计算机应用,大数据.本文通讯作者.
摘 要:小程序不仅可以在微信内被共享使用,作为一种新的开放能力,还拥有极好的用户体验,用户不用关心是否安装了太多的应用程序,应用将无处不在,随时可用,但是又无需安装。本项目通过目前广泛使用的微信公众平台,在此平台上进行二次开发,用MySQL作为后台数据库系统,使用ThinkPHP框架建立一个家教中心所要服务的客户主体信息交流中心,平台实现了浏览、统计、推荐、购买、修改等管理功能,增加大学生勤工俭学和社会实践的机会。
关键词:微信;公众号;家教平台
中图分类号:TP399 文献标识码:A
文章编号:2096-1472(2018)-07-46-04
1 引言(Introduction)
国外学者开展家教研究较早,如马克·贝磊[1]从国际比较的角度对各国数据进行了系统化地处理,提出了政策性建议。Lee[2]、Tseng[3]和Russell[4]等人分别对我国香港、台湾和日本的课外补习研究表明:45%的香港小学生参加补习,81%的台湾高中生参与私人补习,近70%的日本学生会在中学毕业前参与课外辅导。由于社会补习需求大,因此为大学生提供了许多就业机会。
2016年1月9日,微信创始人、腾讯高级副总裁张小龙在公众场合提出应用号的概念,它的出现是为了弥补现有公众号拆分出来的服务号提供的服务,不久后应用号正式发布改名为小程序。小程序不仅可以在微信内被共享使用,作为一种新的开放能力,还拥有极好的用户体验。它无需下载安装即可使用和原有的三种公众号是并行的体系。
大学生家教是大学生运用课余时间为第三方提供有偿家教服务的行为,符合学校学生管理中勤工俭学的规定。但目前大学寻找家教信息,只能通过自己粘贴广告,或去中介公司,非常不便利。随着计算机技术的发展,微信小程序为实现此类信息平台提供了较好的契机。
本课题致力于开发基于微信小程序的荔湖教育商城和商城管理系统,通过商城管理系统实现对微信小程序商城的管理,从而使消费者能够选择心仪的课程产品。并且通过微信小程序的吸引力,快速在人群中推广出来。
2 关键技术(Key technology)
(1)微信开发者工具
为了帮助开发者简单和高效地开发和调试微信小程序,腾讯公司开发了公众号网页调试和小程序调试两种开发模式。小程序开发工具基于小程序开发框架(MINA),框架的核心是一个相应的数据绑定系统,让数据库与视图能保持同步。小程序开发框架的存在使开发更加简单和高效。最外层的三个文件,app.js、app.json和app.wxss是必不可少的。app.js是小程序的脚本代码,负责监听和小程序的生命周期,声明全局变量,调用框架API,也是小程序入口;app.json是负责小程序的配置文件,包含小程序的所有页面声明;app.wxss是小程序的公共样式表,语法和CSS类似。
为了减少配置项,小程序一个页面的所有文件都具有相同的路径和文件名。例如User页面的目录下,将会有user.js、user.json、user.wxml、user.wxss四个文件,其中user.js和user.wxml是必须的文件,分别是页面逻辑和页面结构。user.wxss和user.json为非必须文件,存放页面的样式表和配置信息。
(2)ThinkPHP技术与JavaScript技术
ThinkPHP的出现简化了企业级应用开发,最早诞生于2006年初,ThinkPHP注重易用性的同时始终保持代码至简。ThinkPHP可以支持Windows/Unix/Linux等服务器环境,同时支持MySql、PgSQL、Sqlite多种数据库和PDO扩展。ThinkPHP拥有底层架构、基类库、数据库访问层、模板引擎、缓存机制、插件机制、角色认证、表单处理等常用的组件,能够解决应用开发中的大多数需要,并且具有跨版本、跨平台和跨数据库性能。JavaScript是一种直译型适用于客户端的脚本语言,最早用来给HTML网页增加动态功能。
研究发现,无论是基于ASP的家教平台的设计与应用研究[5]、基于J2EE平台的家教信息管理系统的设计与实现[6],基于PHP技术的家教信息平台的设计与实現[7]、还是基于HTML5的跨平台移动家教信息服务系统的设计与实现[8],都应用了主流技术,提高了平台的交互性能和优质服务信息。而基于微信公众号家教平台的研发,具有极好的用户体验,便于下载共享使用。
3 家教信息平台系统分析(Analysis of tutor information platform system)
本系统设计开发一个基于微信小程序的荔湖教育商城,采用微信web开发者工具作为前台开发工具。MySQL作为后台数据库平台的系统,运用ThinkPHP框架设计一个后台管理商城页面。
荔湖教育商城分为前台商城和后台管理。下面将主要针对后台各模块进行功能需求分析与性能分析。
(1)功能分析
本系统的后台主要功能模块概述如下:
①综合管理模块:该模块可管理小程序首前台、首页图标设置、小程序配置等功能。
a.前台管理:修改或添加与网站相关的信息,例如:关于我们、联系我们、实名认证协议。
b.首页图标管理:添加、排序和修改首页图标和其标题,设置点击跳转事件,以及轮播顺序。
c.小程序配置:添加或更改小程序名称、logo、简介、客服微信号。
d.广告管理:添加、修改、删除小程序首页面轮播广告。
②管理员管理模块:该模块主要用于管理员分配管理员账号及密码。
③老师管理模块:该模块主要用于管理员管理老师信息:包含老师的添加、修改、删除。模块信息包括:老师名称、所在地、联系电话、手机、学历、QQ、老师图文介绍。
④名师管理模块:a.名师管理:添加、修改、删除、搜索名师;b.名师信息管理:名师名称、名师介绍、名师图片。
⑤课程管理模块:a.信息管理:添加、修改、删除、搜索产品信息;b.课程基本信息:课程名称、广告语、所属老师;c.课程分类:所属科目、课程类型;d.课程单位:添加课程的量词;e.其他信息:课程价格、赠送积分、课程编号、库存数量、缩略图、轮播图;f.抢购课程:选择课程、抢购价格、设置抢购开始结束时间。
⑥订单管理模块:对用户下的订单进行修改操作,管理员可修改订单状态。订单信息:订单ID、买家、金额、支付类型、订单转态、订单时间。
⑦优惠券管理模块:管理员添加优惠券,设置优惠券名称、开始时间、满减金额、所需积分、发行数量、课程优惠券使用范围。
⑧管理员模块:管理员登录页面后可进行管理所有功能,并且能安全退出。本系统的前台主要功能模块包括:首页展示轮播广告、抢购商品、商品品牌、并能提供搜索商品功能。分页为:店铺展示页面、购物车页面、顾客个人信息。店铺展示页面:显示卖家个人信息、商店商品。购物车页面:顾客可对购物车商品数量进行增加、减少、删除,订单结算。顾客个人信息:可查看订单信息、个人地址信息、并且也支持开设店铺。
(2)性能分析
通过对用户的需求分析,对本系统的性能规定如下:操作方便、界面友好、响应速度快、角色识别。
本系统有三种角色,系统管理员、普通管理员、用户。
系统管理员:管理系统用户、角色与权限,拥有最高级管理权限。
普通管理员:管理课程、老师、订单、课程优惠券管理、广告管理、实名认证、抢购课程、课程分类管理。
用户:通过微信小程序端,可以浏览到广告、促销信息、品牌信息、商品信息、购物车信息、订单信息、个人信息。系统用例图如图1—3所示。
4 家教信息平台的设计(Design of tutor information platform)
该系统登录划分为:系统管理员登录、普通管理员登录、微信用户小程序登录,使用MySQL作为后台数据库。
(1)系统管理员登录
登录成功可以查看信息、销量统计,分配普通管理员账号,也可以对小程序的管理,包括小程序界面的综合管理、课程管理、老师管理、订单管理、广告管理、优惠券管理、安全退出,如图4所示。
(2)普通管理员登录
登录成功,可以查看信息、销量统计,分配普通管理员账号,也可以对小程序的管理,包括小程序界面的综合管理、课程管理、教师管理、订单管理、广告管理、优惠券管理、安全退出。
(3)微信用户小程序登录
通过手机微信端登录荔湖教育小程序,用户可在主页产看促销课程,以及广告信息,也能查看各类课程信息和老师开设课程信息,以及查看个人购物车和个人订单信息。如图5所示。
5 家教平台的实现过程(Implementation process of tutor platform)
(1)部署ThinkPHP至服务器
在本次开发中使用腾讯云服务器,腾讯云小程序解决方案是腾讯云专为微信小程序用户提供的解决方案,使用户能够一键自动完成域名注册解析,以及云端资源分配初始化,快速搭建具备云端能力的专属小程序底层能力。为了能够快速的部署,本次开发中选用的服务器系统为CentOS 7.4 64位,运用了宝塔Linux面板快速部署项目。
(2)功能实现
后台管理主要功能包括:综合管理、会员管路、管理员管理、教师管理、课程管理、抢购课程管理、明星教师管理、订单管理、课程分类管理、优惠卷管理、广告管理。如图6所示。
用户通过小程序端查看促销课程和课程广告,也能查看各类课程信息和名师开设课程信息,购买课程,查看个人购物车和个人订单信息。主要购物功能如图7—图9所示。
6 结论(Conclusion)
小程序更好为消费者在购买课程时带来直观的感受,用户无需下载app,即可体验小程序方便快捷。并且开发成本较低。小程序解决了客户端界面操作设备兼容的问题,不用分别雇用iOS系统、安卓系统的工程师,很大程度上降低了开发成本。
此次设计中,用MYSQL数据库,ThinkPHP作为框架,并把后台和代码部署到服务器,实现在互联网中访问。同时,在原有的UML系统建模知识上,对系统用例进行建模,建立分析模型,设计系统逻辑模型、编码,后台数据库的创建与改进,以及系统的维护与调试。
参考文献(References)
[1] Bray,M.The shadow education system:Private tutoring and its implications for planners[M].Paris:IIEP of UNESCO,1999:22-25.
[2] Lee,C..Children and private tuition[J].Youth Poll Series,No.34.Hong Kong Federation of Youth Groups,1996:13-15.
[3] Tseng,J..Private supplementary tutoring at the senior secondary level in Taiwan and Hong Kong[D].M.Ed.dissertation,The university of Hong Kong,1998:15-17.
[4] Russell,N.u..Lessons from Japanese Cram Schools[A].In:Cummings,w.k.Altbach.P.(eds.).The Challenge of Eastern-Asian education:Lessons for America[M].Albany:State university of New York Press,1996:153-170.
[5] 王鵬文,施阳.基于ASP的家教平台的设计与应用探究[J].电脑知识与技术,2017,13(7):79-80.
[6] 廖立雄.基于J2EE平台的家教信息管理系统设计与实现[D].电子科技大学,2014(5):11.
[7] 刘淑英.基于PHP技术的家教信息平台的设计与实现[J].现代信息科技,2018,2(12):10-21.
[8] 殷杰.基于HTML 5的跨平台移动家教信息服务系统的设计与实现[D].华南理工大学,2015,4(5):10.
作者简介:
赖权威(1996-),男,本科生.研究领域:计算机应用.
张 涌(1996-),男,本科生.研究领域:计算机应用.
曾兴旺(1995-),男,本科生.研究领域:计算机应用.
胡安明(1982-),男,硕士,讲师.研究领域:计算机应用,人工智能.
陈惠娥(1984-),女,硕士,讲师.研究领域:计算机应用,大数据.本文通讯作者.