中小型超市管理系统设计_第1页
中小型超市管理系统设计_第2页
中小型超市管理系统设计_第3页
中小型超市管理系统设计_第4页
中小型超市管理系统设计_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、M)KlHWtXr£H汽次、TE(HNICU.IVVERSll、MINGUEELLE(逐本科毕业设计论文题目中小型超市管理系统前台设计与实现专业名称计算机信息与技术学生姓名蒲少龙指导教师姚群毕业时间2012.06毕业任务书一、题目:中小型超市管理系统前台设计与实现二、指导思想和目的要求:1 .指导学生综合运用所学的基础理论知识和专业技术知识分析和解决科研开发工作中的实际问题,培养学生的研发能力;2 .学习和掌握利用各种资料、知识分析和解决实际问题的思路及方法;3 .了解和掌握超市管理系统特点,学习超市系统相关内容模块;4 .通过实践,学习JAVA®程语言,掌握常用的编程技能

2、,理解JAVAMySQL等概念并能具体应用。5 .通过这次毕业设计,让我能够了解开发一个软件产品所要经历的基本过程,掌握软件开发过程中的设计方法,实现方法以及测试方法,并最终能够提供一个有实用的软件产品。三、主要技术指标:1 .使用JAVA提供的控件与数据库结合,可方便快速的开发信息管理系统2 .MySQ在该平台中的应用:创建数据库时如何建立和存取数据。四、进度与要求:1 .第1周:了解毕业设计任务和熟悉开发环境,准备相关资料;2 .第2周:设计基本方案、分析论证;3 .第3周第6周:设计方案研制开发;4 .第7周:中期检查;5 .第8周第9周:系统调试/验证、修改和完善;6 .第10周第11

3、周:毕业设计论文及其相关技术资料文档的整理;7 .第12周第14周:准备毕业设计(论文)答辩,成果演示、验收。五、主要参考书及参考资料:11.张孝祥,徐明华,单兴华著.Java基础与案例开发详解.北京:清华大学出版社.2009年9月21埃克尔著.Java编程思想.北京:机械工业出版社.2007年6月【3L卢瀚,王春斌著.JavaWebFF发实战1200例.北京:清华大学出版社.2011年1月41王志刚,江友华著.MySQL高效编程.北京:人民邮电出版社.2005年7月【5】.WattsS.Humphrey著.软件工程规范.北京:清华大学出版社.2006年8月61.席国庆著.深入体验Java项目

4、开发.北京:清华大学出版社.2011年7月71毕庶伟著.管理信息系统分析与设计.北京:机械工业出版社.1992年81.张基温著.信息系统开发案例.北京:清华大学出版社.1999年【9】.(美)PaulC.Jorgensen著.软件测试.北京:机械工业出版社.2009年3月学生指导老师院(系)主任摘要随着科学技术的飞速发展,计算机在日常生活中应用越来越普及,利用计算机实现超市的管理系统已迫在眉睫。当超市发展到一定规模时,传统的常规管理、收银系统显然已经不能满足发展的需要,所以如何实现规范化,标准化的管理系统来提高超市的管理效率,就成为了一个新课题。21世纪是网络经济,电子商务信息化的天下,所以对

5、于中小型超市开发一款经济、实用的管理软件是很有必要的。超市管理系统是市场上很流行的,在超市中最常用的一款软件,它主要包含以下几个模块:系统管理员的设定,数据的录入和删除,数据的汇总和查询,进货和退货管理模块、销售模块、库存模块、人事管理模块、系统模块等,实现了对超市人员,超市商品等各个方面全面、及时、动态的管理。可以有效的利用最少的资源将整个超市联系成为一个整体。随着计算机网络技术以及数据库技术的迅速发展,管理信息系统得到了广泛应用。通过周密的设计,健壮的程序,可以将原本需要很多人力的事情,简化到一台PC机就可以完成,最大限度的降低了成本,同时也避免了错误,因此一个自动化的超市货品管理系统的开

6、发非常必要。在此次系统的开发过程中,我主要负责超市前台的制作与实现。超市前台系统包括整体设计的框架,各模块的位置和功能,前台与后台的切换方式,数据库的设计和后台样式的设计等工作。此次系统的设计我经过分析与考察之后,决定采用C/S即Client/server(客户机/服务器)结构,通过将任务合理分配到Client端和Server端,降低了系统的通讯开销,从而节省了成本。当然服务器方面的设计我现在还力不能及的,但是相信以后通过学习之后一定可以实现。关键词:管理系统,数据库ABSTRACTWiththerapiddevelopmentofscienceandtechnology,computerap

7、plicationindailylifeisbecomingincreasinglypopular;theuseofcomputersupermarketmanagementsystemisimminent.Whenthesupermarketdevelopmenttoacertainsize,theconventionalmanagement,cashregistersystemsapparentlycannotmeettheneedsofthedevelopment,sohowtoachievestandardization,standardizationofmanagementsyste

8、mstoimprovethemanagementefficiencyofthesupermarkethasbecomeanewtopic.The21stcenturyisthenetworkeconomy,e-commerceinformationtechnologyworld,soforsmallandmedium-sizedsupermarkettodevelopeconomical,practicalmanagementsoftwareisnecessary.Supermarketmanagementsystemisverypopularonthemarket,themostcommon

9、lyusedpieceofsoftwareinthesupermarket,itmainlycontainsthefollowingmodules:systemadministratorsetting,dataentry,anddeletedataaggregationandquery,purchase,andreturnmanagementmodule,salesmodule,inventorymodule,personnelmanagementmodule,thesystemmodule,supermarketstaff,supermarketgoodscomprehensive,time

10、lyanddynamicmanagement.CaneffectivelyusetheleastresourcestothesupermarketlinkedintoanoverallWiththerapiddevelopmentofcomputernetworktechnologyanddatabasetechnology,managementinformationsystemshavebeenwidelyapplied.Throughcarefuldesign,robustprocedures,whichrequirealotofhumanthings,reducedtoasinglePC

11、canbecompleted,reducecosts,butalsotoavoidanerror,anautomatedsupermarketgoodsmanagementsystemthedevelopmentisverynecessary.Inthesystemdevelopmentprocess,Iamresponsiblefortheproductionofthesupermarketfront.Supermarketfrontsystemincludingtheframeworkoftheoveralldesign,locationandfunctionofeachmodule,fo

12、regroundandbackgroundoftheswitchingmode,databasedesignandback-officestyledesign.Thedesignofthesystemafteranalysisandstudy,IdecidedtousetheC/SClient/Server(Client/Server)structure,thetasksassignedtotheClientsideandServerside,toreducethecommunicationoverheadofthesystem,thussavingcosts.Ofcourse,server-

13、sidedesignalsoforcecannotandIbelievethefuturebylearningafteracertaincanbeachievedKeywords:Managementsystem,Database摘要IABSTRAC.TII第1章概述11.1 超市系统的开发背景和意义11.2 本系统的开发目的和内容21.3 国内外超市管理系统的发展2第2章开发环境和相关技术介绍42.1 Java开发工具42.1.1 Java简介42.1.2 Java的特点52.2 开发环境运行平台eclipse简介62.3 数据库MySQL62.3.1 数据库MySQI®介62.3

14、.2 数据库MySQL勺特点7第3章需求分析83.1 需求分析83.2 模块分析83.3 数据库分析93.4 可行性分析93.4.1 技术可行性93.4.2 操作可行性10第4章总体设计114.1 系统目标设计114.2 系统功能模块设计114.3 系统数据库设计124.3.1 数据库总体设计124.3.2 后台数据库与前台连接13第5章详细设计155.1 超市界面设计155.1.1 超市前台界面155.1.2 超市后台界面175.2 商品管理设计195.3 交易管理设计235.4 会员管理设计265.5 后台接口设计27第6章软件测试286.1 软件测试的目标286.2 软件测试的准则286

15、.3 软件测试的方法296.4 软件测试296.4.1 模块测试296.4.2 集成测试296.4.3 验收测试306.4.4 平行运行306.4.5 具体测试过程316.4.6 测试结论33结论34致谢36参考文献37毕业设计小结38第1章概述1.1 超市系统的开发背景和意义二十一世纪人类已进入到了一个高速发展的信息时代。社会的高度信息化要求各企事业单位不停的提高信息管理技术以适应社会的发展。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。特别是Internet技术的推广和信息高速公路的建立,使IT产业在市场竞争中

16、越发显示出其独特的优势,步入信息化时代,有巨大的数据信息等待加工处理和传输,这使得对书数据库的进一步开发和利用显得尤为迫切。作为国内市场的一些中小型超市,它们在信息化过程中的步伐要落后于大中型超市,而对于这些企业的资源管理,信息的存储和处理也显得迫切需要,要适应市场竞争,就需要有高效的处理方式和管理方法,因此加快超市的信息化进程是必可少的。我国超市形成在20世纪90年代初期,现在已经成为我国零售业的一种重要形态,为国民经济的发展发挥了重要的作用。随着超市高速的发展,其经营管理也变得愈加复杂,早期的售货员站柜台的形式早已不能满足现有销售也的发展,这样就迫切地需要引入新的管理技术。但在目前状况下,

17、大型超市早已使用优良的管理软件,但中小型超市仍存在落后的一面,如:不能有效地管理每种商品,收款结算速度慢,容易出现营业差错,不宜进行商品调价,盘点效率低等,经济形态的高速发展,使超市经营管理也变得愈加复杂,日常所需要处理的数据量也逐渐增大,商业运转的中间环节也越来越多,原始的人工管理已无法应对这复杂的市场。依靠现代化的计算机信息处理技术来管理超市,从而节省了大量的人力、物力,改善了员工的工作条件,减轻了劳动强度,并且能够准确快速反映出商品的进、销、存等状况和各种反馈信息分析,使管理人员快速对市场的变化做出相应的决策,加快超市经营管理效率并且降低了超市日常成本。本设计运用MySQ散据库设计软件与

18、eclipse软件设计了一个中小型超市管理系统。使用该软件。超市管理人员可以对超市的各种情况进行管理,像货物的出纳,进货,卖货,退货,人员的调配等进行管理。而且本系统只要会懂得一点的电脑知识就能很快的上手,不存在一些岗前培训什么的,方便用户使用。在计算机日益普及,软硬件迅速发展的当今社会上,用户使用计算机来管理强大的数据信息,不失是节省人力和时间的良策。1.2 本系统的开发目的和内容1) 目的目前市面上流行的管理管理系统不少。但是对于中小型来说,不需要大型的数据库系统。只需要一个操作方便,功能实用,能满足本超市对数据的管理及需求的系统。我们的目标就是在于开发一个功能实用、操作方便,简单明了的超

19、市管理系统。2)内容本系统是根据超市管理系统模块进行功能分析和设计得出的。可以满足中小型超市管理、销售的需求。可以帮助超市提高工作效率,降低日常成本,实现超市管理的系统化、规范化和自动化。开发一个功能实用、操作方便,简单明了的超市管理系统。能够录入商品的基本资料,在操作上能够完成诸如添加、修改、删除、按各种条件进行查询和销售,管理员和会员的设置及密码修改等方面的工作,基本满足日常业务的需要。1.3 国内外超市管理系统的发展由于国外超市的信息化建设方面起步较早,加上资金、技术等方面的诸多优势,使得国外超市的管理系统实施成功率较高,也取得了显著的经济和社会效益,在超市管理的基础理论研究方面也取得了

