南京理工大学紫金学院课程设计说明书作者:仇慎超学号:070602122学院(系):南理工紫金学院(计算机系)专业:网络工程题目:仓库管理系统2010年4月目录一、概述·················································2二、需求分析··············································2三、系统设计···············································4四、系统实施···············································9五、系统测试···············································9六、收获和体会············································9七、附录··················································9八、参考文献·············································9一、概述1、项目背景:随着市场竞争的日益激烈,如何降低成本更加便捷的处理库存管理,越来越受到各个企业的重视。管理的好坏对企业至关重要。而对经销商而言,渠道扁平化已是大势所趋,这使经销商对产品的库存管理合理化也提出了更高的要求。该库存管理系统正是基于客户亟待解决多商品、大业务,等复杂的库存管理的要求而开发。2、编写目的:使用计算机管理系统,实现经济性和技术性满足企业的现代化管理要求。3、软件定义:本系统是基于JSP、JavaBean模式并使用MySQL数据库系统开发而成。并实现了仓库进出管理功能的软件。4、开发环境:操作系统:WindowsXP。数据库:MySQL。开发工具包:JDK1.6,Eclipse3.2,MyEclipse8.xJSP服务器:Tomcat6.0浏览器:IE7.0二、需求分析1、问题的提出:仓库进货、库存管理环节中,由于商品种类繁多、业务量大、库存管理复杂,使用手工操作工作量很大,在操作过程中也很容易出现各种错误。如何使用计算机解决目前的问题,是本系统最重要的难点。2、系统的业务功能分析:系统业务需要具有的功能:具有良好的用户界面系统具有良好的权限管理功能强大的数据查询功能可以直接查看仓库库存情况3、系统的业务流程分析:进入系统管理应该首先登陆,取得管理权限之后进入主界面入库操作时需要记录货品的全部信息(新货入库与补库区分对待)出库操作是需要修改库存信息查询操作时可以根据输入条件查询相应货品信息,之后输出报表人员信息管理可以输入、修改、查询员工信息,也应具有客户相应的信息录入、修改、查询方法4、需完成的功能:登陆功能注册管理员功能新货入库录入功能货品补充修改功能库存货品信息管理功能货品出库修改功能根据条件查询功能报表输出功能员工信息录入功能员工信息修改功能员工信息查询功能客户信息录入功能客户信息修改功能客户信息查询功能管理员注册功能管理员密码修改功能管理员删除功能4、数据流图:1、管理员数据流图2、系统信息数据流程图注册信息登陆模块管理员数据库管理员信息修改三、系统设计1、数据表:1、表的物理设计:管理员信息表(tb_user),用于对管理员信息的姓名、密码进行定义字段名数据类型长度是否为空是否为主键描述IDInt4NoYes管理员编号UsernameVarchar50NoNo管理员名称PasswordVarchar50YesNo密码员工信息表(tb_worker),用于对员工信息的姓名、职务、电话、住址进行定义字段名数据类型长度是否为空是否为主键描述IDInt8NoYes员工编号WknameVarchar50NoNo员工姓名PostVarchar50YesNo职位PhoneVarchar20YesNo电话AddressVarchar100YesNo住址SalaryInt8YesNo工资查询功能模块新货入库信息货品补充修改信息库存货品修改信息货品数据库员工录入信息员工修改信息员工数据库客户录入信息客户修改信息客户数据库客户信息表(tb_customer),用于对客户的全称、简称、地址、邮编、电话、传真、联系人、联系人电话、联系人邮箱、银行账号、开户银行进行定义字段名数据类型长度是否为空是否为主键描述IDInt8NoYes客户编号CusnameVarchar100NoNo客户全称ShortVarchar50YesNo客户简称AddressVarchar100YesNo地址PostcodeVarchar20YesNo邮编PhoneVarchar20YesNo电话FaxVarchar20YesNo传真LinkmanVarchar20YesNo联系人LmphoneVarchar20YesNo联系人电话EmailVarchar50YesNo邮箱AccountVarchar20YesNo账号BankVarchar50YesNo银行货品信息表(tb_brand),用于对商品的名称、简称、编号、产地、规格、包装、批号、供应商、单位、单价、数量、入库日期、经手人进行定义字段名数据类型长度是否为空是否为主键描述IDInt8NoYes货品编号GoodsVarchar100NoNo货品名称ShortVarchar50YesNo货品简称AddressVarchar100YesNo产地NormsVarchar50YesNo规格PackVarchar50YesNo包装LotNoVarchar20YesNo批号SupplierVarchar100YesNo供应商UnitVarchar20YesNo单位PriceVarchar20YesNo单价AmountVarchar20YesNo数量DateVarchar20YesNo入库日期ManagemanVarchar20YesNo经手人2、软件功能设计(1)、仓库系统的结构图主界面功能结构图入库管理功能结构图出库管理功能结构图仓库管理功能结构图登陆管理系统注册仓库管理出库管理查询管理入库管理人员管理入库管理旧货补仓新货入库出库管理出库修改仓库管理信息管理货物清仓查询管理功能结构图人员管理功能结构图客户管理功能结构图员工查询查询管理客户查询货品查询信息修改客户管理信息删除信息录入员工管理员工管理人员管理管理员客户管理员工管理功能结构图管理员功能结构图(2)、功能表及功能描述:模块功能功能描述入库管理新货入库创建新的信息列表,输入货品信息旧货补仓在旧的信息列表上修改货品数量等信息出库管理出库修改在货品信息列表上修改库存数量信息仓库管理信息管理在货品信息列表上修改供应商等信息货物清仓当该货品需要清仓不再进货时进行信息删除查询管理货品查询根据货品编号或名称查询货品详细信息员工查询根据员工号或姓名查询该员工详细信息客户查询根据客户名称查询客户详细信息员工管理信息录入输入员工详细信息信息修改修改员工住址电话或工资等信息信息删除若该员工辞职则删除该员工信息管理员注册注册管理员账号、密码。注:只有管理员可添加注册信息修改修改管理员登陆密码信息删除删除管理员信息客户管理信息录入输入客户详细信息信息修改修改客户地址电话等详细信息信息删除如该客户推出则删除该客户信息四、系统实施(1)、系统的界面设计:信息修改信息删除信息录入信息修改管理员信息删除注册①登陆界面设计②系统主界面设计③入库管理界面设计④出库管理界面设计⑤仓库管理界面设计⑥查询管理界面设计⑦员工管理界面设计⑧客户管理界面设计⑨管理员入口界面设计(2)、事件的设计过程:1.登陆事件的设计登陆事件需要在文本框中输入账号名称和密码,然后根据数据库的内容判断是否存在该用户,是否允许登陆。程序流程图如下所示:NY输入账号密码开始判断是否存在登陆跳转结束2.导航栏事件的设计导航栏主要功能就是帮助用户选择所使用的功能。用户点击父框,显示相应的子模块。并且根据用户所点击的链接到相应的界面。流程图如下图所示:TFTFTFTFTFTFTF3.新货入库事件的设计由于新货入库时仓库内没有相应信息,所以在处理时应该录入详细数据。并添加到数据库新项中。处理过程如下图所示:开始是否为入库打开入库子项是否为出库打开出库子项是否为仓库库是否为查询是否为员工是否为客户是否为管理员打开仓库子项打开查询子项打开员工子项打开客户子项打开管理员子项选择操作选择操作选择操作选择操作选择操作选择操作选择操作跳转页面结束3.旧货补仓事件的设计旧货补仓处理过程类似于新货入库,如下图所示。但是由于原先已经有该物品的信息,所以只需修改物品的库存信息即可。3.出库修改事件的设计货品出库时由于数据库中已经存在该物品的数据,所以只需要根据货号修改库存信息即可。输入信息后判断信息是否填写正确,若是正确就修改数据库信息。否则就报错,重新输入。过程如下图所示:开始录入信息处理保存信息结束开始录入信息处理保存信息结束FT4.仓库信息管理事件的设计仓库信息管理时由于数据库中已经存在该物品的数据,所以只需要根据货号修改库存信息即可。由于货品信息部可能完全改变,所以需要具有部分修改的功能。输入信息后判断信息是否填写正确,若是正确就执行该操作数据库信息。否则就报错,重新输入。过程如下图所示:FT5.清仓管理事件的设计货品清仓时由于数据库中已经存在该物品的数据,所以只需要根据货号删除掉库存信息即可。输入信息后判断信息是否填写正确,若是正确就执行操作数据库信息。否则就报错,重新输入。过程如下图所示:开始录入信息处理保存信息结束判断数据正确开始录入信息处理保存信息结束判断数据正确FT6.货品查询事件的设计货品查询需要在文本框中输入相应的货号,首先判断该货物是否存在,如不存在或输入错误,则跳转到错误界面。如果存在则输出货品的详细信息。6.员工查询与客户查询事件的设计员工查询和客户查询处理过程类似于货品查询,流程图相同如上图。开始录入删除货号处理保存信息结束判断数据正确开始输入货号打印结束判断数据存在报错7.员工信息录入事件的设计员工信息录入类似于新货入库信息的录入。需要将员工的详细信息输入数据库。如该项不存在则可以在该项写无。事件流程图参见新货入库事件图。8.员工信息修改事件的设计员工信息修改类似于仓库管理信息的修改。由于数据库中已经存在所以只需要修改相应的信息即可。事件流程图参见仓库管理信息修改事件图。9.员工信息删除事件的设计员工信息删除类似于仓库管理的清仓管理。由于数据库中已经存在所以只需要删除相应的信息即可。事件流程图参见仓库管理信息修改事件图。10.其他事件的设计客户管理和管理员入口管理子选项的事件处理与员工信息管理相类似。处理流程相同。(3)、主要代码描述:1.登陆模块主要代码title仓库管理系统框架/title/headframesetrows=*cols=*,778,*framespacing=1frameborder=noborder=1framesrc=blank.jspname=blankFramescrolling=NOnoresizeframesetrows=117,*cols=*frameborder=NOborder=0framespacing=0framesrc=top.jspname=topFramescrolling=NOnoresizeframesetrows=*cols=194,*framespacing=0frameborder=NOborder=0framesrc=left.jspname=leftFrameframeborder=NOscrolling=autonoresizeframesrc=main.jspname=mainFrameframeborder=noscrolling=AUTOnoresizemarginwidth=1marginheight=1bordercolor=