摘 要
随着社会的发展,社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。
智能停车场管理系统,主要的模块包括首页、个人中心、用户管理、车位区域管理、车位信息管理、车位租用管理、车位退租管理、系统管理等功能。系统中管理员主要是为了安全有效地存储和管理各类信息,还可以对系统进行管理与更新维护等操作,并且对后台有相应的操作权限。
要想实现智能停车场管理系统的各项功能,需要后台数据库的大力支持。管理员验证注册信息,收集的信息,并由此分析得出的关联信息等大量的数据都由数据库管理。本文中数据库服务器端采用了Mysql作为后台数据库,使Web与数据库紧密联系起来。在设计过程中,充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护、操作方便以及页面简洁等特点。
本系统的开发使获取智能停车场管理系统信息能够更加方便快捷,同时也使智能停车场管理系统管理信息变的更加系统化、有序化。系统界面较友好,易于操作。
关键词:智能停车场管理系统;django;Mysql
Abstract
With the development of society, all walks of life are taking advantage of the information age. The superiority and popularization of computer make it necessary to develop all kinds of information system.
Intelligent parking management system, the main modules include home page, personal center, user management, parking area management, parking information management, parking rental management, parking rental management, system management and other functions. The system administrator is mainly for the safe and effective storage and management of all kinds of information, but also can manage the system and update maintenance operations, and has the corresponding operation rights on the background.
In order to achieve the various functions of the intelligent parking management system, we need the strong support of the background database. The administrator verifies the registration information, collects the information, and thus obtains the association information and so on the large amount of data by the database management. In this paper, the database server uses Mysql as the background database, so that the Web and database are closely linked. In the design process, the system code is fully guaranteed to be readable, practical, easy to expand, universal, easy to maintain, easy to operate and simple page characteristics.
The development of the system to obtain intelligent parking management system information can be more convenient and fast, but also make intelligent parking management system management information become more systematic, ordered. The system interface is friendly and easy to operate.
Key words: intelligent parking lot management system; DJANGO. Mysql
目 录
摘 要
1 系统概述
1.1 概述
1.2课题意义
1.3 主要内容
2 系统开发环境
2.1 B/S架构
2.2 Python简介
2.3 Django框架
2.4 MySQL 介绍
2.5 MySQL环境配置
2.2 Python简介
2.3 Django框架
2.4 MySQL 介绍
2.5 MySQL环境配置
3 需求分析
3.1技术可行性:技术背景
3.2经济可行性
3.3操作可行性
3.4系统设计规则
3.5系统流程和逻辑
4系统概要设计
4.1概述
4.2系统结构
4.3数据库设计
4.3.1 数据库实体
4.3.2 数据库设计表
5 系统详细设计
5.1系统功能模块
5.2 管理员功能模块
5.3 用户功能模块
6 系统测试
6.1系统测试的目的
6.2系统测试方法
6.3 测试结果
结论
致 谢
参考文献
1 系统概述
1.1 概述
随着社会的快速发展,计算机的影响是全面且深入的。人们生活水平的不断提高,日常生活中人们对智能停车场管理方面的要求也在不断提高,需要智能停车场的人数更是不断增加,使得智能停车场管理系统的开发成为必需而且紧迫的事情。智能停车场管理系统主要是借助计算机,通过对智能停车场管理系统所需的信息管理,增加用户选择,同时也方便对广大用户信息的及时查询、修改以及对停车场信息的及时了解。智能停车场管理系统对用户带来了更多的便利, 该系统通过和数据库管理系统软件协作来满足用户的需求。
1.2课题意义
随着全球信息化的发展,人们的生活节奏越来越快,对信息的时效性越来越重视。以传统的管理方式早已不能满足人们对获取信息的方式、便捷性的需求。所以智能停车场管理系统渐渐成为人们关注的焦点。首先,智能停车场管理系统,网上获取信息的实时性、便捷性要远远高于传统管理方式。系统一经上线,无论用户在世界的哪个角落,只要能够连接互联网,就能在第一时间获得想要的信息。
计算机技术在现代管理中的应用,使计算机成为人们应用现代技术的重要工具。能够有效的解决获取信息便捷化、全面化的问题,提高效率。
1.3 主要内容
智能停车场管理系统从功能、数据流程、可行性、运行环境等方面进行需求分析。对智能停车场管理系统的数据库、功能进行了详细设计。分析了主要界面设计和相关组件设计,对智能停车场管理系统的具体实现进行了介绍。
采用Python技术,从数据库中获取数据、向数据库中写入数据,实现系统直接对数据库进行各种操作,在网页中加入动态内容,从而实现智能停车场管理系统所需要的各种基本功能。
2 系统开发环境
2.1 B/S架构
当向其他用户发送请求的功能时应用B/S模式具有独一无二的优点:用户请求通过网络向其他Web服务器发送时只需要通过浏览器就可以实现该功能。该功能的好处之一就是有效简化了客户端,大部分开发的软件只需要用浏览器即可,客户端的正常运行则通过这些浏览器来实现,而服务器则负责执行数据的存储和读取等其他的多功能工作。
B / S架构,主要有表示逻辑层,控制逻辑层,数据层这三层。表示逻辑层:服务请求这一功能主要是逻辑层的,Web服务器准备好后,服务请求最先被发送。等到最先发送的请求被服务器接收到后,然后将接受到的请求信息在web服务器上进行识别,识别这一操作是由服务器执行操作的,只要经过服务器的识别请求操作之后再将接收到的信息返回给客户端,浏览器就能收到的请求的信息。控制逻辑层:用户的请求是由将控制逻辑层接收,相应程序和数据库连接是接收用户数据的请求的首要条件,然后处理请求信息数据,请求数据经过处理后返回给Web服务器的就是最终处理完成的结果,最后返回给客户端的最终结果再次通过Web服务器。数据层:服务器从Web服务器接收请求是数据层主要任务,但还包括执行数据库查询、修改、删除操作,最后数据库操作结果将返回网络服务器。表示逻辑层,控制逻辑层和数据层三层之间的关系具有独立性,但三层之间又具有藕断丝连的相互关联的特性。
图2-1 B/S模式三层结构图
2.2 Python简介
Python 属于一个高层次的脚本语言,以解释性,编译性,互动性和面向对象相结合。在设计上相比其他语言,它更具有特色语法结构,很强的可读性。
2.3 Django框架
Django是一个开放源代码的Web应用框架,由Python写成。采用了MVT的框架模式,即模型M,视图V和模板T。它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即是CMS(内容管理系统)软件。并于2005年7月在BSD许可证下发布。这套框架是以比利时的吉普赛爵士吉他手Django Reinhardt来命名的。
2.4 MySQL 介绍
在软件项目,通过经营性数据的数据库,可以保证其安全,独立和数据一致,访问数据的系统来提供,所以有效减少时间程序员开发应用程序。
MySQL可以支持多线程,可以方便使用系统的资源,提高运行的速度。并提供odbc、jdbc和tcp/ ip,以各种形式连接到MySQL; 功能方面表现欠缺,规模小,但对于这个系统就足够了。
因为MySQL是源代码对外开放的,所以任何人都可以通过相应的方法下载,并根据个性化需求进行修改。 由于MySQL的速度,可靠性和适应性,MySQL受到重视。
MySQL虽然功能可能不是很强大,但由于其开源,广泛传播,导致很多人都意识到这个数据库。
2.5 MySQL环境配置
本系统的数据使用的是MySQL,所以要将MySQL安装到指定目录,如果下载的是非安装的MySQL压缩包,直接解压到指定目录就可以了。然后点击C:\Program Files\MySQL\bin\winMySQLadmin.exe这个文件其中C:\Program Files\MySQL是MySQL安装目录。输入winMySQLadmin的初始用户、密码(注:这不是MySQL里的用户、密码)随便填不必在意,确定之后右下角任务的启动栏会出现一个红绿灯的图标,红灯亮代表服务停止,绿灯亮代表服务正常,左击这个图标->winnt->install the service 安装此服务,再左击这个图标->winnt->start the service 启动MySQL服务。
修改MySQL数据库的root密码。用cmd进入命令行模式输入如下命令:
cd C:\Program Files\MySQL\bin
MySQLadmin -u root -p password 123
回车出现Enter password: ,这是要输入原密码. 刚安装时密码为空,所以直接回车,此时MySQL 中账号 root 的密码被改为 123 安装完毕。2.1 B/S架构
当向其他用户发送请求的功能时应用B/S模式具有独一无二的优点:用户请求通过网络向其他Web服务器发送时只需要通过浏览器就可以实现该功能。该功能的好处之一就是有效简化了客户端,大部分开发的软件只需要用浏览器即可,客户端的正常运行则通过这些浏览器来实现,而服务器则负责执行数据的存储和读取等其他的多功能工作。
B / S架构,主要有表示逻辑层,控制逻辑层,数据层这三层。表示逻辑层:服务请求这一功能主要是逻辑层的,Web服务器准备好后,服务请求最先被发送。等到最先发送的请求被服务器接收到后,然后将接受到的请求信息在web服务器上进行识别,识别这一操作是由服务器执行操作的,只要经过服务器的识别请求操作之后再将接收到的信息返回给客户端,浏览器就能收到的请求的信息。控制逻辑层:用户的请求是由将控制逻辑层接收,相应程序和数据库连接是接收用户数据的请求的首要条件,然后处理请求信息数据,请求数据经过处理后返回给Web服务器的就是最终处理完成的结果,最后返回给客户端的最终结果再次通过Web服务器。数据层:服务器从Web服务器接收请求是数据层主要任务,但还包括执行数据库查询、修改、删除操作,最后数据库操作结果将返回网络服务器。表示逻辑层,控制逻辑层和数据层三层之间的关系具有独立性,但三层之间又具有藕断丝连的相互关联的特性。
图2-1 B/S模式三层结构图
2.2 Python简介
Python 属于一个高层次的脚本语言,以解释性,编译性,互动性和面向对象相结合。在设计上相比其他语言,它更具有特色语法结构,很强的可读性。
2.3 Django框架
Django是一个开放源代码的Web应用框架,由Python写成。采用了MVT的框架模式,即模型M,视图V和模板T。它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即是CMS(内容管理系统)软件。并于2005年7月在BSD许可证下发布。这套框架是以比利时的吉普赛爵士吉他手Django Reinhardt来命名的。
2.4 MySQL 介绍
在软件项目,通过经营性数据的数据库,可以保证其安全,独立和数据一致,访问数据的系统来提供,所以有效减少时间程序员开发应用程序。
MySQL可以支持多线程,可以方便使用系统的资源,提高运行的速度。并提供odbc、jdbc和tcp/ ip,以各种形式连接到MySQL; 功能方面表现欠缺,规模小,但对于这个系统就足够了。
因为MySQL是源代码对外开放的,所以任何人都可以通过相应的方法下载,并根据个性化需求进行修改。 由于MySQL的速度,可靠性和适应性,MySQL受到重视。
MySQL虽然功能可能不是很强大,但由于其开源,广泛传播,导致很多人都意识到这个数据库。
2.5 MySQL环境配置
本系统的数据使用的是MySQL,所以要将MySQL安装到指定目录,如果下载的是非安装的MySQL压缩包,直接解压到指定目录就可以了。然后点击C:\Program Files\MySQL\bin\winMySQLadmin.exe这个文件其中C:\Program Files\MySQL是MySQL安装目录。输入winMySQLadmin的初始用户、密码(注:这不是MySQL里的用户、密码)随便填不必在意,确定之后右下角任务的启动栏会出现一个红绿灯的图标,红灯亮代表服务停止,绿灯亮代表服务正常,左击这个图标->winnt->install the service 安装此服务,再左击这个图标->winnt->start the service 启动MySQL服务。
修改MySQL数据库的root密码。用cmd进入命令行模式输入如下命令:
cd C:\Program Files\MySQL\bin
MySQLadmin -u root -p password 123
回车出现Enter password: ,这是要输入原密码. 刚安装时密码为空,所以直接回车,此时MySQL 中账号 root 的密码被改为 123 安装完毕。
3 需求分析
3.1技术可行性:技术背景
智能停车场管理系统是在Windows操作系统中进行开发运用的,而且目前PC机的各项性能已经可以胜任普通网站的web服务器。系统开发所使用的技术也都是自身所具有的,也是当下广泛应用的技术之一。
系统的开发环境和配置都是可以自行安装的,系统使用Python开发工具,使用比较成熟的Mysql数据库进行对系统前台及后台的数据交互,根据技术语言对数据库,结合需求进行修改维护,可以使得网站运行更具有稳定性和安全性,从而完成实现网站的开发。
硬件可行性分析:智能停车场管理及信息分析的设计对于所使用的计算机没有什么硬性的要求,计算机只要可以正常的使用进行代码的编写及页面设计就可行,主要是对于服务器有些要求,对于平台搭建完成要上传的服务器是有一定的要求的,服务器必须选择安全性比较高的,然后就是在打开网站必须顺畅,不能停顿太长时间;性价比高;安全性高。
因此,我们进行了可行性研究,可以看出系统的开发没有问题。
3.2经济可行性
在智能停车场管理系统开发之前所做的市场调研及与其相关的其他管理系统,都是没有任何费用的。所有的调查研究都是通过开发者自己的努力,所有的工作也都是自己亲力亲为的。在碰到自己比较难以解决的问题时,大多数是通过指导老师和同学的帮助进行相关问题的解决。所以对于智能停车场管理系统的开发在经济上是完全可行的,没有任何费用支出的。
使用比较成熟的技术,系统是基于Python的开发,采用Mysql数据库。所以系统在开发人力、财力方面的要求不高,具有经济可行性。
3.3操作可行性
可操作性主要是对在智能停车场管理系统设计完成后,用户的使用体验度,以及管理员可以通过系统随时管理相关的数据信息,并且对于管理员和用户两个角色,都可以简单明了的进入到自己的系统界面,通过界面导航菜单可以简单明了地操作功能模块,方便用户信息的操作需求和管理员管理数据信息。对于系统的操作,不需要专业人员都可以直接进行功能模块的操作管理,所以智能停车场管理系统的可操作性是完全可以的。本系统的操作使用的也是界面窗口进行登录,所以操作人员只要会简单的电脑操作就完全可以的。
3.4系统设计规则
本智能停车场管理系统采用Python技术,Mysql数据库开发,充分保证了系统稳定性、完整性。
智能停车场管理系统的设计与实现的设计思想如下:
1、操作简单方便、系统界面安全良好:简单明了的页面布局,方便查询智能停车场管理系统管理的相关信息。
2、即时可见:对智能停车场管理系统信息的处理将立马在对应地点可以查询到,从而实现“即时发布、即时见效”的系统功能。
3、功能的完善性:可以管理首页、个人中心、用户管理、车位区域管理、车位信息管理、车位租用管理、车位退租管理、系统管理模块的修改和维护操作。
3.5系统流程和逻辑
系统业务流程图,如图所示:
图3-1登录流程图
图3-2添加信息流程图
图3-3注册信息流程图
4系统概要设计
4.1概述
智能停车场管理系统基于Web服务模式,是一个适用于Internet环境下的模型结构。只要用户能连上Internet,便可以在不受时间、地点的限制来使用这个系统。智能停车场管理系统工作原理图,如图4-1所示:
图4-1 系统工作原理图
4.2系统结构
系统架构图属于系统设计阶段,系统架构图只是这个阶段一个产物,系统的总体架构决定了整个系统的模式,是系统的基础。智能停车场管理系统的整体结构设计如图4-2所示。
图4-2 系统结构图
4.3数据库设计
4.3.1 数据库实体
管理员信息结构图,如图4-3所示:
图4-3 管理员信息实体结构图
车位信息实体属性图,如图4-4所示:
图4-4车位信息实体属性图
车位租用管理实体属性图如图4-5所示。
图4-5车位租用管理实体属性图
4.3.2 数据库设计表
将数据库概念设计的E-R图转换为关系数据库。在关系数据库中,数据关系由数据表组成,但是表的结构表现在表的字段上。
表4-1:配置文件
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
name varchar 100 配置参数名称
value varchar 100 配置参数值
表4-2:车位租用
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
zuyongbianhao varchar 200 租用编号
cheweiquyu varchar 200 车位区域
cheweihao varchar 200 车位号
cheweiweizhi varchar 200 车位位置
cheweizhuangtai varchar 200 车位状态
tingfangshijia varchar 200 停放时价
jinchangshijian datetime 进场时间
beizhu varchar 200 备注
yonghuming varchar 200 用户名
lianxidianhua varchar 200 联系电话
chepaihao varchar 200 车牌号
sfsh varchar 200 是否审核 否
shhf longtext 4294967295 审核回复
表4-3:车位信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
cheweiquyu varchar 200 车位区域
cheweihao varchar 200 车位号
tupian varchar 200 图片
shengyuchewei int 剩余车位
cheweiweizhi varchar 200 车位位置
cheweizhuangtai varchar 200 车位状态
tingfangshijia int 停放时价
clicktime datetime 最近点击时间
clicknum int 点击次数 0
表4-4:车位退租
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
zuyongbianhao varchar 200 租用编号
cheweiquyu varchar 200 车位区域
cheweihao varchar 200 车位号
cheweiweizhi varchar 200 车位位置
tingfangshijia int 停放时价
jinchangshijian varchar 200 进场时间
likaishijian datetime 离开时间
tingfangshizhang int 停放时长
zuyongjine varchar 200 租用金额
yonghuming varchar 200 用户名
chepaihao varchar 200 车牌号
sfsh varchar 200 是否审核 否
shhf longtext 4294967295 审核回复
ispay varchar 200 是否支付 未支付
表4-5:车位区域
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
cheweiquyu varchar 200 车位区域
表4-6:用户
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
yonghuming varchar 200 用户名
mima varchar 200 密码
xingming varchar 200 姓名
touxiang varchar 200 头像
xingbie varchar 200 性别
lianxidianhua varchar 200 联系电话
chepaihao varchar 200 车牌号
表4-7:在线客服
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
adminid bigint 管理员id
ask longtext 4294967295 提问
reply longtext 4294967295 回复
isreply int 是否回复
表4-8:用户表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
username varchar 100 用户名
password varchar 100 密码
role varchar 100 角色 管理员
addtime timestamp 新增时间 CURRENT_TIMESTAMP
表4-9:token表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
userid bigint 用户id
username varchar 100 用户名
tablename varchar 100 表名
role varchar 100 角色
token varchar 200 密码
addtime timestamp 新增时间 CURRENT_TIMESTAMP
expiratedtime timestamp 过期时间 CURRENT_TIMESTAMP
表4-10:收藏表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
refid bigint 收藏id
tablename varchar 200 表名
name varchar 200 收藏名称
picture varchar 200 收藏图片
type varchar 200 类型(1:收藏,21:赞,22:踩) 1
inteltype varchar 200 推荐类型
表4-11:公告信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
introduction longtext 4294967295 简介
picture varchar 200 图片
content longtext 4294967295 内容
表4-12:车位信息评论表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
refid bigint 关联表id
userid bigint 用户id
nickname varchar 200 用户名
content longtext 4294967295 评论内容
reply longtext 4294967295 回复内容