20、相当大的成就。我国自80年代开始,才着手开发和应用管理系统,尽管经过了国内许多研究单位和企业的共同努力,使我国在超市管理系统建设方面取得了很大成功,但是由于多方面因素的制约,我们国家和国外的差距还是比较大的精选范本 , 供参考!第2章开发环境和相关技术介绍本系统的开发应用了MySQ创建数据库,并在eclipse环境下主要应用Java编程语言实现各项功能及对数据库的操作。在本章以下的各节将依次对Java、eclipse及MySQ激据库和技术进行简单介绍。2.1 Java开发工具2.1.1 Java简介Java它最初被命名为Oak,目标设定在家用电器等小型系统的编程语言,来解决诸如电视机、电话、闹

21、钟、烤面包机等家用电器的控制和通讯问题。由于这些智能化家电的市场需求没有预期的高,Sun放弃了该项计划。就在Oak几近失败之时,随着互联网的发展,Sun看到了Oak在计算机网络上的广阔应用前景,于是改造了Oak,以“Java”的名称正式发布。Java编程语言的风格十分接近GC+胡言。Java是一个纯的面向对象的程序设计语言,它继承了C+语言面向对象技术的核心,Java舍弃了C+语言中容易引起错误的指针(以引用取代)、运算符重载(operatoroverloading)、多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。

