超收银管理系统的开发与设计(源码)

摘要:21世纪是信息高速发展的时代,电子商务的迅速发展给超市带来商机但同时也使得竞争更加激烈,所以要求超市经营者改变管理模式,提高运营效率。超市收银管理系统的出现可以很好的利用计算机的技术改变以前人工收银速度慢、易出错的缺点,而且可以对采购、销售、库存等多个环节进行管理。基于此现状本系统采用B/S架构并使用功能强大的MyEclipse搭配JDK和Tomcat作为开发环境,利用JSP编程语言对整个系统进行开发与设计实现了利用计算机进行收银操作的功能,并且可以管理超市的各种信息,同时对采购和销售商品的过程进行记录从而实现对商品库存的管理。这个系统用户可以通过浏览器直接访问减少了安装客户端的麻烦,使系统更加方便用户使用。关键字:超市收银管理;JSP;数据库;B/S架构The Supermarket Cashier Management System Development and DesignStudent majoring in computer science and technology GAO ChangTutor YUAN Pei-senAbstract:The 21st century is an era of information with high-speed development. The rapid development of electronic commerce brings to the supermarket business opportunities but at the same time makes the competition more intense, so the supermarket need change the management pattern and improve the efficiency of operations. The appearance of supermarket cashier management system can not only use computer technology to overcome manual cashier slow and error-prone defects, but also to manage stock, inventory, sales,
 *好棒文|www.hbsrm.com +Q: ^3^5^1^9^1^6^0^7^2^* 
