Java项目密码访客系统_springboot搭建访客管理系统的实现示例

项目介绍

springboot搭建的访客管理系统,针对高端基地做严格把控来访人员信息管理,用户后端可以设置多个管理员帐号,给予不同部门的管理层使用,用户管理可以增加/修改内部成员的基本信息,需要到访的人员必须通过进入程序,在访客预约里面提交预约申请,预约后管理员可查询预约记录以及访客出入记录。

项目适用人群

正在做毕设的学生,或者需要项目实战练习的Java学习者

开发环境

jdk 8

intellij idea

tomcat 8.5.40

mysql 5.7

所用技术

springboot

mybatis

layUi

JSP

项目访问地址

http://localhost:8090

帐号:admin 密码:admin

项目截图

登录

e5863aab2cbb482f4603be04a003d8b4.png

子账号管理

0ec2f8b39f6785dd29c1ac4e4a4b19fd.png

新增成员

6476a9451da820d2d2c748fc3850dd7e.png

预约列表

32d3648b97ef5540ebe2dc3f0ad4d55c.png

历史预约

5833a3d06900f6b55b963a8b562d5940.png

出入影像记录

15886aea731361c2c9c3dc0795ef84d8.png

表格导出

ddf01e769d106c293b07d02b20d51246.png

访客预约申请

3402a95d1aef99595f3475d33314fb1f.png

关键代码:

用户信息

public class SmartUser {

@ApiModelProperty(value="用户编号",dataType="String",name="password")

private Long id;

@ApiModelProperty(value="登录帐号",dataType="String",name="account")

private String account;

@ApiModelProperty(value="用户名称",dataType="String",name="name")

private String name;

@ApiModelProperty(value="用户年龄",dataType="Integer",name="age")

private int age;

@ApiModelProperty(value="手机号",dataType="String",name="phone")

private String phone;

@ApiModelProperty(value="密码",dataType="String",name="password")

private String password;

@ApiModelProperty(value="mac",dataType="String",name="mac")

private String mac;

@ApiModelProperty(value="备注",dataType="String",name="remark")

private String remark ;

@ApiModelProperty(value="创建时间",dataType="String",name="createTime")

private String createTime;

private String headPic;

}

添加访客记录

@ApiOperation(value="添加预约",notes="添加预约")

@ResponseBody

@PostMapping("/addVisitor")

public Response addVisitor(Visitor visitor){

SmartUser smartUser=new SmartUser();

smartUser.setPhone(visitor.getUserPhone());

smartUser.setName(visitor.getUserName());

smartUser=smartUserService.login(smartUser);

if(null!=smartUser){

return visitorService.saveOrUpdate(visitor);

}else{

return Response.error(300);//查无一人

}

}

访客记录导出

@GetMapping("/exportExcel")

public void exportExcel(HttpServletResponse response) {

try{

List> rows =new ArrayList<>();

List row1 = CollUtil.newArrayList("访客姓名", "访客手机号", "被访人姓名", "被访人电话", "预约日期", "访问事由");

rows.add(row1);

List list=smartUserService.getAll();

for(VisitorRecord vr:list){

rows.add(CollUtil.newArrayList(vr.getVisitorName(), vr.getPhone(),vr.getUserPhone(),vr.getUserName(),vr.getAppointmentTime(),vr.getReasons()));

}

ExcelWriter writer = ExcelUtil.getWriter();

writer.write(rows);

response.setContentType("application/vnd.ms-excel;charset=utf-8");

response.setHeader("Content-Disposition","attachment;filename="+ DateUtils.getTime3()+"visitorRecord.xls");

ServletOutputStream out=response.getOutputStream();

writer.flush(out);

writer.close();

IoUtil.close(out);

}catch (Exception e){

e.printStackTrace();

}

}

4.过期预约做定时清理

@Scheduled(cron = "0 0/1 * * * ?")

private void configureTasks() {

List list=visitorService.findVisitorList("");

if(list.size()>0){

for(Visitor v:list){

Long now=Long.valueOf(DateUtils.getTime2());

Long appointmentTime=Long.valueOf(v.getAppointmentTime().replaceAll("-","").replaceAll(" ",""));

if(appointmentTime-now<=0){

VisitorRecord visitorRecord=new VisitorRecord();

BeanUtils.copyProperties(v,visitorRecord);

visitorRecordService.save(visitorRecord);

visitorService.deleteUserById(Long.valueOf(v.getId()));

}

}

}

}

注意事项

预约地址需要有管理端分享地址给房主,由房主分享给到访的做预约登记

后期增加房主端,新增房主查看记录

备注:基础版做的比较简单,有条件的同学可以对接硬件设备,跑完整体流程

到此这篇关于springboot搭建访客管理系统的实现示例的文章就介绍到这了,更多相关springboot搭建访客管理系统内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值