22、在JavaSE1.5版本中,Java又引入了泛型编程(GenericProgramming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。Java不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码,从而实现了“一次编译、到处执行”的跨平台特性。不过,每次的编译执行需要消耗一定的时间,这同时也在一定程度上降低了Java程序的运行效率。但在J2SE1.4.2发布后,Java的执行速度有了大幅提升。与传统程序不同,Sun公司在推出Java之际就将其作为一种开放的技术。全球数以万计的Java开

23、发公司被要求所设计的Java软件必须相互兼容。“Java语言靠群体的力量而非公司的力量”是Sun公司的口号之一,并获得了广大软件开发商的认同。这与微软公司所倡导的注重精英和封闭式的模式完全不同。Sun公司对Java编程语言的解释是:Java编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言。2.1.2 Java的特点1) 平台无关性平台无关性是指Java能运行于不同的平台。Java引进虚拟机原理,并运行于虚拟机,实现不同平台的Java接口之间。使用Java编写的程序能在世界范围内共享。Java的数据类型与机器无关,Java虚拟机(JavaVir

24、tualMachine)是建立在硬件和操作系统之上,实现Java二进制代码的解释执行功能,提供于不同平台的接口的。2) 面向对象的程序设计Java吸取了C+0向对象的概念,将数据封装于类中,利用类的优点,实现了程序的简洁性和便于维护性。类的封装性、继承性等有关对象的特性,使程序代码只需一次编译,然后通过上述特性反复利用。程序员只需把主要精力用在类和接口的设计和应用上。Java提供了众多的一般对象的类,通过继承即可以使用父类的方法。在Java中,类的继承关系是单一的非多重的,一个子类中只有一个父类,子类的父类又有一个父类。Java提供的Object类及其子类的继承关系如同一棵倒立的树形,根类为O

