某学院课程设计之仓库管理系统设计doc 34页.docx
- 文档编号:16611082
- 上传时间:2023-07-15
- 格式:DOCX
- 页数:43
- 大小:1.09MB
某学院课程设计之仓库管理系统设计doc 34页.docx
《某学院课程设计之仓库管理系统设计doc 34页.docx》由会员分享,可在线阅读,更多相关《某学院课程设计之仓库管理系统设计doc 34页.docx(43页珍藏版)》请在冰点文库上搜索。
某学院课程设计之仓库管理系统设计doc34页
南京理工大学紫金学院
课程设计说明书
作者:
仇慎超
学号:
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.x
JSP服务器:
Tomcat6.0
浏览器:
IE7.0
二、需求分析
1、问题的提出:
仓库进货、库存管理环节中,由于商品种类繁多、业务量大、库存管理复杂,使用手工操作工作量很大,在操作过程中也很容易出现各种错误。
如何使用计算机解决目前的问题,是本系统最重要的难点。
2、系统的业务功能分析:
系统业务需要具有的功能:
v具有良好的用户界面
v系统具有良好的权限管理功能
v强大的数据查询功能
v可以直接查看仓库库存情况
3、系统的业务流程分析:
v进入系统管理应该首先登陆,取得管理权限之后进入主界面
v入库操作时需要记录货品的全部信息(新货入库与补库区分对待)
v出库操作是需要修改库存信息
v查询操作时可以根据输入条件查询相应货品信息,之后输出报表
v人员信息管理可以输入、修改、查询员工信息,也应具有客户相应的信息录入、修改、查询方法
4、需完成的功能:
v登陆功能
v注册管理员功能
v新货入库录入功能
v货品补充修改功能
v库存货品信息管理功能
v货品出库修改功能
v根据条件查询功能
v报表输出功能
v员工信息录入功能
v员工信息修改功能
v员工信息查询功能
v客户信息录入功能
v客户信息修改功能
v客户信息查询功能
v管理员注册功能
v管理员密码修改功能
v管理员删除功能
4、数据流图:
1、管理员数据流图
注册信息
登陆模块
管理员数据库
2、系统信息数据流程图
三、系统设计
1、数据表:
1、表的物理设计:
v管理员信息表(tb_user),用于对管理员信息的姓名、密码进行定义
字段名
数据类型
长度
是否为空
是否为主键
描述
ID
Int
4
No
Yes
管理员编号
Username
Varchar
50
No
No
管理员名称
Password
Varchar
50
Yes
No
密码
v员工信息表(tb_worker),用于对员工信息的姓名、职务、电话、住址进行定义
字段名
数据类型
长度
是否为空
是否为主键
描述
ID
Int
8
No
Yes
员工编号
Wkname
Varchar
50
No
No
员工姓名
Post
Varchar
50
Yes
No
职位
Phone
Varchar
20
Yes
No
电话
Address
Varchar
100
Yes
No
住址
Salary
Int
8
Yes
No
工资
v客户信息表(tb_customer),用于对客户的全称、简称、地址、邮编、电话、传真、联系人、联系人电话、联系人邮箱、银行账号、开户银行进行定义
字段名
数据类型
长度
是否为空
是否为主键
描述
ID
Int
8
No
Yes
客户编号
Cusname
Varchar
100
No
No
客户全称
Short
Varchar
50
Yes
No
客户简称
Address
Varchar
100
Yes
No
地址
Postcode
Varchar
20
Yes
No
邮编
Phone
Varchar
20
Yes
No
电话
Fax
Varchar
20
Yes
No
传真
Linkman
Varchar
20
Yes
No
联系人
Lmphone
Varchar
20
Yes
No
联系人电话
Varchar
50
Yes
No
邮箱
Account
Varchar
20
Yes
No
账号
Bank
Varchar
50
Yes
No
银行
v货品信息表(tb_brand),用于对商品的名称、简称、编号、产地、规格、包装、批号、供应商、单位、单价、数量、入库日期、经手人进行定义
字段名
数据类型
长度
是否为空
是否为主键
描述
ID
Int
8
No
Yes
货品编号
Goods
Varchar
100
No
No
货品名称
Short
Varchar
50
Yes
No
货品简称
Address
Varchar
100
Yes
No
产地
Norms
Varchar
50
Yes
No
规格
Pack
Varchar
50
Yes
No
包装
LotNo
Varchar
20
Yes
No
批号
Supplier
Varchar
100
Yes
No
供应商
Unit
Varchar
20
Yes
No
单位
Price
Varchar
20
Yes
No
单价
Amount
Varchar
20
Yes
No
数量
Date
Varchar
20
Yes
No
入库日期
Manageman
Varchar
20
Yes
No
经手人
2、软件功能设计
(1)、仓库系统的结构图
主界面功能结构图
入库管理功能结构图
出库管理功能结构图仓库管理功能结构图
查询管理功能结构图
人员管理功能结构图
客户管理功能结构图
员工管理功能结构图
管理员功能结构图
(2)、功能表及功能描述:
模块
功能
功能描述
入库管理
新货入库
创建新的信息列表,输入货品信息
旧货补仓
在旧的信息列表上修改货品数量等信息
出库管理
出库修改
在货品信息列表上修改库存数量信息
仓库管理
信息管理
在货品信息列表上修改供应商等信息
货物清仓
当该货品需要清仓不再进货时进行信息删除
查询管理
货品查询
根据货品编号或名称查询货品详细信息
员工查询
根据员工号或姓名查询该员工详细信息
客户查询
根据客户名称查询客户详细信息
员工管理
信息录入
输入员工详细信息
信息修改
修改员工住址电话或工资等信息
信息删除
若该员工辞职则删除该员工信息
管理员
注册
注册管理员账号、密码。
注:
只有管理员可添加注册
信息修改
修改管理员登陆密码
信息删除
删除管理员信息
客户管理
信息录入
输入客户详细信息
信息修改
修改客户地址电话等详细信息
信息删除
如该客户推出则删除该客户信息
4、系统实施
(1)、系统的界面设计:
1 登陆界面设计
2 系统主界面设计
3 入库管理界面设计
4 出库管理界面设计
5 仓库管理界面设计
6 查询管理界面设计
7 员工管理界面设计
8 客户管理界面设计
9 管理员入口界面设计
(2)、事件的设计过程:
1.登陆事件的设计
登陆事件需要在文本框中输入账号名称和密码,然后根据数据库的内容判断是否存在该用户,是否允许登陆。
程序流程图如下所示:
N
Y
2.导航栏事件的设计
导航栏主要功能就是帮助用户选择所使用的功能。
用户点击父框,显示相应的子模块。
并且根据用户所点击的链接到相应的界面。
流程图如下图所示:
开始
是否为入库
打开入库子项
是否为出库
打开出库子项
是否为仓库库
是否为查询
是否为员工
是否为客户
是否为管理员
打开仓库子项
打开查询子项
打开员工子项
打开客户子项
打开管理员子项
选择操作
选择操作
选择操作
选择操作
选择操作
选择操作
选择操作
跳转页面
T
F
T
F
T
F
T
F
T
F
T
F
T
F
3.新货入库事件的设计
由于新货入库时仓库内没有相应信息,所以在处理时应该录入详细数据。
并添加到数据库新项中。
处理过程如下图所示:
3.旧货补仓事件的设计
旧货补仓处理过程类似于新货入库,如下图所示。
但是由于原先已经有该物品的信息,所以只需修改物品的库存信息即可。
3.出库修改事件的设计
货品出库时由于数据库中已经存在该物品的数据,所以只需要根据货号修改库存信息即可。
输入信息后判断信息是否填写正确,若是正确就修改数据库信息。
否则就报错,重新输入。
过程如下图所示:
F
T
4.仓库信息管理事件的设计
仓库信息管理时由于数据库中已经存在该物品的数据,所以只需要根据货号修改库存信息即可。
由于货品信息部可能完全改变,所以需要具有部分修改的功能。
输入信息后判断信息是否填写正确,若是正确就执行该操作数据库信息。
否则就报错,重新输入。
过程如下图所示:
F
T
5.清仓管理事件的设计
货品清仓时由于数据库中已经存在该物品的数据,所以只需要根据货号删除掉库存信息即可。
输入信息后判断信息是否填写正确,若是正确就执行操作数据库信息。
否则就报错,重新输入。
过程如下图所示:
F
T
6.货品查询事件的设计
货品查询需要在文本框中输入相应的货号,首先判断该货物是否存在,如不存在或输入错误,则跳转到错误界面。
如果存在则输出货品的详细信息。
开始
输入货号
打印
结束
判断数据存在
报错
6.员工查询与客户查询事件的设计
员工查询和客户查询处理过程类似于货品查询,流程图相同如上图。
7.员工信息录入事件的设计
员工信息录入类似于新货入库信息的录入。
需要将员工的详细信息输入数据库。
如该项不存在则可以在该项写无。
事件流程图参见新货入库事件图。
8.员工信息修改事件的设计
员工信息修改类似于仓库管理信息的修改。
由于数据库中已经存在所以只需要修改相应的信息即可。
事件流程图参见仓库管理信息修改事件图。
9.员工信息删除事件的设计
员工信息删除类似于仓库管理的清仓管理。
由于数据库中已经存在所以只需要删除相应的信息即可。
事件流程图参见仓库管理信息修改事件图。
10.其他事件的设计
客户管理和管理员入口管理子选项的事件处理与员工信息管理相类似。
处理流程相同。
(3)、主要代码描述:
1.登陆模块主要代码
<%
//获取request中传递的参数
Stringusername=newString(request.getParameter("username").getBytes("iso-8859-1"),"gb2312");
Stringpassword=newString(request.getParameter("password").getBytes("iso-8859-1"),"gb2312");
ResultSetresult=null;
try
{
//构造SQL语句
StringsqlStr="selectIDfromtb_userwhereusername='"+username+"'andpassword='"+password+"'";
//设置连接
database.setConnection();
//设置SQL语句
database.setSqlStr(sqlStr);
//执行插入数据操作
result=database.getResult();
if(result.next()){}
else{response.sendRedirect("index.jsp");}
}
catch(Exceptionex)
{
out.println("插入数据操作失败!
");
}
%>