欢迎添加微信互相交流学习哦!
项目源码:https://gitee.com/oklongmm/biye
一、设计说明书
1、开发背景:仓库管理系统是在管理科学、系统科学、计算机科学等的基础上发展起来的综合性边缘科学。在21世纪信息高速发展的时代中,仓库管理系统具有很重要的作用,它的预测和辅助决策的功能,即利用现代管理的决策和支持。
仓库管理系统是一个人机系统,同时它又是一个一体化集成系统。仓库管理系统是信息系统的一个子系统,它以计算机技术、通讯技术和软件技术为技术基础,同时将现代管理理论、现代管理方法及各级管理人员融为一体,最终为某个组织整体的管理与决策服务,是由人和计算机组成的能进行管理信息的收集、传递、存储、加工、维护和使用的系统。
仓库管理系统的基本结构可以概括为四大部件,即信息源、信息处理器、信息用户和信息管理者。因此,一个成功的管理信息系统应该具有可靠的硬件、实用的软件、强有力的现代化管理水平。具体讲,管理信息系统的三大支柱是:计算机网络、数据库和现代化的管理,这三打支柱称为管理信息系统的扩展部件。
2、开发趋势:现在国内外对此类系统的开发与研究也是很有实用性的,基本上能满足各企业的自身特点,来进行仓库方面的管理,同时,改类系统又都在不断地深入与发展,来适用更多的企业,一般都能运用于各个企业的仓库管理,但是都没有针对大众的广泛应用,只能运用某个企业或单位,这一点还有待于今后的进一步开发与实践。
今后此类软件将会向条码仓库管理系统发展,现阶段,伴随物流及管理信息化、网络化的发展,应用条码技术进行仓库管理、实现仓库作业自动化,将是一个必然的发展趋势,也是需要迫切解决的一个现实问题。随着信息化技术的不断提高和应用的日渐普及,更多的商品拥有自己的条码,而且,使用条码化工作代替传统作业模式,减少了手工输入,这样不但提高了作业效率,还能确保资料正确,并减少因人为失误所造成的损失。
3、可行性:在计算机技术飞速发展的今天,计算机管理已经在很多领域得到广泛的应用。计算机化已成为各行各业现代化一个不可或缺的因素。因此,仓储物资管理系统已成为管理中的重要组成不分。目前很多仓库的信息管理还比较落后,劳动强度大且效率低,工作人员的大量时间都消耗在繁杂的事务上。因此,开发仓储物资管理系统将大大提高他们的工作效率。物品管理是一个非常重要和繁杂的事务,需要完成物品的购入、存储、销售等很多操作,这就使得使用仓储物资管理系统来管理这样的事务有着很好的效果。
4.开发工具: 以Orcal作为后台数据库平台,以My Eclipse作为前台开发工具。
二、需求分析
经过调查,对仓库管理的业务流程进行分析。库存的变化通常是通过入库、出库操作来进行。系统对每个入库操作均要求用户填写入库单,对每个出库操作均要求用户填写出库单。在出入库操作同时可以进行增加、删除和修改等操作。用户可以随时进行各种查询、统计、报表打印、账目核对等工作。另外,也可以用图表形式来反映查询结果。
系统开发的总体任务是实现各种信息的系统化、规范化和自动化。系统功能分析是在系统开发的总体任务的基础上完成。本仓库管理系统需要完成功能主要有:
用户登录:实现根据不同用户的权限进行登录,并转到相应权限的操作。
修改密码:修改自己的密码,防止密码泄露。
物资入库:可以进行采购登记,审核入库,借出归还。
物资出库:可以进行部门领用,物资借出,借出审核。
物资处理:可以进行库存盘点和部门报损。
查询统计:可以对该仓储物资进行各种查询,包括采购,入库,部门领用,部门报销,借出及部门汇总。
基础信息:可以进行供应商管理,物资管理和部门管理
系统管理:可以进行用户管理及系统的初始化。
三、系统设计
1、系统总体设计
用户登录:实现根据不同用户的权限进行登录,并转到相应权限的操作。
修改密码:修改自己的密码,防止密码泄露。
物资入库:可以进行采购登记,审核入库,借出归还。
物资出库:可以进行部门领用,物资借出,借出审核。
物资处理:可以进行库存盘点和部门报损。
查询统计:可以对该仓储物资进行各种查询,包括采购,入库,部门领用,部门报销,借出及部门汇总。
基础信息:可以进行供应商管理,物资管理和部门管理
系统管理:可以进行用户管理及系统的初始化。
系统功能模块图如所示:
2、仓储物资管理系统的数据流图:
2.1数据流图
仓储物资管理系统中的数据流主要贯穿于管理工作中的业务操作流程之中,涉及到员工登陆、进货、销售、退货、财务统计等。
图一 总数据流图
图二 进货管理流图
图三 销售管理流图
2.2数据流分析
仓储物资管理系统中的数据流程主要描述如下:
员工登陆成功后可进行进货、物品入库、入库登记查询、库存查询、销售退货处理、销售查询、销售物品等操作。
3、数据字典
数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。数据流图和数据字典共同构成系统的逻辑模型。
表3-1数据字典列表
数据存储名称:部门信息
数据来源:部门信息表
数据组成:部门信息=部门工号+姓名++联系电话+备注
数据位置:供部门基本信息编辑模块使用
描述:存储了部门的信息
数据存储名称:用户信息
数据来源:用户信息表
数据组成:用户信息=客户编号+客户姓名+工作单位+联系地址+电话
数据位置:物品销售时使用
描述:存储了用户的基本信息
数据存储名称:供应商信息
数据来源:供应商信息表
数据组成:供应商信息=供应商编号+公司名称+公司地址+邮政编码+联系电话+银行姓名+银行账号
数据位置:进购物品时使用
描述:存储了供应商的基本信息
数据存储名称:物品信息
数据来源:物品信息表
数据组成:物品信息=物品编号+物品名称+物品类型+参考价格+生产商+计量单位
数据位置:物品进购、销售时使用
描述:存储了物品的基本信息
数据存储名称:入库信息
数据来源:入库信息表
数据组成:入库信息=入库编号+物品编号+仓库编号+入库时间+入库数量
数据位置:物品入库时使用
描述:存储了入库物品的基本信息
数据存储名称:库存信息
数据来源:库存信息表
数据组成:库存信息=仓库编号+物品编号+仓库编号+库存数量
数据位置:员工将物品入库和出库时使用
描述:存储了库存物品的基本信息
数据存储名称:采购信息
数据来源:采购信息表
数据组成:采购信息=销售编号+物品编号+用户编号+销售日期+销售数量+销售金额
数据位置:物品销售、退货时使用
描述:存储了物品销售的基本信息
数据存储名称:仓库信息
数据来源:仓库信息表
数据组成:仓库信息=仓库编号+仓库名称+员工工号
数据位置:存储物品时使用
描述:存储了仓库的信息
数据存储名称:供应信息
数据来源:供应信息表
数据组成:供应信息=供应编号+供应商编号+物品编号
数据位置:购进物品时使用
描述:存储了供应的信息
四 、数据库设计
4.1数据库概念结构设计:
本系统主要有员工、仓库、物品、客户、供应商五个实体集
本系统的E-R图如图所示:
图4-1E-R关系图
图4-2部门实体图
部门实体属性:部门编号(主)、部门姓名、部门电话、备注
图4-3审核实体图
审核实体属性:审核编号(主)、审核时间、审核人
图4-4报损实体图
报损实体属性:报损编号(主)、部门编号、商品编号、报损数量、损坏时间、损坏金额、负责人、原因
图4-5采购实体图
采购实体属性:采购编号(主)、采购单号、商品编号、数量、金额、负责人、操作员、采购时间
图4-6商品实体图
商品实体属性:商品编号(主)、名称、规格、单位、价格、出产厂家
图4-7入库实体图
入库实体属性:入库编号(主)、入库单号、仓库编号、时间、操作员
图4-8出库实体图
出库实体属性:出库编号(主)、入库单号、商品编号、数量、负责人、金额、借用人、借用人电话、单位、借出时间、生产厂家、操作员、归还人、归还时间
图4-9供应商实体图
供应商实体属性:供应商编号(主)、名称、地址、联系方式、邮政编码、传真、银行名称、银行卡号、备注
图4-10库存盘点实体图
库存盘点实体属性:库存编号(主)、仓库编号、商品编号、价格、数量
图4-11库存实体图
库存实体属性:库存编号(主)、商品编号、金额、供应商编号、负责人、时间、情况
图4-12仓库实体图
仓库实体属性:仓库编号(主)、商品编号、数量
图4-13仓库实体图
用户实体属性:用户编号(主)、姓名、密码、入库管理、出库管理、查询统计、基础信息、系统管理
4.2数据库逻辑结构设计:
根据关系模型的转换原则,上面的E-R图可以转换为如下所示的关系模型:
部门(部门编号(主)、部门姓名、部门电话、备注 )
审核(审核编号(主)、审核时间、审核人 )
报损(报损编号(主)、部门编号(外)、商品编号(外)、报损数量、损坏时间、损坏金额、负责人、原因 )
采购(采购编号(主)、采购单号(外)、商品编号(外)、数量、金额、负责人、操作员、采购时间 )
商品(商品编号(主)、名称、规格、单位、价格、出产厂家 )
入库(入库编号(主)、入库单号(外)、仓库编号(外)、时间、操作员 )
出库(出库编号(主)、入库单号(外)、商品编号(外)、数量、负责人、金额、借用人、借用人电话、单位、借出时间、生产厂家、操作员、归还人、归还时间 )
供应商(供应商编号(主)、名称、地址、联系方式、邮政编码、传真、银行名称、银行卡号、备注)
库存盘点(库存编号(主)、仓库编号(外)、商品编号(外)、价格、数量 )
库存(库存编号(主)、商品编号(外)、金额、供应商编号(外)、负责人、时间、情况 )
仓库(仓库编号(主)、商品编号(外)、数量)
用户(用户编号(主)、姓名、密码、入库管理、出库管理、查询统计、基础信息、系统管理)
通过以上E-R图的设计和分析,可以为仓储物资管理系统创建11张数据表,分别如下表所示:
表4-1 部门表(TB_BRANCH)
表4-2 审核表(TB_CHECK)
表4-3 报损表(TB_DAMAGE)
表4-4 采购表(TB_GETUSE)
表4-5 商品表(TB_GOODS)
表4-6 入库表(TB_INSTORAGE)
表4-7 出库表(TB_LOAN)
表4-8 供应商表(TB_PROVIDER)
表4-9 库存盘点表(TB_STOCK_DETAIL)
表4-10 库存表(TB_STOCK_MAIN)
表4-11 仓库表(TB_STORAGE)
表4-12 用户表(TB_USER)
五、系统运行结果示意图
图5-1 系统登录界面
图5-2添加新用户
图5-3修改用户权限
图5-4 添加供应商信息
图5-5添加物资信息
图5-6添加部门信息
图5-7物资采购登记
图5-8采购单查询
图5-9物资采购单审核
图5-10入库查询
图5-11入库详细信息查看
图5-12物资入库后的库存盘点
图5-13部门领用物资
图5-14 部门领用之后的库存盘点
图5-15物资借出
图5-16 物资借出审核
图5-17物资借出之后的库存盘点
图5-18借出物资归还
图5-19借出归还后的库存盘点
图5-20部门报损
图5-21部门领用查询
图5-22部门领用汇总
图5-23部门报损查询
图5-24部门报损汇总
图5-25借出查询
图5-26部门汇总
图5-27系统进行初始化
图5-28修改密码
六、心得体会
这次的数据库设计我选择了仓储物资管理系统,这个数据库设计是综合性的,这对我也是一个锻炼,我要用所学过的数据库方面的知识和软件工程方面的知识来分析系统需求和其中的实体关系。
在这次数据库设计过程中,我首先对仓储物资管理进行了了解,也查询了很多的资料,仔细分析了该管理对系统功能的要求,并根据这些功能要求对系统进行定义,确定系统必须做什么。之后着手对系统展开设计工作,首先是概念结构设计,根据需求分析结果总结系统内实体及联系并绘制系统的局部ER图然后画出全局ER图。结合需求分析与概念结构设计把设计好的ER图转换为DBMS所支持的数据模型所符合的逻辑结构,运用数据库管理系统建好表和相关约束。
数据模型的建立对于整个系统的建设至关重要,如果刚开始建立的不好,则以后的工作会显的相当的苦难,总会出现修修改改的现象,当然,这也和开始做的需求有关。数据库的建设还是有相当的难度的,数据库的建设需要开发软件人员具有较高的综合素质。不仅专业素质要强,对其他行业的业务也要有较广泛的了解。我在后期的写代码过程中明显感觉到我的数据库设计的还存在一些问题,这些问题导致我在后期的制作过程中遇到了不少的麻烦。
在这次课程设计中虽然遇到过很多的困难,但我从中学到了很多有用的知识,通过不断的翻阅资料,各个问题的解决使我对系统的设计越来越感兴趣。相信我从这次课程设计所学到的东西可以让我在以后的学习及工作中受益无限。
参考资料:
[1] 单建魁、赵启升 数据库系统实验指导 清华大学出版社
[2] 耿祥义、张跃平 Java 2 实用教程(第三版) 清华大学出版社
[3] 吴其庆 Java综合实例经典 冶金工业出版社
[4] 张广彬、孟红蕊、张永宝 Java课程设计案例精编 清华大学出版社
[5] 刘军、张景安、赵慧勤、付文博 数据库应用系统开发技术 机械工业出版社
[6] 许勇、郭磊、丽景等编著 数据库管理应用与开发 清华大学出版社