毕业设计—机房收费管理系统的开发内容摘要:
思义,自定义 表中包含着管理员对系统的自定义信息,包括计算机数目以及上机的费率。 表 4- 5 自定义表结构 字段名称 类型 主键 非空 台数 数字 No No 单价 文本 No No 单价 new 文本 No No 单价改变 布尔 No No 4. 2 系统实现 主要界面设计 ◇ 用户登陆界面(如图 4- 4 所示): 图 4- 4 用户登陆界面 当用户名称和密码与管理员表中对应的数据项相符时,才能登入系统,否则将清除输入内容,并提醒用户重新输入。 在此窗体运用了以下代码: With .MoveLast .MoveFirst For I = 1 To .RecordCount .Fields(0) .MoveNext Next I End With 通过此段代码,用户名称栏将根据管理员表中数据项目自动添加,因此用户可不必键入用户名,直接在下拉列表中选择,方便了用户使用。 ◇ 主界面(如图 4- 5 所示 ): 图 4- 5 主界面 主界面的菜单由菜单编辑器编辑,上机情况则用 MSFlexGrid 控件来显示,能够实时的反映当前上机的具体情况。 为了使用户能够方便快捷的使用本管理系统,在工具栏还设计了上机、结帐、报表以及帮助四个常用功能的快捷按钮。 在状态栏中,能够显示出当前的系统时间以及计费中的电脑数目。 ◇ 用户管理界面(如图 4- 6 所示): 图 4- 6 用户管理界面 通过此界面可以进行添加、删除用户的操作,这是系统管理员才能执行的功能。 为实现系统的简单与易用,本系统只设置了一个系统管理员用户 “ admin”,其 余都是一般用户。 系统管理员用户不能被删除。 ◇ 帐户管理界面(如图 4- 7 所示): 4- 7 帐户管理界面 此界面是对帐户信息查询和修改的主界面,界面中间显示的是所有帐户的详细信息,下面的四个功能按钮分别对应四个与帐户相关的操作。 功能模块设计与实现 ○ 系统管理模块: 系统管理模块主要包含以下几个功能:修改密码、添加删除用户、设置计算机数目、修改费率、数据备份与还原以及系统自我锁定。 它们的设计思路与实现方法分别如下: 修改密码只针对当前登陆的用户有效,也就是只能修改登陆用户本身的密码。 而不能对系统其他用户进行修改。 若管理员用户需要修改其他用户密码,则可通过删除相应用户,再用新密码将此用户添加实现。 修改密码窗体如图 4- 8 所示: 图 48 修改密码窗体 添加删除用户、设置计算机数目以及修改费率都是在管理员权限下的管理功能,其他用户单击此类菜单时,会弹出提示框(如图 4- 9 所示)提醒用户。 为了方便机房管理人员的管理,本系统为计算机数目以及费率专门建了一张表,当管理员修改费率后,并不是直接生效,而是将其写入表中,并设置单价改变的标志位为真,当窗体重新加载时,根据标志位的值,从表中读出用户 设置的费率。 图 4- 9 权限提示框 数据备份与还原能将当前的数据库备份至您指定位置,也能根据您以前备份的数据进行还原。 因为正在打开的文件不能够用 FileCopy 函数复制,这段程序代码中应用到了数据库的关闭方法,在关闭数据库后进行数据库的备份和还原。 由于还原后当前的数据库内容将被清除,因此为避免出现不可意料的错误,还原前提示用户将当前数据库进行备份。 如在此项过程中遇到问题,可参照帮助系统中的帮助文档解决。 (如图 4- 10 所示): 图 4- 10 数据还原提示框 系统自我锁定:当管理员有事离开时,并不方 便将系统关闭,为了防止此时他人对系统进行操作,特设置此功能将系统锁定,只有在输入正确当前用户名和密码后才能解锁,恢复对系统的控制。 (如图 4- 11 所示): 图 4- 11 系统锁定窗体 ○ 帐户管理模块 帐户管理模块包含创建帐户、帐户消费、帐户充值以及帐户查询功能。 创建帐户时,由于学号的唯一性,本系统采用学号作为帐户名称,只需填写学生姓名并在帐户中充值一定的金额即可完成帐户创建。 帐户创建的窗体(如图4- 12 所示): 图 4- 12 帐户创建窗体 帐户消费包括上机和结帐两个过程,是收费系统中最基本的功 能:学生通过条形码扫描上机时,系统会提示该帐户现存的金额。 在上机过程中,系统会定时对所有上机情况进行扫描,计算上机帐户的余额与上机所需费用的差额,当其金额小于系统设置的计费费率时,系统会对管理人员进行提示(如图 4- 13 所示): 图 4- 13 帐户追踪提示 管理员即可据此提醒该帐户对应的上机者及时充值,实现了对帐户的实时追踪。 客户结帐时,使用 DateDiff 函数(这个函数的作用是对两个指定的日期按日期形式求相差的间隔)计算出客户上机消费的具体时间 mm,并用以下代码计算消费的金额: Public Function JF(mm) As Single JF = (mm \ 30) * Dj / 2 If mm Mod 30 10 Then JF = JF + Dj / 2 End If If JF = 0 Then JF = Dj / 2 End Function 系统根据计算结果在学生表和上机情况表中对相应记录进行修改,并在上机流水帐表中添加上机记录。 由于是对多张表中数据同时进行修改,因此在这段程序代码中,要以事务管理方式对数据库进行操作 ,否则当系统处理过程中遇到错误时,极有可能造成数据库各个表中相应的数据不一致,最终导致系统不能正常运行。 系统运行过程中,每个时刻的上机情况都会在状态栏进行显示,当显示的上机数目不为零时,用户将不能对系统进行正常的关闭,这避免了由于系统的关闭而使客户的上机消费时间的计算出现错误。 当客户帐户金额不足时,需要对帐户金额进行充值。 帐户成功充值后会即时提示帐户现有的金额。 (如图 4- 14 所示): 图 4- 14 帐户成功充值提示框 本系统中所有的帐户信息用一个 MSFlexGrid 控件在窗体中显示,初始化界面时,窗 体中的帐户按照学号的索引排列。 在使用帐户查询功能时,如查询到相应的帐户记录,则将此项记录放到表格的第一行显示(如图 4- 15 所示),简化了程序代码的编写。 图 4- 15 帐户查询结果显示 ○ 条形码编制和打印模块 条形码编制和打印模块是本系统中一个比较复杂的模块,本系统采用了 EAN- 13 的编码方式,由于左侧数据符有奇排列和偶排列两种方式,右侧数据符另有一种排列方式。 为了简化编码,本系统采用 0 作为前置码,从而左侧数据符统一采用奇排列,在程序中建立了一个一维数组用于存储每个数字的编码方式对应的条与空 的模块数。 通过以下代码计算检验码: Check = Array1(1) + Array1(3) + Array1(5) + Array1(7) + Array1(9) + Array1(11) Check = Check * 3 Check1 =Array1(2)+Array1(4) + Array1(6) + Array1(8) + Array1(10) + Array1(0) Check = Check + Check1 Check = Check Mod 10 If Check = 0 Then Array1(12) = 0 Else Array1(12) = 10 Check End If 在计算好帐户的检验码后,为帐户的每位数字调用自定义的打印子程序,从而将整个帐户的条形码打印出来。 本模块中是使用打印机对象打印条形码。 在代码中用到了 printer 的 ScaleMode(打印机的度量单位 ) 、 CurrentX(打印机当前水平坐标) 、 CurrentY (打印机当前垂直坐标)三个属性。 打 印结果如图 4-16 所示: 图 4- 16 打印的条形码 ○ 信息查询模块 信息查询模块提供了对当天以及当月上机情况和计费情况的总计查询,对当天消费情况的查询代码如下: For I = 1 To .RecordCount If Format$(.Fields(2), ddddd) = Date Then Money = Val(.Fields(4)) + Money times = times + 1 End If .MoveNext Next I linestr = 本日上机人次 : amp。 Space(4) amp。 times linestr1 = 本日消费金额 : amp。 Space(4) amp。 Money amp。 元 对当月消费情况的查询与此类似。 对查询结果的打印采用的是打印机对象,直接将查询得到的两个结果字符串传输到打印机,设置相关位置参数后进行打印。 ( 如图 4- 17 所示): 图 4- 17 信息查询模块界面 总结 经过一个学期的认真开发和调试,终于形成了如今比较完整的机房收费管理系统。 本系统较好的实现了本次设计任务的最高目标。 经过一段时间的综合测试和维护,完善了系统的功能,系统性能也得到了很大提高。 本系统足够胜任现有条件下的学校机房管理,将为机房管理员减轻很多的任务和负担。 在本次机房收费管理系统的开发过程中,由于掌握知识的不足以及系统开发经验的缺乏,使得系统不可避免地产生了许多的错误。 通过查阅相关书籍资料并在老师的指导下才把错误一一纠正。 在系统开发与 调试过程中,不仅得到了宝贵的系统开发经验,也锻炼了自己独力查找文献、解决问题的能力。 由于时间的限制以及水平的不足,现有系统仍然存在着漏洞和不足,有待进一步的发现和解决,也希望老师同学不吝批评和指正。 致 谢 本次毕业设计中,吴星老师给予了我很多的指导和关心,他严谨的治学态度以及深厚的理论知识给了我很大的帮助和启发,让我能顺利完成本次系统的开发。 在此我对他表示最诚挚的感谢,也同样谢谢那些在本系统开发过程中给了我帮助的同学们。 参考文献 【 1】 黄明,梁旭. Visual Basic 信 息系统设计与开发实例.北京:机械工业出版社,2020. 【 2】 龚沛曾,陆慰民,杨志强. Visual Basic 程序设计教程( 版).北京:高等教育出版社, 2020. 【 3】 求是科技,孙越. Visual Basic 数据库开发自学教程.北京:人民邮电出版社, 2020. 【 4】 谭小丹 , 刘国庆 , 李光明. Visual Basic .北京:冶金出版社, 2020. 【 5】 刘恩涛,赵耀峰. Visual Basic 编程技巧与实例分析.北京:中国水力水电出版社, 1999. 【 6】 李玉东 , 李罡 , 李雷. Visual Basic 中文版控件大全.北京:电子工业出版社, 2020. 【 7】 东方人华,王晟 , 凌宇欣. Visual Basic 中文版范例入门与提高.北京:清华大学出版社, 2020. 【 8】 卢毅. Visual Basic 6 数据库设计实例导航.北京:科学出版社, 2020. 【 9】 杨昕红.数据库基础- Access 北京:电子工业出版社. 2020. 【 10】 郑小玲 , 王学军. Access 项目案例导航.北京:科学出版社, 2020. 【 11】 萨师煊 , 王珊.数据库系统概论.北京:高等教育出版社, 2020. 【 12】 王珊,陈红.数据库系统原理.北京: 清华大学出版社, 2020. 【 13】 戴宏民.条形码技术及应用.重庆:重庆人民大学出版社, 1991. 【 14】 黄以群 ,董湘陵.条形码技术.北京:国防工业出版社, 1991. 【 15】 黄志建.条形码技术及应用.北京:机械工业出版社, 1992. 【 16】 李金哲.条形码自动识别技术.北京:国防工业出版社, 1991. 附件: Frmmain (主界面窗体 ): Option Explicit Public rows As Integer Public userid As String Public userID1 As String Public userfind As String Dim I As Integer Dim j As Integer Public userrmb As Single Public Dj As Single Dim mm As Integer Public pcCount As Integer。毕业设计—机房收费管理系统的开发
相关推荐
的添加、修改和删除。 线路管理包括城市的管理和线路的管理。 城市管理主要是对主要城市和范围城市的基本信息的添加、修改和删除。 主要城市对应的范围城市,就是该交货点的中转地。 线路管理就是对起运站 到达站的信息管理,包括线路的历程和抵运时间。 职员管理主要是对快递公司内部职员的基本信息的添加、删除和修改。 2.流程图: 1)客户管理: 20 填 写 客 户修 改 客 户数 据 库删 除 客 户添
将受到中外连锁经营企业的格外青睐。 十二我国流通基础设施落后将受到政府有关部门的重视 ,并将受到相应的政策支持。 同时 ,流通指导生产、引导消费、容纳就业人员、促进国民经济发展的作用 ,也将受到政府的重视。 十三连锁经营方式将进一步促进工商资本相互渗透 ,将主要表现为 :制造业以品牌为基础发展专卖连锁店。 商业企业将以发展专业连锁店方式 ,吸引国内外著名品牌企业与之合作。 工商资本渗透
................................... 95 参考文献 ................................................................................................................................ 96 致 谢 ...................
................................. 33 致谢 .................................................................................................................... 34 参考文献 ..................................
对该系统进行相关的测试。 第六章 移动智能巡检系统操作代码说明。 对操作系统,管理系统应用的所用到的相关代码进行说明。 第七章 系统总结。 通过对软件进行测试,发现问题所在,并对开发中出现的问题进行梳理。 致谢及展望。 对论文期间所做工作进行了总结,分析下一步的工作,并对移南京大学硕士论文 引言 3 动巡检系统的未来作了一个展望。 参考文献。 对论文中所参考引用的期刊论文进行罗列梳理。