25、bject类,Object类功能强大,经常会使用到它及其它派生的子类。3) 健壮性Java致力于检查程序在编译和运行时的错误。类型检查帮助检查出许多开发早期出现的错误。Java自己操纵内存减少了内存出错的可能性。Java还实现了真数组,避免了覆盖数据的可能,这些功能特征大大提高了开发Java应用程序的周期。并且Java还提供了Null指针检测、数组边界检测、异常出口、Bytecode校验等功能。2.2 开发环境运行平台eclipse简介Eclipse是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse附

26、带了一个标准的插件集,包括Java开发工具(JavaDevelopmentKit,JDK)。虽然大多数用户很乐于将Eclipse当作Java集成开发环境(IDE)来使用,但Eclipse的目标却不仅限于此。Eclipse还包括插件开发环境(Plug-inDevelopmentEnvironment,PDE),这个组件主要针对希望扩展Eclipse的软件开发人员,因为它允许他们构建与Eclipse环境无缝集成的工具。由于Eclipse中的每样东西都是插件,对于给Eclipse提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。这种平等和一致性并不仅限于Ja

27、va开发工具。尽管Eclipse是使用Java语言开发的,但它的用途并不限于Java语言;例如,支持诸如C/C+和COBOL等编程语言的插件已经可用,或预计将会推出。Eclipse框架还可用来作为与软件开发无关的其他应用程序类型的基础,比如内容管理系统。基于Eclipse的应用程序的一个突出例子是IBM®Rational®SoftwareArchitect,它构成了IBMJava开发工具系列的基础。2.3 数据库MySQL2.3.1 数据库MySQI®介MySQ是一种开放源代码的关系型数据库管理系统(RDBMSMySQ散据库系统使用最常用的数据库管理语

28、言-结构化查询语言(SQL)进行数据库管理。由于MySQLI开放源代码的,因此任何人都可以在GeneralPublicLicense的许可下下载并根据个性化的需要对其进行修改。MySQL因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。MySQL个名字,起源不是很明确。一个比较有影响的说法是,基本指南和大量的库和工具带有前缀“my已经有10年以上,而且不管怎样,MySQAB创始人之一的MontyWidenius的女儿也叫My。这两个到底是哪一个给出了MySQL这个名字至今依然是个迷,包括开发者在内也不知道。MySQL的海豚标志的名字

29、叫“sakila",它是由MySQAB的创始人从用户在“海豚命名”的竞赛中建议的大量的名字表中选出的。获胜的名字是由来自非洲斯威士兰的开源软件开发者。2.3.2 数据库MySQL勺特点1)使用C和C+魏写,并使用了多种编译器进行测试,保证源代码的可移植性。2)支持AIX、FreeBSD、HP-UX、Linux、MacOS、NovellNetware、OpenBS、DOS/2Wrap、Solaris、Windows等多种操作系统。3)为多种编程语言提供了API。这些编程语言包括C、C+.Eiffel、Java、Perl、PHPPython、Ruby和Tcl等。4)支持多线程,充分利用C

30、PUS源。5)优化的SQL查询算法,有效地提高查询速度。6)既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的GB2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名。7)提供TCP/IP、ODB丽JDBC?多种数据库连接途径。8)提供用于管理、检查、优化数据库操作的管理工具。9)可以处理拥有上千万条记录的大型数据库。第3章需求分析3.1 需求分析由于本系统设计是针对中小型超市,因此在设计之初,要对超市的需求目的经行分析,中小型超市实现系统智能化,就是解决一件商品从进入本超市的仓库到销售完成之后

