- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于小程序云开发的贯通云学习系统的设计与实现
1 通达自由,机械系统
由于学校的正确系统和空洞的教室搜索功能不向学生开放,许多学生很难知道学校的课程是否有教室来学习。同时,存在单人占据一个自习室,后来者因担心产生误解和影响而放弃同教室自习,既造成校园自习室资源的浪费,也耽误了学生宝贵自习时间。通达自习通以二维码为媒介,配合后台云数据库管理,为学院有效管理自习教室提供了科学依据。
通达自习通是一款基于微信平台,能实现对自习室进行科学管理与查询的微信小程序,通过小程序的云开发功能,实现对自习室数据的记录、修改、查询。使用者在给予该小程序登录接口的授权并调用权限后,对自习室已布置的静态二维码标签扫描签到,微信后台会调用云函数自动记录最新的数据,在云数据库中对信息进行修改。使用者也可以查询各个教室的使用情况及用户的最近自习时间记录,从而选择合适的教室进行学习,采用定位计算距离并判断的函数,限制只有在教室200 m内才能签到,有效防止有人恶意扫码占位。
2 小程序全球设计的框架
2.1 页面结构的实现
在本程序的前端界面实现中,采用了适配微信小程序的语言wxml、wxss、js进行编译。微信小程序的框架包含两部分:View视图层、App Service逻辑层。View层用来渲染页面结构,App Service层用来逻辑处理、数据请求、接口调用,在两个线程里运行。其中,视图层使用Web View渲染,逻辑层使用JSCore运行,通过在app.json里创建各页面Page的配置文件,以wxml和wxss编写视图层,由组件来进行展示;逻辑层中的动态数据均来自对应Page的data,可以通过set Data方法修改数据,从而将数据进行处理后发送给视图层。最后,基于系统层的JSBridage为视图层与逻辑层间提供了数据传输和事件系统,可以让开发者更方便地聚焦于数据与逻辑上。
2.2 中段设计与开发
2.2.1 云数据库/存储
云开发是一套解决小程序前后端开发的云端工具,如图1所示,提供了一整套云服务及简单、易用的API和管理界面,以尽可能降低后端开发成本,让开发者能够专注于核心业务逻辑的开发,尽可能轻松地完成后端的操作和管理。
(1)云函数。是一段运行在云端的代码,无需管理服务器,在开发工具内编写、一键上传部署即可运行后端代码。完全使用Node.js编写,可以操作云端数据库和存储空间。小程序提供了专门用于云函数调用的API,开发者可以在云函数内使用wx-server-sdk提供的get WXContext方法获取到每次调用的上下文(appid、openid等),无需维护复杂的鉴权机制,即可获取天然可信任的用户登录态(openid)。
(2)云数据库。云开发提供了一个既可在小程序前端操作,也能在云函数中读写的Mongo DB数据库,可提供每日5万次的数据库读取请求,满足绝大部分小程序应用。另外,一个数据库可以有多个集合(相当于关系型数据中的表),集合可看作一个JSON数组,数组中的每个对象就是一条记录,记录的格式是JSON对象。通过对创建的数据库进行修改,可以使用云函数来操作数据库的读写。
(3)云存储。云开发提供了一块存储空间,在小程序前端直接上传/下载云端文件,在云开发控制台可视化管理。微信平台推出基于“无服务开发小程序”,即Serveless。基于Servelss架构的小程序依赖云平台提供的后台服务,使得在小程序端可以分别调用wx.cloude.uploadfile和wx.cloude.downloadfile完成上传和下载云文件操作。
2.2.2 教室使用数据库
在数据库的使用中,直接使用云数据库功能,建立了一个class的云数据库来存储各个教室的使用情况。这个数据库包含的字段有:教室人数、教室名、在该教室的签到/签退时间;每次签到或者签退,都会通过调用自己定义的qiandao云函数,来记录教室的人数、时间与教室的变化。
3 扫描和签署系统的实现
鉴于实现整个系统功能的需要,设计出了系统实现流程。
3.1 创建教室数据库
首先,在小程序文件夹中建立cloud和miniprogram两个目录,并在package文件中配置,通过编写数据库函数cloud.database().collection(class),在小程序云端创建教室数据库。由于要充分利用每个自习教室,所以要将大量自习教室纳入规划,为每个空闲教室生成有唯一标识性的二维码。其次,创建自习教室的同时,可以设置自习教室的正常使用时间和最大容量人数,若不在正常使用时间范围内,或超过自习教室课容纳人数,则不允许签到或签退操作。
3.2 签到距离限制
为了防止自习教室的静态二维码被故意保存后,在非自习教室区域外进行扫码签到、干扰正常使用,本团队在程序中添加了distance:function
您可能关注的文档
最近下载
- 2025年中级经济师《运输经济专业知识与实务》全真模拟卷.pdf VIP
- 人教版(25秋新教材)八年级上册英语Unit 3《Same or Different》全单元教学课件.pptx
- 消化道出血的急救与护理课件.pptx VIP
- 第15讲 椭圆的共轭直径(解析几何)(解析版)》.pdf VIP
- 临床工作中科研与创新思维的建立.ppt VIP
- 酒店治安管理制度及应急预案.docx VIP
- 中国民营经济发展报告(上下册).doc VIP
- 语文人教版五年级下册草船借箭的教学设计.doc VIP
- 体育与健康《田径--投掷》大单元教学计划(18课时).pptx VIP
- 抗震加固工程施工方案.pdf VIP
文档评论(0)