Skip to content

Latest commit

 

History

History
51 lines (44 loc) · 3.61 KB

README.md

File metadata and controls

51 lines (44 loc) · 3.61 KB

微信小程序开发智慧工地,人脸识别功能

功能说明

1. 登陆:

采用无状态session,redis-session实现,登陆后在redis中存了用户的key以及用uuid生成的value,然后把这个值跟用户对象一起传给前端。第二台手机登陆的话,uuid发生了变化,我在拦截器中做了处理,如果用户前端传过来的uuid,跟redis中的不一样,就拦截下来,所以会被挤出去。限制用户只能在一台手机登陆以及部分功能的拦截。

2. 退出:

清空本地缓存

3. 用户反馈:

反馈小程序中存在的问题等等,界面完成,接口还没写

4. 头像上传:

上传到redis服务器中存储,登陆情况下才能上传

5. 隐蔽工程:

也是视频的上传,这里通过java整合ffmpeg跨平台视音频解决方案,完成封面图的截取,封面图用于在列表页展示,点击封面图进行视频详情。小程序上传成功后也有返回一张封面图,但是在电脑端能用,手机端用不了,所以换了一种解决方案,在上传后对视频01秒第一帧进行截取,如果需要在上传后添加背景音乐的话,也能通过ffmpeg将视频跟音频合成为新的视频,比较方便。在视频详情中,主要功能有:

1. 搜索:

采用第三方搜索组件,完成搜索历史记录,热点搜 索,搜索匹配功能。

2. 举报功能:

没什么好说的

3. 下载到本地功能:

可将视频下载到本地(手机)

4. 分享:

可分享给好友或微信群,朋友圈不行,官方好像还 没开放。

6. 视频监控:

实现对不同区域监控的调用,目前监控接口没有,用视频代替。

7. 员工考勤:

也是一样,登陆才可以签到,一天只能签到一次。每月签到数的统计,以及下方导航栏的滑动,可以查看到本月哪天签到,通过大量测试,确保不会出问题,后端采用定时任务,确保过月天数会清0。开发完成这段业务后,第二步在这个基础之上加了人脸识别签到,通过身份证+人脸方式完成签到,同时现场签到也做了开发,通过现场拍照+自动获取当前位置,完成签到。

8. 通讯录:

对各个部门下的员工进行分类,同时开发了搜索功能,能够在用户多的情况下提高查找效率。同时对聊天室进行了开发(采用数据推送),一对一聊天,页面刚开发好,做法还没想到很好的做法。

9.图纸管理:

常规做法,跟通讯录类似,分类,查看图纸,搜索。 图纸由管理上传。Web管理端还没开发,所以该上传功能暂无。

10.施工日志:

可以对某个项目添加施工日志。项目由管理端刚添加,管理端目前还没开发,该功能也是暂无。通过第三方天气接口,自动获取当前天气情况。

11.危险警报:

通过数据推送,将危险推送给管理员,在下边导航消息里面可以看到推送。员工看不到。可以通过登陆管理账号10000查看效果。

使用说明书

为了方便使用,后端接口已在云端linux部署

员工账号:10001 密码 123456

管理: 10000 密码 123456

项目架构

前端:微信小程序,js

后端:springboot + mybatis

相关组件:HttpClient、Apache commons、阿里巴巴Druid、spring-data-redis、小程序第三方搜索组件wsSearchView

服务器端:Tomcat、Redis、Zookeeper、mysql

项目依赖管理:Maven

集群:mycat中间件 搭建mysql主从复制+读写分离环境,提高数据库性能。