• 1.78 MB
  • 2022-04-22 13:33:34 发布

超市管理系统设计毕业论文.doc

  • 44页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
'超市管理系统设计毕业论文目录第一章绪论11.1研究的背景意义11.2国内外现状概述11.3超市信息系统概述4第二章系统涉及到的主要技术简介52.1系统涉及到的主要技术52.2MyEclipse简介52.3J2EE技术简介52.4Ajax技术简介72.5SQLServer2000简介8第三章可行性分析113.1技术可行性研究113.2经济可行性研究113.3操作可行性研究12第四章系统需求分析134.1系统的功能需求分析134.2非功能需求分析154.3系统流程图154.4数据流程图164.5系统的E-R模型图17第五章系统的设计195.1设计思想195.2设计原则195.3系统功能模块设计205.4数据库设计225.5系统的详细设计27第六章系统的实现296.1系统实现步骤296.2创建数据库29II 6.3创建项目316.4系统主界面及登录窗体的设计实现316.5系统主要代码34第七章系统测试387.1基于Web的测试方法387.2功能测试387.3安全性测试39第八章总结40第九章参考文献41第十章致谢42II 第一章绪论1.1研究的背景意义中国的中小企业从改革开放以来,得到了迅猛的发展,但是长期以来,由于我国零售业的技术投入低,绝大部分工作仍采用传统手工方式来完成,零售企业流程不规范,缺乏标准化管理,企业普遍缺乏信息专业人员,这给计算机应用带来许多困难。据不完全统计,我国企业中实现上网的只占所有企业的20-30%,采用CAD以及MIS系统的企业不足20%;作为企业电子商务最核心的ERP系统,目前已实现的企业仅占2.9%。成本庞大、效率低下、管理不严密这三大弊病成为目前制约我国零售行业发展的“瓶颈”。信息化程度对于提高中小零售企业的经营效益起着关键性作用,我国零售企业市场竞争力差的主要原因是信息能力差。中小零售企业信息化的改造,将先进技术手段介入企业经营,能迅速改善中小零售企业的经营状况,提高市场竞争力。1.2国内外现状概述1.2.1管理信息系统的发展管理信息系统从20世纪50年代中期计算机用于管理领域以来,经历了从简单到复杂、从单机到网络、从功能单一到功能集成、从传统到现代的演化。其发展历程大致分为电子数据处理系统(EDPS)、管理信息系统(MIS)、决策支持系统(DSS)三个阶段:(1)面向业务的电子数据处理系统(EDPS)电子数据处理系统(EDPS)是利用计算机处理代替人工操作的计算机系统,如工资结算、报表统计等。特点是面向操作层,以单项应用为主,数据资源不能共享,以批处理方式为主。它较少涉及管理问题,是管理信息系统发展的初级阶段。(2)面向管理的管理信息系统(MIS)20世纪70年代初,随着数据库技术、网络通信技术和科学管理方法的发展,计算机在管理上的应用日益广泛,从而使管理信息系统(MIS)逐渐成熟起来。管理信息系统的特点是:①能够将组织中大量的数据和信息高度集中起来,进行快速处理、统一使用。有一个中央数据库和计算机网络系统是管理信息系统的重要标志。管理信息系统的处理方式是在数据库和网络基础上的分布式处理;②42 利用定量化的科学管理方法,通过预测、计划、优化、管理、调节和控制等手段来支持决策。管理信息系统(MIS)由电子数据处理系统(EDPS)发展而来,与电子数据处理系统相比,管理信息系统更强调信息处理的系统性、综合性,除要求在事务处理上的高效率外,还强调对组织内部的各部门以及各部门之间的管理活动的支持。早期的管理信息系统是指面向中层管理控制的信息系统,主要应用于解决结构化问题。于是人们从20世纪70年代开始研究解决管理中的半结构化决策与非结构化决策问题的决策支持系统决策支持系统(DSS)。(3)面向决策的决策支持系统(DSS)决策支持系统(DSS)以帮助高层次管理人员制定决策为目标,强调系统的灵活性、适应性。决策者和决策分析人员可以充分利用系统的引导,详细了解和分析其决策过程中的各主要因素及其影响,激发其思维创造力,从而在决策支持系统的帮助和引导下逐步深入地透视问题,最终有效地作出决策,即通过人机互助完成最终决策。从管理信息系统的发展及其内容的扩展可以看出,它始终是以中小企业的管理活动为核心,不断综合新的信息技术、计算机技术和网络技术来改善系统功能,以提供更完善的服务或满足新的需求。这一发展过程也体现出管理信息系统不断集成新技术并扩展系统功能的发展特点。管理信息系统是一个不断发展的概念,它将朝着智能、集成和网络等方向的趋势不断发展。1.2.2管理信息系统在中小企业中的应用现状中小企业是管理信息系统主要的应用领域,中小企业复杂的管理活动给管理信息系统提供了典型的应用环境和广阔的应用舞台。20世纪50年代中期,计算机作为强有力的数据处理工具与手段,开始在中小企业管理中应用。50多年来,中小企业应用管理信息系统经历了从简单、局部应用到高级、全面解决管理问题的发展过程。任何一个中小企业管理信息系统都蕴含着管理体制和管理模式,由于系统中信息的处理和输出方式都与管理方法、管理体制密切相关,因此,任何一个管理信息系统都是其具体管理思想的缩影。中小企业应用的管理信息系统,其实质就是各种管理思想的信息化实现。1.2.3国外中小企业管理信息系统的应用现状1954年美国通用电气公司安装的第一台商业用数据处理计算机,开创了信息系统应用于中小企业管理的先河。20世纪50年代中期到60年代中期,电子数据处理系统(EDPS)在中小企业中得到广泛应用,主要是用计算机部分地代替手工劳动,进行一些简单的单项数据处理工作,如计算工资、统计产量等。42 20世纪60年代中期到70年代初期,随着计算机技术的发展、各类信息报告系统应运而生。这类系统的特点是按事先规定的要求提供各类报告。如能反映库存数量的库存状态报告,反映生产进度的生产状态报告。这一时期,为了解决生产中库存控制的问题,1965年美国的管理专家提出了物料需求计划(MRP)这一新的管理思想,即根据产品的需求情况和产品结构,确定原材料和零件数量及订货时间,在满足生产需要的前提下,有效降低库存。这一思想对以后中小企业管理信息系统的发展有着重大的意义。随着计算机技术的发展,这一管理思想借助于计算机这一强有力的工具,发展成为一种有效的管理方法。70年代后,随着信息技术的飞速发展,管理信息系统在中小企业中得到广泛的应用。管理信息系统将中小企业中的数据和信息集中起来,进行快速处理,还可以利用定量化的科学管理方法,通过预测、计划、优化、管理、调节和控制等手段来支持决策。这一时期研究者在物料需求计划(MRP)的基础上增加了能力需求计划,使系统具有生产计划与能力的平衡过程,形成了闭环MRP。80年代,在中小企业中开始使用一种典型的管理信息系统MRPII(制造资源计划)。MRPII于1977年提出的,它以MRP为核心,将生产制造、财务会计、市场营销、工程管理、采购供应以及信息管理等各个部门纳入整体管理之中,构成了完整运作体系。90年代以来,MRPII逐渐发展成为新一代的中小企业资源系统(ERP)。ERP在MRPII基础上将供应商和中小企业内部的采购、生产、销售以及客户看作一个紧密联系的供应链,通过信息技术和管理理论对中小企业的物流、资金流和信息流进行全面的集成管理,以提高供应链的运行效率,追求中小企业资源的合理高效利用,提高中小企业在全球市场中的竞争能力。以MRPII/ERP为代表的现代中小企业管理信息系统主要支持中小企业内部管理业务。随着网络的迅猛发展,出现了各种管理思想和模式的管理信息系统,如客户关系管理(CRM)、供应链管理(SCM)、商业智能(BI)、电子商务(EC)和计算机集成制造系统(C管理信息系统(MIS))等。中小企业管理信息系统逐步会发展成为一种融合各种管理思想和信息技术的面向产品生命周期的集成系统,以实现资源共享、数据共享、适应网络经济的充分柔性的中小企业管理信息系统。目前,在欧美等发达国家,ERP的应用已经比较普及,多数大中型企业已经采用ERP系统和先进管理方式多年,目前正在推行全球化供应链管理技术和敏捷中小企业后期系统,许多小中小企业也在纷纷应用ERP系统。42 1.3超市信息系统概述超市管理系统是针对超级市场的销售而开发的。应用超市管理系统能够转变超市的工作方式,有效提高销售速度和服务水平,提高客户对超市的信任度和满意度,改善客户关系。运用超市管理系统,在销售商品时实行出口一次性付款,可以实现超市内部现代化管理,能够准确把握每一种商品的销售动态,防止商品断档或过量储备,商品开发方向、进货的适时化都可通过超市管理系统来完成。超市管理系统将手工编制好的销售账目或根据原始超市销售记录直接在系统内制作超市销售信息,同时可对输入的超市销售信息进行修改、查询等操作。这种集约化的销售管理模式既便于对超市销售信息的收集、整理和加工,又便于操作员的需求信息在最短的时间内得到反馈,同时超市管理系统可自动分析各种商品销售变化规律,商品销售结构、居民消费变化等,从而为合理进货、经营、加工、库存、销售等提供科学的决策依据。小型超市便利店的发展水平关系到人民生活水平的提高,它为居民生活提供了便利,同时由于超市货物、员工的多样性和复杂性,使得市场、人事管理、物品供需关系、设备管理显得更为复杂,所以商场超市更应该像其他企业一样,应用信息管理技术完善自己的市场、管理、供需关系等等。本文详细介绍了有关信息管理系统的基本概念原理,以及小型超市管理系统的创建过程及实现方法。同时,介绍了超市管理系统的开发环境、功能作用、所用到的语言、设计的方案等各方面内容。小型超市管理系统充分运用计算机管理信息技术,建立数据库,对超市的进销存过程进行详细分析,实现了对超市的进货、销售和库存的科学管理。该系统主要包括以下几大模块:输入单据、查询、销售、进货、退货、打印报表、用户登录管理。本文共分为七大部分:第一部分,简要叙述了信息管理系统的发展状况和本系统基本概况;第二部分,简要叙述系统涉及到的主要技术简介;第三部分,进行可行性分析;第四部分,按照软件工程的要求出发,首先进行需求分析;第五部分,主要为总体设计和详细设计;第六部分,阐述如何实现具体功能:第七部分,介绍系统调试。42 第一章系统涉及到的主要技术简介2.1系统涉及到的主要技术南松行超市管理系统使用MyEclipse作为整个系统的开发环境,主要采用J2EE技术,Ajax技术,SQLServer2000数据库,分别对J2EE技术和Ajax技术的特点、应用范围,以及SQLServer2000数据库的发展、特点和应用等方面进行简要阐述,以明确开发系统所使用的技术有足够的可行性和明显的针对性,并能满足系统移植性能的要求。2.2MyEclipse简介MyEclipse是一个十分优秀的用于开发Java,J2EE的Eclipse插件集合,是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSF,CSS,Javascript,SQL,Hibernate。2.3J2EE技术简介Java于1995年由Sun公司推出,当时它的主要用途是制作产生动态网页的Applet。后来,人们发现Java的“一次开发,多次运行”、纯面向对象的特性、垃圾回收机制和内置安全特别适合于开发企业应用系统。于是,企业应用开发商纷纷在Java标准版的基础上各自扩展出许多企业应用API,其结果导致基于Java的企业应用呈爆炸式增长。但是各企业系统API之间又不能相互兼容,破坏了Java的平台独立性。鉴于此,Sun公司联合IBM、Oracle、BEA等大型企业应用系统开发商于1999年共同制订了一个基于Java组件技术的企业应用系统开发规范,该规范定义了一个多层企业信息系统的标准平台,旨在简化和规范企业应用系统的开发和部署。这一规范和其定义的平台就构成了J2EE。它定义了基于组件的方式设计、开发、组装和部署企业应用系统的各个组成部分。同时,J2EE规范定义了分布式多层应用系统模型、组件重用策略、一体化的安全模型以及灵活的事务控制策略等,使得独立软件提供商(ISV)能够比以前更快的速度,向市场推出用户适应的解决方案。J2EE是一套针对于企业级分布式应用的计算环境,其结构体系如图1所示。42 它定义了动态Web页面功能(Servlet和Jsp)、商业组件(EJB)、异步消息传输机制(JMS)、名称和目录定位服务(JNDI)、数据库访问(JDBC)、与子系统的连接器(JCA)和安全服务等。需要注意的是,J2EE本身是一个标准,而不是一个现成的产品(虽然现在有很多符合J2EE标准的产品),它由以下几个部分组成:(1)J2EE规范该规范定义了J2EE平台的体系结构、平台角色及J2EE中每种服务和核心API的实现要求。它是J2EE应用服务器开发商的大纲。(2)J2EE兼容性测试站点Sun公司提供的一个测试J2EE应用服务器是否符合J2EE规范的站点,对通过该站点测试的产品,Sun公司将发放兼容性证书。(3)J2EE参考实现即J2EESDK,它既是Sun公司自己对J2EE规范的一个非商业性实现,又是为开发基于J2EE企业级应用系统原型提供的一个免费的底层开发环境。(4)J2EE实施指南即BluePrints文档,该文档通过实例来指导开发人员如何去开发一个基于J2EE的多层企业应用系统。2.3.1采用J2EE技术构架的优势前面介绍了J2EE架构和企业应用中的解决方案,从中可以看到采用该方案的优势包括以下几个方面:1.保护已有的IT投资公司在竞争中必须不断适应新的商业需求,而有效利用企业现有的信息系统同样十分重要。所以,一个以渐进的方式建立在已有系统之上的服务器端平台机制是才是企业所需求的。2.加快企业面向市场的时间,减少新系统的开发周期缩短切入市场时间的方法之一就是选择便于应用快速开发的服务器端平台,这个平台应遵循开放的、公开的及获得业界广泛支持的标准。图2显示了在不同底层平台下的系统开发时间的对比,从中可以看到利用J2EE架构可以大幅度缩短应用开发的周期,并简化系统开发的难度。3.提高系统的可伸缩性,增强可维护性基于J2EE规范的应用可以被部署到各种操作系统上,从高端的UNIX大型机到简单的Windows平台。同时也提供了广泛的负载平衡策略,可以消除系统中的瓶颈,允许多台服务器集成部署、协同工作,从而提高系统的可扩展性,满足企业应用的需要。42 2.4Ajax技术简介该技术在1998年前后得到了应用。允许客户端脚本发送HTTP请求(XMLHTTP)的第一个组件由OutlookWebAccess小组写成。该组件原属于微软ExchangeServer,并且迅速地成为了InternetExplorer4.0[3]的一部分。部分观察家认为,OutlookWebAccess是第一个应用了Ajax技术的成功的商业应用程序,并成为包括Oddpost的网络邮件产品在内的许多产品的领头羊。但是,2005年初,许多事件使得Ajax被大众所接受。Google在它著名的交互应用程序中使用了异步通讯,如Google讨论组、Google地图、Google搜索建议、Gmail等。Ajax这个词由《Ajax:ANewApproachtoWebApplications》一文所创,该文的迅速流传提高了人们使用该项技术的意识。另外,对Mozilla/Gecko的支持使得该技术走向成熟,变得更为易用。2.4.1Ajax与传统的Web应用比较传统的Web应用允许用户填写表单(form),当提交表单时就向Web服务器发送一个请求。服务器接收并处理传来的表单,然後返回一个新的网页。这个做法浪费了许多带宽,因为在前後两个页面中的大部分HTML代码往往是相同的。由于每次应用的交互都需要向服务器发送请求,应用的响应时间就依赖于服务器的响应时间。这导致了用户界面的响应比本地应用慢得多。与此不同,Ajax应用可以仅向服务器发送并取回必需的数据,它使用SOAP或其它一些基于XML的Webservice接口,并在客户端采用JavaScript处理来自服务器的响应。因为在服务器和浏览器之间交换的数据大量减少,结果我们就能看到响应更快的应用。同时很多的处理工作可以在发出请求的客户端机器上完成,所以Web服务器的处理时间也减少了。Ajax应用程序的优势在于:1.通过异步模式,提升了用户体验。2.优化了浏览器和服务器之间的传输,减少不必要的数据往返,减少了带宽占用。3.Ajax引擎在客户端运行,承担了一部分本来由服务器承担的工作,从而减少了大用户量下的服务器负载。2.4.2Ajax对象的生成42 Ajax对象是根据不同的浏览器来具体生成的比如IE浏览器是通过ActiveXObject("Microsoft.XMLHTTP")来生成的。的生成代码如下:varxmlHttp=false;functioncreateXMLHttpRequest(){if(window.ActiveXObject)//在IE浏览器中创建XMLHttpRequest对象{try{xmlHttp=newActiveXObject("Msxml2.XMLHTTP");}catch(e){try{xmlHttp=newActiveXObject("Microsoft.XMLHTTP");}catch(ee){xmlHttp=false;}}}elseif(window.XMLHttpRequest)//在非IE浏览器中创建XMLHttpRequest对象{try{xmlHttp=newXMLHttpRequest();}catch(e){xmlHttp=false;}}}2.5SQLServer2000简介SQLServer是Microsoft的一个基于WindowsNT的功能强大的关系型数据库管理系统,是适用于中小型事务处理及客户端/服务端结构的应用系统,它功能强大、操作简便,日益受到广大数据库用户喜爱,越来越多的开发工具提供了与SOLServer的接口。SQLServer最初是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的,于1988年推出了第一个0S/2版本,在WindowsNT推出后,Microsoft与Sybase在SQLServer的开发上就分道扬镳了,Microsoft将SQLServer移植到WindowsNT系统上,专注于开发、推广SOLServer的WindowsNT版本。SQLServer7.0可以帮助各种规模的企业来管理数据,它以其可伸缩性的商业解决方案、强大的数据仓库以及与Microsoft旗下软件的紧密集成为企业提供了额外的商业便利。它为数量快速增长的并发用户提供支持,用更加复杂的方式有效处理和分析海量数据,能够帮助企业智能化地分析大量数据和制定明智的业务决策的工具,为企业提供了一个可伸缩的数据平台。SQLServer2000是Microsoft公司推出的SQL42 Server数据库管理系统的最新版本,本文介绍的超市管理系统的开发选用的就是MicrosoftSQLServer2000数据库。SQLServer2000是一个分布式的关系型数据库管理系统,具有客户机/服务器体系结构,采用了Transact-sql的sql语言在客户机与服务器间传递客户机的请求与服务器的处理结果。SQLServer2000能够满足今天的商业环境要求不同类型的数据库解决方案,它是一种应用广泛的数据库管理系统,具有许多显著的优点:易用性、适合分布式组织的可伸缩性、用于决策支持的数据仓库功能、与许多其他服务器软件紧密关联的集成性、良好的性价比等。性能、可伸缩性及可靠性是基本要求,而进入市场时间也非常关键,除这些核心企业品质外,SQLServer2000还为用户数据管理与分析带来了灵活性,允许单位在快速变化的环境中从容响应,从而获得竞争优势。该版本继承了SQLServer7.0版本的优点,同时又增加了许多更先进的功能,具有使用方便、可伸缩性好与相关软件集成程度高等优点,可跨越从运行MicrosoftWindows98的个人电脑到运行MicrosoftWindows2000的大型多处理器的服务器等多种平台使用。SQLServer不但可以应用于大中型数据库管理中,建立分布式关系数据库,而且可以开发桌面数据库。事实上,SQLServer数据库处理的基本结构,采取关系型数据库模式,尽管如此,相信大家都可以轻易地发现:SOLServer的数据库处理方式是使用面向对象的操作方式与精神,也就是说,SOLServer的所有功能都可以基于系统已经建立好的一些对象来达成,是一种面向对象的系统结构。SQLServer企业管理器是SQLServer的主要管理工具,它提供了一个遵从MMC标准的用户界面,使用户得以:(1)定义SQLServer实例组;(2)将个别服务器注册到组中;(3)为每个已注册的服务器配置所有SQLServer选项;(4)在每个已注册的服务器中创建并管理所有SQLServer数据库、对象、登录、用户和权限;(5)在每个已注册的服务器上定义并执行所有SQLServer管理任务;(6)通过唤醒调用SQL查询分析器,交互地设计并测试SQL语句、批处理和脚本。它支持中小型数据库、多用户的高性能和事物处理,支持分布式数据库和分布处理,能够实现安全性和完整性控制,具有可移植性、可兼容性和可联结性,具备良好的数据管理能力和良好的开发性。Microsoft将OLAP功能集成到MicrosoftSQLServer中,提供可扩充的基于COM的OLAP接口。MicrosoftOffice42 2000套件中的Access和Excel可以作为数据展现工具,另外SQLServer还支持第三方数据展现工具。SQLServer2000是Microsoft的一个基于WindowsNT的功能强大的关系型数据库管理系统,可以帮助各种规模的企业来管理数据,以其可伸缩性的商业解决方案、强大的数据仓库以及与Microsoft旗下软件的紧密集成为企业提供额外的商业便利。它为数量快速增长的并发用户提供支持,用更加复杂的方式有效处理和分析海量数据,能够帮助企业智能化地分析大量数据和制定明智的业务决策的工具,为企业提供了一个可伸缩的数据平台。SQLServer为各种类型的计算机提供了足够的兼容性;多处采用图形管理,易于创建、管理和配置;是第一个集成数据转换服务的数据库;具有网络独立性和内置的容错特性:提供了可扩充的分布式客户/服务器平台;自动数据复制:支持可扩展标记语言(XML),可将检索结果以XML文档的形式返回,也可使用新的OPENXML行集函数将XML文档中的数据表现为关系行集的形式。SQLServer是一个客户/服务器关系型数据库系统,分为客户端(前端)和服务器(后端)两部分。而SQLServer分布式管理框架(SQL-DMF)使得任何一种前端都可以和后端通信,并且可以使人们自行编写前端工具来访问后端的资源和数据,SQL-DMF除了前端和后端外还包括了对象库部分。SQLServer对象库的结构化组件负责在前端和后端之间提供接口使之可以互相通信,其使用的是对象链接与嵌入(OLE)这个工业标准。SQLServer的OLE特性又被划分为两部分:分布式管理对象(DMO),使前端应用可以管理后端;数据访问对象(ADO)使前端应用通过开放数据互连(ODBC)直接访问数据库中的数据。微软公司的SQLServer之所以被确认为本项目的软件开发平台,主要是因为它具有支持数据仓库开发的特性,具有联机分析处理软件包OLAP,可以获得Windows平台上各种软件系统的支持。Microsoft公司的SQLServer2000已经在性能和可扩展性方面确立了世界领先的地位,是一套完全的数据库和数据分析解决方案,使用户可以快速创建下一代的可扩展电子商务和数据仓库解决方案。42 第一章可行性分析3.1技术可行性研究在IT行业中从业的工作人员一般都要求掌握计算机技术,具有一定的软硬件基础,会使用各种管理软件,熟悉IT产品。因为,有的超市对员工的素质要求比较高,从管理层到下面的销售人员,都要求具有一定的计算机基础,所以在新系统投入使用时,只要对员工进行少量的培训,系统的功能和使用方法就基本上能够是系统顺利运行。3.2经济可行性研究因为通过网络传递销售信息可以不受距离的限制,因此可以借阅许多的人力和物力,方便管理,由此可以减少不必要的开支,同时该系统可以提高超市的销售效率,即提高了超市的经济效益,所以从经济上完全是可行的。(1)超市有能力承担系统开发费用开发新系统的工作是一项间距复杂的工作,它的投资主要是人力和物力的投资。对于本系统的开发者来说,其主要投资还是在人力和物力两个方面。如果是企业自己安排人手开发系统的话,其主要的投资还是在人力资源上,从系统的业务需求调查到系统的分析编码制作都是需要巨大的人力投入的。软件企业作为一个简短的高科技产业,其员工要求都比一般企业的要求要高,而且对系统开发及软件产业了解比较多,所以在自我开发管理系统的过程中,企业自己比较容易安排人手,这样就可以为企业借阅大部分的额外开支。同时软件就其它产品来说,属于高端行业,无论是产品的价格还是质量都比较高,而经营产品的经销商或者是商家都要求有雄厚的资金支持。所以,在系统的开发过程中,企业完全有能力承担开发费用。(2)新系统将为企业带来经济效益管理系统是一个信息化、智能化和先进管理理念的集合体。而管理是一个动态过程,在其运行过程中要采取多项措施。所以在管理中获得经济效益是一个综合效益,要对它进行直接定量的分析是比较困难的。一般新系统带来的经济效益是简介的,其最主要的表现就是减少了企业管理费用和人力开支。而其它一些繁琐的食物都通过新系统来加以分析解决,不仅节省了大量的时间,还为企业的各项决策提供了宝贵的资料,为企业带来巨大的经济效益。42 3.3操作可行性研究本系统采用基于Windows的图形用户界面,而该系统是大家熟悉的操作系统,对于那些有一般的计算机知识的人员就可以轻松上手。而整个超市管理系统采用最友好的交互界面,简易明了,不需要对数据库进行深入的了解。由此,该系统的操作是可行的,有必要开发该系统。综合以上三方面,该系统具有很高的开发可行性,无论是从技术上或者经济上还是操作上。42 第一章系统需求分析4.1系统的功能需求分析4.1.1系统开发目的开发南松行超市管理系统的目的主要是通过超市管理系统为客户提供方便快捷的查询、修改、输入服务,实现对超市的进货、销售和库存的科学管理。开发南松行超市管理系统的目标是:(1)确保该系统的稳定性,保证数据的安全,满足超市管理者和员工的需要;(2)保证某些处理的及时性,如顾客实付金额的计算、顾客购物小票的打印,要快速及时;(3)提供简单、便捷的查询与修改;(4)整个系统能合为一个整体,提高效率;保证支付系统的顺畅与简捷,且注意安全性。4.1.2用户分析及用例图分析(1)用户分析超市管理系统的使用者,即超市的员工主要由超市经理、信息管理员、财务管理员、采购员、收银员组成。超市经理:超市管理系统的所有者,主管主要事务,是超市管理系统系统的投入者和管理者,可以对后台根据需要随时进行管理。信息管理员:超市管理系统的系统管理者,进行系统的日常管理维护,并按照超市管理者的意愿,负责单据录入、采购计划、发货计划的编制,对商品进行各种管理,比如添加、修改、删除、更新等。财务管理员:对资金流的管理。采购员:根据采购计划进行商品的采购。收银员:根据顾客选购的商品进行销售数据的输入,超市管理系统的客户端使用者。(2)用例图分析系统整体用例图4-1所示:42 图4-1超市管理系统整体用例图4.1.3系统功能需求陈述(1)前台功能需求用户登录时,如果用户输入的用户名或密码不正确时,提示用户重新填写,并重新回到登录界面。如果输入信息正确,用户可以正常登录,进行不同权限的数据管理。用户能够根据不同权限添加、修改和删除系统不同级别的数据。(2)后台功能需求管理员登录,进入后台管理系统。可以从事以下操作:修改自己密码,保证安全性。员工管理:可以查询查看员工信息,可以添加新员工,可以修改用户权限,并可以删除。VIP客户即会员管理:可以对会员信息进行查询、添加、修改。42 供货商管理:可以对供货商信息进行查询、添加、修改。商品管理:可以对商品信息进行查询、添加、修改。商品类别管理,可以更改类别名称,可以添加和删除类别。销售单管理:可以销售单进行条件查询,并进行管理。管理统计报表:输入条件,得到报表并可导出到excel文件中。4.2非功能需求分析4.2.1系统界面与硬件需求(1)系统界面需求整个界面设计要保持友好、简洁、美观、操作简易等风格。输入设备:键盘、鼠标、扫描仪、条码扫描器输出设备:显示器、打印机、条码标签打印机显示风格:Windows应用程序界面接口需求:暂无(2)硬件需求为了能够更好地运行SQLServer2000,并且满足数据库的存储及处理速度要求。硬件需求为:CPU:Intel奔腾双核,运行速度2600MHz或以上内存:1024MB或以上硬盘:160G或以上显示器:19英寸宽屏LCD,分辨率为1440×9004.2.2软件环境开发和运行境需求:安装SQLServer2000,MyEclipse6.5,JDK1.5,Tomcat6.0操作系统:WindowsXP版本浏览器:IE6.O版本或以上,火狐3.0版本或以上4.3系统流程图42 通过上一节的系统需求分析以及第一章中提出的系统设计的目标,这一节主要对超市销售系统的系统工作流程进行分析。在超市销售系统中,管理员添加和修改基本信息将基本信息保存在系统中,并在数据库中的查询相关信息。超市管理系统的后台流程图如图4-2所示,超市管理系统的前台流程图系统流程图如图4-3所示。图4-2超市管理系统后台流程图图4-3超市管理系统前台流程图4.4数据流程图得出系统流程图以后,接下来就要分析系统的数据流图。数据流图是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换,它是分析员与用户之间极好的通信工具。综合分析上面的系统流程图,可得出超市管理系统的整体数据流图。顶层数据流图如图4-4所示:图4-4超市管理系统顶层数据流图根据上面的数据流图再具体分析超市进货和商品销售结账过程中的数据流,得出0层的数据流图,如图4-5所示:42 图4-50层数据流图4.5系统的E-R模型图实体联系图:简称为E-R图,是指以实体、关系、属性三个基本概念概括数据的基本结构,从而描述静态数据结构的概念模式。与此有关的概念有:(1)实体:是观念世界中描述客观事物的概念。(2)属性:指实体具有的某种特性,用来描述一个实体。(3)联系:可分为两类:一是实体内部的联系;二是实体之间的联系。超市管理系统的E-R模型如图4-6所示:42 图4-6超市管理系统E-R图42 第一章系统的设计5.1设计思想(1)系统分成几个相对独立的模块,但这些模块都进行集中式管理。(2)分层的模块化程序设计思想,整个系统采用模块化结构设计。作为应用程序有较强的可操作性和扩展性。(3)合理的数据流设计,在应用系统设计中,相对独立的模块间以数据流相互连接,使各模块间的耦合性较低,方便系统运行,提高系统安全性。5.2设计原则(1)实用性南松行超市管理系统具备完成软件工程所要求功能的能力和水准。系统符合小型超市实际需要的国内外有关规范的要求,并且实现容易、操作方便。从用户角度出发,充分利用现有资源,尽量降低系统成本,使系统具有较高的性能价格比。(2)实时性南松行超市管理系统实时处理顾客的购货单,及时计算和打印购货小票。实时监测库存情况,缺货时可及时预警。(3)可靠性南松行超市管理系统具备在规定的条件下和规定的时间内完成本系统规定功能的能力,具备系统长期和稳定工作的能力,采用高可靠性措施,这些措施利用如下的技术降低系统故障概率和有关影响正常运行的随机性:系统的使用不影响被监控设备的正常运行;系统的局部故障不影响整个监控系统的正常工作;系统主要设备存在结构和功能冗余,系统不存在瓶颈问题;系统设备采用模块化结构,便于故障排除和替换;系统具有自诊断功能,对各种程序出错、通道干扰等可自动恢复,对通信终端、软硬件故障等能够诊断出故障并及时预警。(4)开放性42 小型超市管理系统遵循开放性原则,系统提供符合国际标准的软件、硬件、通信、网络、操作系统和数据库管理系统等诸方面的接口与工具,使系统具备良好的灵活性、兼容性、扩展性和可移植性。整个网络是一个开放系统,能兼容不同厂商的产品,并能支持二次开发。(5)灵活性南松行超市管理系统组网方式灵活,系统功能配置灵活,能够充分利用现有视频监控子系统网络资源。系统将其他子系统都融入其中,能满足不同监控单元的业务需求,软件功能全面,配置方便。(6)可扩展性南松行超市管理系统采用模块化结构,使系统能够在用户要求发生变更时方便灵活地在硬件和软件上进行扩展,即不需要改变网络的结构和主要的软硬件设备。系统具有一定的冗余量,能够适应不断增加的业务需求,在系统加入新的连接点或客户机时,只须在新建节点上安装南松行超市系统并建立和服务器的连接即可,服务器的软硬件无须做大的改变,只需增加少量设备;系统具备一定的能力以便组建小型网络。(7)安全性南松行超市管理系统系统具有安全防范和保密措施,防止非法侵入系统及非法操作。操作安全性:视频监控系统可对每一功能操作提供检查和校核,当操作有误时能自动或手动被禁止并报警。任何自动或手动操作可用存储记录或作提示指导。硬件、软件的安全性:视频监控系统采取以下措施保证其安全性:具有电源故障保护和自动重新启动;能预置初态和重新设置;设备故障能自动切除或切换并能故障报警;系统设计或系统性能应考虑到重载和紧急临界情况。(8)可维护性南松行超市管理系统监控系统的结构设计应考虑维修方便,以便缩短平均修复时间。系统具有自诊断和寻找故障程序,指出具体故障部位,在现场更换故障部件后即恢复正常。5.3系统功能模块设计根据前面在需求分析阶段提出的系统功能需求,将系统结构分成四个模块:基本信息管理模块、货物管理模块、销售管理模块、统计报表模块,每个模块的具体功能如下:5.3.1货物管理模块该模块主要实现对整个超市的日常工作管理的功能,使整个超市的工作井然有序,这个模块包括“进货管理”、“退货管理”、“缺货管理”、“商品调价管理”四个功能模块。42 (1)进货管理,这个模块对超市所购进的商品进行登记。(2)退货管理,这个模块主要对商场滞销的产品进行退货处理。(3)缺货管理,这个模块主要完成对缺货商品的统计和定时告警。(4)商品调价管理,这个模块主要是登记在超市进行某些商品的促销活动时,对促销范围内的商品价格进行变更。5.3.2销售管理模块该模块是系统最主要的模块,对商品的销售进行一条龙管理,能够对每日商品销售信息进行输入、查询、统计等操作。包括“商品销售”、“销售单查询”两个功能模块。(1)商品销售:这个模块实现对商品的录入和销售。(2)销售单查询:这个模块主要是对商品销售情况的查询,修改等。5.3.3基本信息管理模块该模块主要实现对员工、供货商、会员、商品等基本信息管理的功能,让管理层对整个超市的人事及商品有详细的了解,包括“员工信息管理”、“供货商信息管理”、“会员信息管理”、“商品信息管理”四个功能模块。(1)员工信息管理:这个模块对超市的所有员工的信息进行登记管理,包括添加、修改、删除、查询等操作。(2)供货商信息管理:这个模块对超市的所有供应商的信息进行登记管理,包括添加、修改、删除、查询等操作。(3)会员信息管理:对会员进行添加、修改、删除、查询等操作。(4)商品信息管理:这个模块对超市的所有商品的信息进行登记管理,包括添加、修改、删除、查询等操作。5.3.4统计报表模块该模块主要包括“采购单据报表”、“销售统计报表”等报表的生成、导出。(1)采购单据报表:将整个超市的进货记录以excel报表的形式导出来。(2)销售统计报表:将商品的具体销售情况以excel报表的形式导出来。每个模块完成一个特定的功能,所有的模块都按某种方法组织起来,成为一个整体,完成整个系统所要求的功能。整体功能模块如图5-1所示:42 图5-1整体功能模块图5.4数据库设计根据上一章的需求分析,建立了一个数据库名为csdb的数据库,共有13个数据表。5.4.1用户信息表用户信息表userinfo:此表中记录了用户的所有信息,管理员通过此表对用户进行添加、删除、修改管理,也可通过此表查询某个用户的信息,此表的主键为userId。其结构如表5-1所示:表5-1用户信息表的结构中文字段英文字段字段类型长度主键/外键字段值约束用户iduserIdint主键notnull用户名userNamevarchar20notnull用户密码passwdvarchar15notnull性别sexnchar1notnull权限gradeintnotnull备注userOthersntext50null5.4.2员工信息表42 员工信息表staff:此表中记录了员工的所有信息,管理员通过此表对员工进行添加、删除、修改管理,也可通过此表查询某个员工的信息,此表的主键为staffID。其结构如表5-2所示:表5-2用户信息表的结构中文字段英文字段字段类型长度主键/外键字段值约束职工编号staffIDvarchar20主键notnull姓名staffNamenvarchar10notnull性别staffsexnchar2notnull年龄staffAgeintnotnull籍贯staffHomenvarchar30null学历staffDiplomanvarchar20notnull工资staffSalaryfloat8null职位staffDutynvarchar10notnull联系电话staffPhonevarchar25null联系地址staffAddressnvarchar50null身份证号staffIdCardchar18notnull聘用日期staffBeginDatedatetime20null编制日期staffEnactTinedatetime20null备注staffOthersntext50null5.4.3会员信息表会员信息表VIP:此表记录了所有会员的基本信息,管理人员可以通过此表对会员的信息进行添加、删除、修改等操作。此表的主键是VIPID。其结构如表5-3所示:表5-3会员表的结构中文字段英文字段字段类型长度主键/外键字段值约束会员卡编号VIPIDvarchar20主键notnull会员姓名VIPNamenvarchar10notnull会员积分VIPScoreintnotnull会员级别VIPRankvarchar10notnull联系电话VIPPhonevarchar30null发卡日期VIPDatedatetime20notnull5.4.4供应商信息表供货商信息表Supplier:此表记录了所有供货商的基本信息,管理人员可以通过此表对供应商的信息进行添加、删除、修改等操作。此表的主键是42 SupplierID。其结构如表5-4所示:表5-4供应商表的结构中文字段英文字段字段类型长度主键/外键字段值约束供货商编号SupplierIDnvarchar20主键notnull供货商名称SNamenvarchar15notnull联系人SLinkmannvarchar10notnull联系电话SPhonevarchar25notnull供货商地址SAddressnvarchar50null开户行SBanknvarchar30null银行账号SAccountIDvarchar30null备注SOthersntext50null5.4.5商品信息表商品信息表Product保存超市商品的基本信息:此表记录了超市的所有商品信息,管理人员可以通过此表对商品进行添加、删除、修改等操作,在进货管理、客户结账和商品调价过程中,都涉及到对此表的操作,此表中的库存和价格都是变动的,此表的主键是ProductID。其结构如表5-5所示:表5-5商品表的结构中文字段英文字段字段类型长度主键/外键字段值约束商品编号ProductIDvarchar20主键notnull商品名称PNamenvarchar20notnull类别编码PTypeIDnvarchar20外键notnull类别名称PTypenamenvarchar20notnull供货商编号SupplierIDvarchar20外键notnull商品规格PSpecificationvarchar10null商品颜色PColorvarchar10null商品状态PStatevarchar10null商品单位Punitvarchar20null商品进价PImportPricefloat8notnull商品售价PSellPricfloat8notnull库存数量PStockNumvarchar10notnull库存报警数PCautionNumvarchar10notnull条形码PBarcodechar13null商品保质期PDeadDatedatetime20notnull进货编号PIIDvarchar20null销售编号saleIDvarchar20null退货编号PBIDvarchar20null备注POthersntext50null42 5.4.6商品类型表商品类型表Type:此表记录了所有商品类型的基本信息,此表的主键是PTypeID。其结构如表5-6所示:表5-6商品类型表的结构中文字段英文字段字段类型长度主键/外键字段值约束商品类型编号PTypeIDvachar20主键notnull类别名称PTypenamenvachar20notnull5.4.7进货信息表进货信息表ProductIN:此表主要记录进货商品的相关信息,以方便以后管理员查看进货信息,此表的主键是PIID。其结构如表5-7所示:表5-7商品类型表的结构中文字段英文字段字段类型长度主键/外键字段值约束进货单编号PIIDvarchar20主键notnull进货日期PIInDatedatetime20notnull进货总价PIAllPricefloat10notnull付款方式PIPayWayvarchar20notnull付款情况PIPayvarchar10notnull操作员编号userIdvarchar20notnull备注PIOthersntext50null5.4.8进货细节表进货细节表ProductINDetail:此表主要是对进货信息表详细记录,以方便以后管理员查看进货信息,此表的主键是PIID。其结构如表5-8所示:表5-8进货细节表的结构中文字段英文字段字段类型长度主键/外键字段值约束进货单编号PIIDvarchar20主键notnull商品编号ProductIDvarchar20外键notnull商品名称PNamenvarchar20notnull进货数量PIInQuantiyvarchar20notnull进货单价PImportPricefloat8notnull商品规格PSpecificationnvarchar20null供应商编号SupplierIDnvarchar20notnull5.4.9销售信息表42 销售信息表Sales:此表记录了超市所有商品销售记录,营业利润分析通过此表进行分析统计,销售详细单也是通过此表查询的,此表的主键是saleID。其结构如表5-9所示:表5-9销售信息表的结构中文字段英文字段字段类型长度主键/外键字段值约束销售编号saleIDvarchar20主键notnull销售总金额saleAllPricefloat10notnull销售日期saleDatedatetime12notnull操作员编号userIdvarchar20外键notnull备注saleOthersntext50null5.4.10销售细节表销售细节表SalesDetail:此表是对销售信息表进行详细记录,营业利润分析通过此表进行分析统计,销售详细单也是通过此表打印的,此表的主键是saleID。其结构如表5-10所示:表5-10销售细节表的结构中文字段英文字段字段类型长度主键/外键字段值约束销售编号saleIDnvarchar20外键notnull商品编号ProductIDvarchar20外键notnull商品名称PNamenvarchar30notnull销售数量saleQuantityvarchar10notnull销售价格PSellPricefloat8notnull商品规格PSpecificationnvarchar20null5.4.11退货信息表商品退货表ProductBack:此表主要记录了退货商品的编号、总价和时间。此表的主键是PBID。其结构如表5-11所示:表5-11退货信息表的结构中文字段英文字段字段类型长度主键/外键字段值约束退货编号PBIDvarchar20主键notnull退货总额PBAllPricefloat8notnull退货时间PBDatedatetime20notnull操作员编号userIdvarchar20外键notnull备注PB_Othersntext50null5.4.12退货细节表42 商品退货细节表BackDetail:此表主要记录了退货商品的编号、数量和价格。此表的主键是PBID。其结构如表5-12所示:表5-12退货细节表的结构中文字段英文字段字段类型长度主键/外键字段值约束退货编号PBIDvarchar20外键notnull商品编号ProductIDvarchar20外键notnull商品名称PNamenvarchar30notnull退货数量numsintnotnull商品单位Punitnvarchar20null5.4.13调价表调价记录表ReducePrice:此表主要记录了商品价格变动的所有信息,有利于以后管理高层通过此表对商品售价进行查询,从而确定以后商品定价的标准,此表的主键是RID。其结构如表5-13所示:表5-13调价表的结构中文字段英文字段字段类型长度主键/外键字段值约束调价编号RIDvarchar20主键notnull商品编号ProductIDvarchar20外键notnull商品名称PNamenvarchar20notnull调价后价格RChagePricefloat8notnull会员价格RChageVIPPricefloat8notnull起始日期RSDatedatetime20notnull终止日期REdatedatetime20notnull备注ROthersntext50null5.5系统的详细设计5.5.1货物管理模块的设计该模块主要完成对商品入库、退货、缺货、和价格调整的信息实行管理。(1)进货管理模块。主要完成根据缺货信息生成订货信息,并可以在此基础上添加、删除、修改某些商品的名称、编号、数量的模块。(2)退货管理模块。主要完成根据销售情况,对滞销的货物进行生成退货信息表。42 (3)缺货管理模块。主要完成根据订货信息、上货信息生成缺货信息,并可以在此基础上添加、删除、修改某些商品的名称、编号、数量的模块,生成缺货信息表后在预定时间内提出缺货告警。(4)调价管理模块。主要完成根据进货价格的变动,对某些商品进行销售价格调整。5.5.2销售管理模块的设计该模块主要完成对商品每日销售实行管理。(1)销售单输入管理。主要完成每日每个顾客购买商品信息的条码输入、商品识别、顾客购物小票的计算和打印,即前台收银台的工作。(2)销售单查询管理。主要完成某日所有购物小票的统计和汇总,并自动生成某日销售商品总数的统计。(3)销售单变更管理。主要完成某日顾客的退货和换货记录。5.5.3基本信息管理模块的设计该模块主要完成对商品、供货商、员工、会员的信息实行管理。该模块分为四个子模块:员工信息管理模块、商品信息管理模块、供货商信息管理模块、会员信息管理模块。每个子模块分别完成对某一信息的增删改查等方面的操作。基本功能类似,下面以商品信息模块为例介绍其功能。商品信息管理模块负责对超市所售商品的信息进行管理。主要有以下功能。(1)员工信息添加管理。负责输入某一职员的职员编号、职员名称、性别、年龄、籍贯、学历、薪水、职位、联系电话、住址、身份证、聘用日期、编制日期等信息。(2)员工信息修改管理。负责修改某一职员的职员编号、职员名称、性别、年龄、籍贯、学历、薪水、职位、联系电话、住址、身份证、聘用日期、编制日期等信息。(3)删除员工管理。负责从文件中删除某一员工信息的记录。5.5.4统计报表管理模块的设计(1)采购单据报表:以月为单位来统计各类产品的进货数据进行进货情况的每月统计管理和分析。主要根据每月进货商品按商品编号计数的统计和进货价格的查询,生成当月进货商品汇总表。(2)销售统计报表:以月为单位来统计各类产品的销售数据进行营业情况的每月统计管理和分析。主要根据每月销售商品按商品编号计数的统计和进货价格的查询,生成当月销售商品汇总表。42 第一章系统的实现6.1系统实现步骤在完成了系统的需求分析和设计之后,就进入系统的实现阶段。小型超市管理系统的实现步骤如下:(1)创建数据库①建立数据库名②建立数据库下数据表③创建立数据库表的约束(2)创建项目①创建各窗体,并设置窗体之间属性②为主窗体上菜单添加代码(3)创建数据库连接(4)创建公用模块,数据访问模块、分页模块等(5)创建信息管理模块包括员工信息管理模块、供货商信息管理模块、会员信息管理模块、商品信息管理模块、进货信息管理模块、销售信息管理模块、退货信息管理模块、调价信息管理模块等。(6)进行整个系统的调试与修改(7)美化系统页面6.2创建数据库6.2.1创建数据库启动MicrosoftSQLServer的查询分析器后,输入以下语句并单击工具栏中的运行按钮,创建小型超市管理系统数据库后,数据库名为csdb,所有参数采用默认值。CREATEDATABASEcsdbGO6.2.2创建表创建小型超市管理系统数据库csdb后,向csdb42 数据库中添加一个数据文件员工信。息表文件userinfo,需运行以下代码。USEcsdbGOcreatetableuserinfo(userIdintidentity(10000,1),userNamevarchar(20)notnullunique,passwdvarchar(15)notnull,sexnchar(1)check(sexin("男","女"))default"男"notnull,gradeintdefault1,userOthersntextnull,)参照上述代码,依次建立员工信息表staff、会员信息表VIP、供货商信息表Supplier、商品类型表Type、商品信息表Product、进货信息表ProductIN、进货细节表ProductINDetail、销售信息表Sales、销售细节表SalesDetail、商品退货表ProductBack、商品退货细节表BackDetail、调价记录表ReducePrice等。6.2.3向表中添加数据创建了数据库表后,就可以开始输入数据了。可以通过建立小型超市管理系统后的的各表的输入界面向小型超市管理系统数据库csdb系统添加数据。6.2.4创建约束创建了数据库表后,就可以创建主键约束了。可以通过运行以下代码:ALTERTABLEuserinfoADDCONSTAINTPK_userinfoPRIMARYKEYCLUSTERED(userId)GO创建外键约束了。进货信息表ProuductIN的userinfo与用户信息表文件userinfo的userId互为参照关系,可以通过运行以下代码,创建外键约束。USEcsdbGoALTERTABLEProductINADDCONSTAINTFK_userId42 FOREIGNKEY(userId)REFERENCESuserinfo(userId)GO6.3创建项目6.3.1创建南松行超市管理系统的项目csglxt在建立了数据库后,就可以创建小型超市管理系统的项目文件了。首先启动MyEclipse,创建项目文件名为csglxt。6.3.2创建超市管理系统中的各个模块本系统包含如下几个模块:ConnDB提供程序中需要的数据连接模块StaffBeanBO提供职员信息管理模块SupplierBeanBO提供供货商信息管理模块VIPBeanBO提供会员信息管理模块ProuductBeanBO提供商品信息管理模块ProuductINBeanBO提供进货信息管理模块SalesBeanBO提供销售信息管理模块ProuductBackBeanBO提供退货信息管理模块ReducePriceBeanBO提供调价信息管理模块6.4系统主界面及登录窗体的设计实现6.4.1登录界面和主界面启动超市管理系统后,首先进入用户登录界面,如图6-1。此时,输入用户名及密码后,如果单击取消按钮,将清除用户名和密码等待下一次输入;如果单击“登录”按钮,系统进行用户名和密码查询,如果输入错误,则会在页面提示:“您输入的密码或账号有误,请正确输入!”如果输入无误,分别进入主界面。42 图6-1登录界面6.4.2主界面在输入用户名和密码后,系统查找用户登录编号信息文件,根据不同用户权限进入不同界面。如果用户不属于收银员级别则进入主界面,如图6-2;如果属于收银员级别,则进入收银台界面,如图6-3。在主界面中单击不同的菜单项,则打开不同的菜单。如在主界面中单击“进货管理”则打开进货管理菜单;在主界面中单击“销售管理”则打开销售管理菜单……图6-2主界面42 图6-3前台收银界面6.4.3修改个人信息界面成功登录系统后,点击顶部右上角的“个人设置”即可修改个人信息。如图6-4所示:图6-4修改个人信息界面在这个页面上可进行个人信息的修改,单击“提交”按钮后便可完成修改。6.4.4进货管理界面单击“货物管理”菜单下子菜单“进货管理”即可进行对进货信息的添加、修改、删除、查找。单击“批量添加”后打开“批量添加”页面,然后单击“浏览”按钮选择要导入的数据的路径,接着单击“导入”按钮即可完成批量导入;若选择“返回”按钮,则返回原先页面不做任何操作。如图6-5所示:图6-5进货批量添加界面42 6.4.5员工信息管理界面单击“基本信息管理”菜单下子菜单“职员信息管理”即可进行对职员信息的添加、修改、删除、查找。单击“删除”后打开“删除员工”对话框,若选择“确定”按钮后,所选中数据将从数据库中删除;若选择“取消”按钮,则不做任何操作。如图6-6所示:图6-6员工管理界面6.4.6生成报表单击基本信息菜单的“报表统计”可进入“报表统计”界面。在这个页面上可进行商品信息的查询、统计和生成报表,在选择了字段和条件以后,自动生成浏览窗口,然后点击报表按钮,自动生成报表,如图6-7所示:图6-7销售报表统计6.5系统主要代码6.5.1数据库连接函数代码42 publicclassConnDB{privateConnectionct=null;publicConnectiongetConn(){try{Class.forName("net.sourceforge.jtds.jdbc.Driver");Stringurl="jdbc:jtds:sqlserver://localhost:1433;databaseName=csdb";Stringuser="sa";Stringpassword="123456";ct=DriverManager.getConnection(url,user,password);}catch(Exceptione){e.printStackTrace();}returnct;}}6.5.2登录代码当用户单击登陆窗口的“登录”按钮时触发LoginCLServlet事件,代码为:publicclassLoginCLServletextendsHttpServlet{publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{response.setContentType("text/html");response.setCharacterEncoding("gb2312");request.setCharacterEncoding("gb2312");PrintWriterout=response.getWriter();//接收用户名和密码,完成对用户的验证Stringu=request.getParameter("userName");Stringp=request.getParameter("passwd");//调用userbeanbo的方法,完成对用户的验证UserBeanBOubb=newUserBeanBO();intuserid=ubb.checkUser(u,p);if(userid!=-1){//经过验证后返回userid,调用userbeanbo返回userbeanUserBeanub=ubb.getUserInfoByUserId(userid);intgrade=ub.getGrade();intuserId=ub.getUserId();42 //将用户名,用户id,权限放入session,以备后用request.getSession().setAttribute("myName",u);request.getSession().setAttribute("userId",userId);request.getSession().setAttribute("grade",grade);//转发.效率高,同时request中的对象还可以在下一页面使用request.getRequestDispatcher("main.jsp").forward(request,response);}else{//不合法Stringerr="k";request.setAttribute("err",err);request.getRequestDispatcher("index.jsp").forward(request,response);}}publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{this.doGet(request,response);}}6.5.3导出报表到excel代码把报表导出到excel主要调用的函数,代码如下:publicvoiddown(OutputStreamout,Stringsql){try{HSSFWorkbookwb=newHSSFWorkbook();HSSFSheetsheet=wb.createSheet("销售单信息页");Listbooks=this.getData(sql);createHead(wb,sheet);//设置填充样式HSSFCellStylestyle=wb.createCellStyle();style.setDataFormat(HSSFDataFormat.getBuiltinFormat("yyyy-MM-dd"));for(inti=0;i