《武汉工程大学学报》 2015年11期
64-68
出版日期:2015-12-30
ISSN:1674-2869
CN:42-1779/TQ
校园网络化自行车租借系统上位机设计
0 引 言随着经济的不断发展,我国城市私家车保有量迅速增长. 由于道路的发展落后于私家车的增长和城市人口持续增长,城市交通变得拥堵,产生了停车难、空气污染等问题. 英国学者曾提出“田园城市”理念[1]. 现在“低碳”的理念深入人心[2],为了提倡出行方式“低碳化”,同时也为了缓解城市交通压力和方便市民出行,公共自行车租借系统在许多城市[3]都已成功建立. 公共自行车也成为人们出行选择的交通工具. 对于在校大学生而言,选择自行车作为短途游玩的工具是一种普遍的现象,同时有的学校校园面积大,学生上课距离远,自行车也是一种必备的校内交通工具. 但是由于个人购买自行车存在车辆防盗隐患、使用效率低等问题,学生大部分只能选择步行[4],所以在高校内建立校园自行车租借系统能改善这些问题,同时方便广大师生的学习和生活. 设计一种校园自行车租借的上位机管理系统,对自行车租借中存在的业务流程[5]进行处理,可以方便快捷地实现自行车租赁中的服务站点管理、车辆管理、用户管理、信息查询等管理操作,实现校园自行车租借的有效管理. 1 上位机管理系统框架校园网络化自行车租借系统上位机是基于Client/Server结构(客户机和服务器结构,简称C/S),将分布的处理与集中的数据操作有机结合,能够处理大量的、适时的数据流,能实现安全的数据存取[6]. 此结构通过互联网传输数据,能有效利用网络的便利性[7]. 本系统通过租借车位采集用户借还信息,利用网络将信息发送给服务器,服务器将信息进行校验,执行请求返回等操作,同时系统构建了数据库服务器,保存用户信息和租借记录. 当用户利用IC卡在租借点的客户机上借车时,借车信息通过租车点发送到服务器端[8],并更新数据库,处理后的信息由服务器返给租车点的设备. 用户借车操作完成. 当用户还车时,还车信息同样发送给服务器端,服务器端处理还车操作,数据库中用户相应借车状态转为还车成功状态,并在其中添加记录. 图1是设计的C/S结构图. 图1 C/S逻辑结构图Fig.1 Diagram of C/S logic structure 2 上位机界面设计自行车租借上位机界面采用WPF(Windows Presentation Foundation 的简称)和C#语言进行界面设计和逻辑实现. WPF作为一个用于Windows的图形显示系统,是针对.NET而设计的. C#语言是从C语言与C++语言派生而来具有简单性、相对性、面向现代性以及类型安全的编程语言[9]. 主要界面包括用户登录界面、管理员界面、用户界面三个部分. 用户登录界面实现用户登录和区分一般用户和管理员用户的功能. 管理员界面实现增删用户和更改用户资料、查看借还总记录的功能. 用户界面实现相应用户查询自己的借还记录信息. 登录界面是程序入口,管理员界面和用户界面相互独立,避免了用户超越权限而造成误操作. 同时管理员界面中的功能与用户界面也有不同,管理员界面的功能多,用户界面的功能较为单一. 相应界面逻辑如图2所示. 图2 界面逻辑结构图Fig.2 Diagram of interface logic structure 3 各模块界面设计3.1 登录界面设计 登录界面是用户进入系统的窗口,在经过身份验证后的用户才能进入系统. 在登录界面中,用户需要正确输入用户名和密码,在经过系统调用数据库中的数据进行验证成功后,用户才能进入系统. 否则,用户将看到系统提示的错误信息,并且输入的内容被清空. 登录界面设计需要简洁明了、突出主要目的,关键之处在于与数据库的连接上. 从数据库中搜索数据与用户输入的内容进行比对,达到识别用户输入的内容正确与否的目的. 为实现上述功能,登录界面需要具备允许用户输入的文本框和密码框,需要确认和取消按钮. 同时在后台要连接数据库,调用数据库中的数据进行匹配查询. 用户操作流程如图3所示. 图3 登录界面流程图Fig.3 Flowchart of login interface 3.2 管理员界面设计管理员通过其用户名和密码登录后切换到管理员界面. 管理员界面上包含管理员可以操作的多种功能. 管理员为系统最高权限拥有者,拥有增删用户,修改用户资料,查询借还总记录等功能. 这些功能可以通过不同选项卡来实现分类显示. 在管理用户的选项卡中,管理员可通过用户编号查询用户信息,在相应的界面上对用户的资料进行修改或者删除该用户,同时可以在此选项卡中添加用户. 在查询借还信息的选项卡中,管理员可以根据日期选择特定时间的借还记录,还可通过用户名来查询用户的借还记录. 选项卡控件中包含TabItem属性,这个属性是用来获取选项卡控件中选项卡页的集合. 通过修改这个属性,可以增加删除选项卡. 从而在一个界面上显示多个子界面. 在添加3个TabItem之后,程序选项卡中就拥有了三个不同的子界面. 然后在相应的子界面添加功能模块. 在第一个子界面中,管理员可根据用户名或时间来查询借还记录. 在第二个子界面中,管理员可以利用用户名或卡号查看用户信息,同时能进行更改用户信息、删除用户等操作. 在第三个子界面中,管理员可以添加新用户. 这部分程序也需与数据库进行连接,从而实现子界面的查询等功能. 管理员管理用户信息流程图和查询借还记录程序流程图如图4和图5所示.图4 管理用户界面流程图Fig.4 Flowchart of managing user interface图5 查询记录流程图Fig.5 Flowchart of query record3.3 用户界面设计用户通过用户名和密码登录后切换到用户界面. 由于用户只能查询自己的借还记录,功能较为单一. 用户界面显示当前用户状态为租车或者已还车成功. 同时根据时间顺序显示用户租借的记录. 用户还可查询相应站点可租借的车辆数量. 用户界面是创建的一个新的窗口对象,该窗口对象提供给一般用户使用该系统功能的接口. 用户界面分为显示用户名和卡号部分和查询功能部分. 用户名显示部分显示当前用户的用户名和租车卡号. 当用户登录系统后,该部分自动显示. 查询功能部分由查询按钮和显示框组成. 在用户点击“查询”按钮后,触发查询事件,在显示框中显示用户借还车的记录(包括借还车时间和借还车状态). 此界面后台连接数据库,根据数据库查询语句搜索符合条件的记录. 用户查询流程框图如图6所示. 图6 用户查询流程图Fig.6 Flowchart of user check4 数据库设计数据库是“按照数据结构来组织、存储和管理数据的仓库”. 在本系统中,需要存储用户资料、车辆借还记录,所以数据库的设计是必不可少的. 数据库设计要符合“一致性”、“完整性”、“安全性”与“可伸缩性”等原则[10]. 同时关系型数据库的设计应遵循规范化理论. 系统采用MySQL数据库软件. 该软件具有体积小、运行速度快、总体拥有成本低的特点[11]. 在MySQL中创建Bickle_system数据库,在此数据库中创建四张表. 这四张表包括用户登录表、用户信息表、车辆借还信息表、站点车辆信息表. 用户登录表保存用户名和密码等登录信息,可以用此表作为用户登录的身份验证. 用户信息表包含用户的基本信息,包括用户名、卡号、联系电话、电子邮箱等内容. 车辆借还信息表包括借还时间、卡号、借还状态等. 站点车辆信息表保存的是各站点已租借车辆数目、可借车辆数目、车辆总数. 卡号作为用户信息表的主键,唯一标识用户. 同时卡号作为数据表的外键,将用户信息表和车辆借还信息连接起来. 用户登录信息表和用户信息表是通过用户名连接的. 上述数据表格和数据库的建立是根据实体?鄄联系(Entity?鄄Relationship Approach简称E?鄄R)方法而得出的[12]. 它是描述现实世界概念结构模型的有效方法,在自行车租赁系统各表信息中约定:任何用户只可以借一辆车辆,任何一辆自行车可以被多个人借,租车时,终端机记录相应的租车日期,还车时,终端机也记录还车日期;一个服务站点可以含有多辆不同的自行车,每辆自行车只能属于一个服务站点. 车辆数据库E?鄄R图如图7所示.图7 系统数据库E?鄄R图Fig.7 Diagram of system database E?鄄R 5 上位机测试结果将设计的信息管理系统与自行车租赁系统整体测试,最终实现了系统所有功能. 而且系统可以正常稳定运行. 自行车租借系统主界面图、用户界面图和管理员界面图分别如图8、图9、图10所示. 图8 登录界面图Fig.8 Diagram of login interface图9 用户界面图Fig.9 Diagram of user interface图10 管理员界面图Fig.10 Diagram of administrator interface 6 结 语本文设计的校园公共自行车租借上位机管理系统,在充分利用现有资源的条件下,能根据校园公共自行车的租借需求,实现对校园公共自行车租借的网络化管理. 在设计上位机的过程中,系统遵循管理信息系统的开发流程和步骤,借鉴优秀的管理系统开发经验,在满足需求的条件下简化系统操作界面. 上位机系统将与自行车租借下位机相结合,为校园师生的学习生活带来便捷.