31、整个过程的智能化。一件商品在销售的过程中应该包括标准化信息入库、上架、销售、售后四方面的问题。由于需要实现需求分析中的若干问题,所以我应该从商品销售的三个大环节中进行功能分析。进货环节解决的主要问题就是,在进货之初,因对货物进行系统编号,以便在销售过程中实现统一管理。通过某种商品它在本超市的显存货数量,销售综合能力的分析得出需进货的数量(此功能在现阶段由于本人知识水平所限,无法在此系统中实现)。销售环节要做到根据商品编号,显示商品信息,包括商品名称、规格、单位、售价、折扣信息。当然在销售过程中还要实现对预付款的找零计算,交易撤销等功能。会员环节主要解决的问题就是通过给予会员一个编号,然后在以后

32、的商品交易过程中,通过此编号,自动识别会员级别,以及该级别下的会员折扣价格。3.2 模块分析由于需要实现系统需求分析中的若干功能,所以在设计该系统时,我决定建立四大模块来一一实现以上功能。销售管理模块:超市前台售货系统是提供给柜员实际操作的前台界面,在此界面下,必须包括货物的所有信息以及在销售过程中的若干操作。仓库模块:仓库管理中应该包含商品的入库、出库时间,商品编号,商品数量,进货价格以及客户的退货信息等。用户管理模块:用户管理中应该包含会员管理、管理员管理、普通柜员三级别操作权限。信息查询模块:信息查询中,可以完成查询商品存货数量,商品信息等功能。3.3 数据库分析根据模块分析中的系统五大

33、模块,在建立数据库时应该包含6张表来实现。user:用户信息表:此表完成会员、管理员、柜员区分。各人员名称、卡号、密码、权限等设置。marchandise:商品信息表:此表中应包含商品编号、类别、条形码、进货价等。payinfo:付款信息表:此表中应该包括货币种类、付款方式、付款金额。日期等。b_stock:进出库信息表:此表中应包含商品的仓库编号、进货时间、进货价格、进货数量等。e_stock:进退货信息表:此表中应该有进出库ID号、存货数量、下单数量、进货价格、出仓日期等。sale:销售信息表:此表中应该有销售ID号、销售日期、数量、价格、折扣率等。3.4 可行性分析3.4.1 技术可行性

