个人作品基于条码的物资管理系统的前台设计与实现Word下载.docx
《个人作品基于条码的物资管理系统的前台设计与实现Word下载.docx》由会员分享,可在线阅读,更多相关《个人作品基于条码的物资管理系统的前台设计与实现Word下载.docx(31页珍藏版)》请在冰豆网上搜索。
![个人作品基于条码的物资管理系统的前台设计与实现Word下载.docx](https://file1.bdocx.com/fileroot1/2022-11/25/ff057fec-8eea-471e-a2e7-7389b07cccee/ff057fec-8eea-471e-a2e7-7389b07cccee1.gif)
运算精度高、速度快、具有超强记忆力、存储容量大[1],这些优点使得企业的管理效率水涨船高,也使得企业科学化,正规化管理能力暴增。
1.2项目背景
我国处于社会主义初级阶段,国内中小型企业普遍存在管理体系不清晰,职能越权,物资管理紊乱,标准化程度低和工作效率低的问题[2]。
从中国ERP的软件市场和全球的市场看来,此类软件的发展趋势良好,需求量大。
有鉴于此,也考虑到物资的管理对企业的发展十分重要,紊乱的手工输入效率低下,妨碍企业壮大发展的的道路。
为了达到企业管理自动化和事半工倍的效果。
使得工作人员可以甩开手工包袱,高层管理人员对物资的流程的情况了然于胸,企业负责人管理企业更有科学依据。
因此,开发一套物资管理软件十分有必要,对企业的管理效率,可以提高,对企业的综合效益大大的有裨益,对节省人力物力也大有好处,对数据的安全性和稳定性,有极高的保证。
1.3系统开发意义
物资管理的部门作为企业里面各部门的桥梁、纽带,也是企业里面物资管理的第一保障部门。
也正是由于物资管理部门是关键的中转协调的部门,设计一套物资管理信息系统软件,合格的把本企业各部门产生的唯一的生产资料合效益,保质量的提供与相关的企业或部门,有着非凡的意义。
从小处上讲,一个好的物资管理信息系统可以提高生产的效率与物资的流转速度,因而增加了管理的现代化手段,提升了企业的综合效益和经济效益。
从大处上讲,它响应了国家的信息化、现代化潮号召,缩减了整个产品的社会化生产的周期。
此系统的目的是实现出入库和人员部门的有效管理,通过简单数字对单位购入的商品,库存的商品与卖出商品进行编号,以此实现了条码识别商品的功能,这样,有助于将企业的现有库存量,出货数量和入货数量作为科学的定据,使相关工作人员更好的为决定作出合理的决策,从而降低了商品的损失,避免低入高出的决策。
系统是依据企业物资相关管理的特点,集部门管理、商品管理和人员管理等相关功能模块,为企业节约综合资源的物资管理系统。
1.4开发工具和框架
1.4.1JSP简介
JSP(JavaServerPages)JavaServerPages(JSP)技术,基于Java的一门技术,近年来,越来越多的软件开发者喜欢使用JSP技术开发软件,它是使得软件开发者能够简单快速响应客户端的请求而动态生成各种各样格式文档的Web网页的规范,JSP页面由传统的HTML代码和加入其中的java程序段或jsp标记组成,JSP编译与运行于web容器,可访问JavaApi,继承了java平台的无关性和安全性,同时也是以java和Servlet为基础的动态网页生成技术,JSP的底层实现技术是JavaServle[3]。
1.4.2MyEclipse
MyEclipse软件是一个可以用于开发J2EE和Java的Eclipse插件集合,开发者们可以利用它,在数据库和JavaEE的开发、设计、发布等多个方面,大大地提高工作效率。
它拥有包含了功能齐全的编码、调试、测试和发布功能的JavaEE集成开发环境,完整的支持Struts,HTML,JSP,Javascript,CSS,Spring,SQL和Hibernate[4],换句话说,MyEclipse是包含了现今全部主流开源产品的特有的Eclipse开发工具。
1.4.3Struts构架技术简介
Struts的名字取自于在建筑与老式飞机中骨架所使用的支持金属架。
掌握学习还有利用好该架构,它将可以解决当中一些繁絮无需的工作。
[5]struts框架是开源的,拥有Taglib标记库和页面导航的优点,同时使得基于MVC的WEBApp的开发过程变得更加方便轻松。
Struts体系结构:
从MVC的角度来说struts框架中的组件,可以得到框架中的三大块:
模型M,视图V和控制器C。
1.4.4MVC机制简介
MVC即Model-View-Controller,模型-视图-控制器,M是指模型,V是指视图界面,C是控制器,它最早出现于Smalltalk语言,使用MVC是为了分离模型和视图的实现代码,从而让相同的程序可以表达不同的形式。
控制层的存在则是为了使得模型和视图可以同步,如果视图发生更改,视图层也会同步到位。
模型-视图-控制器(MVC)实质是这样的,M控制业务逻辑处理,V负责数据的视图显示,C控制程序的流程。
为解决传统的jsp遇到的问题,基于MVC设计思想,Sun提出了JSPModel1和JSPModel2。
1.4.5数据库简介
简而言之,数据库就是存放数据的虚拟仓库。
只不过在非虚拟的计算机设备上,是按一定的格式严格而安全地存放好数据。
[6]以数据作为对象的数据库,作为一种数据集合,目的是为了达到某种特殊的情况特定的需要,根据某项特定的数据模型在计算机系统中操作和控制数据,实现最基本的增删改查的功能,数据库系统作为操控数据的工具,其数据特点是大量性、持久性、可靠性与共享性。
在电子商务系统中,Web开发出了与客户端交互的可靠方法,得益于此,我们可以实现Web服务器和数据库系统的数据交互,完善对数据的增删改查功能。
管理员就可以简单地通过操作视图界面良好的浏览器来操作数据库里的数据。
简单的说,数据库是有逻辑的,可共享的,储存大量的数据的集合。
1.5条码技术简介
就像今天的邮政的编码,条码映射的信息反映了收信人的地址。
因而,含量丰富的信息得以存储在条码里,如今,它成为了pos系统,EDI,电子商务,供应链管理的技术基础,也成为了物流管理现代化的重要技术手段。
条码技术包括条码的编码技术,条码标示符号技术等,是实现计算机管理和电子数据交换不可少的前端采集技术[7]。
1.6系统运行环境配置
(1)操作系统:
WindowsXPProfessional、Windows7,Windows8。
(2)CPU:
处理数据的能力不用要求太严格,只要能够安全快捷地运行Windows系列就可以了。
当然咯,CPU等相关硬件的数据处理速度越快,运行系统越快捷,更能保持我们良好开发的心情。
(3)内存:
最低配置128MB,建议使用256MB以上内存,如果使用Windows2000或WindowsX建议使用256MB以上内存。
(4)硬盘空间:
所需的组件必须要50MB以上的硬盘空间来安放才能运行。
(5)开发平台:
MyEclipse,MicrosoftSQLServer2005
2需求分析
说明:
要创建一个软件,必不可少的第一步就是进行需求分析,这样才能在设计软件时充分了解用户的各项要求,设计的软件的各个功能才能符合客户的标准,接下来就是我们就对基于条码的物资管理系统进行简单的需求分析概况。
2.1可行性分析
可行性分析,有些人也可以称它为可行性研究,简单地说,就是要求在调查系统的基础上,针对开发这个新系统是否有必要和有意义等,从技术、经济和社会等这些方面对新系统的开发进行详细的分析和研究,尽量不要出现不必要的失误等,由此保证新系统的设计和开发成功。
所以,可行性分析的主要目的就是要求我们尽量用最小的代价在最短的时间内确定问题是否能够顺利解决。
本系统主要从以下几点进行可行性分析。
(1)技术可行性:
本系统仅需要一台装有MyEclipse、Tomcat以及数据库软件的计算机即可。
(2)经济可行性:
基于条码的物资管理系统主要是为仓库管理员开发设计和使用的系统,安装上这个应用软件,就可随时地使用这个系统,操作简单,系统成本低,在经济上完全可行。
(3)操作可行性:
界面的设计已经考虑过使用者的使用习惯,界面的设计简单,操作容易;
物资入库、出库、盘点等操作简单,方便。
所以,由此可知,本系统的开发目标很明确了,在经济、技术和管理等各个方面都是可以和有必要的,因此系统的开发是完全可行的和有意义的。
2.2系统设计的要求
(1)UI界面友好
使用软件最基本的心理和视觉要求。
(2)实现基本功能和一些特殊功能的操作、
该系统要求除了能实现物资的入库、出库等基本功能之外,还要求能够根据用户的需要进行操作。
(3)合理的设计数据库
降低数据库数据的冗余性是必须的,保持数据在尽量低下的重复性也是有要求的,做好这两点便可使得数据不会过多地占用存储空间,尽可能地避免了数据在储存和逻辑上的混乱,进一步提高运行系统时的速度。
2.3系统功能需求分析
在本系统中,只有管理员可以登录并进行操作,管理员拥有查询员工、增加员工、增加部门、查询部门、查询货品、新增货品、货品入库和货品出库等功能。
(1)员工的信息管理
(2)部门的信息管理
(3)商品的信息管理
(4)权限的设置管理
(5)系统的详情
2.4数据库需求分析
一个系统的成功很大一部分取决于前期该系统所做的需求分析,因为需求如果做好了,需求没什么问题,那么编写出来的软件系统就不会有太大的问题,而且软件的需求体现了客户的需求,做好需求分析,对于以后的程序开发完善和程序的使用都是及其重要的。
本系统采用MySQL作为数据库,其强大的服务器平台,高性能服务器结构能够满足以上的要求[8]。
3系统的总体设计
3.1系统总体设计
3.1.1系统总体功能模块
如图3-1所示:
图3-1系统的功能模块图
3.2系统的主要功能介绍
(1)登陆功能:
管理员登陆网站管理系统。
(2)员工管理:
员工新增、员工查询和查询部门员工详细信息等功能。
(3)部门管理:
包括查询部门的列表和部门新增等功能。
(4)货品管理:
包括货品查询、货品新增、货品入库和货品出库等功能。
管理员可以通过输入条形码查询货品,还有查看和修改货品的详细信息。
(5)导出功能:
可以导出货品入库、出库时的详细信息,导出后为Excel文件。
(6)系统详情:
系统情况的详细介绍。
3.3前台提取后台有关数据分析
(1)员工基本信息:
姓名、性别、年龄、联系电话等。
(2)员工新增:
性名、性别、所在部门、住址、邮箱等。
(3)员工查询:
序号、员工姓名、最后修改时间等。
(4)部门查询:
序号、编号、名称、类型、创建时间等。
(5)部门新增:
部门名称、类型、编号层次、说明等。
(6)货品新增:
条码、名称、类型、数量、价格、所在区域、货品单位、录入员工、货品级别、说明等。
(7)货品查询:
普通货品查询、高级货品查询、入库、出库等。
3.4系统模块E-R图
本次系统涉及到的实体E-R图如下所示:
(1)货品信息:
图3-2货品信息图
(2)新增货品:
图3-3货品新增信息图
(3)部门信息:
图3-4部门基本信息图
(4)货品入库:
图3-5货品入库信息图
(5)货品出库:
图3-6货品出库信息图
(6)员工信息:
图3-7员工基本信息图
4系统的实现
部分视图的代码由于边幅限制和不必要列出而省略。
4.1登陆系统
管理员输入用户名和密码,成功的话进入系统管理界面,错误的话系统会提示错误,如图4-1、4-2和4-3所示:
图4-1系统登录界面
图4-2登录界面
图4-3登录失败界面
部分代码实现如下:
......
functionuserLogin(){
varuserAccount=$("
#userAccount"
).val();
varpassword=$("
#userPassword"
if("
"
==userAccount){
alert("
请输入账号"
);
return;
}
==password){
请输入密码"
return;
4.2进入工作台
登录成功后就会进入系统,点击左侧菜单的我的工作,再点击个人工作台,就会出现如图4-4所示的界面,显示着“欢迎使用条形码物资管理系统”的文字。
图4-4个人工作台
4.3部门模块
4.3.1部门查询
点击部门查询将会查询到部门的基本信息,如图4-5所示:
图4-5部门查询
部分代码如下:
<
form:
formid="
queryInfoForm"
name="
modelAttribute="
employee"
methodParam="
all"
method="
post"
action="
${ctx}/employee/searchEmp/"
>
<
divalign="
center"
h2>
部门基本信息<
/h2>
/div>
<
tableclass="
table2"
<
tr>
td>
部门名称<
/td>
${depart.orgName}<
部门编号<
${depart.orgCode}<
部门类型<
${depart.extends1}<
4.3.2查询部门的详细信息
查询部门的信息,包括查看,修改和删除部门的详细信息,点击右侧的“详细”超链接,将得到部门的详细信息,如图4-6所示:
图4-6部门详细信息
……
functionshowDetail(deptId){
vardialogId=RndNum(5);
url="
${ctx}/department/detail/?
id="
+deptId;
varapi=window.lhgdialog({
id:
"
deptDetail"
+dialogId,
title:
'
部门详细信息'
width:
260,
height:
290,
4.3.3部门新增
点击部门新增时,将可以填入新部门的基本信息,然后保存成功后,会在部门查询那里显示,如图4-7、4-8、4-9和4-10所示:
图4-7部门新增界面
图4-8部门新增时填入的详细信息
图4-9部门新增时保存成功
图4-10新增的部门会在部门查询里显示
functiondeptSave(){
if($("
#editForm"
).validationEngine('
validate'
)){
$.ajax({
type:
POST"
url:
${ctx}/department/deptAdd/"
data:
$("
).serialize(),
success:
function(msg){
if(msg=='
true'
){
alert("
保存成功"
window.location="
${ctx}/department/searchDepart/"
;
}else{
信息保存失败!
}
},
error:
function(XMLHttpRequest,textStatus,errorThrown,data){
alert("
连接超时!
4.3.4部门的员工列表查看:
点击部门员工时,就可以查看各个部门里的员工的信息,如图4-11所示:
图4-11部门员工列表
title>
员工部门列表<
/title>
linkrel="
stylesheet"
type="
text/css"
href="
${ctx}/scripts/jquery-easyui-1.2.3/themes/default/easyui.css"
${ctx}/scripts/jquery-easyui-1.2.3/themes/icon.css"
scripttype="
text/javascript"
src="
${ctx}/scripts/jquery-easyui-1.2.3/jquery.easyui.min.js"
/script>
4.4货品模块
4.4.1新增货品
新增货品时,必须填写商品的相关信息才能保存成功,否则会提示“此处不能为空”,保存成功后,就会立即跳到货品查询界面,以便显示新增的货品,如图4-12、4-13和4-14所示:
图4-12货品新增界面
图4-13货品新增时填写的信息
图4-14货品新增保存成功
部分代码实现如下:
functioncleanEmpty(){
$("
#goodsAddQuantity"
).val("
#goodsAddPrice"
#goodsLoaction"
#goodsAddDesc"
}
functiongoodsInputSave(){
${ctx}/goods/addInput/"
${ctx}/goodsInput/inputList/"
4.4.2查询普通物品
点击“货品管理”下的“普通货品”就可以查询普通货品,还可以对普通货品进行修改、操作、入库、出库等操作,可以通过查询条件直接查询某一货品,还可以查看货品的详细信息,如图4-15和4-16所示:
图4-15普通货品查询界面
图4-16货品详细信息界面
includefile="
/headers.jsp"
%>
tablestyle="
width:
100%;
class="
trheight="
35"
th>
span>
货品条码:
/span>
/th>
${goodsInfo.goodsCode}<
/tr>
货品名称<
4.4.3查询高级货品
击“货品管理”下的“高级货品”就可以查询高级货品,还可以对高级货品进行修改、操作、入库、出库等操作,可以通过查询条件直接查询某一货品,还可以查看货品的详细信息,如图4-17和4-18所示:
图4-17高级货品查询界面
图4-18货品详细信息界面
代码省略。
4.4.4货品的入库操作
在货品查询界面下找到货品时,点击“入库”,就可以填写入库的基本信息,如图4-19所示:
图4-19入库货品基本信息
align="
style="
95%;
<
tdstyle="
货品条码<
inputdisabled="
disabled"
id="
goodsCode"
value="
${goodsInfo.goodsCode}"
size="
45"
validate[required]"
/>
goodsName"
${goodsInfo.goodsName}"
<
inputstyle="
visibility:
hidden"
goodsId"
${goo