《库存管理系统(MIS)毕业设计.docx》由会员分享,可在线阅读,更多相关《库存管理系统(MIS)毕业设计.docx(24页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 摘要随着现代工业的发展,计算机信息管理系统越来越受到企业重视,它已经进入了人类社会各个领域并发挥着越来越重要的作用。库存管理系统是典型的信息管理系统(mis),其开发主要包括后台数据库的建立和维护以及前台应用程序的开发两个方面。对于前者要求建立一个数据一致性和完整性强,数据安全性好的库;而对于后者则要求应用程序具有功能完备,易用等特点。该系统具有检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等优点,可减少更多的人力物力,这些都能够极大地提高货品库存的管理效率。达到了数据的一致性和安全性,且应用程序功能完备,符合了库存管理系统作为典型的信息管理系统(MIS)的要求。关键词:库
2、存管理系统,数据库 AbstractWith the development of modern industry, the information management system of the computer is being paid attention to by enterprises. It has come to pervade every aspect of our lives and play a more and more important rloe. Stock management system is a typical manaement information
3、 system (mis), Which mainly includes database creation and maintenance,and front-end application development aspects . the fromer requires a strong consistency and integrity of data ,and data with good security ;while the latter requires the application functional ,easy to use and so on . The system
4、 hasthe advantages of quick search, find convenient, high reliability,large storage capacity, confidentiality good, long life, low cost, so is can greatly improve the efficiency of stock management. Having reached the consistency and security of the data, and the application program function is comp
5、lete, have accorded with the administrative system of the stock as the request for the typical information management system (MIS). 目录1绪论51.1选题背景和意义51.2国内外研究现状52相关理论与技术62.1理论基础-MIS系统简介62.2相关技术简介72.2.1 软件工程 面向对象理论72.2.2 HTML JSP JavaBean简介72.2.3 数据库技术 JDBC83.系统的分析与设计93.1需求分析93.1.1可行性分析93.1.2软件需求分析93.
6、2总体设计103.2.1系统逻辑结构103.2.2部门管理流程图103.2.3主要 出入货流程图113.3系统详细设计123.3.1数据库结构及E-R图123.3.2表结构说明错误!未定义书签。4系统的实现174.1登录库存管理系统174.1.1用户登录174.1.2用户登录成功174.2系统功能184.2.1部门管理模块184.2.2公告管理模块204.2.3员工管理模块204.2.4货物型号管理204.3库存管理204.3.1货物入库204.3.2货物出库224.3.3日志管理235总结3参考文献31.绪论1.1选题背景和意义随着我国经济的飞速发展,各种类型规模的公司企业迅速崛起,许多从事
7、生产和经营管理的企业都有自己生产和销售的产品,而这些产品都需要存储在仓库中,对于每个企业来说,随着企业规模的不断扩大,产品数量的急剧增加,所生产的产品种类也会不断的更新和发展,有关产品的各种信息量也会成倍增长。面对庞大的信息量,如何有效的管理库存产品,对这些企业来说是非常重要的。所以这就需要由库存管理系统来提高库存管理工作的效率,这对信息的规范管理、科学统计和快速查询,减少管理方面的工作量,同时对于调动广大员工的工作积极性,提高企业的生产效率。一直以来人们使用传统人工的方式管理文件库存,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维
8、护都带来了不少的困难。 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。库存管理系统是一个企业不可缺少的部分,它的内容对于单位的决策者和管理者来说都至关重要,所以库存管理系统应该能够为用户提供充足的信息和快捷的查询手段。该系统能够提供较为完备的功能,对于提高工作效率、加快仓库管理的自动化具有较为重要的意义。仓库管理系统属于典型的信息管理系统(MIS),它能够抛开繁琐的信息录入工作,避免由于疲劳产生的人为错误,并且给信息的保存等管理工作带来极大的方便,并且也提高了其安全性。为此库存行业的经营者在日常的经营过程中迫切需要
9、一个半智能化的系统来减轻日常经营的复杂度、繁琐度,增加服务客户的准确率,进而增加行业中的竞争力,提升盈利水平。1.2国内外研究现状信息管理系统(MIS)的概念是1961年美国人J.D.GALLAGHER首先提出来的.计算机在管理中的应用开始于1954年,当时美国首先用计算机处理工资单。40多年来,计算机在处理管理信息方面发展迅速。现在,美国在财务会计上90%的工作由计算机完成;物资管理中80100%的信息处理由计算机完成;计划管理中是8090%。据计算机应用方面发展较快的国家统计,计算机用于经济管理的约占80%;用于科技运算的占8%;用于生产过程控制的占12%。我国在全国范围内推广计算机在管理
10、中的应用,是在70年代末开始的,虽然起步较晚,近几年发展却较快,特别是微型计算机的出现和普及为信息处理提供了物美价廉的手段,对于推动我国管理信息处理的现代化起了重要的作用。在世界发达国家,库存管理的计算机化水平已经很高了,尽管我国的生产企业在这方面也有了很强的意识和长足的进步,但仍存在这样、那样的一些问题。关于库存管理,在美国,有些企业库存周期只有8天,但有些中国企业的库存周期长达51天,仅运输成本一项,占销售额的比例就高达20%-30%。从物流成本构成看,中国物流管理成本占总成本的14%,而美国只有3.8%。提高库存管理的效率,也是企业科学化、正规化管理,与世界接轨的重要条件。因此,开发这样
11、一套库存管理软件成为很有必要的事情。2.相关理论与技术2.1理论基础-MIS系统简介MIS(管理信息系统-Management Information System)系统 ,是一个由人、计算机及其他外围设备等组成的能进行信息的收集、传递、存贮、加工、维护和使用的系统。要指的是进行日常事物操作的系统。这种系统主要用于管理需要的记录,并对记录数据进行相关处理。MIS系统通常用于系统决策,例如,可以利用MIS系统找出目前迫切需要解决的问题,并将信息及时反馈给上层管理人员,使他们了解当前工作发展的进展或不足。换句话说,MIS系统的最终目的是使管理人员及时了解公司现状,把握将来的发展路径。个完整的MIS
12、应包括:辅助决策系统(DSS)、工业控制系统(IPC)、办公自动化系统(OA)以及数据库、模型库、方法库、知识库和与上级机关及外界交换信息的接口。管理信息系统把人和计算机结合起来对组织进行全面管理的系统,它综合运用了计算机技术、通信技术、管理技术和决策技术,与现代管理思想、方法和手段结合起来,为组织的管理活动提供支持的工具。管理信息系统具有收集处理和传输信息的功能,这是它的基本功能,但如果把这些基本功能应用于管理各种业务过程时,管理信息系统就赋予了具体的任务,管理信息系统的发展与信息技术的进步和管理方法的改进密切相关,按信息机应用的变化可以把管理信息系统的发展分为大型机系统、微机系统、分布式系
13、统和网络系统四个阶段。传统的MIS系统的核心是CS(Client/Server-客户端/服务器)架构,基于Web的MIS系统是对传统MIS系统概念上的扩展,它不仅可以用于高层决策,而且可以用于进行普通的商务管理,心是BS(Browser/Server-浏览器/服务器)架构。BS架构比起CS架构有着很大的优越性,传统的MIS系统依赖于专门的操作环境,这意味着操作者的活动空间受到极大限制;而BS架构则不需要专门的操作环境,在任何地方,只要能上网,就能够操作MIS系统。 ERP是Enterprise Resource Planning(企业资源计划)的简称,针对物资资源管理(物流)、人力资源管理(人
14、流)、财务资源管理(财流)、信息资源管理(信息流)集成一体化的企业管理软件。利用计算机技术,把企业的物流、人流、资金流、信息流统一起来进行管理,把客户需要和企业内部的生产经营活动以及供应商的资源整合在一起,为企业决策层提供解决企业产品成本问题、提高作业效率、及资金的运营情况一系列动作问题,使之成为能完全按用户需求进行经营管理的一种全新的行之有效的管理方法。CRM(Customer Relationship Management)即客户关系管理,是指企业用CRM来管理与客户之间的关系。在不同场合下,CRM可能是一个管理学术语,可能是一个软件系统,而通常所指的CRM,是指用计算机自动化分析销售、市
15、场营销、客户服务以及应用支持等流程的软件系统。它的目标是缩减销售周期和销售成本、增加收入、寻找扩展业务所需的新的市场和渠道以及提高客户的价值、满意度、赢利性和忠实度。2.2相关技术简介2.2.1 软件工程及面向对象理论软件工程(software engineering):是用工程、科学和数学的原则与方法开发、维护计算机软件的有关技术及管理方法v 软件工程包含以下四个元素:方法(methodologies) 语言(languages) 工具(tools) 过程(procedures)软件的生命周期:可行性研究 需求分析 实现(概要设计、详细设计、实现(即编码与单元测试)、组装测试、验收测试共5个
16、阶段) 软件的使用和维护面向对象:即将现实世界的物抽象成对象,现实世界中的关系抽象成类、继承,帮助人们实现对现实世界的抽象与数字建模。通过面向对象的方法,更利于人理解的方式对于复杂系统的进行分析、设计与编程。同时,面向对象能有效提高编程的效率,通过封装技术,消息机制可以像搭积木的一样快速开发出一个全新的系统。2.2.2 HTML JSP javabean简介Html是英文 HyperText Markup Language 的缩写,中文意思是“超文本标志语言”,用它编写的文件(文档)的扩展名是.html或.htm,它们是可供浏览器解释浏览的文件格式。通过get和post方法向服务器发送消息,获
17、得服务。Html语法中有众多的标签,通过这些标签来达到控制页面显示格式的作用。JavaScript(Java脚本)是一种基于对象(Object)和事件驱动(Event Driven)并具有安全性能的脚本语言,是由Netscape公司的LiveScript发展而来的,使用JavaScript可以轻松的实现和HTML的互操作,并且完成丰富的页面交互效果,它是通过嵌入或调入在标准的HTML语言中实现的,它的出现弥补了HTML语言的缺陷,它是Java与HTML折衷的选择。定义格式:alert(Hello World!) ;/ 弹出一个警告框alert(“Hello 河北农业大学!) ;/ 弹出一个警告
18、框Servlet是用于WEB服务器端的Java小程序,它在WEB服务器端被解释执行,用于处理客户端的请求和产生动态网页内容。 Applet是用于浏览器端的Java小程序,在浏览器端被解释执行,用于在HTML网页中实现一些桌面应用程序的功能,被称为“小应用程序”。源于Applet的命名,这种WEB服务器端的Java小程序就被命名为了Servlet,与Applet相对应,Servlet可以被称之为“小服务程序”。 Servlet是Java2.0中新增的一个全新功能,是一种采用Java技术来实现CGI功能的一种技术。(过程:Web客户向Servlet容器发出HTTP请求;Servlet容器解析Web
19、客户的HTTP请求;Servlet容器创建一个HttpRequest对象,在这个对象中封装了HTTP请求信息;Servlet容器创建一个HttpResponse对象;Servlet容器调用HttpServlet的service方法,把HttpRequest和HttpResponse对象作为service方法的参数传给HttpServlet对象;HttpServlet调用HttpRequest的有关方法,获取HTTP请求信息;HttpServlet调用HttpResponse的有关方法,生成响应数据;Servlet容器把HttpServlet的响应结果传给Web客户。)JSP(Java Serv
20、er Page)其本质上属于servlet类,执行时先由JSP Engine先将它转换成Servlet代码,接着将它编译成类文件载入执行,且只有当客户端第一次请求JSP时,才需要将其转换、编译。(优点:1优良的性能 优于CGI,PHP,ASP;2平台无关性 操作系统无关,Web服务器无关;3可扩展性 tag的扩展机制,简化页面开发)JSP内置对象:1. 与Servlet有关的隐含对象Page config2. 与Input/Output有关的隐含对象Out request-request.getParameter()可获得请求页的参数response-response.sendRedirect
21、()用于跳转页面3. Jsp执行时,提供有关Context的隐含对象Session :session.setAttribute(“name,“value) ; session.getAttribute(“name);Application pageContext4. 与Error有关的隐含对象 :ExceptionJavaBean 其实就是一个Java类,可以提高代码复用性,完善分布式应用体系。可以利用JavaBean封装事务逻辑,进行数据库操作等,可以很好的实现业务逻辑和前台程序(jsp文件)的分离。2.2.3数据库技术 JDBC数据库是一个通用化、集成化的相关数据的集合,能满足各种不同的需
22、求,数据库的创建、运行和维护是在数据库管理系统控制下实现的,并可为各种用户共享。此次设计中就使用了开源的Mysql数据库,用来达到库存管理中数据存储的需求。JDBC:( Java DataBase Connectivity )是Java与数据库的接口规范,JDBC定义了一个支持标准SQL功能的通用低层的应用程序编程接口(API)。它由Java 语言编写的类和接口组成(java.sql包) ,旨在让各数据库开发商为Java程序员提供标准的数据库API。 Class.forName(driver);/注册数据库驱动 Conncetion con = DriverManager.getConnect
23、ion(url,user,password);/获取数据库连接 Statement st = con.createStatement();/创建statement boolean hasResultSet = st.execute(sql);/执行操作3.系统的分析与设计3.1需求分析3.1.1可行性分析可行性研究包括:经济可行性、技术可行性、法律可行性、操作可行性等等。(1)经济可行性:经济可行性分析中最重要的内容之一是成本效益分析。本次设计作为简单的库存管理系统,主要由学生在导师的指导下,采用开源软件完成,因此经济上基本没有资金需求(2)技术可行性:我校计算机相关专业有不少对本项目有深入了
24、解的导师,在系统设计中,如果学生遇到技术问题可以及时得到导师的帮助。3.1.2软件需求分析本库存管理系统是针对现在工业中的实际需求而开发的,实现了货物的出库、入库、仓库信息的基本操作,以及对出库日志的管理等基本信息的管理,实现了库存查询、用户管理、系统管理、密码修改、公告管理等功能。基本使企业摆脱传统的手动填写单据工作模式,节省了大量的人力、物力和财力,使得管理员从繁琐的工作中解放出来。 开发中采用了TOMCAT+MYSQL数据库来实现此B/S架构的库存管理系统。(1)库存商品信息查询 通过对商品信息的查询让工作人员可以及时的了解仓库物品的信息,为进出货物的顺利进行提供保障,根据库存计划决定是
25、否采购新商品入库,根据销售情况决定是否增加商品出库的数量,定期对货物进行检查,并统计是否有缺货商品。 (2)进出库管理 由销售情况和销售计划来定制商品的采购计划,并以订单的形式让入库员采购商品,在入库时对商品进行统计。出库由工作人员拿出库单领取货物,核对无误后对出库的货物进行统计。 3.2总体设计3.2.1系统逻辑结构根据用户的权限,进行判断若权限为3,则进入管理员界面;权限为1,为普通用户。它们之间交叉的功能,都能够进行货品入库, 货品出库以及出库日志的管理。登陆界面判断用户权限领导普通员工员工管理系统管理0000000000部门管理公告管理货物型号管理货品入库货品出库出库日志出库日志货品出
26、库货品入库修改密码,退出系统 图3-1 系统逻辑图(1)登陆界面 :系统登录主页面,在系统开发过程中参考了一些其他程序在界面美观设计方面的技术,努力使界面给人以清新、美观的感觉,使管理员或者普通用户可以快速的登录及注册。(2)管理员界面:管理员登录后可进行系统的管理和设置、员工信息的管理、货物出入库的管理。(3)普通员工界面:设计权限较低,只能进行货物出库入库、以及出库日志的管理。3.2.2部门管理流程图在部门管理模块中包含添加部门以及对相应部门的修改和删除,其流程图如图。(其他诸如:公告管理、货品名称管理、员工管理模块类似)选择部门管理部门管理添加部门输入部门信息连接数据库查询并显示连接数据
27、库并插入删除部门修改部门信息插入成功图3-2 部门管理流程图3.2.3主要出入货流程图货物入库基础库管理是此库存管理系统的核心,其核心功能是实现现有库存信息的查询、货物的出入库以及出入库日志的查询,其流程图如图。出入库管理查看库存信息入库出库输入入库信息输入出库信息数据库连接数据库连接连接成功果YN弹出入库成功信息,生成入库日志是否有结果YN结束弹出出库成功信息,生成入库日志返回出入库界面图3-3 出入货流程图进入日志管理数据库连接查看,删除日志信息结束图3-4 日志管理流程图3.3系统详细设计3.3.1数据库结构及E-R图本库存管理系统在数据库设计中,共涉及到:系统管理员表administr
28、ators,部门管理表department,库存信息表kucun,货物信息表types,日志文件表log,公告信息表news,系统控制表ctrl_system 7个表结构。administrators ( wnum varchar, wpswd varchar, tname varchar, tpri varchar, tdep varchar);departmen(sys_id,depname varchar,dep,addtime);kucun(typename,remark,sum,location);types(rec_id,typename,remark,addtime);log(c
29、heckid ,who,typename,remark,sum,cktime);news(id,title,news,dep,depname,add_time );系统主要数据关系ER图如下:(1)系统管理员ER图:员工编号为登录账号,根据权限的设置而拥有不同的功能。部门编号员工编号管理员权限密码用户名 图3-5系统管理员ER图(2)部门管理ER图:管理员可以对部门信息进行管理,包括查看、修改和删除。部门序号部门部门编号号部门名称名称添加时间管理员管理图3-6部门管理ER图货物名称库存制造商总量名称库区管理员查看(3)库存信息ER图:图3-7库存信息ER图(4)出库日志文件ER图:出库单号出库
30、日志提货人总量名称库区制造商名称物品名称名称查看管理员操作员 图3-8出库日志文件ER图(5)货物信息ER图:管理员添加编号货物信息添加时间名称制造商名称图3-9货物信息ER图(6)公告信息ER图:添加部门编号时间编号添加部门名称公告添加时间标题内容名称管理员添加,查看图3-10公告信息ER图3.3.2表结构说明管理员数据表字段名数据类型长度说明 wnumVarchar20登录代码(主键)wpswdVarchar20密码tnameVarchar20姓名tpriVarchar20权限tdepVarchar20部门表3-1管理员部门数据表字段名数据类型长度说明 Sys_idVarchar20部门序
31、号(主键)depnameVarchar20部门名称depVarchar20部门编号addtimeVarchar20添加时间表3-2部门库存数据表字段名数据类型长度说明 typenameVarchar20名称(主键)remarkVarchar20生产商sumVarchar20总量locationVarchar20库区表3-3库存出库日志数据表字段名数据类型长度说明 ckeckidVarchar20出库单号(主键)whoVarchar20提货人typenameVarchar20名称remarkVarchar20制造商 sumVarchar20数量 tnameVarchar20操作员 cktimeV
32、archar20出库日期表3-4出库日志货物信息表字段名数据类型长度说明 rec_idVarchar20编号(主键)typenameVarchar20名称remarkVarchar20制造商 addtimeVarchar20增加时间表3-5货物信息公告信息表字段名数据类型长度说明 idVarchar20编号(主键)titleVarchar20标题newsVarchar20内容depVarchar20添加部门 depnameVarchar20部门名称 addtimeVarchar20添加时间表3-6公告信息4.系统的实现4.1登录库存管理系统4.1.1用户登录本系统的用户分为管理员和普通员工,其
33、中管理员的权限(tpri)为3,员工的权限为1。由于管理员和用户的权限不同,所以登陆后的页面也是不相同的,登陆界面如下图所示:(默认管理员登录编号2222,密码2;员工1:1111,密码:1;员工2:111,密码:1)图4-1.登陆界面4.1.2用户登录成功验证登陆代码log.jsp:String lsql=select * from administrators where wnum=+wnum+ and wpswd= +spswd+;ResultSet lrs=db1.executeQuery(lsql);if(lrs.next()lrs.close();session.setAttrib
34、ute(wnum,wnum);response.sendRedirect(admins/main.jsp); else lrs.close();管理员登录界面:图4-2管理员登录界面员工登录界面:图4-3员工登录界面4.2系统功能4.2.1部门管理模块 图4-4部门管理查看部门信息核心代码:%String sql1=select * from departmen where dep 0 ;String dename=,addtime=;int depint;ResultSet rs2=db1.executeQuery(sql1); int s=0;while(rs2.next()s+;int
35、num=rs2.getInt(sys_id);dename=rs2.getString(depname);addtime=rs2.getString(addtime);%添加部门信息:图4-5添加部门页面4.2.2公告管理模块图4-6公告管理页面4.2.3员工管理模块 图4-7查看员工信息4.2.4货物型号管理 图4-8查看货物型号4.3库存管理4.3.1货物入库 图4-9入库String sql1=select * from kucun where typename=+typename+ and remark=+sbname+;ResultSet rs1=db1.executeQuery(s
36、ql1);String str=insert into rklog values(+checkid+,+typename+,+sbname+,+sbsums+,+tname+,+rktime+);db2.executeUpdate(sql1);if(rs1.next() rs1.close();db3.executeUpdate(str);String sql=update kucun set sum=sum+sbsums+ where typename=+typename+ and remark=+sbname+;db2.executeUpdate(sql);elsers1.close();
37、db3.executeUpdate(str);String sql2=insert into kucun(typename,remark,sum,location)values(+typename+,+sbname+,+sbsums+,+xx+);/要命的xxdb2.executeUpdate(sql2);% 图4-10查看库存详细信息查看:String attention=; while(rs.next()s+;typename=rs.getString(typename);remark=rs.getString(remark);sum=rs.getString(sum);int total
38、=Integer.parseInt(sum);if(total按货物名称查询:String sql2=select * from kucun where typename=+typename+;ResultSet rs2=db2.executeQuery(sql2);int sumadd=0;while(rs2.next()sumadd+=Integer.parseInt(rs2.getString(sum);4.3.2货物出库图4-11出库String sql=update kucun set sum=sum-+sums+ where typename=+typename+ and rema
39、rk=+remark+;db1.executeUpdate(sql);String sql1=insert into log values(+checkid+,+who+,+typename+,+remark+,+sums+,+tname+,+cktime+);db2.executeUpdate(sql1);4.3.3日志管理图4-12管理日志出库日志代码:%while(rs2.next()s+;id=rs2.getString(checkid);who=rs2.getString(who);typename=rs2.getString(typename);remark=rs2.getString(remark);