已阅读5页,还剩22页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
题目:网吧计费管理的设计与实现 院 系:信息技术系 专业班级:计算机科学与技术 学 号: 学生姓名: 指导教师: 2010年6月11日1.1概述1.1.1开发背景随着网吧行业竞争日趋激烈,这就需要一个现代化的管理模式,而数据库系统的管理的改革在其中具有重要的意义!传统的数据库管理只局限于其本身的数据库的管理,无法与其他管理同步,并不能达到理想的管理状态,对网吧行业来说将浪费更多的人力、物力、财力,而且并不能达到一种理想的效果,所以,网吧行业迫切需要一个集成管理模式对其进行系统的管理。网吧数据库系统的管理特点是从管理角度出发,用集成的数据库将几乎所有的管理统一管理起来,形成集成的信息源,友好的用户介面,强有力的报表生成工具,分析工具和信息共享使得管理人员得以摆脱繁重工作,集中精力从网吧行业战略的角度考虑网吧的管理规划及其政策。1.1.2组织结构分析登陆实现,打开客户机,通过无盘终端网,自动进行网络启动连接服务器,当服务器检测到以连接上将出现登陆信息框,否则将不能进行下一步操作,实现管理根据的管理。它由web服务器加载的客户端的gui图形界面,用户通过web登录系统需要经过身份认证,不同的权限对应不同级别的会话操作。当输入正确信息后,服务器计费管理系统自动录入连接后台数据库中,登陆使用的会员信息,时间消费金额将自动同步录入后台服务器数据库里,计费系统根据会员情况统计数据信息也将存入数据库中。其工作流程图如下: 拥有相应权限的工作人员登陆计费系统,直接可为会员进行开卡服务,开卡信息同步录入数据库中,并生成数据库文件,同样实现管理工具的管理其工作流程图如下:结账信息管理也是一样,登陆计费系统进入相应的的结账下机模块,从计费系统中可显示相应的上机与下机情况,每一步操作,其控件连接相应的后台数据操作,后台将生成相应的数据库文件记录,一般网吧管理者对网吧有效的管理提供依据。其工作流程图如下: 1.2系统需求分析1.2.1系统完整性的要求本着为网吧计费软件系统要为连锁大型网吧计费提供一套比较完整的服务,这使网吧计费便于管理,在各个环节中发挥作用,方便沟通。1.2.2系统安全性的要求系统不仅是方便操作人员的考虑,也是出于安全策略,在各个子系统中。用户管理只有相关管理人员被允许进行操作,各子系统完成相应的功能外,不应有其他的特权,使系统稳定安全。1.2.3数据库为核心各子系统可录入,查询,更改相应的数据库信息,以及对其他子系统数据信息的调用和查询,数据库起到了各方面,数据以及查询各方面信息的重大作用,因而构建数据库以及如何合理有效的对数据库进行操作乃是本系统的核心。1.2.4系统目标与要求要求对某一网吧建立一个计费管理系统,完成软件的开发,测试及试运行。要求本系统具有完善的功能,极高的可靠性,安全性和易维护性,具有较高的伸缩性和可移植性。系统具体要求如下:(1)系统的功能要求:准确计费(2)系的性能要求:a) 功能齐全,安全稳定,可靠性高;b) 操作简便,运用灵活,实时性强,准确性高;c) 系统能及时的处理往来数据。(3)系统的输入输出要求:a) 输入数据要有复查要求,但在确定输入之后不可随意修改,只有在经过有关部门或有关人员批准之后方可进入修改;b)输出的数据格式要提供符合标准要求,输出操作简洁快速;(4)数据的管理能力要求:系统要求能够迅速完成数据的输入和输出。(5)故障的处理要求:要求系统在出现故障时能尽可能给出较为明确的出错提示及解决办法,系统应具有必 的错误保护机制。(6)系统的运行环境要求:要求系统运行于windows环境下,具有友好的运行界面1.2.5对良好的交互性要求为了便于各部门操作人员使用本系统,以及更太容易掌握本系统的各项公能,使人善于并乐于使用本系统,应使系统界面设计友好,各子功能设计合理并人性化。模块是数据说明,可执行语句等程序对象的集合,它是单独命名而且可通过名字来访问,模块化就是把程序划分成若干个模块,每个模块完成一个子功能,把这些模块,集合起来组成一个整体,完成指定的功能满足问题的要求。采用模块化原理可以使软件结构清晰,不仅容易设计也容易阅读和理解,因为程序错误通常局限在有关模块及他们的借口中,所以模块化更容易测试和调试,因而有助于提高软件的可靠性,因为变动往往只涉及到少数几个模块,所以软件的模块化能够提高软件的可修改性,模块化也有助于软件开发工程的组织管理,一个复杂的大型程序可以由许多程序员分工编写不同的模块,并且可以进一步分配技术熟练的程序员编写苦难的模块。2.1 可行性研究 任何一个系统或一项工程,在建立之前,必须首选进行可行性分析,可行性分析包括两层含义,一是可能性,二是必要性。可能性指开发信息系统的条件是否具备,必要性是指客观上是否真正需要,通过可行性研究,可避免盲目投资,减少政治性要的损失。下面从四方面来讨论: 2.1.1 经济可行性 主要是只指算一个新的系统开发所需要的投资费用和运算费用,并与估计的新系统收益进行比较,看是否有利。本系统所需的软硬件成本比较低,投资小,具有一定的通过性,因此 ,在经济上是可行的。2.1.2 时间可行性 主要包括系统在目前环境下能否正常运行,运行后所引起的各方面,以及这些变化对社会或人的因素所产生的影响。本系统对人事的管理比较全面,可长期使用。2.1.3 技术可行性 利用现有的设备,软件及技术人员,新系统的目标能否达到,这也是可行性研究中需要考虑的一个问题。关系型数据库的高速发展使管理信息系统具备了良好的开发环境。本系统使用的delphi 普及性好,操作简单,用户可以很快掌握使用方法,因此,在技术上是完全可行的。2.1.4 社会可行性 人类社会文明的发展已进入信息化的高速发展时期,传统的手工方式支持下的管理模式,已经不能满足各方面的需要。开发本系统的目标不仅是提高工作效率,减轻劳动强度,而且减少出错率,具有很好的社会意义。3.1 系统的设计3.1.1系统的总体设计这个管理系统从6月10日开始着手设计开发,经过一段时间的分析,并根据对网吧管理的具体要求及需要本软件实现的功能,将本软件分为5个大的模块,分别是:第一部分:上机换机操作;第二部分:远程控制;第三部分:会员管理; 第四部分:参数设置。3.1.2 系统的详细设计计费管理自动化系统设计大概可以分为五个阶段,各阶段工作如下:第一阶段,系统调查分析阶段。此阶段主要任务与用户联系,通过走访,询问,查阅原始的图标与数据,获取原始资料,了解网吧计费管理系统的功能,作用,用户的需求以及网吧计费管理系统应该包括的服务内容等。第二阶段,数据库与表的建立阶段,这一阶段主要是根据网吧的计费管理系统,调查分析阶段的结果建立与网吧计费管理系统相关的数据库与表,并且进行数据规范化。(此部分由李烁丽同学完成)第三阶段,表单生成阶段,这一阶段主要任务是在用户参与的情况下创建网吧管理计费系统的用户界面,主要使用visual basic作为开发工具,选用相关控件,设置控件属性,设计程序窗口布局,初始化界面等,其结果是建立一套友好的网吧计费管理系统用户界面,方便使用者操作网吧计费管理系统。服务器版本界面及代码(此分由李烁丽同学完成)主界面及其代码(此分由李烁丽同学完成)调换主机界面及其代码(此分由李烁丽同学完成)收费界面及其代码(此分由李烁丽同学完成)消费列表界面及其代码 4-6 消费列表代码:grid1.cleargrid1.cols = 6grid1.formatstring = . | 物品名称 | 单价 | 数量 | 金额 | 状态 grid1.colwidth(0) = 710grid1.colwidth(1) = 1600grid1.colwidth(2) = 800grid1.colwidth(3) = 800grid1.colwidth(4) = 1070grid1.colwidth(5) = 880dim gridcolor as longdim db as database, ef as recordset, hh as integer, delno as longdim shiftstr as string, shiftstrl as string, shiftstrr as string, shiftnum as integer, ili as integer, tempstr as string, surestr as string, qy as integer set db = opendatabase(condata, false, false, constr) set db = openconnection(condata, dbdrivernoprompt, false, constr) set ef = db.openrecordset(customer, dbopentable) delno = ef.recordcount grid1.rows = ef.recordcount + 2 set ef = db.openrecordset(select * from customer where 房号= & sjh & , dbopendynaset) hh = 1 do while not ef.eof() 已送与未送区别 if not isnull(ef.fields(7).value) then if ef.fields(7).value = 已送 then gridcolor = &h8000& else gridcolor = &h80ff& end if end if grid1.row = hh grid1.col = 0 grid1.cellalignment = 4 grid1.cellforecolor = gridcolor if not isnull(ef.fields(0).value) then grid1.text = ef.fields(0).value end if grid1.row = hh grid1.col = 1 grid1.cellalignment = 1 grid1.cellforecolor = gridcolor if not isnull(ef.fields(1).value) then grid1.text = ef.fields(1).value end if grid1.row = hh grid1.col = 2 grid1.cellalignment = 1 grid1.cellforecolor = gridcolor if not isnull(ef.fields(3).value) then grid1.text = ef.fields(3).value end if grid1.row = hh grid1.col = 3 grid1.cellalignment = 1 grid1.cellforecolor = gridcolor if not isnull(ef.fields(4).value) then grid1.text = ef.fields(4).value end if dim zt as string grid1.row = hh grid1.col = 5 grid1.cellalignment = 1 grid1.cellforecolor = gridcolor if not isnull(ef.fields(7).value) then grid1.text = ef.fields(7).value zt = grid1.text end if grid1.row = hh grid1.col = 4 grid1.cellalignment = 7 grid1.cellforecolor = gridcolor if not isnull(ef.fields(5).value) then grid1.text = ef.fields(5).value if zt = 已送 then sje = sje + val(grid1.text) end if end if ef.movenext hh = hh + 1 loop ef.close db.close grid1.col = 1 grid1.row = 1 grid1.colsel = 5 grid1.visible = true exit suberr_grid: msgbox 网格 配置错误! & vbcrlf & vbcrlf & err.description, vbcriticalend subprivate sub cmddel_click() on error goto err_del if grid1.text = then txtdw = txtdj = cmbpm.setfocus msgbox 请选定要删除的物品! , vbinformation exit sub end if if msgbox(真的要删除 & grid1.text & 吗(y/n)? , vbyesno + vbcritical) = vbyes then delrecord grid1.textmatrix(grid1.row, 0), id, customer sje = sje - val(grid1.textmatrix(grid1.row, 4) 金额下调 grid1.removeitem grid1.row end if txtdw = txtdj = cmbpm.setfocus exit suberr_del: msgbox 删除记录错误! & vbcrlf & vbcrlf & err.description, vbcritical end subprivate sub cmdpast_click() on error goto err_ if grid1.text = or grid1.textmatrix(grid1.row, 5) = 已送 then msgbox 请选定已点而未送的物品! , vbinformation cmbpm.setfocus exit sub end if消息对话框界面与代码 图4-7 消息对话框代码: private sub cmdclose_click() unload meend sub private sub cmdreplay_click() on error goto err_replay sm_text = sendjh & mesage & txtsend 发送命令 frmserver.cmdsenddata.value = true 选定发送的内容 txtsend = txtsend.setfocus exit suberr_replay: msgbox 回复错误! & vbcrlf & vbcrlf & err.description, vbcriticalend subprivate sub lbljh_click()end subprivate sub picture1_click()end subprivate sub txtinfo_change()end subprivate sub txtsend_change() if txtsend then cmdreplay.enabled = true else cmdreplay.enabled = false end ifend sub锁定系统界面及其代码图4 -8锁定系统界面代码:private declare function findwindow lib user32 alias findwindowa (byval lpclassname as string, byval lpwindowname as string) as longprivate declare function postmessage lib user32 alias postmessagea (byval hwnd as long, byval wmsg as long, byval wparam as long, lparam as any) as longconst wm_close = &h10&dim opt1 as stringdim opt2 as stringdim opt3 as stringdim opt4 as stringdim locked as integerprivate declare function systemparametersinfo lib user32 alias systemparametersinfoa (byval uaction as long, byval uparam as long, lpvparam as any, byval fuwinini as long) as longprivate const spi_screensaverrunning = 97public privatecode as stringdim hintlabel as stringdim code as stringfunction closeapplication(byval sappcaption as string) as booleandim lhwnd as longdim lretval as longlhwnd = findwindow(vbnullstring, sappcaption)if lhwnd 0 then lretval = postmessage(lhwnd, wm_close, 0&, 0&)end ifprivate sub sevenkey_click()code = code + 7 if len(code) 10 then code = end ifhinthints.setfocusend subprivate sub eightkey_click()code = code + 8 if len(code) 10 then code = end ifhinthints.setfocusend subprivate sub form_load() fl = true on error goto err_load dim l as long, t as long l = val(getsetting(app.exename, option, lock_l, 2000) t = val(getsetting(app.exename, option, lock_t, 2000) me.left = l me.top = t 设定系统路径 dim sfilebuffer as string * 250, retval as long, ssystemini as string retval = getsystemdirectory(sfilebuffer, 251) if retval = 0 then ssystemini = c:windowssystemsyslock.ini else ssystemini = left(sfilebuffer, instr(1, sfilebuffer, chr(0), vbbinarycompare) - 1) ssystemini = ssystemini & syslock.ini end iffrmlock.keypreview = trueon error goto 1000 第一次运行,文件不存在时open ssystemini for input as 1input #1, privatecodeclose 1goto 10101000 close 1open ssystemini for output as 1print #1, 88888888close 1privatecode = 88888888hintlabel = 必须输入密码: 初始为 888888881010 on error goto 0 exit suberr_load: msgbox 表单加载错误! & vbcrlf & vbcrlf & err.description, vbcritical end subprivate sub sixkey_click()code = code + 6 if len(code) 10 then code = end if hinthints.setfocus end subprivate sub form_click()lock_switch.caption = 解锁(&u)locked = 1call lockitend subpublic sub cclipcursor()on error goto err_mousedim client as rectdim upperleft as point if locked = 1 then getclientrect me.hwnd, client upperleft.x = client.left upperleft.y = client.top clienttoscreen me.hwnd, upperleft offsetrect client, upperleft.x, upperleft.y clipcursor client else clipcursor byval 0& end if exit suberr_mouse: msgbox 控制鼠标错误! & vbcrlf & vbcrlf & err.description, vbcriticalend subprivate sub clear() 清除代码 code = end subprivate sub unloc() on error goto err_unloc 解锁 locked = 0 call cclipcursor call clear closebutton.visible = true dim ret as integer dim pold as boolean ret = systemparametersinfo(spi_screensaverrunning, false, pold, 0) unload frmlock call closeapplication(desklock) 关闭程序 exit suberr_unloc: msgbox 解锁错误! & vbcrlf & vbcrlf & err.description, vbcriticalend subpublic sub lockit()on error goto err_lock 锁定系统locked = 1call cclipcursor 捕捉鼠标lock_switch.caption = 解锁(&u)closebutton.visible = false 不显示关闭按钮dim ret as integerdim pold as booleanret = systemparametersinfo(spi_screensaverrunning, true, pold, 0)call clear exit sub中断控制室界面及代码 图4-9 中断控制室代码: private sub cmbmessage_change() if cmbmessage.text = then cmdsend.enabled = false else cmdsend.enabled = true end ifend subprivate sub cmdcancel_click() unload meend subprivate sub cmdsend_click() 执行代码 if optall.value = true then 所有终端 sm_text = sm_all & mesage & cmbmessage.text else 选定终端 dim ns as string ns = lvsendmessage.selecteditem.subitems(1) ns = left$(ns, 2) 最大机器99台 sm_text = ns & mesage & cmbmessage.text end if 发送命令 frmserver.cmdsenddata.value = true 如果显示对话框 if chkcomplete.value = vbchecked then 通知时 if optall.value = true then msgbox vbcrlf & 消息:已经成功发送到 所 有 机 器 ! & vbcrlf & vbcrlf & _ & trim(cmbmessage.text) & vbcrlf & vbcrlf & _ : & vbcrlf & _ , vbinformation, : else msgbox vbcrlf & 消息: 已经成功发送到 & ns & 号机 ! & vbcrlf & vbcrlf & _ & trim(cmbmessage.text) & vbcrlf & vbcrlf & _ : & vbcrlf & _ , vbinformation, : end if end ifend subprivate sub frame1_dragdrop(source as control, x as single, y as singleend subprivate sub lvsendmessage_beforelabeledit(cancel as integer)end subprivate sub optall_click() if picsendmessage.visible = true then cmbmessage.setfocus elseif picrestart.visible = true then command1.setfocus else command3.setfocus end ifend subprivate sub optselected_click() if picsendmessage.visible = true then cmbmessage.setfocus elseif picrestart.visible = true then command1.setfocus else command3.setfocus end ifend sub第四阶段,代码生成和文档生成,这一阶段主要根据网吧计费管理系统具体的需要编写软件程序代码,同时同步生成网吧计费管理系统文档。第五阶段,调试和发布,通过调试找到网吧计费管理系统程序中不合理的操作和错误,并且改正,根据时间的进度,安排管理自动化管理人员使用网吧计费系统,又使用者提出网吧计费管理系统中存在的问题和修改意见,根据用户要求修订网吧计费管理系统软件功能,重新调试网吧计费管理系统,调试完毕系统正常可用,即可发布。4.1结论4.1.1系统测试系统测试是将经过测试的子系统装配成一个完整系统来测试。它是检验系统是否确实能提供系统方案说明书中指定功能的有效方法。 系统测试的对象是整个应用软件系统,包括需求分析、系统总体设计、详细设计各阶段的文档以及源程序。系统测试的目的是精心选取那些易于发生错误的测试数据,以十分挑剔的态度
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年江苏省南通市法检系统书记员招聘笔试试题及答案详解
- 2026年甘肃省金昌市中小学教师招聘考试模拟试题及答案详解
- 2026年铅行业智能制造创新案例研究
- 2026新疆新星丝路通矿业投资发展有限公司(第三次)招聘3人模拟试卷附完整答案详解【各地真题】
- 2026上海中医药大学附属曙光医院安徽医院部分临床康复岗位招聘3人笔试题库及参考答案详解(完整版)
- 2026四川成都环境投资集团有限公司下属子公司招聘法务风控岗等岗位9人考前冲刺密卷附参考答案详解【黄金题型】
- 2026年福建三明市城市建设发展集团有限公司关于招聘应届毕业生5人的笔试题库及参考答案详解【综合卷】
- 2026福建莆田秀屿区市场监督管理局招聘编外食品安全协管员1名笔试题库含答案详解【培优B卷】
- 2026北京昌平实验室招聘战略研究方向人员考前冲刺试卷带答案详解(A卷)
- 2026浙江温州乐清市保招聘无人机飞手考前冲刺试卷附参考答案详解(夺分金卷)
- 第六届全国农业行业职业技能大赛(农业经理人)理论考试题库(含答案)
- 2024年江西省高考化学试卷(真题+答案)
- NB/T 11440-2023生产煤矿储量估算规范
- NBT 33018-2015 电动汽车充换电设施供电系统技术规范
- TSG-T7001-2023电梯监督检验和定期检验规则宣贯解读
- 幼儿教师招聘考试试题与答案
- 2020电网检修工程预算定额第四册调试工程
- 高端地产销售培训课件-豪宅营销模式完整版
- 建筑工程招标文件(范本)
- ISO 9001:2015新版质量管理体系详解与案例文件汇编
- 天然气管道试压检查记录表
评论
0/150
提交评论