前言
前段时间,帮客户做了个小程序,大体的业务是这样的:客户是负责销售三轮车的,为了实现每辆三轮车在大马路上都能即时查看登记信息,客户做了个后台管理系统用来登记信息,配套小程序查看,信息包含车牌号、车辆图片、保险公司、保险到期时间、电话。客户后台录入信息后点击提交,会生成一张小程序码,将这个码的图片下载打印出来之后,粘贴到三轮车上,之后就可以用小程序扫码实现查看信息以及呼叫挪车等功能。
整体功能并不是很难,但还是需要花点时间的,怎么注册发布小程序我就不说了,只说核心的逻辑,让我们开始吧😄😄!
正文
项目架构采用云开发,后端使用unicloud,框架使用vk。其实本质来说就是后台录入数据,生成小程序码,然后小程序端扫码查看详情。
后台管理系统
这边说下生成小程序码的逻辑,表单提交之后,数据库保存,返回给前端一个id,这个id就是小程序码的参数,以后用户在小程序端扫码,也就是跳转到一个页面,然后携带这个id进行传参进行查询的。
submitSuccess(item, formType){
this.form1.props.show = false;
if(item.formType==="add"){
let id = item.data.id
vk.userCenter.getWeixinMPqrcode({
data: {
page: "pages/index/index",
scene: "id=" + id,
check_path: false,
env_version: "release", // 默认值"release"。要打开的小程序版本。正式版为 "release",体验版为"trial",开发版为"develop",仅在微信外打开时生效。
},
success: async (res) => {
let file = await vk.pubfn.base64ToFile({
base64: res.base64,
})
// 上传到云存储
let uploadRes = await vk.uploadFile({
file: file,
cloudPath:item.data.car_no+".jpg"
});
vk.callFunction({
url: 'update',
data: {
_id:id,
qrcode:uploadRes.url
},
success:()=>{
that.refresh();
}
});
}
})
}else{
that.refresh();
}
},
小程序端
小程序端是通过扫描小程序码进来的,页面做的不是很好看😅,哈哈,本人虽然全栈,但毕竟并不是专业ui,审美没那么好,但基本能体现出信息就行了。(以下图片仅供参考)
总结
我想说,这个小程序虽然简单,但客户的想法还是挺有创意的👍👍。目前市面上好像还没有哪个车贴着小程序码,可以随时查阅信息的,不过这样也有点泄露个人隐私,我觉得可以把隐私这部分不展示,展示一些能看的信息。挪车这个功能可以拨打对方电话,但做的再细一点的话,电话可以加密拨打,也可以很好的保护车主的隐私。好了,可能甲方爸爸有自己的想法吧,咱只负责帮他实现需求,他怎么布局随他吧,哈哈。