34、根据新系统目标来衡量所需的技术是否具备,一般可从硬件、软件的性能要求、环境条件、技术人员水平和数量等方面去考虑和分析,其中开发人员的技术力量应首先考虑能力与水平,并考虑近期内可以培养和发展的技术人员。3.4.2 操作可行性对新系统运行后给现行系统带来的影响(包括组织机构、管理方式、工作环境等)和后果进行估计和评价。同时还应考虑现有管理人员的培训、补充,分析在给定时间里能否完成预定的系统开发任务等。按上述两方面进行可行性分析、研究后,我们认为该项目是可行的。第4章总体设计4.1 系统目标设计本系统是实现对超市的管理,商品出入仓库情况的记录,商品编号、规格、数量售价、折扣情况的记录,还有会员信息统

35、计、会员折扣。前台系统记录了货物的具体销售情况,后台系统记录了会员信息,管理员信息,货物出入仓、调整折扣的信息。1) 超市收银终端系统启动会有一个收银界面,将商品的所有信息,经行录入,商品交易时商品信息一目了然,自动找零系统,对于付款经行计算。2) 后台终端前台界面右下角有后台终端按钮,通过此处可输入管理员账号和密码登陆后台,经行商品信息修改、会员信息录入、折扣修改、价格修改等。4.2 系统功能模块设计开发这个系统的目的就是帮助超市管理提高工作效率,实现超市管理的系统化、规范化和自动化。根据这个系统所要实现的目的和任务,总结出这个系统最终实现的主要功能如下:1) 商品信息管理模块:商品上架时对

36、商品信息进行录入,销售过程中商品编码查询、商品信息显示,商品存货量显示等。2) 销售管理模块:提示需付金额,根据预付金额计算找零,撤销交易。3) 用户管理模块:通过用户种类区分权限,给会员查询会员编号,计算会员折扣4) 仓库管理模块:商品进入仓库进行管理,比如进入几号仓库等,商品出仓上架时对商品进行编号。根据上述对系统的功能模块的划分,得到如图4-1所示的功能模块图。精选范本 , 供参考!中小型超市管理系商品信息管理模块销售管理模块仓库管理模块用户管理模块查询会员撤销交易图4-1系统功能模块图4.3 系统数据库设计4.3.1 数据库总体设计6张表就可以完成整个超市管理系根据整体对超市管理系统的

37、分析,整个系统数据库中应该有6张表,在每张表中应有一个与其他表联系的主键。通过以下统的前后台连接,完成整个需求分析中的所有功能。user:用户信息表<用户ID、用户名、卡号、密码、办卡日期、用户类别、期限、积分、折扣>marchandise:商品信息表<序列号、商品编号、条码、类别编码、商品名称、零售价、商品规格、单位、进货价、保质期、备注>payinfo:付款信息表<单号、供货商、货币、付款金额、付款方式、支票号、日期、经手人、制单人>b_stock:进出库信息表<仓库编号、商品编号、商品名称、数量、价格、时间、进货价、类别、制单人>e_sto

38、ck:进退货信息表<进出库ID号、库存数量、下单数量、进货价、出货日期、库存编号、备注、进出库标志、下单人>sale:销售信息表<销售ID号、商品ID、销售日期、数量、价格折扣、VIP号、商品名称>4.3.2 后台数据库与前台连接添加Business类,用于实现和数据库的连接。在执行任何操作前都要调用此方法与数据库进行连接。在执行任何访问数据库的操作后,在调用该类实例对象的close()方法来断开数据库的连接。具体代码如下:importjava.sql.*;publicclassBusinessprivatestaticfinalStringDRIVER="c

39、om.mysql.jdbc.Driver"privatestaticfinalStringURL="jdbc:mysql:/localhost:3306/cs"privatestaticfinalStringuser="root"privatestaticfinalStringpass="0000"publicstaticConnectiongetConnection()Connectionconn=nulltryClass.forName(DRIVER);pass);conn=DriverManager.getConnec

