仓库信息管理系统.docx
仓库信息管理系统摘要随着社会的发展,互联网对人们的生活、生产、生活产生了巨大的影响。对于中国的传统仓储方式,新招聘的仓库经理要让员工熟悉工作环境和工作内容,还需要为新员工留出足够的时间进行培训。为了解决这个问题,本论文提出了一种基于SSM(Spring+SpringMVC+Mybatis)结构的仓库管理体系。该系统以J2EE为平台,以B/S结构为开发工具,以JDKl.8为开发工具,以非关系MySql5.7为数据库,以MaVen专案管理工具为核心,以TOmCat9为服务器,以此为基础,以J2EE为基础,以B/S为开发平台,以JDK1.8为开发工具。JSP,AjaxJQuery等技术被用于前端。系统有两个等级,一个是高级管理者,一个是一般管理者,一个是高级管理者。该系统具有库存管理,进出库记录查询,出库作业,基础信息管理等多个功能模块。该系统能够准确、直观地显示出库房的基础资料,增强了管理人员对库房的管理能力,使管理人员的工作变得简单,同时也使管理人员的工作效率得到了极大的提升。关键词:仓库管理;SSM框架;B/S架构第一章绪论第一章绪论1.1研究背景随着计算机应用的日益普及,大多数企业都开始采用计算机来完成资料的处理,但仍然是以纸质记录和人工输入为主。这不只是人力资源的浪费,更重要的是,由于人为因素,造成了录入速度和准确率的下降。当一个企业的规模越来越大的时候,它所经营的货物的种类也会越来越多,出入库的频率也会越来越高,其运行和运行的模式也会越来越复杂,越来越多的灵活性和多样性,传统的、传统的、传统的人工仓库的运行管理模式和数据的收集处理方法,已经不能适应现代化的仓库企业的高效快速和精细化的要求,这已经严重地影响了整个仓储公司的运行效率,成为阻碍企业发展的一个主要因素。仓储管理系统的应用有助于企业处理下列问题:1、在因特网工具的帮助下,错误率降低。2、可以迅速记录数据。3、减少了人力成本,提高了生产率。4、为企业实现产品和市场的整合。1.2研究意义在当今电脑飞速发展的今天,将电脑做为一种信息处理的重要工具,应用到仓库的日常运作中,将使仓库运作方式发生前所未有的变化,具有意想不到的效益。同时,也为企业的高速发展注入了无限的潜力。利用计算机对仓库进行信息化建设,是实现仓库管理的一个显著标志。本发明可极大地提高工人的作业能力,极大地减少进、出库流程的复杂、混乱和长时间的弊端。在仓库管理上,对仓库管理、仓库管理、仓库管理进行一体化管理,降低了企业的经营成本,增加了企业的利润。仓库的操作和信息的数字化使得仓库的运作和管理从一个方面提高了。文章把仓储管理与网络技术相结合,对不同的仓储管理进行了分类,并对不同级别的管理人员进行了相应的权限配置。极大地提高了管理者的工作效率。第二章系统开发技术概述2.1SpringSPring是一种轻量级的,非侵入性的框架.Spring采用了控制反转(IOC)的概念,减少了程序之间的耦合。SPring使用了面向剖面的程序设计(AOP)来辅助技术的翻转。面向对象技术将系统内核与服务代码分开,使应用只关注自己的业务逻辑,无需考虑事务、日志等问题,提高了系统的内聚力。SPring包含7个模块,见图2-1。SpcingAOPSpringORMSpringWebSpringWebMVCSpringDaoSpnngContextSprisCore图2-1Spring组成2.2SpringMVCSpringMVC是Spring框架下的一个子模块,它可以和其它Spring模块一起工作。首先,MVC是一种非常经典的模式,其中M表示模式,V表示视图,C表示业务流程,以及发送请求。2.3Mybatis当MybatiS抽取与JaVa数据库连接有关的所有代码时,MybatiS被用来作为数据库数据处理的接口。其实现原则是将接口与一般JaVa对象映射为数据库记录,从而大大简化了MybatiS的使用。MybatiS最大的特点就是其动态SQ1.。以前在使用JDBC的时候,都是在Java代码中写入SQ1.语言,而SQ1.语言中Where的条件并不一致,可能多可能少,占位符要与参数一一对应,这就造成了SQ1.传递的难度。但是,MybatiS却彻底地解决了上述问题,它使用XM1.标记,使得SQ1.对Where的需求变得不那么严格,在传递参数的时候,把where的if标记打开,将参数传递到SQ1.,在没有传递参的情况下,SQ1.语句也可以正常执行,从而实现了动态SQ1.函数。第二章系统开发技术概述2. 4JSPJSP的全名是JAVA服务器页面,是一种动态的Web页面开发技术.该软件使用JSP标记编写JaVa代码,实现了HTM1.页面的编写。标记一般开始于“”,结束于“”。JSP是一个JavaServlet,它的主要功能是在JaVa网络应用中实现用户接口。JSP技术利用Web窗体获得用户的输入数据,访问数据库和其它数据源,并在此基础上实现了Web页面的动态生成。JSP选项卡具有访问数据库,记录用户选择信息,访问JaVaBean构件等各种功能,并实现了在多个页面之间的控制与共享。3. 5Mysql数据库MySQ1.是一个安全,跨平台,高效的数据库系统,并且与主要的程序设计语言如PHP,Java等紧密的融合在一起。它是一种基于关系的数据库管理系统。相对于把所有的数据都存放在一个大的仓库里,关系型数据库把数据存放在一个单独的表格里,这样可以更快、更灵活。第三章系统概要设计3.1系统功能分析这个系统是一个仓储管理系统。该系统被分成两个部分:一个是系统管理员,一个是一般的管理员。系统管理员可以查看各个仓库的存货情况和进出记录,而一般的管理员只能查看自己管辖的仓库。管理者可以控制所有的仓库,普通的管理者只能够控制自己管辖的仓库。资深的管理员可以管理一般的管理人员、供应商、顾客、商品、仓库以及系统的记录。除了这一点,一般的管理人员,还有一个系统管理人员,都可以更改他们的密码。3. 2总体结构设计3. 2.1登录模块当管理员登入时,必须先确认使用者名称,密码,验证码。同时.,在录入资料时,还提供了表格校验功能,如果有不符合规定的资料,则不允许管理员登入。为了保障管理员的隐私性和增强系统的安全,在这里使用了MD5加密算法。图3-1显示了特定的流程:图3-1登录模块流程图第三章系统概要设计3. 2.2库存管理模块如图3-2所示,存货管理模组可分为存货资讯及进出存货记录二个选单。系统管理员拥有查询,删除,更改等权限。一般的管理员,只能对自己管理的仓库进行查询、删除、修改等操作。在此基础上,提出了一种基于模糊推理的查询方法。库存显示的基础资料包括商品id,商品名,商品种类,所属仓库id,目前存货的数量。系统管理人员可对进出库记录进行查询与删除。在此基础上,提出了一种基于多条件的查询方法。一般的管理人员不能查看进出记录表,因此也就没有访问进出记录的权限。显示的基础资料包括记录ID,供应商/顾客姓名,货物名称,进出仓库ID,数量,日期,处理人,出/出/出。图32库存管理模块结构图3. 2.3出入库管理模块出库管理包括出库与出库两个选单。系统管理员在执行出库作业时,先对目前储存的顾客及货品进行模糊查询,若无此顾客或货品,就需增加顾客或货品资讯。系统管理员可以有选择地对顾客及商品进行查询。系统管理人员可以对各个仓库执行出库作业,当选择了商品后,再选择一个特定的仓库,系统就会自动显示出这个仓库的存货,并在一定的库存量内输入出库的数量,从而实现出库作业。一般的管理人员只有在自己所管理的仓库中才能执行出库作业。当系统管理员执行入库作业时,会自动显示现有的供货商及货品,若无此供货商或货品,则需增加供货商或货品资讯。系统管理员可以有选择地看到商品及供应商的基本资料。系统管理人员可以对各个仓库进行入库操作,选择商品后,再选择一个特定的仓库,系统或者是自动将当前的存货数量显示出来,然后录入进入的数量,就可以进行入库作业。一般管理人员只能管理其所管理的仓库。3. 2.4人员管理模块个人管理模块,是给系统管理员使用的,一般的管理员是看不到的。在员工管理模块下面,还包括了仓库管理员的管理菜单.系统管理员可以对一般的管理员进行添加,删除,修改,查看等操作.一般的管理帐号,在增加一般的管理员资料时,只需填上一些个人资料,其他的都是相同的,一般的管理员在第一次登录时,会提示一般的管理员修改密码。在删除一般的管理员资讯时,若这个正常的管理员仍然管理某个仓库,那么就不能删除一般的管理员,只有将一般的管理员从仓库中解除绑定后才能删除。3. 2.5基础数据模块基本资料模组仅供系统管理员使用,一般的管理员是看不到这个模组的。在此基础资料模组之下,有供货商资料管理、顾客资料管理、货品资讯管理及库房资讯管理等功能。系统管理员可以添加,删除,修改,插入等操作。在进行删除操作的时候,若供应商有入库记录,顾客有出库记录,商品有库存信息或出入库记录,仓库有库存信息或出入库记录,或与一般的管理员有关联,则不能进行删除。删除以上资料或解除仓库管理员的绑定后才能进行删除。4. 2.6系统维护模块为系统管理员设置的系统维护模块,包括了更改口令的菜单以及系统的日志菜单。系统管理员可以更改自己的口令。检查运行记录,以执行系统。对于一般的管理员,系统的维护模块只有一个修改口令的菜单。一般的系统管理员可以更改他们的密码。第四章数据库设计4.1 数据库需求分析为了减少数据表间的耦合性,将其分为15个表格。记录管理员登入和登出的信息;记录管理员权限信息的WmS.action管理权限列表;记录客户信息的客户表格;商品列表,记录商品信息;记录运行记录的日志,记录运行的信息;输入入库记录表,记录入库信息;记录入库出库记录,记录入库信息;记录存货信息的清单;用于记录仓库管理者信息的仓库管理员表格;记录仓库信息的wms_respository仓库表格;对应表中的wms_role_action的权限标识,记录了相应的不同权限;记录信息的Wms,OIeS标识表;记录供应商信息的支持客户表格;记录帐户信息的WmS_用户帐户表;wms_user_role帐户标识对应表,记录帐户与标识之间的对应关系。5. 2ER图设计因为数据库的表格比较多,所以仓库管理系统以进出库信息为主要功能,所以只显示了进出库信息模块的ER图,见图4-1。图4-1出入库信息ER图6. 3数据表设计(1)WmS.supplier供应商表用来记录供货商的基础资料,其中包括供货商号码、供货商名称、供货商联络电话、供货商联系电话、供货商电子邮件、供货商地址等。将供货商编号用作主键ID,供货商表格的详细资料见表4-1。表4-1供应商信息表属性类型是否为空长度描述SupplierjdintNOTNU1.1.11主键,供应商idSUPP1.IERNAMEvarcharNOTNU1.1.30供应商名称SUPP1.IERPERSONvarcharNOTNU1.1.10供应商联系人SUPP1.IER_TE1.varcharNOTNU1.1.20供应商电话SUPP1.lER_EMAI1.varcharNOTNU1.1.20供应商邮箱SUPP1.IER_ADDRESSvarcharNOTNU1.1.30供应商地址(2)WmSCustomer客户表用来记录顾客的基本资料,其中包括顾客号码、顾客名称、顾客联络人、顾客电话、顾客电子信箱、顾客地址等字段,以顾客号码为主键ID,顾客表格的详细资料见表4-2。表4-2客户信息表属性类型是否为空长度描述CustomerjdintNOTNU1.1.11主键,客户idCUSTOMER-NAMEvarcharNOTNU1.1.30客户名称CUSTOMER.PERSONvarcharNOTNU1.1.10客户联系人CUSTOMER_TE1.varcharNOTNU1.1.20客户电话CUSTOMER_EMAI1.varcharNOTNU1.1.20客户邮箱CUSTOMER_ADDRESSvarcharNOTNU1.1.30客户地址(3)WmS_goods货物表用来记录商品的重要资料,包括商品编号、商品名称、商品种类、商品尺寸、商品价值等,并将商品编号用作主索引键id,商品表的详细资料见表4-3。表43货物信息表属性类型是否为空长度描述GOODDintNOTNU1.1.11主键,货物idGOOD_NAMEvarcharNOTNU1.1.30货物名称GOOD_TYPEvarchar20货物类型good_sizevarchar20货物大小GOOD_VA1.UEdoubleNOTNU1.1.货物价值(4)wms_respository仓库表用来记录仓库的基础资料,包括仓库编号,仓库地址,仓库状况,仓库面积,仓库描述等。将仓库编号用作主索引键ID,详细的仓库资料见表4-4。表4-4仓库信息表属性类型是否为空长度描述Gc)C)DDintNOTNU1.1.11主键,货物idGOOD_NAMEvarcharNOTNU1.1.30货物名称GOOD_TYPEvarchar20货物类型GOOD_SIZEvarchar20货物大小GOOD_VA1.UEdoubleNOTNU1.1.货物价值(5)WmS_repo_admin仓库管理员表用来记录仓库管理员的基础资料,其中包括:管理员编号,管理员名称,管理员性别,管理员电话,管理员地址,开始管理仓库时间,管理仓库编号等。使用管理员编号为主键ID,仓库管理员表格的详细资料见表4-5。表4-5管理员信息表属性类型是否为空长度描述REPc1.ADMINDintNOTNU1.1.11主键,管理员idREPO_ADMIN_NAMEvarcharNOTNU1.1.10管理员名称REPO_ADMIN_SEXvarcharNOTNU1.1.10管理员性别REPO_ADMIN_TE1.varcharNOTNU1.1.20管理员电话REPO_ADMIN_ADDRESSvarcharNOTNU1.1.30管理员住址REPO_ADMIN_BIRTHdatetimeNOTNU1.1.开始管理时间REPO_ADMIN_REPOIDint11管理仓库id(6)Wms_record_in入库纪录表用来对入库操作信息进行登记,其中包含了入库记录编号,供应商编号,货物编号,入库数量,入库时间,操作人,入库仓库编号等。将入库编号用作主键1D,入库表格的详细资料见表4-6。表4-6入库纪录信息表属性类型是否为空长度描述RecordjdintNOTNU1.1.11主键,入库纪录idRECORD_SUPP1.IERIDintNOTNU1.1.11供应商idRECORD_GOODIDintnotnull11货物idRECORD_NUMBERintNOTNU1.1.21入库数量RECORD_TIMEdatetimeNOTNU1.1.入库时间RECORD_PERSONvarcharNOTNU1.1.10操作人RECORD_REPOSITORYIDintNOTNU1.1.11入库仓库id(7)wms_record_out出库纪录表用来记录出库作业的信息,主要有出库记录号码,客户号码,货物号码,出库数量,出库时间,操作人,出库仓库编号等。以出库编号为主键id,出库记录表的详细资料见表4-7<>表4-7出库纪录信息表属性类型是否为空长度描述RecordjdintNOTNU1.1.11主键,出库纪录idRECORD_CUSTOMERIDintNOTNU1.1.11客户idRECORD_GOODIDintNOTNU1.1.11货物idRECORD-NUMBERintNOTNU1.1.21出库数量RECORD_TIMEdatetimeNOTNU1.1.出库时间RECORD_PERSONvarcharNOTNU1.1.10操作人RECORD_REPOSITORYIDintNOTNU1.1.11出库仓库id第五章系统功能模块设计5.1登录模块设计管理员需要输入ID,密码,验证码,并在满足形式验证要求的情况下,将请求数据发送到后台。前端将管理员所输入的数字值提取出来,并将其封装为json,并通过ajax传递给后端以供验证。当后端接收到来自前端的值,如果通过了对数据库的确认,那么就会将SeSS反馈给前端,如果成功了,就会跳到首页,如果失败了,就会返回一个错误,这样就无法登陆了。在图51中显示了一个登录接口。用户从登录到离开系统的过程都保持在相同的SeSSiOn会话中,当用户登陆并登出时,会建立或摧毁session,而在session被建立并被摧毁的时候,会将消息插入到登入登出日志中。登录图5/登录界面7. 2库存管理模块设计8. 2.1库存查询模块设计系统管理员可以通过商品ID,商品名称,商品种类等三种方法来查询仓库的库存。也可以查询某个仓库,也可以查看所有仓库。对于前端来说,可以实时地获取当前的仓库数量,前端会通过ajax将请求发送到后台,然后再对数据库进行查询,得到当前的仓库信息,然后再将这些信息反馈到前端,然后在下拉列表下面不断地添加,不断地将各个仓库的名字显示出来。在图5-2中可以看到。图5-2库存查询前端可以采用三种不同的查询方法,并结合具体的仓库进行存货的查询。前端通过管理员所选的查询模式,将一个SearCh_type_storage进行简单的包装,并将其与实际值相结合,将某个仓库的值打包为json,然后通过ajax将请求发送到后端。此外,清单记录也支援修正与移除。当你按下“修改”按钮后,当前的数据会自动显示出来,见图5-3。当管理员更改存货量后,按下“确定”键,由前端发送更改后的数值到后台,后台调用更新方法来修改存货量。当修改成功之后,消息就会被发送到前面,然后出现一个友善的消息对话框,见图5-4。编辑货物信息腼D:103仓南D:1004数:100O取消图5-3编辑货物信息信息0命信息更新翊图5-4编辑成功提示当清单信息被移除时,将显示一个警告提示,见图5-4o如果用户点击了“确定”,那么前端就会通过ajax将请求信息发送到后台,然后把这条股票的记录ID转换成json,然后再把这个记录ID转换成json,然后再把这个记录ID作为密钥,然后执行服务器层的删除方法,最后把结果反馈给前端。警告是否确认删除该条库存信息(汪意:一旦删除该条库存信息,将不能恢复)取消图5-4删除提示5.2.2出入库纪录模块设计系统管理员可以实时获得当前拥有的仓库数量,并根据某个仓库的出库记录、出库记录、进出库记录等多个条件来筛选出库记录。在图55中可以看到。对于删除函数的实现,就是由管理员选取行,使用ajax将记录ID和记录类型传递给后台,后台使用delete方法删除记录。MMIiHrMU三itt9n*HiHMUa图5-5出入库纪录模块5.3出入库管理模块设计5.3.1货物出库模块设计货物出库模块的主要作用是对当前的顾客和货物进行动态的获取,对顾客和商品的详细信息进行显示和隐藏,对当前的仓库进行动态的获取,对当前仓库中的商品的库存数量进行显示,对出库的功能进行显示。图5-6显示了页面效果。图5-6出库操作5.3.2货物入库模块设计货物的入库操作与出库操作实现逻辑基本一致,唯一不同的就是出库模块针对于客户来设计,而入库模块针对于供应商来设计,此处就不在过多赘述。5.4人员管理模块设计个人管理模块只有系统管理员和一般管理员之间的关系。完成了一个基本的添加,删除,修改,查找功能。在管理员资料查询中,有4种方法可以查询所有人,管理员1D,管理员名称,管理员仓库。首先,使用OPtionACtiOnO方法对下拉列表中的SearCh_type_repositoryAdmin()进行封装,在进行查询操作的时候,使用SearchAction()方法,获得当前的搜索方式SearCh_type_reposiloryAdmin,并将该值转换为json,使用ajax将请求发送到后端。后台在收到请求后,会按照不同的查询方法来调用相应的查询语句。将所得到的结果封装成一个车规图集合,并传回前端,由前端取得资料以显示。当您加入了管理员信息后,您可以使用bstrap框架中的modal来创建一个类似于图57中的模块框。图5-7添加仓库管理员信息在这一点上,管理员的预设密码和帐号是一样的,在管理员第一次登陆时,就会强迫管理员进行一次密码更改,这里的实现原则是在数据库表中增加一个first1.ogin属性,在管理员第一次登陆的时候,这个属性就会被默认为1,如果管理员修改了密码,那么就可以用这个属性来决定是否要显示或者隐藏。当修改操作被执行时,也会弹出一个模板,显示当前的数据,见图5-8。当管理员更改了新的信息之后,前端会使用CditRepositoryAdminAction()进行形式校验,并获得新的数据。只有一件事要处理,那就是对由管理员管理的仓库进行修改。您可以给管理员分配其它还没有分配的仓库,也可以不分配仓库,这里的动态获得还没有分配的仓库的逻辑,就是向后台发出一个请求,查询当前还没有分配到管理员的仓库,然后将查询的结果在一个下拉列表中循环。单击“确定”后,通过editRepositoryAdminAction()方法将提交请求发送给控制器,而控制器则通过服务器层的更新方法来更新管理员的信息。<WMBMVMOMMOR图5-8编辑仓库管理员信息在进行删除操作的时候,也会把仓库管理员的ID传递给后台,后台会通过delete方法来删除管理员的信息。这里要提醒一下,如果被删除的管理员仍然在对某个仓库进行管理,那么就不能进行删除操作了,只有在与所管理的仓库解除绑定之后,才能将其删除。这里的运行逻辑是,在单击“删除”的时候,将请求发送到后台,使用SelectBylD()方法来询问目前的管理员有没有在管理某个仓库,如果得到的是空的话,则继续进行删除,如果不是空的话,就返回假,给出一个提示信息,从而中断删除。5.5基础数据管理模块设计基本数据模块实现了对供应商、顾客、商品、仓库等信息的管理;基本功能是增加,删除,修改,查找。其执行逻辑基本上和管理员的信息管理是一样的,只是在删除操作上有所不同。(1)厂商资料移除作业当厂商管理进行了一个删除操作时,将一个请求发送到一个后台控制器,这个控制器会调用服务器层deleteSupplier()方法,首先,按照从前面传送来的厂商ID,使用Mapper层SelectBySupplierId()方法,检查这个供货商有没有进货信息,若有进货信息,就中断删除操作,并给出提示信息,见图5-9。如果没有输入的信息,那么将该供应商删除。信息供应商信息删除失败图5-9删除供应商提示信息(2)客户信息删除操作当客户信息管理执行删除操作时,点击删除按钮向控制器发送请求,控制器调用service层的deleteCustomer()½,在执行删除操作前,根据前端传入的CustomerId调用mapper层的SeleCtByCUStomerk1()方法,查询当前客户是否存在出库纪录,当查询结果为null时,允许删除该客户,并给出提示信息,如图5-10所示。信息0客户信息删除成功娴图5-10删除客户信息提示消息(3)商品资料的消隐作业当商品信息管理进行了删除操作时,单击“删除”按钮向控制器发送一个请求,这个控制器调用了服务层的deleteGoodsO方法,接着,在进行删除操作前,通过调用mapper层的SelectByGoodID()方法来单独查询当前的状态。如果商品有无出库或出库信息,如果查询的结果是空的,就会重新调用SelectByGoodsIDAndRepositoryIDO方法来查看目前的商品有没有存货,当所有的商品都做完了,就可以进行删除。(4)仓储资料的消隐作业当仓库信息管理进行删除操作时,按一下DeIete将要求发送到后台控制器,控制器调用服务器层中的deleteRepositoryO方法,在调用删除方法前,先使用SelectByRepositoryIDO方法来查询目前仓库中有没有出入库记录,如果是空的话,就使用SelectByRepositoryIDO方法来查看仓库中有没有存货,如果没有就进行删除。5. 6系统维护模块设计而系统维护模块主要是实现对系统日志的浏览。其实现思想是采用SPringAOP面向断面程序的方法.通过定制一个USerC)Peration注释,在系统请求包含此注释的所有控制器之后,都会进入IOggingUSerOPeratiOn()方法,通过对用户的基本信息、请求的控制器方法名和操作结果的调用,把数据插入到用户的操作日志中,然后由前端对后台进行请求,然后对WmS_oPeration_record表进行查询,获得用户的运行日志信息,并把信息打包为M叩集合,并将其反馈到前端,让前端对信息进行合理的展现。在图511中可以看到。图5-11系统操作日志第六章系统测试由于本系统出库管理和入库管理实现逻辑基本一致,故纪录出库测试结果。人员管理和基础数据管理实现逻辑基本一致,故纪录人员管理测试结果。6.1系统登录测试表6-1系统登录测试测试对象测试方法预期结果结果登录测试不输入用户名或密码或验证码提示“用户名不能为空”“密码不能为空”“验证码不能为空”正确登录测试输入错误用户名提示“用户名输入错误”正确登录测试输入错误密码提示“密码输入错误”正确登录测试输入错误验证码提示“验证码输入错误”正确登录测试输入正确信息跳转至系统主页正确6. 2出库测试表6-2出库测试测试对象测试方法预期结果结果客户名称自动填充输入客户名字中的某一个字输入框下方自动展示出有关客户正确货物名称自动填充输入货物名字中的某一个字输入框下方自动展示出有关货物正确详细信息展示选中客户或货物后点击详细信息展示出有关详细信息正确出库测试输入信息完成后点击出库按钮弹出“出库成功”提示框,出入库纪录中具有对应数据,库存数量减少相应的值正确7. 3仓库管理员信息测试表63仓库管理员信息测试测试对象测试方法预期结果结果查询测试选择不同的查询方式并输入对应的值筛选出目标仓库管理员信息正确第六章系统测试添加测试输入信息后点击添加按钮消息弹窗提示添加成功,列表出现对应管理员信息正确修改测试修改基本信息消息弹窗提示修改成功,信息得到更新正确删除测试点击删除按钮弹窗提示删除成功正确第七章结论随着科技的飞速发展,网络已经成为了我们日常生活中不可或缺的一部分。传统的仓储管理模式,随着管理者的工作效率的不断下降,管理者也需要更多的时间去进行仓储管理。本论文采用了基于javaWeb的先进开发技术,实现了基于JavaWeb的仓储管理系统。这个从仓库管理系统中提供了一个B/S的开发方式,它采用了Spring+SpringMVC+Mybatis,也就是通常所说的SSM结构。(1)实现了对库房的盘点和进出库记录的查询;(2)完成了仓储系统的基本出库和入库功能;(3)对仓储中的员工进行了有效的管理。并负责供应商,客户,商品,仓库等信息的管理。(4)实现了日志记录功能,能够对系统运行记录进行查询。利用该系统,可以使管理者更好地管理库房,使管理者的工作效率得到了很大的提升,同时也增强了库房的管理能力,使管理者的工作变得更加简单。该系统也有一些有待完善之处。比如,可以为第三方添加登录功能。而第三方登录的实现,就是以开发者的身份,通过第三方的登录平台,注册之后,会得到一个appID和安全ID,再对它进行认证,这个时候,网站就会获得一个临时代码,在这个时候,当第三方再发出一个请求,并且携带收到的代码,就可以从第三方那里获得token,这个时候,我们就能够获得用户的基本信息,接着进行我们的信息持久化操作,完成第三方登录。但这一特性并未在该系统中实施,原因是开发标识和技术上的问题。如果一个仓库里没有存货,那么他就可以知道其他仓库里有没有存货。参考文献参考文献李柯.仓库信息管理系统的设计与实现J.数字技术与应用,2017.黑马程序员.JAVAEE企业级应用开发教程D.人民邮电出版社,2017.3汪泓.基于主动数据库技术的仓库信息管理系统的设计与实现D.电子科技大学,2012.徐天津.异地仓库综合管理信息系统的设计与实现ID.北京邮电大学,2019.5强力,李灶娥,魏丹丹,林虎,廖莎.SSM框架下的果蔬信息管理系统设计J.福建电脑,2021.6李伟.基于Spring的仓库管理系统的设计与实现D.西安电子科技大学,2020.周荣虎。基于互联网+模式下仓储管理课程改革研究J.价值工程,2017.8窦浩容。基于jsp的仓储管理系统J.中国新通信,2017.钟炜。基于jsp的电网物资仓储管理系统设计及应用J.贵州电力技术,2017.10贺志国.地图仓库信息可视化管理系统的设计与实现D.大连理工大学,2016.1lSofteonUpdatesItsWarehouseManagementSystemandWarehouseExecutionSystemJJ-ManufacturingClose-Up,2021.