一、页面构成:

①、顶部:如果已设置Logo则显示酒店Logo,否则显示默认Logo;

②、Banner:如果已设置Banner则显示酒店Banner,否则显示酒店名 “Banner图”字样;

③、页面提示语:可在“酒店管理”中设置相关提示语;

④、点单按钮

⑤、菜品介绍

二、页面预览:

扫码点单小程序制作(扫码点单-首页)(1)

三、主要功能:

①、扫码功能(scanQrCode):

扫码点单小程序制作(扫码点单-首页)(2)

代码说明:

扫码分两种情况:非H5及H5情况下处理方式不同,一般情况下在H5环境下无法调用系统摄像头进行扫码(可通过插件方式实现,但此处未使用),此处选择的是通过选择本地图片的方式进行;非H5环境下(即APP或小程序中)可以使用scanCode API调用摄像头进行扫描,所有环境中均需获取授权,用户同意后方可调用摄像头,此处并未考虑未获取授权的情况,在生产环境中,应该考虑客户拒绝授权的情形,并进行提示或重新调起授权。

②、解析二维码(decString)

扫码点单小程序制作(扫码点单-首页)(3)

代码说明:

因在生成二维码时,已对二维码进行了加密,所以二维码扫描结果是密文,无法直接读取,需要通过使用加密的密钥对密文进行解码,并对解码结果进行判断,若扫码内容解密后格式与要求的格式不同,会提示二维码错误。展示代码中,密钥是暴露出来的,在生产环境中,应保存好密钥,并按需调用。若扫码的我二维码解码成功,会自动跳转至点单页面。

③、权限校验

代码不予展示,按需校验。即在进入点单页之前,按需求校验当前客户是否酒店在住客户、或者校验客户网络是否是可以点餐的网络(即校验Wifi名称),校验通过方可点单。此功能是为了减少非顾客扫描二维码后恶意点单的情形,并非所有酒店方都需要这个功能,可在管理端中开启。

,