40、tion(URL,user,catch(Exceptione)e.printStackTrace();returnconn;精选范本 , 供参考!第5章详细设计5.1超市界面设计5.1.1超市前台界面系统框架设计工作是整个项目的基础,框架设计的好与坏直接关系到后面的开发,与项目的成败关系重大。通过对整体需求的分析和软件设计的美观全面对考虑,程序一开始应该是超市收银系统。如图5-1所示,终端界面包括位于界面中间的表格展示销售商品信息。第二位于上方和下方的信息输入框,供收银员采用手工输入商品编号,会员卡信息等,第三位于界面右边的“后台终端”按纽,此功能主要真对系统管理员设定,对超市后台数据库进行维

41、护。在此前台界面中,顾客和柜员都可以很清楚的看到商品的所有信息,并且对于柜员的操作简单明了,在此界面中的数量输入框、预付金额采用了键盘按下事件数,当你改变数量然后按“enter”键,就可以在顶端的应付金额中显示金额。交易取消、撤销商品以及后台终端都采用Button按钮,当你需要修改交易时,点击鼠标左键可完成操作。精选范本 , 供参考!主界面是整个系统的核心,它连接着整体通往各个模块。所以要将各个功能模块的窗体加入主界面中。同时要考虑超市的特性,在界面布局上将就究合理布局,快捷操作。因此在整个主界面加入整个系统的入口函数Main(),通过执行该方法执行整个系统。如下代码所示importjava.

42、awt.Toolkit;publicclassMainbooleanpackFrame=false;publicMain()MainFrameframe=newMainFrame();if(packFrame)frame.pack();elseframe.validate();DimensionscSizeToolkit.getDefaultToolkit().getScreenSize();DimensionfSize=frame.getSize();if(fSize.height>scSize.height)fSize.height=scSize.height;if(fSize.wi

43、dth>scSize.width)fSize.width=scSize.width;frame.setLocation(scSize.width-fSize.width)/2,(scSize.height-fSize.height)/2);frame.setVisible(false);publicstaticvoidmain(Stringargs)SwingUtilities.invokeLater(newRunnable()publicvoidrun()tryUIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassNam

44、e();catch(Exceptionexception)exception.printStackTrace();newMain();salevendition=newsale();vendition.setVisible(true);vendition.setTitle("超市收银终端"););5.1.2超市后台界面超市管理系统后台界面是管理员操作的界面如图5-2,在后台界面中,顶端是五大模块菜单,在界面左边是树形框,包含了销售清单、浏览仓库、用户管理、信息查询和商品管理菜单。每个菜单都有二级界面。图 5-4 商品入库信息表当你在后台界面中,单击采购菜单时,如图5-3所示

45、,在此界面下,你可以将商品的所有信息进行录入、重置、删除操作。图5-3商品信息录入界面当你在单击仓库菜单的时候,如图5-4所示,在此界面下,可以完成商品的入库时间、仓库号、商品编号、数量、总额、进货价、经办人,进行信息录入。当你单击销售清单下的销售统计时,如图5-5所示,在此菜单下,对商品进行汇总。图5-5销售明细查询表5.2 商品管理设计输入商品编号和数量后,单击“enter”按钮,就会在正中央显示此次交易的精选范本 , 供参考!商品所有信息,如图5-6所示图5-6商品信息界面完成此项功能的具体代码如下:if(meet.getText().length()=0)JOptionPane.sho

