基于JAVA的停车场管理系统

FollowMe

发布日期: 2019-01-28 16:36:24 浏览量: 1668
评分:
star star star star star star star star star star
*转载请注明来自write-bug.com

第一章 概述

1.1 项目背景

车辆越来越多的今天,停车场只靠人工管理显然难度已经是提高很多,所以应该开发出便于管理记录的停车场管理系统来帮助对停车场进行管理。

1.2 软件定义

一款帮助停车场管理员对车辆进出进行管理的软件。

1.3 开发环境

  • Window10系统

  • Eclipse java开发工具

  • Oracle数据库

第二章 需求分析

2.1 题目要求

2.1.1 问题陈述

要求能够进行如下工作:

  • 车位基本信息维护(车位增加修改、收费标准变动等)

  • 交班报表功能(当班收费员收款总额)

  • 当前车位状况查询(车位状况分为:停用,占用和空闲)

  • 用户分级管理,人机界面良好

2.1.2 功能描述

该软件能对车辆进出进行管理,能计算停车时间并给管理员报出停车费用;能将流水显示给管理员;管理员能增加停车场会员、增减停车场车位;有一个客户面板给客户显示当前停车场的信息,如停车空位数。管理员分普通管理员和超级管理员,超级管理员能对普通管理员进行增删或者是修改管理员的权限将其改为超级管理员或者普通管理员。

2.2 总体设计

2.2.1 系统数据流图

2.2.2 数据库E-R图

第三章 数据库设计

3.1 数据库表

3.1.1 车位信息表t_parking

字段名 数据类型 含义说明 空值情况
id varchar2(5) 车位编号 主键
state varchar2(10) 车位状态 不为空
type varchar2(10) 车位类型 不为空
t_price number(6,2) 临时单价(¥/h) 不为空
m_price number(6,2) 会员单价(¥/m) 不为空

3.1.2 管理员表t_manager

字段名 数据类型 含义说明 空值情况
id varchar2(10) 工号 主键
pwd varchar2(20) 密码 不为空
name varchar2(20) 姓名 不为空
power number(1) 权限 不为空

3.1.3 会员表t_Member

字段名 数据类型 含义说明 空值情况
id varchar2(5) 车位编号 外键
p_num varchar2(15) 车牌号 不为空
name varchar2(20) 姓名 不为空
tel varchar2(15) 电话 不为空

3.1.4 会员收费表t_MemberFee

字段名 数据类型 含义说明 空值情况
s_num varchar2(20) 流水号 主键
id varchar2(5) 车位编号 外键
p_num varchar2(15) 车牌号 不为空
eff_date date 生效期 不为空
ex_date date 有效期 不为空
fee number(6,2) 收费 不为空
m_id varchar2(10) 收费员工工号 外键

3.1.5 临时用户收费表t_TempFee

字段名 数据类型 含义说明 空值情况
s_num varchar2(20) 流水号 主键
id varchar2(5) 车位编号 外键
p_num varchar2(15) 车牌号 不为空
en_time date 进入时间 不为空
ex_time date 退出时间 可为空
fee number(6,2) 收费 可为空
m_id varchar2(10) 收费员工工号 外键

3.1.6 停车场日常信息表t_infor_parking

字段名 数据类型 含义说明 空值情况
today date 日期 主键
en_num number(5) 进入数 不为空
ex_num number(5) 离开数 不为空
fee number(8,2) 收费总额 不为空
m_id varchar2(10) 收费员工工号 外键

其中t_Member的id是依赖于t_parking的id,t_MemberFee的m_id是依赖于t_manager的id,t_MemberFee的id是依赖于t_parking的id,t_TempFee的id依赖于t_parking的id,TempFee的m_id是依赖于t_manager的id,t_infor_parking的m_id是依赖于t_manager的id。

第四章 软件功能设计

4.1 程序设计

4.1.1 程序工程文件结构

4.2 详细设计

4.2.1 dao文件

dao文件定义了各个功能函数的接口,子目录imp文件中的类是对各个接口的实现,各个类定义了各个实体的相应操作,比如ManagerDao.Java就定义了对管理员的增减,权限修改,权限查询,信息查询等函数。

  1. /**
  2. * @Description:校验登录信息并返回登录人员是否能登录以及其权限
  3. * @param tf
  4. * @param pf
  5. * @return HashMap<String,Object>
  6. */
  7. public HashMap<String, Object> check(String tf, String pf);
  8. /**
  9. * @Description 判断权限
  10. * @param tf
  11. * @return int
  12. */
  13. public int judgeP(String tf);
  14. /**
  15. * @Description 增加员工
  16. * @param manager
  17. * @return boolean
  18. */
  19. public boolean add(Manager manager);
  20. /**
  21. * @Description 删除员工
  22. * @param id
  23. * @return boolean
  24. */
  25. public boolean delManager(String id);
  26. /**
  27. * @Description 查询员工
  28. * @param id
  29. * @return String
  30. */
  31. public String findManager(String id);
  32. /**
  33. * @Description 改变权限
  34. * @param id
  35. * @return boolean
  36. */
  37. public boolean upMP(String id,int power);
  38. }

4.2.2 data文件

data文件包含一个ConnOra.java,该类用于连接数据库,java连接Oracle数据库的基本模式为:

  1. public static Connection connOracle() {
  2. Connection con = null;// 创建一个数据库连接
  3. try {
  4. Class.forName("oracle.jdbc.driver.OracleDriver");// 加载Oracle驱动程序
  5. System.out.println("开始尝试连接数据库!");
  6. String url = "jdbc:oracle:" + "thin:@127.0.0.1:1521:orcl";// 127.0.0.1是本机地址,XE是精简版Oracle的默认数据库名
  7. String user = "C##U_32";// 用户名
  8. String password = "zww0902150232";// 设置的密码
  9. con = DriverManager.getConnection(url, user, password);// 获取连接
  10. System.out.println("连接成功!");
  11. } catch (Exception e) {
  12. System.out.println("未连接");
  13. e.printStackTrace();
  14. }
  15. return con;
  16. }

4.2.3 table文件

该文件包含了各个实体类。停车场日常信息InforParking.Java、管理员Manager.java、会员Membe.java、会员收费MemberFee.java、车位Parking.java、临时收费TemporaryFee.java。

4.2.4 ui文件

此文件包含了对各个ui界面的设计以及事件的监听和触发,DataChooser.java是时间选择界面,InforPanel.java是客户面板,Login.java是登录界面,ManagerUI.java是系统主界面。

4.3 程序功能图

第五章 界面设计

5.1 登录界面

输入输出时

5.2 程序主界面

  • 普通管理员和超级管理员界面略有不同,超级管理员多了对管理员管理的菜单选项。

  • 车辆进入成功后弹出提示窗口,车辆离开时,弹出收费窗口

  • 增加会员,填写会员信息,点击时间会弹出时间选择界面

  • 车位增减

  • 查看流水

  • 用户面板

  • 管理员工

  • 更改员工权限

上传的附件 cloud_download 基于JAVA的停车场管理系统.zip ( 504.78kb, 122次下载 )
error_outline 下载需要8点积分

发送私信

距离,不过是一段空间。心有多近,距离就有多近

9
文章数
13
评论数
最近文章
eject