第三方物流管理系统的设计与实现仓库管理系统本科毕业论文.docx
《第三方物流管理系统的设计与实现仓库管理系统本科毕业论文.docx》由会员分享,可在线阅读,更多相关《第三方物流管理系统的设计与实现仓库管理系统本科毕业论文.docx(27页珍藏版)》请在冰点文库上搜索。
第三方物流管理系统的设计与实现仓库管理系统本科毕业论文
毕业论文(设计)
论文(设计)题目:
第三方物流管理系统的设计与实现
——仓库管理系统
摘要
全球经济一体化的迅速发展和新兴市场的形成,使得社会分工的更加明细。
降低产品的成本,降低库存,是增加企业效益的重要途径,第三方物流企业应运而生。
随着网络技术和IT技术的发展,开发出高效率的第三方物流仓储管理系统的要求也越来越迫切。
本文在分析了现用文献资料的基础上,基于MVC架构,采用.NET技术,以SQLServer2008为数据库后台,设计并实现了一个基本满足第三方物流企业仓库管理需求的信息关系系统,主要包括:
供应商管理、商品管理、库房管理、产品出/入库、库存监控、用户管理等功能。
关键词:
第三方物流;仓库管理;MVC;.NET
ABSTRACT
Therapiddevelopmentofglobaleconomicintegrationandtheformationofemergingmarkets,thesocialdivisionoflabormoredetails.Toreducethecostoftheproduct,reduceinventory,isanimportantwaytoincreasetheenterprisebenefits,Thethirdpartylogisticsenterprisealsoemergeasthetimesrequire.WiththedevelopmentofnetworktechnologyandITtechnology,todevelopmoreandmoreurgentrequirementsforthirdpartylogisticswarehousemanagementsystemefficient.
Basedontheanalysisoftheexistingliteraturedata,basedonMVCarchitecture,using.NETtechnology,usingSQLServer2008asthebackgrounddatabase,thedesignandimplementationofameetthebasicinformationwarehousemanagementsystem,thedemandofthethirdpartylogisticsenterprisemainlyincludes:
suppliermanagement,merchandisemanagement,warehousemanagement,product/warehousing,inventorycontrol,usermanagementandotherfunctions.
Keywords:
Thirdpartylogistics;Warehousemanagement;MVC;.NET
第1章绪论
1.1课题背景
人们越来越关注现代物流的重要性。
降低成本,提高效益,充分发挥自身核心竞争力,来增强企业对环境的迅速应变能力,使得第三方物流这种新兴物流形态和管理模式越来越吸引人们的眼球[1]。
第三方物流具有以下特点:
(1)和第三方物流与企业采用自我物流服务系统相比,第三方物流经营者提供的物流服务服务水准更高、更安全、快捷、成本更低。
(2)加强仓库库存管理的控制可以帮助削减存储成本,尽可能地减低库存的积压;利用第三方物流企业建立的广泛的配送点网络采用共同配送方案,可以使话费在运输上的时间极大的减少,减少运输费用等。
通过这些措施第三方物流无声间便创造了巨大的价值,使企业获得利润。
(3)合理运用第三方物流的优势,可以让企业话费更多的精力去提高核心竞争力。
将企业与顾客间的物流业务交给第三方物流企业来完成,就能大大降低企业在关系处理上的难度。
1.2第三方物流仓储管理发展现状研究
1.2.1国外研究发展现状
第三方物流在国外蓬勃发展。
国际上,发达国家的第三方物流起步比较早,发展的比较好,在规模上、服务功能上、物流渠道上、人才储备上、基本设施上、管理水平上、物流设备上都已经发展的比较成熟。
已经在物流市场上占有很大的份额,对物流企业的发展与推动起到了很明显的作用。
第三方物流物流业的新兴领域,第三方物流在国外的物流市场上已占据了相当可观的份量;同时,非第三方物流服务用户已积极考虑使用第三方物流;大量的服务用户认为他们有可能在未来几年内再增加对第三方物流服务的需求。
实践证明,第三方物流服务可以帮助企业精干主业,减少库存,降低成本,提高核心业务的竞争力[2]。
1.2.2国内研究发展现状
我国的第三方物流企业的规模可以通过多种标准来衡量,最简单的就是通过物流企业的人员数目来比较。
与我国第三方物流发展的初始阶段相比,企业平均员工数量,扩大了近150人。
虽然发展的比较快,但是和西方发达国家相比还是有很多的不足之处,比如:
发展规模小比较分散,造成实力弱、服务功能不全;市场的占有份额小导致物流渠道不畅;最重要的就是人才匮乏,相应设施落后,直接影响到管理水平的提升。
以上这些问题的存在使得第三方物流企业还远远不能满足客户所有需求。
1.2.3第三方物流发展的趋势研究
伴随着物流国际化、高级化的发展以及现代高新技术的迅速发展,机械化、自动化、智能化将成为物流系统各个环节发展的主要趋势。
同时,伴随着服务内容日趋复杂,不同地区对服务需求的差异化,服务过程、服务需求更加的综合化,物流提供商和分销商之间的协作也在变得更加的紧密[3]。
1.3本论文的工作
本文从课题的背景、国内外的研究现状及第三方物流在未来的发展趋势分析得出结论:
研究和开放一个效率可观的仓库管理系统很有必要。
之后通过系统需求分析和实际的课题要求,在.NET平台上完成了MVC模型的设计,最终完成对软件的设计实现。
第1章中简要介绍了仓库管理系统课题的背景,国内外的研究发展及本文所做工作。
第2章中主要介绍了这次课题进行中用的关键技术:
ASP.NET技术、Html5技术、MVC编程模式及SQLServer2008数据库软件。
分别对它们进行了简单的介绍和优点论述。
第3章详尽的阐述了系统的需求及分析。
介绍了主要的功能模块的功能和设计,及相应的数据库的设计与定义,通过这些给出比较直观的说明和解释。
第4章则根据系统分析和设计就主要功能进行实现和展示,包括相应的运行界面及对应的功能实现代码。
第5章则总结了这次课题,并对之后的工作进行展望。
第2章第三方物流仓储管理系统的相关技术
此次系统设计与实现中主要用到了ASP.NET技术、MVC编程模式、HTML5技术及SQLServer2008。
下面对这几个技术进行概述。
2.1ASP.NET技术
2.1.1ASP.NET简介
ASP.NET基于.NET平台,它的兼容性很好,能允许所有的基于.NET框架的语言在其上编译运行,而且它的所有的技术在.NETFramework中都能够使用。
ASP.NET在设计过程中考虑到了程序的开发效率问题,可以提供开发者使用HTML编辑器或其他的编程工具来开发ASP.NET程序,为了提高ASP.NET程序的开发效率,将设计、开发、编译、运行都集中在一起,这些节省不少开发者的时间[4]。
2.1.2ASP.NET的主要内容
ASP.NET技术主要包括页面语法结构、数据库访问、Web服务程序、页面验证技术、Web控件等基本内容。
ASP.NET还为开发人员提供了WebApplication、WebForm和WebService三种网络编程模型,丰富的开发环境使得开发者在开发过程中可有有多种的选择[5]。
2.1.3ASP.NET的优势
ASP.NET发布后很多开发者都迅速转到这个平台上来。
这是因为ASP.NET有如下这些优势[6]:
(1)ASP.NET增强了性能,ASP.NET在服务器上运行的是编译好的公共语言运行库代码。
(2)ASP.NET是个强大平台并提供多样的工具支持,因为ASP.NET是基于公共语言运行库,使得它可以从Web直接访问.NET框架类库、数据访问解决方案和消息处理等。
(3)ASP.NET非常简单容易理解:
ASP.NET使执行常见任务变得容易,在简单的窗体提交和站点配置以及客户端身份验证到部署这些方面都很容易着手实现。
2.2ASP.NETMVC
2.2.1MVC编程模式
MVC是三种ASP.NET编程模式中的一种,其他两种是工厂模式、生成器模式,虽然后两种都由MVC演变而来,但仍没有MVC应用广泛[7]。
MVC是一种使用MVC(ModelViewController模型-视图-控制器)设计创建Web应用程序的模式[8]:
(1)Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。
一般情况下模型对象主要负责在数据库中存取数据,实现和数据库的连接。
(2)View(视图)是应用程序中处理数据显示的部分。
一般情况下视图是依据模型数据创建的,会根据模型的数据最终生成一个视图界面。
(3)Controller(控制器)是应用程序中处理用户交互的部分。
一般情况下控制器主要负责根据发生的时间从视图读取数据,通过控制用户输入,最终向模型发送数据进行数据的读取。
2.2.2特色与优点
MVC(Model、View、Controller)将一个Web应用分解为:
Model、View和Controller。
ASP.NETMVC框架提供了一个可以代替ASP.NETWebForm的基于MVC设计模式的应用[9]。
ASP.NETMVC框架的特色:
(1)分离任务(输入逻辑,业务逻辑和显示逻辑)。
易于测试和默认支持测试驱动开发。
(2)可扩展的简便的框架。
MVC框架被设计用来更轻松的移植和定制功能。
(3)强大的路由机制让开发者更方便的建立容易理解和可搜索的路由,能够更好的支持搜索引擎优化。
(4)可以使用ASP.NET现有的页面标记、用户控件、模板页。
(5)MVC让你可以使用如窗体认证和Windows认证、路由认证、组管理和规则、输出、数据缓存、健康监测、配置管理系统、提供程序结构特性等等。
2.3HTML5技术
HTML5是万维网的核心语言、标准通用标记语言下的一个应用超文本标记语言(HTML)的第五重大修改,它将成为未来5-10年内移动互联网领域的主宰者[10]。
2.3.1特性
(1)语义特性HTML5赋予网页更好的结构和意义。
提供更加多样的标签、微格式与微数据等的支持,构建对用户、对程序都更有价值的数据驱动的Web。
(2)本地存储特性基于HTML5开发的网页APP拥有更短的启动时间,更快的联网速度,这些全得益于HTML5APPCache,以及本地存储功能。
(3)设备兼容特性HTML5提供了之前从来没有的数据和应用接入开放接口,允许外部应用可以直接访问浏览器内部的数据信息。
此外HTML5还有网页多媒体特性;性能及集成特性;三维、图形及特效特性;连接特性;CSS3特性等。
2.3.2HTML5优点
概括起来HTML5有以下优点:
(1)拥有更好的可用性,是用户体验更加的人性化;
(2)又新增加一些标签,这将有助于开发人员定义重要的内容;
(3)能够为网站更多的多媒体元素(视频和音频);
(4)可以很好的替代FLASH和Silverlight;
(5)当涉及到网站的抓取和索引的时候,对于SEO很友好;
(6)可以被大量应用于移动应用程序和游戏,比如手机浏览器等。
2.4SQLSEVER2008
SQLServer2008是微软的一个很成功的产品版本,同样是在Microsoft的数据平台上运行,用户可以不分时间地点地管理数据库数据资料。
它强大的功能允许直接存储到数据库中一些非结构化、半结构化和结构化文档的数据。
SQLServer2008提供大量的一体化服务,对数据进行数据查询、同步数据、数据搜索、报告和数据分析之类的操作依然是它的主要功能。
由于以存储数据可到各种不同的设备上,用[11]户可以随时随地的控制包括移动设备、使用中的计算机和数据中心最大的服务器。
SQLServer2008平台有以下的特点:
(1)可信任性:
能够让使用的公司在运行他们的重要任务的应用程序时保证其安全性、可靠性和可扩展性。
(2)高效性:
能够让使用的公司用最低的成本,花费最少的时间来管理开发有关数据的基础设施,让工作更高效。
(3)智能性:
给用户提供一个更加人性化的平台,使得他们能够随时查寻数据信息。
第3章第三方物流仓储管理系统分析与总体设计
3.1物流仓储管理系统简介
3.1.1物流仓储管理系统的地位与作用
物流各环节之间都会存在不均衡性,而仓储管理系统可以是解决这种不均衡性的手段。
仓储管理通过实现物流流程的整合,能够很好的解决仓储环节中上下游流程中产生的各种矛盾。
仓储管理系统可以整合资源,最终实现在运输条件约束力的范围内得出最理想的库存控制方案,达到物流成本最低化。
仓储的方案设计与运行操作被运用到许多具体的案例中,发挥出很重要的作用,也使得物流仓储管理系统的地位越发的提高[12]。
3.1.2物流仓储管理系统对企业发展的重要意义
目前,许多企业已认识到企业管理信息对企业发展的战略意义,竞争的激烈和对成本的要求使得管理对象表现为:
整和上游、企业本身、下游一体化供应链的信息和资源。
对于仓库,特别是制造业中的仓库,作为物流供应链的关键节点,不同供应链的库存规则理念是不相同的,人们管理物流供应链的时候,已经不只是把库存作为维持生产和销售的一种方案,更多把它当作是一种管理供应链的平衡机制,这也就赋予了它协调整个供应链的功能。
但是现代的企业同时又面临着太多的不确定因素,无论这些不确定因素产生自供应方或者来自生产方还是客户方面,在仓库管理中都会涉及到容量、仓库主要存储商品信息描述等;添加、修改和删除仓库信息等操作;允许查找、浏览管辖权限下的所有仓库所存储的商品信息;添加、修改和删除商品信息;查看商品的仓库进出记录;查询、添加仓库功能。
3.2系统设计目标
本系统应具有如下目标:
(1)用MVC编程模型设计出功能较完善的后台系统框架。
(2)实现实现对仓储的管理,包括供应商管理、商品管理、库房管理、产品出/入库、库存监控、库存管理、调拨管理、盘点管理、用户管理等功能。
3.3主要模块功能介绍
系统必须具有仓库管理模块、商品管理模块、供应商管理模块等。
下面将这些模块的功能逐一分析[13],首先,他们的数据库结构图1所示:
图1数据库结构图
仓库管理模块:
其主要功能是管理该系统包含的所有仓库信息,主要操作包括查询、删除、修改和添加仓库信息。
仓库信息包含仓库地址、仓库名称、供应商标号、商品编号、仓库图标、存储货物的相关信息等[12],其数据库表设计如表1所示:
表1仓库数据库设计表
列名
数据类型
是否允许为空
备注
stockId
int
否
仓库编号(主键)
baleId
int
否
商品编号
supplyId
int
否
供应商标号
stockName
nvarchar
否
仓库名
score
decimal
否
库存量
stockSupplyul
nvarchar
是
仓库图
商品管理模块:
其功能主要是管理所有仓库中存放的货物信息,涉及的主要操作包括查找、修改、删除和添加商品信息。
商品信息包含货物名称、所在仓库、供应商名称等内容,其数据库表设计如表2所示:
表2商品数据库设计表
列名
数据类型
是否允许为空
备注
baleId
int
否
商品编号(主键)
baleName
nvarchar
否
商品名称
balePrice
nvarchar
否
商品价格
供应商管理模块:
其主要功能是管理仓库管理中的供应商的信息,供应商的信息包括供应商的编号、供应商的名字、供应商的联系人、供应商的联系电话、供应商的联系地址等,其数据库表设计如表3所示:
表3供应商数据库设计表
列名
数据类型
是否允许为空
备注
supplyId
int
否
供应商编号(主键)
supplyName
nvarchar
否
供应商名字
touchPeople
nvarchar
否
联系人
touPhone
nvarchar
否
联系电话
第4章系统主要设计及代码
4.1登录系统
登录系统时会需要先注册,注册时有多种约束条件,登录界面如图2所示[14]:
图2登陆界面
其实现代码如下:
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Web;
usingSystem.Web.Mvc;
usingSystem.Web.Routing;
usingSystem.Web.Security;
usingMvcCk.Models;
namespaceMvcCk.Controllers
{
publicclassAccountController:
Controller
{
publicActionResultLogOn()
{
returnView();
}
}
}
4.2仓库管理
1.通过仓库管理可以查看各个仓库、每种商品、供应商等的信息[15]。
其界面如图3所示:
图3仓库管理界面
其实现代码如下:
namespaceMvcCk.Controllers
{
publicclassDefault1Controller:
Controller
{
privateCangKusdb=newCangKus();
publicViewResultIndex()
{
varstocks=db.Stocks.Include(s=>s.Bale).Include(s=>
s.Supply);
returnView(stocks.ToList());
}
publicViewResultDetails(intid)
{
Stockstock=db.Stocks.Find(id);
returnView(stock);
}
publicActionResultCreate()
{
ViewBag.BaleId=newSelectList(db.Bales,"BaleId",
"BaleName");
ViewBag.SupplyId=newSelectList(db.Supplys,"SupplyId",
"SupplyName");
returnView();
}
[HttpPost]
publicActionResultCreate(Stockstock)
{
if(ModelState.IsValid)
{
db.Stocks.Add(stock);
db.SaveChanges();
returnRedirectToAction("Index");
}
ViewBag.BaleId=newSelectList(db.Bales,"BaleId","
BaleName",stock.BaleId);
ViewBag.SupplyId=newSelectList(db.Supplys,"SupplyId",
"SupplyName",stock.SupplyId);
returnView(stock);
}
publicActionResultEdit(intid)
{
Stockstock=db.Stocks.Find(id);
ViewBag.BaleId=newSelectList(db.Bales,"BaleId",
"BaleName",stock.BaleId);
ViewBag.SupplyId=newSelectList(db.Supplys,"SupplyId",
"SupplyName",stock.SupplyId);
returnView(stock);
}
[HttpPost]
publicActionResultEdit(Stockstock)
{
if(ModelState.IsValid)
{
db.Entry(stock).State=EntityState.Modified;
db.SaveChanges();
returnRedirectToAction("Index");
}
returnView(stock);
}
publicActionResultDelete(intid)
{
Stockstock=db.Stocks.Find(id);
returnView(stock);
}
[HttpPost,ActionName("Delete")]
publicActionResultDeleteConfirmed(intid)
{
Stockstock=db.Stocks.Find(id);
db.Stocks.Remove(stock);
db.SaveChanges();
returnRedirectToAction("Index");
}
protectedoverridevoidDispose(booldisposing)
{
db.Dispose();
base.Dispose(disposing);
}
}
}
2.添加功能的操作界面如图4所示[16]:
图4添加操作界面
其实现代码如下:
publicActionResultCreate()
{
ViewBag.BaleId=newSelectList(db.Bales,"BaleId",
"BaleName");
ViewBag.SupplyId=newSelectList(db.Supplys,"SupplyId",
"SupplyName");
ViewBag.StockId=newSelectList(db.Stocks,"StockId",
"StockName");
returnView();
}
3.其删除操作界面如图5所示:
图5删除操作界面
其实现代码如下:
publicViewResultDetails(intid)
{
Stockstock=db.Stocks.Find(id);
returnView(stock);
}
第5章总结与展望
本文从背景,研究现状到系统分析,功能实现。
一步步过来,过程很是曲折,也说明了这个仓库管理系统的设计与实现是个复