46、wMessageDialog(this,"商品编号不能为空"错误",JOptionPane.ERROR_MESSAGEreturn;if(advance.getText().length()=0)JOptionPane.showMessageDialog(this,”商品数量不能为空"错误",JOptionPane.ERROR_MESSAGEreturn;colnames.removeAllElements();colnames.add("商品编码");colnames.add("商品名称"丫colnam

47、es.add("规格");colnames.add("单位")colnames.add("数量");colnames.add("售价")colnames.add("折扣");colnames.add("金额")intt=(int)e.getKeyChar();if(t=10)Vectorcolnames2=newVector();Vectorcolnames3=newVector();Vectorcolnames5=newVector();colnames2=find_goo

48、ds_info.Select_sort2(meet.getText();colnames3=(Vector)colnames2.get(0);if(jTextField6.getText().length()=0)back.setText(colnames3.get(4).toString();if(colnames3.size()=0)JOptionPane.showMessageDialog(this,"无此商品","错误JOptionPane.ERROR_MESSAGEreturn;colnames5.add(colnames3.get(0);colname

49、s5.add(colnames3.get(3);colnames5.add(colnames3.get(5);colnames5.add(colnames3.get(6);colnames5.add(advance.getText();colnames5.add(colnames3.get(4);colnames5.add(jTextField4.getText();tryIntegernumberl=newInteger(advance.getText();Doublenumber2=newDouble(back.getText();Doublenumber3=newDouble(jText

50、Field4.getText();doublemoney=(int)(number1*number2*number3)/100.0;DoubleMoney=newDouble(money);colnames5.add(Money.toString();colnames4.add(colnames5);jTablel=Mytable.maketable(colnames4,colnames);jScrollPanel.getViewport().add(jTablel);intnum=0;doublePayment=0;while(num<colnames4.size()Vectorall

51、Money=newVector();allMoney=(Vector)colnames4.get(num);DoubleallMoneyl=newDouble(allMoney.get.toString();Payment+=allMoneyl;num+;DoublePaymentAll=newDouble(Payment);jLabel6.setText(PaymentAll.toString();catch(Exceptionex)JOptionPane.showMessageDialog(this,"输入的数量不正确","错误",JOptionPa

52、ne.ERROR_MESSA;GE精选范本,供参考!5.3 交易管理设计当需要完成一次商品交易的时候,需要根据顾客所需商品的数量和单价计算出总额,然后系统给定一个判断,当付款金额不足的时候会提示“输入金额不足”,当预付金额大于等于需付金额的时候会完成此次交易。具体操作如图5-7和5-8所示:5-7输入金额不足提示5-8成功交易提示完成此功能的具体代码为:intt=(int)e.getKeyChar();if(t=10)tryDoublegather=newDouble(jTextField5.getText();doublegathering=(int)(gather*100)/100.0;D

53、oubleaccount=newDouble(jLabel6.getText();doublegivechange=(int)(gathering-account)*100)100.0;if(givechange<0)JOptionPane.showMessageDialog(this,"输入的金额不足","错误",JOptionPane.ERROR_MESS)A;GEreturnDoublegivechange1=newDouble(givechange);jLabel8.setText(givechange1.toString();catch(

54、Exceptionex)JOptionPane.showMessageDialog(this,"输入的金额有误JOptionPane.ERROR_MESSA);GEreturn;new_Dialogsett=newnew_Dialog();sett.setSize(400,300);sett.setLocation(300,250);sett.setVisible(true);精选范本 , 供参考!sett.meet.setText(jLabel6.getText();sett.advance.setText(jTextField5.getText();sett.back.setTe

55、xt(jLabel8.getText();jTextField6.setEditable(true);jTextField6.setText("");intnuml=0;while(num1<colnames4.size()Vectorls=newVector();ls=(Vector)colnames4.get(num1);Integernumber=newInteger(ls.get(4).toString();DoublePrice=newDouble(ls.get(5).toString();Update_Data.out_StockPile(number,l

56、s.get(0).toString();Insert_goods.Insert_Sale(ls.get(0).toString(),jLabel11.getText(),number,Price,ls.get(6).toString(),jTextField6.getText(),ls.get(1).toString();num1+;meet.setText("");advance.setText("1");colnames4.removeAllElements();jTable1=Mytable.maketable(colnames4,colnames);jScrollPane1.getViewport().add(jTable1);5.4会员管理设计主界面中有会员卡号一栏,只需要在会员卡号中输入会员账号,便可以用会员折扣价购买商品。例如购买001号商品康师傅清茶时,输入会员编号888,就可以以9折及2.25元,购买此商品。如图5-5所示:图5-9会员交易视图实现上述功能代码如下:VectorUse

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论