and other links. Based on the this situation, this system adopts B/S structure, using JSP programming language to achieve functions and taking advantage of powerful MyEclipse collocation JDK and Tomcat as a platform. This sysytem accomplish the function of cashier operations by using computer, helping the supermarket management a lot of information, as well as recording the process of purchasing and selling goods so as to realize the management of inventory. Users can access the system through the browser directly which saves them from the installation client trouble and makes the system more user-friendly.在计算机技术高速发展的今天,计算机的应用和普及带动了产品结构、经营模式和服务方式等方方面面的改变,计算机网络技术正在越来越多的企业中发挥重要的作用,随着生活水平的提高,人们越来越追求快捷便利的生活方式,超市作为一种新型的零售行业引导人们享受快捷购物的方式,这就要求超市经营者对超市进行科学有效的管理,提高自己的服务速度和服务质量[1]。本系统通过对计算机知识的运用完成了对超市的销售、采购、库存、商品和人员等方面的管理,为经营者提供便利,更有利于经营者的管理。1 选题背景1.1 问题的提出在社会经济高速发展的今天,人们希望拥有更高水平的生活从而促使了生活节奏的加快,因为超市的存在可以满足人们对快节奏生活的需要,所以超市要为人们提供更好的服务。这也就使得超市迅速发展,但是这就会产生一系列的销售管理问题,以往的手工记账人工管理的销售模式已经不能适用于当今社会。如何优化顾客购物体验,加快收银速度减少顾客等待时间,并且经营者也可以对自己超市的货物、员工、供应商、会员等信息进行管理以便自己及时调整经营战略,扩展自己的经营规模是急需解决的问题[2]。目前比较完整的大型超市收银管理系统操作复杂功能多但并不适合小型超市,所以我们需要开发一款操作简单,功能全面的超市收银系统,以供小型超市的经营者使用。1.2 国内外研究状况1.2.1 国外研究状况国外的超市管理系统在信息化高速发展的今天经过不断的竞争和洗礼已形成初步的规范,他们采用先进的物流和信息技术对商品采购、库存、销售进行实时动态管理,而且连锁超市大多都采用MIS系统进行现代化的管理,并与供应商建立长期的供应链关系,为超市的发展提供了有力的后盾[3]。在21世纪国外的大部分超市管理系统已经完善成熟。其中一些发达的国家在收银过程中利用信息化采集、信息处理、信息应用的网络化提高对收银流程的管理[4],提高了自己的管理效率,促进超市的经济发展。1.2.2 国内研究状况目前我国超市一般使用基于C/S架构的POS收银系统,这种系统由前台的客户端直接访问服务器程序,服务器程序查询和操纵后台的SQL数据库并把操作结果返回给程序客户端[5]。超市是劳动密集型服务行业,所有的商品是从供应商处获得,然后再卖给商品的使用者,本身不生产任何商品,只是商品的搬运工[6],要处理好供需关系,为顾客提供优质快捷的服务,超市必须具备经营品种丰富、商品更新速度快、服务态度好等特点。然而一些小型的超市还在使用手工记账,人工清点的方法,这种方法浪费了太多的人力,做不到对销售和库存等方面的合理统计,而且容易出现错误,造成管理混乱的局面。1.3 研究的目的和内容本系统的研究主要是为了帮助超市提高收款速度,同时减少收款时出现的人工的计算错误,使超市的工作更加方便快捷,让客户更加满意超市的服务,也为经营者提供可以查询的方便数据,方便经营者及时掌握经营方向把握销售、采购、库存等多个环节。本系统的主要研究内容就是根据超市收银、采购、销售、库存等方面的流程和具体的细节内容,确定超市收银管理系统的需求,从收银、采购、库存、销售、会员管理、员工管理等多个方面对超市进行管理,提供可以查阅的数据。并提供硬件操作比如扫描枪对商品信息的录入功能和打印机实现的小票打印的功能可以更好的增强用户体验。 开发环境及应用技术2.1 开发环境2.1.1 MyEclipseMyEclipse是在Eclipse的基础上添加自己的插件用于开发Java、JavaEE和移动应用的集成开发环境,是对EclipseIDE的扩展。MyEclipse具有十分强大的功能,支持对各种开放码源产品的编写和其所需要的开发环境。它可以提高数据库和JavaEE在开发、发布和服务器整合方面的工作效率。它还具备对各种语言的在最开始的对系统进行编码的功能,在编码之后可以对编写的代码进行调试,在调试过后进行测试,在最后都确定没有错误之后对编写的代码进行发布以供其他人使用 [7]。MyEclipse包含了目前所有主流开源产品的专属Eclipse开发工具。所以本次的系统的开发我们选择MyEclipse作为开发的首选工具。2.1.2 Tomcat服务器Tomcat是Java小服务程序的容器,而且能对静态页面进行响应。Tomcat由于其开源、性能稳定、技术先进等优势深受中小企业的青睐[8],开发人员在进行开发测试时,也通常会选用Tomcat作为服务器。所以本次程序设计选用Tomcat服务器。2.1.3 数据库SQL Server 2005具有强大的分析工具,允许用户对大量信息进行分类从中提取具有价值的信息让用户可以选择对自己更有利的处理事物的办法,提供更加有利用价值的关键的资源。其中最关键的是SQL Server 2005提供了更加完备的分析处理的功能,并且可以将多个电脑连接起来共同使用,这是对之前的其他版本开发的一个新的功能,它可以实现从服务器端到客户端的跨平台的分析功能 [9]。它还对网页上的数据进行分析,可以通过访问多维数据集和传输超文本协议实现数据分析的功能。这些功能通过互联网上浏览并使用网页功能的用户对数据库的访问可以创造出新的商业利益,并且还可以对可扩展的标记语言进行分析,分析它所包含的信息。并且将数据库访问的数据协议进行扩展,让开发人员可以用任何程序编译语言在各种不同的编译平台上实现它所拥有的功能。综上所述,SQL Server 2005在性能和成本方面具有很多优势所以本项目中决定使用SQL Server 2005作为后台数据库平台。2.2 应用技术2.2.1 JSP技术JSP是一种非静态的网页技术标准,将Java程序段和JSP程序段添加到HTML网页中就可以形成JSP文件,由JSP文件就可以构成JSP网页从而实现其功能 [10]。在HTML文件中加入的Java片段可以实现非静态网页的开发,它具有控制数据库对数据的传输,网页的重新刷新以及对邮件的发送等功能。JSP网页通过服务器对数据库进行访问,执行操作者发出的命令并把所得到的结果在客户端显示出来,让操作者可以看到最终的运行结果,这样大大降低了对浏览器的要求[11]。用JSP开发的Web应用还具有跨平台性可以在包括Linux的多个操作系统上运行。2.2.2 JDBC访问数据库技术Java Database Connectivity(JDBC)是一个Java API,用于执行Java中的SQL语句,极大地方便了Java程序对数据库进行连接和执行等操作,实现了Java和SQL之间的相互访问[12]。JDBC库中的API任务通常有连接数据库、创建查询语句、执行查询语句以及对记录的查看和修改。JDBC访问数据库的原理如图2-1所示。图2-1 JDBC访问数据库的原理图2.3 技术路线 根据系统分析研究其技术路线如图2-2所示。 图2-2技术路线3 系统需求分析3.1 系统总体需求分析在我们在进行系统设计之前要对系统进行需求分析,分析系统需要哪些功能,在对超市经营管理方面进行调查和研究的过程中发现,超市是一个销售商品的媒介,他从供货商那采购商品再把商品销售给顾客,它的日常工作就是对顾客购买的商品进行结账收银操作,同时他也要清楚的知道自己销售商品的种类,商品的库存情况,商品的来源也就是供应商的情况同时超市也应该掌握自己员工的基本信息,还有就是超市为了增加自己的固定客户可以在超市增加办理会员卡的业务,这就需要超市掌握会员的基本信息便于统计。在超市中拥有两个角色一个是收银员负责超市日常的收银工作,对顾客购买的商品进行结账,还有就是管理员角色可以对超市的各种信息进行管理。根据上面的叙述我们可以得到系统的整体的用例图如图3-1。图3-1系统整体用例图3.2 系统功能需求分析在需求分析的时候通过对系统的抽象和汇总可以得到很多系统用例,我们在上一部分已经对系统的整体用例进行介绍,下面我们用自然语言和活动图对用例进行说明。 3.2.1 系统登录功能需求分析在登录系统的时候分为管理员登录和收银员登录,他们进行相同的操作只是拥有的权限并不相同,所以他们的分析可以相同可以合并在一起介绍。在这个功能中系统对操作者输入的信息进行验证,分析他们能否登录系统进行下面的操作。这个功能的用例和活动图用自然语言和活动图展示如图3-2。场景名称:系统登陆。参与者实例:收银员、管理员;前置条件:开启服务器,浏览器可以对服务器进行访问;主事件流:①在相应的文本框填写用户名和密码,选择用户的角色,选择登录键;②系统查看所填写的数据是否与数据库中的数据相匹配并进行登录;③如果成功进行登录就显示对应的系统界面,否则返回原页面;辅事件流:①若用户名或密码其中一个或两个都没有进行填写,就提示请输入用户名或请输入密码。再转入主事件流①;②若用户名和密码还有所选择的角色与数据库中所保存的不一致,提示用户名错误或你输入的密码错误请重新输入。再退回到主事件流①;后置事件:成功登录系统。图3-2系统登录活动图3.2.2 个人信息管理功能需求分析在个人信息修改模块中的系统用例只有修改个人信息这一个用例,所以对这个用例的自然语言描述及活动图,其活动图如图3-3。场景名称:修改个人信息。参与者实例:收银员;前置条件:服务器已开启,浏览器可以访问服务器;主事件流:①收银员对自己的工号、姓名、性别、出生年月、电话、邮箱等基本信息进行修改;②被收银员修改过的个人信息被写入到数据库中;③若信息修改成功就提示修改成功然后返回当前修改过的页面;辅事件流:①若工号,姓名,电话,密码为空,提示不能为空。再转入主事件流①。后置事件:成功地对个人信息进行了修改。图3-3修改个人信息活动图3.2.3 在线收银登记功能需求分析在线收银登记是收银员的日常工作模块,在超市收银管理系统中他具有举足轻重的地位是超市的核心,其场景的语言描述和活动图如下,其活动图如图3-4。场景名称:在线收银登记。参与者实例:收银员;前置条件:开启服务器,浏览器可以对服务器进行访问;主事件流:①收银员填写客户的会员卡号和订单号,购买商品的编号以及数量点击提交按钮; ②系统将顾客购买商品的信息显示在页面上,点击结账,数据被写入数据库中;③选择结账方式,点击支付宝付款或者现金支付,页面跳转到相应的支付方式页面;④点击打印按钮,打印收银小票;辅事件流:①若会员卡号订单号商品编号及数量没有填写,则提示不能为空。再转到主事件流①;②若填写的会员卡号不存在,提示填写的会员卡号错误,再转到主事件流①;③若填写的商品编号不存在,提示填写的商品编号错误,再转到主事件流①;后置事件:结账成功。图3-4在线收银登记活动图3.2.4 修改个人密码功能需求分析修改个人密码属于系统管理管理中的一个用例,这个操作实现了管理员对自己密码的修改操作的过程用自然语言描述和用活动图表示如下。场景名称:修改个人密码。参与者实例:管理员;前置事件:开启服务器,浏览器可以访问服务器;主事件流:①填写未修改前的密码;②先填写一次要修改的密码,再对修改的密码进行再次输入;③选择确认键,系统尝试对密码进行修改;④若成功地进行了修改则提示修改成功的信息并返回原页面;辅事件流:①若未修改前没有进行填写,则提示请输入原密码,返回主事件流①;②若没有填写要修改的密码,则提示输入新密码,返回主事件流①;③如果第一次和第二次填写的新密码不同,则提示两次输入不一致,返回主事件流①;④如果为修改前的密码错误,则提示没有正确地输入原密码,返回主事件流①;后置事件:修改密码成功。图3-5修改个人密码3.2.5 商品销售管理功能需求分析在商品销售模块中分为商品销售记录的添加,对于商品销售记录的查询,还有对某一条销售记录的修改同时也可以对不需要的销售记录进行删除操作,所以这个模块可以抽象出四个不同的用例分别为添加销售记录、查找销售记录、修改销售记录和删除销售记录,对与这些用例我们可以用自然语言进行描述,并画出其活动图。场景名称:添加商品销售记录。参与者实例:管理员;前置条件:开启服务器,浏览器可以对服务器进行访问;主事件流:①选择商品编号;②输入出库数量及单价;③选择会员卡号;④点击提交按钮;辅事件流:①如果商品编号没有填写,提示请输入商品编号,返回主事件流①;②如果商品出库数量为空,提示请输入出库数量,返回主事件流②;③如果商品单价为空,提示请输入商品单价,返回主事件流②;后置事件:成功地对商品销售记录进行了添加。(2)场景名称:商品销售信息查询。参与者实例:管理员;前置条件:开启服务器,浏览器可以对服务器进行访问;主事件流:①在输入框中填写商品编号或商品名称;②选择查询键,查看商品销售记录;后置条件:查询商品销售信息成功。(3)场景名称:商品销售记录修改。参与者实例:管理员;前置条件:开启服务器,浏览器可以对服务器进行访问;主事件流:①修改商品出库数量和价格等相关信息;②系统检查是否可以修改,返回原页面;辅事件流:①如果商品编号、名称、库存、出库数量为空,提示不能为空,返回主事件流①;后置条件:成功地对商品销售信息进行了修改。(4)场景名称:商品销售记录删除。参与者实例:管理员;前置条件:开启服务器,浏览器可以对服务器进行访问;主事件流:①查看销售记录信息;②点击删除按钮;③确定删除,系统删除成功,返回主页;后置事件:删除操作成功。图3-6销售信息管理活动图在本系统中还用一些活动图和销售信息管理的活动图大致相同,主要是完成对自己所管理的信息的增加一条记录或者对已有的记录进行修改,还有就是查看已有的信息和对已有信息的删除的操作,所以就不再一一列举他们的用例和活动图。4 系统设计4.1系统功能设计4.1.1收银员功能模块设计(1)在线收银:在收银员界面中收银员根据顾客购买的商品编号和商品数量进行登记,然后根据顾客所购买的商品自动计算总金额并选择相应的付款方式,支付宝付款或者现金付款并在顾客付款后打印收银小票。(2)个人信息管理:收银员可以对自己的个人信息进行修改操作,比如自己的电话,地址,年龄等,还可以修改自己登录系统的密码。(3)会员管理:收银员可以增加新的会员记录,也可以对现有的会员进行查找操作。(4)信息查询管理:收银员可以查询供货商的信息,也可以查询商品的信息,但对这些信息只有查看的功能没有其他的可操作的选项。根据以上的分析收银员的功能模块图如图4-1所示。图4-1收银员功能模块4.1.2 管理员功能模块设计(1)员工管理:管理员可以对员工的基本信息如工号、姓名、年龄、性别、电话、地址等进行管理。他可以查看员工在系统中登记的信息。在这个登记信息的基础上可以选择修改其中的某一个信息也可以删除整条信息,对于新增加的员工可以在系统中添加他们的信息。(2)供应商管理:在这个功能模块中控制系统的人可以对供应商的姓名、电话、供应商品、地址、联系人等一系列的信息进行添加、修改、查询、删除操作。(3)会员管理:系统在管理员界面中可以对会员的基本资料进行管理,如会员的姓名、电话、地址等信息。提供对会员信息的添加、查询、删除、修改操作。在查询会员信息的基础上还可以通过会员卡号对会员所购买的商品进行查询。(4)销售管理:在这个模块中对系统进行操作的人可以对销售出去的商品进行管理,系统支持管理员对商品销售记录的增加,修改,删除操作还可以对销售记录进行查看,查看销售的商品名称、商品数量、销售商品前的库存量、购买商品的会员等等。(5)采购管理:管理员主要记录采购商品的信息。采购商品的种类、数量、供货商等等,对这些信息可以进行增加,修改,删除,查询操作。(6)库存管理:系统根据采购和销售的数量对库存的数量进行计算统计出库存结果,在商品的库存数量小于30时提出库存警报。其库存数量的值标记为红色。(7)商品管理:管理员可以对出售的物品的所属分类、编号、名称、价格、图片等信息进行管理可以在系统中加入一条新的商品信息也修改原有的商品信息还可以对不需要的信息进行删除操作。并且可以对商品信息进行查询。而收银员只能对商品的信息进行查询。(8)数据备份:对数据库中的所有信息再重新备份到指定的路径中进行保存,以便以后的使用和查询。(9)系统用户管理:超级管理员可以增加系统管理员的数量,对指定的人员开放管理员权限,管理员还可以修改自己登录系统的密码。(10)统计信息管理:管理员可以根据系统数据对超市的采购信息,销售信息还有系统在线收银的信息进行统计,提供可供分析的数据。根据以上需求分析管理员功能模块图4-2所示。图4-2管理员功能模块4.2 数据库设计数据库的概念结构设计采用E-R图模型,E-R图为我们提供了描述实体和属性之间联系的一种组织的概念模型。根据本系统现在列出商品、供货商、会员、员工、采购和销售的实体如下图。图4-3商品信息实体图图4-4供应商信息实体图图4-5会员信息实例图图4-6员工信息实例图图4-7采购信息实例图图4-8销售信息实例图各实体间的关系如图4-9。图4-9各个实体间的关系将E-R图转换为关系模型,一个实体和数据库的表相对应表示数据的关系模式,实体的属性对应表的列表示关系属性,根据以上数据库实体关系图设计各个数据库表如下。表4-1管理员表序号名称类型大小能否为空最大长度1IDInt 4自增编号102UsernameVarChar 50是2553PWDVarChar 50是2554CXVarChar 50是2555AddtimeDateTime 8是23表4-2销售记录表序号名称类型大小能否为空最大长度1IDInt 4自增编号102BianHaoVarChar 50是2553MingChengVarChar 50是2554KuCunVarChar 50是2555ChuKuShuLiangVarChar 50是2556KeHuVarChar 50是255表4-3采购记录表序号名称类型大小能否为空最大长度1IDInt 4自增编号102BianHaoVarChar 50是2553MingChengVarChar 50是2554KuCunVarChar 50是2555RuKuShuLiangVarChar 50是2556GongYingShangVarChar 50是2557BeiZhuVarChar 50是2558CaoZuoYuanVarChar 50是2559AddtimeDateTime 8是23表4-4商品类别表序号名称类型大小能否为空最大长度1IDInt 4自增编号102LeiBieMingChengVarChar 50是2553AddtimeDateTime 8是23表4-5供应商信息表序号名称类型大小能否为空最大长度1IDInt 4自增编号102BianHaoVarChar 50是2553CkmVarChar 50是2554DianHuaVarChar 50是2555ChuanZhenVarChar 50是2556LxrVarChar 50是2557DiZhiVarChar 50是2558ZhuYingChanPinVarChar 50是2559BeiZhuVarChar 50是25510AddtimeDateTime 8是23表4-6会员信息表序号名称类型大小能否为空最大长度1IDInt 4自增编号102BianHaoVarChar 50是2553XingMingVarChar 50是2554GongSiMingChengVarChar 50是2555DianHuaVarChar 50是2556ChuanZhenVarChar 50是2557YouXiangVarChar 50是2558DiZhiVarChar 50是2559BeiZhuVarChar 50是25510AddtimeDateTime 8是23表4-7商品信息表序号名称类型大小能否为空最大长度1IDInt 4自增编号102BianHaoVarChar 50是2553MingChengVarChar 50是2554LeiBieVarChar 50是2555TuPianVarChar 50是2556BeiZhuVarChar 50是2557AddtimeDateTime8是238JiaGeVarChar 50是2559KuCunVarChar50是255表4-8员工信息表序号名称类型大小能否为空最大长度1IDInt 4自增编号102GongHaoVarChar 50是2553XingMingVarChar 50是2554XingBieVarChar 50是2555ChuShenNianYueVarChar 50是2556DianHuaVarChar 50是2557YouXiangVarChar50是2558JiGuanVarChar 50是2559MiMaVarChar50是25510ZhiChengVarChar50是25511BeiZhuVarChar50是25512AddtimeDateTime8是235 系统的实现通过一段时间的开发与设计,超市收银管理系统基本上实现了系统所需要的功能。在设计这个系统的过程中从需求分析开始,经过系统的设计与实现的过程最后到系统的测试都经过了严格的分析,保证程序稳定可靠。5.1 登录模块的实现超市收银管理系统是一个典型的MIS信息系统,登录模块可以根据用户名和密码进入相对应的权限中,然后根据自己的角色实现不同的操作。若想操作该系统,必须先登录到系统的主界面,在登录系统的过程中要验证角色、用户名和密码是否匹配,然后给予相应的提示,验证输入的信息是否正确。其实现登录模块的流程如图5.1所示,运行效果如图5.2所示,收银员界面如图5.3所示,管理员界面如图5.4所示。图5-1登陆模块流程图图5-2登陆界面图5-3收银员界面图5-4管理员界面这个模块的功能具体的实现方式是要先获取输入的用户名和密码,然后获取操作者选取的角色,如果输入的角色是收银员就在员工信息表中查询是否存在这个员工号和密码是非匹配,否则就在管理员表中查询用户名是否存在,如果用户名存在,就验证用户名和密码是否匹配。然后显示查询结果,如果不存在或密码不匹配提示“你输入的用户不存在或密码错误,请重新登录!”其登陆界面的关键伪代码如下。request.getparameter(用户名,密码,角色);if(角色=收银员){select *from 员工信息表 where gonghao=用户名,mima=密码}else{select *from 管理员表 where uid=用户名,pwd=密码}if(!Rs-result.next()){out.print(“你输入的用户不存在或密码错误,请重新输入”)}5.2 商品信息模块实现这个模块主要有商品类别和商品的基本信息添加、修改、删除的功能,商品的基本信息包括商品的编号,名称,类别,图片,价格等,商品信息的添加模块如图5-5。图5-5添加商品信息这个功能模块实现的过程是首先获取使用者输入的商品编号、价格、名称、类别、图片、备注的内容放入系统缓存中,然后查询商品信息表看输入的编号是否存在,如果查询的结果不为空说明编号存在,一个商品编号不能对应两个商品,所以要都编号进行修改,这时页面提示“该商品编号已存在,请换其他商品编号!”。如果编号的查询结果为空,说明编号不存在,可以将这条商品信息插入到商品信息的表中从而存储到数据库中。之前获取的信息对应着数据表中的元素,将缓存中的信息存储到数据库中。其关键程序伪代码如下。request.getparamete(编号,价格,名称,类别,图片,备注);resultset RS-result=connDbBean.executeQuery(select * from商品信息表where biaohao=编号)If(rs-result.next()){out.print(该商品编号已存在,请更换其他商品编号)}else(String sql=insert int 商品信息表(bianhao,mingcheng,leibiao,tupian,beizhu,jiage)values(编号,名称,类别,图片,备注,价格))还可以查询商品信息,然后可以对商品信息进行修改和删除。其页面显示如下图5-6。图5-6商品信息查询界面商品信息查询这个功能程序的实现是要在数据库的商品信息表中查询所需要的信息,利用select语句查询商品信息表中所有内容,首先获取商品编号,编号不为空才能进行下面的操作。当商品编号不为空时,页面将按照数据库表中存入数据按照id号顺序显示到页面上,显示商品信息表中的符合查询条件的数据的值。5.3 商品采购模块的实现这个模块主要是对采购的商品进行登记,录入采购的数据,还可以对录入的记录进行查询,该功能的操作图如图5-7。图5-7商品采购信息登记要想实现这个功能首先需要操作者在浏览器端输入相应的信息,服务器需要获取输入的各种信息,然后把这些信息插入到采购信息表中,因为进行了采购操作所以商品的库存量发生了变化,所以要对商品的库存量进行修改,商品的库存量这个元素在商品信息的表中,所以用update语句对商品信息表中的库存数量进行修改,用原有的库存数量加上此次采购的数量作为现在的库存数量。5.4 收银模块实现收银模块要在客户购买过东西之后在客户结账的时候使用的功能,它属于收银员权限范畴,主要由收银员进行操作。这个模块可以利用扫描枪对商品进行扫描得到商品的编号,然后把商品放进到购物车中,进行点击结账,还可以选择不同的结账方式比如支付宝支付和现金支付。这个模块的操作图如图5-8。图5-8在线收银登记操作图在这个模块中需要输入会员卡号和订单编号,用扫描枪或者手动输入商品编号并且输入购买商品数量在这里购买数量的默认值为1。点击提交按钮商品的信息就会出现在下面的列表中,如图5-9。图5-9在线收银添加商品提交订单后,点击结账,页面跳转到结账页面,之后可以选择相应的支付方式,跳转后页面如图5-10 。图5-10点击结账后跳转页面如上图可以选择支付宝支付和现金支付两种方式,点击支付宝支付的页面如图5-11。图5-11支付宝支付在支付宝支付的付款方式中顾客可以通过自己手机中的支付宝客户端对商家的二维码进行扫描通过转账的方式进行付款,支付宝作为现在社会中一种方便快捷的支付方式,减少了对现金的使用,以及一些找零钱的麻烦。本系统还可以对收银小票进行打印,将电脑连接小票打印机,可以打印出收银小票,真正的模拟了超市的收银全过程。打印预览如下图5-12。图5-12打印预览在现金支付的过程中,支付页面同样可以显示本次收银活动的订单号、收银员和会员卡号等基本信息,因为是现金支付所以涉及到找零的问题,本系统可以实现,输入实收金额,根据应收金额,计算找零的金额。现金支付的页面如图5-13。和支付宝支付相同,现金支付也可以进行小票的打印功能。图5-13现金支付6 系统测试6.1 系统运行环境服务器:机型:个人计算机; 操作系统:Windows 7版本操作系统; 需要额外安装的软件:Tomcat6.0、JDK1.6、MyEclipse;数据库:机型:个人计算机; 操作系统:Windows 7版本操作系统; 需要额外安装的软件: SQL Server 2005;6.2 安装 在个人电脑中安装SQL Server 2005软件,同时安装JDK1.6并配置JAVA环境变量,在电脑上解压Tomcat6.0并且配置好Tomcat所需要的环境,解压MyEclipse继续开发工具,并在MyEclipse中安装Tomcat6.0的插件。6.3 功能测试我们根据需求分析得到了各种不同的系统用例,我们需要在功能测试的阶段分析每个用例可能出现的情况,比较在各种情况下出现的预计效果与实际的操作结果是否相同。6.3.1 系统登录测试用例填写自己的用户名和密码并选择自己的角色进行系统登录操作,若满足条件登录成功,否则登录失败。表6-1系统登录测试测试用例预计结果实际操作结果测试结果用户名或密码没有填写提示请输入用户名或密码提示请输入用户名或密码(图6-1)通过用户名、密码与数据库中的信息不相同(3333、1)提示用户名不存在或密码错误提示用户名不存在或密码错误(图6-2)通过输入正确的账号和密码(3333、3333)系统登录成功进入相应的权限界面系统登录成功进入相应的权限界面(图6-3)通过图6-1密码没有填写图6-2账号和密码不匹配图6-3登录成功进入收银员界面6.3.2 修改个人密码测试用例 输入原密码新密码并确认密码,原密码正确,新密码确认密码相同修改成功,否则修改失败。表6-2修改个人密码测试测试用例预计结果实际操作结果测试结果原密码,新密码,确认密码没有填写完整提示为空弹出输入为空提示(图6-4)通过原密码错误弹出原密码错误提示提示原密码不正确(图6-5)通过两次输入新密码不一致提示两次密码不一致请重新输入弹出两次密码不一致请重新输入提示(图6-6)通过输入正确,修改成功修改成功修改成功(图6-7)通过图6-4输入为空提示 图6-5输入的原密码不正确图6-6两次输入的密码不一致图6-7修改个人密码成功6.3.3 添加采购记录测试用例输入采购信息,信息不能为空,点击提交,添加成功。表6-3添加采购记录测试测试用例预计结果实际操作结果测试结果商品编号等未填写完全提示信息不能为空弹出提示(图6-8)通过商品信息全部填写添加成功添加成功(图6-9)通过图6-8添加采购信息失败图6-9添加采购信息成功6.3.4 删除会员信息测试用例点击要删除的会员信息后面的删除按钮进行删除操作。表6-4删除会员信息用例测试用例预计结果实际操作结果测试结果选择要删除的会员信息点击删除确定删除,删除成功确定删除,删除成功(图6-10)通过测试图6-10删除会员信息成功6.3.5 商品信息查询测试用例填写商品编号,选择查询键,进行信息查询,页面显示相应的查询结果。表6-5查询商品信息测试测试用例预计结果实际操作结果测试结果填写商品编号点击查找(图6-11)页面展现商品信息页面展现商品信息(图6-12)通过图6-11输入要查询的商品编号图6-12显示查询的商品信息 6.3.6 在线收银登记测试用例输入会员卡号、订单、商品编号、商品数量,验证输入信息是否正确,如果正确进行下一步结账操作,如果不正确就会提示相应的信息。表6-6在线收银测试测试用例预计结果实际操作结果测试结果未填写会员卡号、订单编号、商品编号、商品数量提示请输入提示请输入(图6-13)通过输入会员卡号不正确提示会员卡号不正确,请重新输入提示会员卡号不正确,请重新输入(图6-14)通过输入商品编号不正确提示商品编号不正确,请重新输入提示商品编号不正确,请重新输入(图6-15)通过输入正确购买商品在页面显示购买商品在页面显示(图6-16)通过图6-13请输入订单号图6-14输入的会员卡号错误图6-15输入商品编号错误图6-16在线收银登记成功7 总结与展望7.1 总结7.2 展望本系统目前实现了超市收银管理系统的一些基本的功能,但还有一些缺点与不足之处,例如由于个人无法申请支付宝接口所以只能由客户扫描我们商家的二维码进行转账支付,不能由商家利用扫描枪扫描客户付款码进行收银。还可以在系统中增加利润计算等模块希望在以后可以进一步的完善我的系统,增加系统功能,提高用户的体验。致谢参考文献:[1] 杨蕊绮.中小型超市信息管理系统的开发与应用[D].山东:山东大学,2014:23-24.[2] 刘志.中小型超市管理系统设计与实现[D].西安:西安电子科技大学,2013:15-18.[3] 王奎虎.基于B/S多层架构的超市管理系统设计与实现[D].山东:山东大学,2009:2-3.[4] Wen Cheng Wang,Ying Chang Chen,Ying Chen Chu. A Study of Customer Loyalty Management in Chinese Retail Supermarket[J].International Journal of Business and Management,2009,3(5):72-73.[5] 高峻,王欣涛.基于网络的销售系统的研究与实现[J].微机发展,2004,2(5):52-54.[6] 赵泉.小型连锁超市收银系统的开发[J].学术探讨,2015,1(8):77—78.[7] 陈灵坚.超市收银管理信息化浅析[J].商场现代化,2013,3(8):73-75.[8] Markus Aleksy,Axel Korthaus,Martin Schader.Use Java and the CORBA realization distribute type system [J]. Journal of Pingxiang College,2005,4(1):104-105.[9] 刘翼.基于B/S架构的“工学交替”管理系统设计与实现[J].信息与电脑,2012,1(4):49-50.[10] 徐小平.JSP程序设计实训与案例教程[M].第二版.北京:清华大学出版社,2014:54-57.[11] 杭志.SQL Server2005应用开发技术与典型实例[M].第一版.北京:清华大学出版社,2009:1-6.[12] 姜强.SQL Server与JSP动态网站开发—从设计思想到编程实战[M].第二版.北京:电子工业出版社,2013:107-114.
目录
摘要1
关键词1
Abstract1
Key words1
1 选题背景1
1.1 问题的提出2
1.2 国内外研究状况 2
1.2.1 国外研究状况2
1.2.2 国内研究状况2
1.3 研究的目的和内容2
2 开发环境及应用技术2
2.1 开发环境2
2.1.1 MyEclipse2
2.1.2 Tomcat服务器3
2.1.3 数据库3
2.2 应用技术3
2.2.1 JSP技术3
2.2.2 JDBC访问数据库技术3
2.3 技术路线4
3 系统需求分析4
3.1 系统总体需求分析4
3.2 系统功能需求分析5
3.2.1 系统登录功能需求分析5
3.2.2 个人信息管理需求分析6
3.2.3 在线收银登记功能需求分析7
3.2.4 修改个人密码功能需求分析8
3.2.5 商品销售管理功能需求分析9
4 系统设计11
4.1 系统功能设计 11
4.1.1 收银员功能模块设计11
4.1.2 管理员功能模块设计11
4.2 数据库设计12
5 系统的实现19
5.1 登录模块的实现19
5.2 商品信息模块的实现20
5.3 商品采购模块的实现22
5.4 收银模块的实现22
6 系统测试24
6.1 系统运行环境24
6.2 安装24
6.3 功能测试24
6.3.1 系统登录测试用例24
6.3.2 修改个人密码测试用例25
6.3.3 添加采购记录测试用例27
6.3.4 删除会员信息测试用例27
6.3.5 商品信息查询测试用例28
6.3.6 在线收银登记测试用例29
7 总结与展望 30
7.1 总结30
7.2 展望30
致谢31
参考文献31
超市收银管理系统的开发与设计
引言

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/jsjkxyjs/2244.html

好棒文