基于微信小程序的教学辅助系统的实现
2022-12-17廖培淇
廖培淇,龚 萍
(攀枝花学院数学与计算机学院,四川 攀枝花 617000)
0 引言
在新时代的路上,发展与稳定成为社会的主旋律。为了方便广大教师,充分发挥学生的主观能动性,开发了该教学辅助系统用以辅助教师完成疫情期间的线上教学。本系统基于微信小程序平台,使用Js语言完成逻辑代码的设计和实现,Wxml和Wxss语言进行前端页面的设计,使用Json数据格式完成数据的传输。此外,本系统还使用了微信官方提供的云服务以及Api函数和外部的Js文件共同完成代码的编写。针对数据和文件的存储,本系统使用了Mysql数据库、微信云数据库和微信云存储共同完成数据和文件的存储和读取。本系统适合辅助完成个人以及小型团体的部分教学任务。
1 需求分析
本系统将用户角色分为学生、教师、管理员三类用户,按照角色进行功能划分,系统功能如下:
①登录:管理员直接将学生教师信息导入到系统当中,无须注册即可进行登录,既保证了系统安全性,也免去了注册的步骤。
②留言板:所有登录用户均可在留言板上进行留言,也能进行回复,管理员用户相比于普通用户,多了删除留言以及回复的功能。
③作业考试:教师用户可以进行作业的布置、作业考试成绩的查看和导出,学生用户仅能完成作业和考试且只能查看自己的分数,管理员用户能够发布考试并进行考试的管理。
④班级管理:教师用户可以创建并管理自己的教学班级,同时能够导入班级的学生名单。
⑤用户管理:管理员用户可以进行用户的管理包括用户信息的更新、导入、删除。
⑥学院管理:管理员用户可以进行学院管理,包括添加管理学院,导入、更新、删除教师名单。⑦课程管理:管理员用户能够安排教师进行某门课的教育教学,并能更新其信息。
2 业务流程分析
系统将用户角色分为管理员、教师、学生三个角色,管理员用户负责对系统用户、学院专业、考试发布以及留言信息的管理,教师负责建立班级并对学生进行作业管理和成绩的导出,系统的基本业务流程为:
①管理员建立学院以及专业并添加教师、学生名单。
②教师进行系统登录并建立班级导入班级学生名单。
③教师布置作业、管理员发布考试。
④学生登录,完成相关试题。
⑤学生和教师在留言板发布留言。
⑥管理员对留言内容进行管理。
3 系统主要技术
本系统将程序分为逻辑层与视图层,采用Js来完成逻辑层的任务,Wxml、Wxss、Json完成视图层的实现。此外,本系统采用了微信团队提供的Api接口和第三方的js来实现某些功能。为了方便地实现数据在各个用户角色之间进行流通,本系统采用了微信云存储、云数据库以及本地的Mysql数据库相结合的方式进行数据存储。为了减少代码的冗余量,也使用了微信云函数进行一些数据的处理。
4 系统主要功能实现
4.1 留言板的实现
在用户登录之后,用户的基本信息将会写入手机缓存当中,当手机当中无缓存内容,用户不能对系统进行除登录之外的任何操作。在进入留言板模块时,使用wx.getStorageSync()接口函数读取用户存储在缓存当中的学校信息,系统用户只能查看本校的留言信息。另外,留言信息涉及图片的存储,本系统将图片存储于云存储上,本地Mysql存储着留言图片在云存储中的地址,仅需获取到图片的云存储地址,系统即可将图片显示在前端。
云函数调用代码如下:
由于微信小程序的云函数调用中使用的wx.cloud.callFunction()是异步函数,若需要获取执行云函数后的结果,需要在then()函数当中进行数据的处理。
4.2 作业考试的实现
学生在教师或者管理员发布作业或者考试之后,能够进入试题界面进行作业和考试的完成,在考试界面拥有倒计时功能,在倒计时结束后,将会自动交卷。本系统使用了第三方day.js进行关于时间的操作。但在数据库时间和当前时间的读取操作上,会有时区变换的问题,为了解决该问题,依照不同时区的变换规律,在原有的时间上加8小时即可解决系统时间显示在前端页面时带来的失去变换问题。
4.3 导入导出excel表格的实现
对于excel文件的读取和生成,使用了第三方的nodexlsx.js进行excel文件的解析,读取选中的excel文件到系统变量当中。由于微信小程序本身的限制,微信小程序不能直接下载除图片外的其他文件。因此,把生成的excel文件存储到云存储上,接着使用微信小程序官方提供的wx.OpenDocument()函数进行excel文件的打开。
5 结语
本系统基于微信小程序平台,解决了教师在教育教学中的有关考试作业部分的部分问题,操作简便,学习成本低,仅需微信扫码即可进入系统,进行操作。系统页面简洁明了,适合年龄较大的教师进行使用,但仍然有部分问题需要解决。例如:系统ui不够美观,太过简洁、系统功能还不够健全,后期可以考虑增加资料阅读功能,学生可以阅读教师上传的资料、还可以在学生成绩导出页面增添统计图,更能够直观地显示学生的成绩以及其分布情况等等。在后续的学习和生活当中,系统还需要进一步优化。