同步操作将从 DCloud/出入人员登记系统 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
项目负责人:DCloud_UNI_GSQ。在QQ群797192690里。
项目预览地址:wlry.m3w.cn。体验账户用户名:admin;密码:12345678。此地址为测试体验地址,具体某单位上线时,需要单独部署。
本项目已经在几十家社区成功应用。
本项目是基于木兰宽松许可证的开源项目,代码全部开源,开发者可自由使用其中的代码,自己部署相关的系统。
本项目需要HBuilderX 2.5.11以上版本才能运行。切记看清版本号
根据自己的操作系统下载,下载标准版即可,运行项目时会自动安装依赖的插件。
HBuilderX是绿色的,Windows版解压后直接运行里的HBuilderX.exe即可。
从本项目中复制git地址:https://gitee.com/dcloud/xinguan2020-alien-registration.git
在HBuilderX中点菜单文件-导入,选择从git导入,粘贴刚才复制的git地址。
如果Windows版,在HBuilderX安装Git插件时,需同时安装TortoiseGit软件。
如不参与开源项目开发,也可以在gitee仓库里下载zip包,解压到硬盘,将目录拖到HBuilderX中(注意根目录需包含项目的manifest文件)
如果以前注册过HBuilderX,请保持登陆状态。如没有,在HBuilderX左下角点登陆。
源码项目不含appid,需要自己在manifest.json中申请。
具体操作方式为打开项目下的manifest.json文件,在右边点击申请appid。
本项目构建在uniCloud云开发模式下,使用的是阿里云severless引擎,通过js云函数方式完成后台开发。开发者需要创建一个阿里云的serverless空间,并把服务端代码(也就是云函数)部署到自己的服务空间里。
DCloud和阿里云合作,疫情期间免费提供服务器,没有容量和并发限制。即便瞬间进入几百万用户也毫无影响。基于这套serverless架构,开发者无需关心双机热备、并发扩充、DDoS攻击等问题。详见uniCloud的官网:https://uniapp.dcloud.io/uniCloud/README
对项目下的cloudfunctions目录点右键,选择你的服务空间。如果没有服务空间,需要创建,创建时会引导登录和注册uniCloud。(如果看不到服务空间选择菜单,说明你使用的HBuilderX版本过低)
项目需要注册和开通uniCloud,因阿里云审核要求,需要实名认证。疫情期间,工作时间一般半小时内完成审核。
创建好服务空间后,继续对项目下的cloudfunctions目录点右键,选择你之前创建的服务空间,完成绑定。
服务空间包括云数据库和云函数。刚建的服务空间,在uniCloud的web控制台看,里面数据库和云函数都是空的,需要建表和上传云函数。
(云数据库是mogodb,基于nosql)
数据库的结构说明在项目文件根目录下的db.md
文件中。同时HBuilderX提供了快捷初始化数据库的方法,打开cloudfunctions目录下的db_init.json
文件,点右键,初始化云数据库,会自动完成表的创建。
下一步是上传云函数到你的服务空间。对cloudfunctions目录点右键,上传所有云函数到你的服务空间中。
你可以在uniCloud的web控制台,查看云端的数据库和云函数情况。打开web控制台的方式是对cloudfunctions目录点右键,打开uniCloud web控制台。
项目初始化完毕,可以运行了。
uni-app框架开发的项目,都可以运行在所有平台,不管是浏览器还是小程序,或者iOS、Android的App。点击工具栏的运行,或者Ctrl+r
快捷键,可看到运行菜单。
点击运行到内置浏览器,或者不通过运行菜单,直接点HBuilderX右上角的预览,可以在直接运行H5版。
若之前下载的HBuilderX是标准版,此时会开始安装uni-app插件,插件安装完毕后重新运行一下。
若编译控制台提示node_module条件编译报错,可忽略。
如果要运行在外部浏览器,需要在uniCloud的web控制台的H5安全域名界面绑定安全域名,否则会有跨域问题。
如果要运行在手机App上,请通过数据线连接手机和电脑,然后点运行菜单,会刷出识别到的手机设备,进一步运行。
运行起来的系统,需要登陆。因账户密码是通过算法加密存储的,所以之前的数据库初始化无法直接把admin账户预置进去。目前系统也暂无可视化界面创建用户,所以提供了一个创建用户用的云函数。
在cloudfunctions目录下找到云函数create-user
,在其目录上右键点击上传并运行。
这个云函数运行后会在云数据库的user表里插入以下操作员信息。
{
username: 'admin',
password: '123456'
}
然后就可以在前端界面里,用上述账户密码登陆了。
实际部署时应更换cloudfunctions-module/src/utils/constants.js
内的passSecret
为自己的key,更换之后重新编译上传云函数,导入操作员信息。
阿里云serverless的云函数第一次调用时,有冷启动过程,访问较慢,大约5秒左右才能联网返回数据。第二次调用是正常速度。目前阿里云在一定时间后会回收一直没再运行的云函数资源,回收后再执行仍然需要冷启动过程。这个问题阿里云正在优化。
点击HBuilderX的发布菜单,可以发布到H5、App和小程序。
发布小程序
// #ifdef MP-WEIXIN
//微信小程序这里要写死为小程序的二维码地址或者是H5平台的二维码地址,或者直接填 '' 则在微信小程序中不显示二维码。
//如果用h5的二维码,记得把域名换成自己的域名,程序会根据地址自动生成二维码。如果用微信的二维码,那种菊花码需要去微信后台生成。
val: "https://wlry.m3w.cn/#/pages/tabbar/add?id=" + uni.getStorageSync('username'),
// #endif
发布H5
底部5个tab:列表、图表、+、搜索、我的
本软件设计为操作员必须登录,访客无需登录。但操作员登陆后,可以在“我的”里看到一个二维码,把这个二维码出示或打印张贴给外来人员,外来人员可以扫描此码,打开一个H5页面,自助填写表单。
主屏是来访人员列表,点击人员item进详情,详情里每个人的电话可以点击拨叫。
如果访客登记时填写了春运车次航班情况,列表显示时会自动去危险车次数据源查询,验证外来人员乘坐的车次、航班,是否是国家通告的已发现确诊人员的车次。
显示按时间为横轴的曲线,表达隔离、发烧、疑似、确诊、死亡的曲线
表单,按数据库字段填写。
姓名、联系电话是必填项。如部署时各单位有定制需求,比如删减一些字段、改一些字段为必填项,可在开源项目基础上自行修改。
电话是人的标记,同一个电话,再次录入时,会更新之前的基本信息。
保存入库时,除了表单填写内容,还需要在数据库里同时存入操作人员的姓名、id、操作时间、操作ip。
可以按人名、手机号、登记时间来查询外来人员登记记录,搜索结果同列表。
在pc浏览器打开本页面后,在界面右上角可以看到导出按钮,导出格式是csv,可以用excel打开。如果需要对导出的字段删减。自行在开源代码中删减。
操作员登陆、登出、修改密码。
本系统不支持注册。操作员账户由管理员通过云函数创建,然后每个操作员登陆后,可自行修改密码。
如忘记密码,请管理员在云函数中重置其密码。
云函数create-user
目录上右键点击上传并运行。
如开发者有精力,欢迎贡献一个管理员可视化创建用户、重置用户密码的界面。
操作员登陆后,点tab中的”我的“,会展现一个二维码。外来人员可以扫描此码,自助填写。
第二次填写时,重复信息会辅助填写。
本项目基于木兰宽松许可证,代码可自由使用和更改。
本开源项目的完成,感谢众多开发者的贡献DCloud_UNI_GSQ、DCloud_UNI_WYQ、DCloud_UNI_HDX、躺希腊额阿毛、反复再反复、King、丛林野战军、AHello、kagstest。
欢迎加入QQ群797192690交流。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。