摘 要(详见正文)
ABSTRACT
第1章 绪论
1.1 课题背景
1.2 第三方物流仓储管理发展现状研究
1.2.1 国外研究发展现状
1.2.2 国内研究发展现状
1.3 本论文的工作
第2章 第三方物流仓储管理系统的相关技术
2.1 ASP.NET技术
2.1.1 ASP.NET简介
2.1.2 ASP.NET 的主要内容
2.2 ASP.NET MVC
2.2.1 MVC 编程模式
2.2.2 特色与优点
2.3 HTML5技术
2.3.1 特性
2.3.2 HTML5优点
2.4 SQL SEVER 2008
第3章 第三方物流仓储管理系统分析与总体设计
3.1 物流仓储管理系统简介
3.1.1 物流仓储管理系统的地位与作用
3.1.2 物流仓储管理系统对企业发展的重要意义
3.2 系统设计目标
3.3 主要模块功能介绍
第4章 系统主要设计及代码
4.1 登录系统
4.2 仓库管理
第5章 总结与展望
参考文献
致 谢
以下是论文正文
摘 要
全球经济一体化的迅速发展和新兴市场的形成,使得社会分工的更加明细.降低产品的成本,降低库存,是增加企业效益的重要途径,第三方物流企业应运而生.随着网络技术和IT技术的发展,开发出高效率的第三方物流仓储管理系统的要求也越来越迫切.
本文在分析了现用文献资料的基础上,基于MVC架构,采用.NET技术,以SQL Server 2008为数据库后台,设计并实现了一个基本满足第三方物流企业仓库管理需求的信息关系系统,主要包括:供应商管理、商品管理、库房管理、产品出/入库、库存监控、用户管理等功能.
关键词:第三方物流;仓库管理;MVC;.NET
ABSTRACT
The rapid development of global economic integration and the formation of emerging markets, the social division of labor more details. To reduce the cost of the product, reduce inventory, is an important way to increase the enterprise benefits,The third party logistics enterprise also emerge as the times require. With the development of network technology and IT technology, to develop more and more urgent requirements for third party logistics warehouse management system efficient.
Based on the analysis of the existing literature data, based on MVC architecture, using.NET technology, using SQL Server 2008 as the background database, the design and implementation of a meet the basic information warehouse management system, the demand of the third party logistics enterprise mainly includes: supplier management, merchandise management, warehouse management, product / warehousing, inventory control, user management and other functions.
Key words: Third party logistics; Warehouse management; 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编程模式及SQL Server 2008数据库软件.分别对它们进行了简单的介绍和优点论述.
第3章详尽的阐述了系统的需求及分析.介绍了主要的功能模块的功能和设计,及相应的数据库的设计与定义,通过这些给出比较直观的说明和解释.
第4章则根据系统分析和设计就主要功能进行实现和展示,包括相应的运行界面及对应的功能实现代码.
第5章则总结了这次课题,并对之后的工作进行展望.
第2章 第三方物流仓储管理系统的相关技术
此次系统设计与实现中主要用到了ASP.NET技术、MVC编程模式、HTML5技术及SQL Server 2008.下面对这几个技术进行概述.
2.1 ASP.NET技术
2.1.1 ASP.NET简介
ASP.NET 基于.NET 平台,它的兼容性很好,能允许所有的基于.NET框架的语言在其上编译运行,而且它的所有的技术在.NET Framework 中都能够使用.ASP.NET 在设计过程中考虑到了程序的开发效率问题,可以提供开发者使用 HTML编辑器或其他的编程工具来开发 ASP.NET程序,为了提高 ASP.NET 程序的开发效率,将设计、开发、编译、运行都集中在一起,这些节省不少开发者的时间[4].
2.1.2 ASP.NET 的主要内容
ASP.NET技术主要包括页面语法结构、数据库访问、Web服务程序、页面验证技术、Web 控件等基本内容.ASP.NET还为开发人员提供了Web Application、Web Form 和Web Service三种网络编程模型,丰富的开发环境使得开发者在开发过程中可有有多种的选择[5].
2.1.3 ASP.NET 的优势
ASP.NET发布后很多开发者都迅速转到这个平台上来.这是因为ASP.NET有如下这些优势[6]:
(1)ASP.NET增强了性能,ASP.NET在服务器上运行的是编译好的公共语言运行库代码.
(2)ASP.NET是个强大平台并提供多样的工具支持,因为ASP.NET是基于公共语言运行库,使得它可以从Web直接访问.NET 框架类库、数据访问解决方案和消息处理等.
(3)ASP.NET非常简单容易理解:ASP.NET使执行常见任务变得容易,在简单的窗体提交和站点配置以及客户端身份验证到部署这些方面都很容易着手实现.
2.2 ASP.NET MVC
2.2.1 MVC 编程模式
MVC 是三种ASP.NET编程模式中的一种,其他两种是工厂模式、生成器模式,虽然后两种都由MVC演变而来,但仍没有MVC应用广泛[7].
MVC 是一种使用 MVC(Model View Controller 模型-视图-控制器)设计创建 Web 应用程序的模式[8]:
(1)Model(模型)是应用程序中用于处理应用程序数据逻辑的部分.一般情况下模型对象主要负责在数据库中存取数据,实现和数据库的连接.
(2)View(视图)是应用程序中处理数据显示的部分.一般情况下视图是依据模型数据创建的,会根据模型的数据最终生成一个视图界面.
(3)Controller(控制器)是应用程序中处理用户交互的部分.一般情况下控制器主要负责根据发生的时间从视图读取数据,通过控制用户输入,最终向模型发送数据进行数据的读取.
2.2.2 特色与优点
MVC(Model、View、Controller)将一个Web应用分解为:Model、View和Controller.ASP.NET MVC框架提供了一个可以代替ASP.NET WebForm的基于MVC设计模式的应用[9].ASP.NET MVC框架的特色:
(1)分离任务(输入逻辑,业务逻辑和显示逻辑).易于测试和默认支持测试驱动开发.
(2)可扩展的简便的框架.MVC框架被设计用来更轻松的移植和定制功能.
(3)强大的路由机制让开发者更方便的建立容易理解和可搜索的路由,能够更好的支持搜索引擎优化.
(4)可以使用ASP.NET现有的页面标记、用户控件、模板页.
(5)MVC让你可以使用如窗体认证和Windows认证、路由认证、组管理和规则、输出、数据缓存、健康监测、配置管理系统、提供程序结构特性等等.
2.3 HTML5技术
HTML5是万维网的核心语言、标准通用标记语言下的一个应用超文本标记语言(HTML)的第五重大修改,它将成为未来5-10年内移动互联网领域的主宰者[10].
2.3.1 特性
(1)语义特性 HTML5赋予网页更好的结构和意义.提供更加多样的标签、微格式与微数据等的支持,构建对用户、对程序都更有价值的数据驱动的Web.
(2)本地存储特性 基于HTML5开发的网页APP拥有更短的启动时间,更快的联网速度,这些全得益于HTML5 APP Cache,以及本地存储功能.
(3)设备兼容特性 HTML5提供了之前从来没有的数据和应用接入开放接口,允许外部应用可以直接访问浏览器内部的数据信息.
此外HTML5还有网页多媒体特性;性能及集成特性;三维、图形及特效特性;连接特性;CSS3特性等.
2.3.2 HTML5优点
概括起来HTML5有以下优点:
(1)拥有更好的可用性,是用户体验更加的人性化;
(2)又新增加一些标签,这将有助于开发人员定义重要的内容;
(3)能够为网站更多的多媒体元素(视频和音频);
(4)可以很好的替代FLASH和Silverlight;
(5)当涉及到网站的抓取和索引的时候,对于SEO很友好;
(6)可以被大量应用于移动应用程序和游戏,比如手机浏览器等.
2.4 SQL SEVER 2008
SQL Server 2008是微软的一个很成功的产品版本,同样是在Microsoft的数据平台上运行,用户可以不分时间地点地管理数据库数据资料.它强大的功能允许直接存储到数据库中一些非结构化、半结构化和结构化文档的数据.SQL Server 2008 提供大量的一体化服务,对数据进行数据查询、同步数据、数据搜索、报告和数据分析之类的操作依然是它的主要功能.由于以存储数据可到各种不同的设备上,用[11]户可以随时随地的控制包括移动设备、使用中的计算机和数据中心最大的服务器.
SQL Server 2008平台有以下的特点:
(1)可信任性:能够让使用的公司在运行他们的重要任务的应用程序时保证其安全性、可靠性和可扩展性.
(2)高效性:能够让使用的公司用最低的成本,花费最少的时间来管理开发有关数据的基础设施,让工作更高效.
(3)智能性:给用户提供一个更加人性化的平台,使得他们能够随时查寻数据信息.
第3章 第三方物流仓储管理系统分析与总体设计
3.1 物流仓储管理系统简介
3.1.1 物流仓储管理系统的地位与作用
物流各环节之间都会存在不均衡性,而仓储管理系统可以是解决这种不均衡性的手段.仓储管理通过实现物流流程的整合,能够很好的解决仓储环节中上下游流程中产生的各种矛盾.仓储管理系统可以整合资源,最终实现在运输条件约束力的范围内得出最理想的库存控制方案,达到物流成本最低化.仓储的方案设计与运行操作被运用到许多具体的案例中,发挥出很重要的作用,也使得物流仓储管理系统的地位越发的提高[12].
3.1.2 物流仓储管理系统对企业发展的重要意义
目前,许多企业已认识到企业管理信息对企业发展的战略意义,竞争的激烈和对成本的要求使得管理对象表现为:整和上游、企业本身、下游一体化供应链的信息和资源.对于仓库,特别是制造业中的仓库,作为物流供应链的关键节点,不同供应链的库存规则理念是不相同的,人们管理物流供应链的时候,已经不只是把库存作为维持生产和销售的一种方案,更多把它当作是一种管理供应链的平衡机制,这也就赋予了它协调整个供应链的功能.但是现代的企业同时又面临着太多的不确定因素,无论这些不确定因素产生自供应方或者来自生产方还是客户方面,在仓库管理中都会涉及到容量、仓库主要存储商品信息描述等;添加、修改和删除仓库信息等操作;允许查找、浏览管辖权限下的所有仓库所存储的商品信息;添加、修改和删除商品信息;查看商品的仓库进出记录;查询、添加仓库功能.
3.2 系统设计目标
本系统应具有如下目标:
(1)用MVC编程模型设计出功能较完善的后台系统框架.
(2)实现实现对仓储的管理,包括供应商管理、商品管理、库房管理、产品出/入库、库存监控、库存管理、调拨管理、盘点管理、用户管理等功能.
3.3 主要模块功能介绍
系统必须具有仓库管理模块、商品管理模块、供应商管理模块等.下面将这些模块的功能逐一分析[13],首先,他们的数据库结构图1 所示:
仓库管理模块:其主要功能是管理该系统包含的所有仓库信息,主要操作包括查询、删除、修改和添加仓库信息.仓库信息包含仓库地址、仓库名称、供应商标号、商品编号、仓库图标、存储货物的相关信息等[12],其数据库表设计如表1 所示:
商品管理模块:其功能主要是管理所有仓库中存放的货物信息,涉及的主要操作包括查找、修改、删除和添加商品信息.商品信息包含货物名称、所在仓库、供应商名称等内容,其数据库表设计如表2 所示:
供应商管理模块:其主要功能是管理仓库管理中的供应商的信息,供应商的信息包括供应商的编号、供应商的名字、供应商的联系人、供应商的联系电话、供应商的联系地址等,其数据库表设计如表3所示:
第4章 系统主要设计及代码
4.1 登录系统
登录系统时会需要先注册,注册时有多种约束条件,登录界面如图2所示[14]:
其实现代码如下:
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Routing;
using System.Web.Security;
using MvcCk.Models;
namespace MvcCk.Controllers
{
public class AccountController : Controller
{
public ActionResult LogOn()
{
return View();
}
}
}
4.2 仓库管理
1.通过仓库管理可以查看各个仓库、每种商品、供应商等的信息[15].其界面如图3所示:
其实现代码如下:
namespace MvcCk.Controllers
{
public class Default1Controller : Controller
{
private CangKus db = new CangKus();
public ViewResult Index()
{
var stocks = db.Stocks.Include(s => s.Bale).Include(s =>
s.Supply);
return View(stocks.ToList());
}
public ViewResult Details(int id)
{
Stock stock = db.Stocks.Find(id);
return View(stock);
}
public ActionResult Create()
{
ViewBag.BaleId = new SelectList(db.Bales, "BaleId",
"BaleName");
ViewBag.SupplyId = new SelectList(db.Supplys, "SupplyId",
"SupplyName");
return View();
}
[HttpPost]
public ActionResult Create(Stock stock)
{
if (ModelState.IsValid)
{
db.Stocks.Add(stock);
db.SaveChanges();
return RedirectToAction("Index");
}
ViewBag.BaleId = new SelectList(db.Bales, "BaleId", "
BaleName", stock.BaleId);
ViewBag.SupplyId = new SelectList(db.Supplys, "SupplyId",
"SupplyName", stock.SupplyId);
return View(stock);
}
public ActionResult Edit(int id)
{
Stock stock = db.Stocks.Find(id);
ViewBag.BaleId = new SelectList(db.Bales, "BaleId",
"BaleName", stock.BaleId);
ViewBag.SupplyId = new SelectList(db.Supplys, "SupplyId",
"SupplyName", stock.SupplyId);
return View(stock);
}
[HttpPost]
public ActionResult Edit(Stock stock)
{
if (ModelState.IsValid)
{
db.Entry(stock).State = EntityState.Modified;
db.SaveChanges();
return RedirectToAction("Index");
}
return View(stock);
}
public ActionResult Delete(int id)
{
Stock stock = db.Stocks.Find(id);
return View(stock);
}
[HttpPost, ActionName("Delete")]
public ActionResult DeleteConfirmed(int id)
{
Stock stock = db.Stocks.Find(id);
db.Stocks.Remove(stock);
db.SaveChanges();
return RedirectToAction("Index");
}
protected override void Dispose(bool disposing)
{
db.Dispose();
base.Dispose(disposing);
}
}
}
2.添加功能的操作界面如图4所示[16]:
其实现代码如下:
public ActionResult Create()
{
ViewBag.BaleId = new SelectList(db.Bales, "BaleId",
"BaleName");
ViewBag.SupplyId = new SelectList(db.Supplys, "SupplyId",
"SupplyName");
ViewBag.StockId = new SelectList(db.Stocks, "StockId",
"StockName");
return View();
}
3.其删除操作界面如图5所示:
其实现代码如下:
public ViewResult Details(int id)
{
Stock stock = db.Stocks.Find(id);
return View(stock);
}
第5章 总结与展望
本文从背景,研究现状到系统分析,功能实现.一步步过来,过程很是曲折,也说明了这个仓库管理系统的设计与实现是个复杂的过程.这个过程中也让我学到了很多.
本系统是采用MVC编程模式对系统进行逻辑分析.这是个是个很好的开发模式,会使我的开发思维在整个过程中很清晰,很有层次感.本系统设计中用到了不少开发技术,我也通过查资料自学了一下这些技术,使我的知识的到充实.
另外,在这次课题设计与实现中,也锻炼了我能力.特别是钻研问题的耐心上,让我更有韧性一步步解决问题,这对我以后的学习工作无疑是最宝贵的.
当然,在这次课题的研究实践中,由于时间还有其他一些原因,系统设计不够完善,还有很多需要改进的地方.比如,数据采集不够多,数据库的实例不够充足,测试的不够多,这些都影响到系统的完善性和效率考查.
接下来,我会补充自己的知识积累,希望能使系统有更多的功能,更加的完善.也会和其他有经验的人士交流,多听听他们的经验和建议,以便能更好的扩张系统的功能.
参考文献
[1]惠晓实,王凯航,陆舟等.一种基于Web技术的网络数据库系统设计[J].计算机应用研究,2000(5):84~86.
[2]胡从旭.基于供应商库存管理与第三方物流[J].现代经济信息,2010(7):39~42.
[3]郑东.论供应链系统下的企业物流库存管理[J].中国储运,2010(6):64~66.
[4]李勇平,陈峰波编着.ASP.NET(C#)基础教程[M].北京:清华大学出版社,2006:35~98.
[5]朱印宏编着.ASP.NET基础与案例教程[M].北京:中国水利水电出版社,2007:23~68.
[6]Steve Walther着.ASP.NET:Tips,Tutorials,and Code[M].北京:电子工业出版社,2003:44~87.
[7]王世文着.物流管理信息系统[M].北京:电子工业出版社,2006:13~68.
[8]陈萱华.如何利用ASP.NET技术访问数据库[J].计算机与现代化.2003(2):24~26.
[9]韩怿冰.MVC模式浅析[J].科技信息,2007(4):46~48.
[10]朱涛,李云云.基于ASP.NET技术的WEB数据库分页显示[EB].2005:34~86.
[11]Scott Allen等着,郝启堂张哲峰译.C#数据库入门[M].北京:清华大学出版社,2003:19~85.
[12]陈刚着,CSS标准网页布局开发指南[M].北京:电子工业出版社,2007:33~79.
[13](美)Jeffrey Richte着.Microsoft.NET Frameworks[M].北京:清华大学出版社,2003:33~56.
[14]姜超峰.仓储管理与技术应用前景[J].中国储运,2009(3):22~24.
致 谢
首先,我要感谢我的指导老师.老师的治学态度严肃认真、有着渊博的知识、在学术作风上非常严谨而且在实际操作中很有经验,在对计算机方面刻苦钻研,这些都给我留下了深刻的印象.在我的学习期间,老师给了我很多的帮助,非常用心的指导了我怎样给论文选题;在课题的研究设计实现上给我重要的建议;并且在我的论文的撰写过程中给了我有建树的意见.在教育教学中,老师积极乐观,勤奋努力,不知疲倦的态度、完全投入的工作作风,使我从中学到了很多,在此向老师致以最诚挚的谢意!
其次,还要感谢教过我其他课程的各位老师师,你们使我的专业知识更加丰富,给我树立了正确的人生观,我在毕业之际向你们致以深深的谢意.
再次,要感谢同专业同学对我的研究工作的帮助,他们对我论文提出了许多宝贵意见和建议.他们勤奋好学的精神给我留下深深的印象.
另外,我还要感谢我的家人和朋友给我的关心和鼓励.他们在生活和精神上给予我巨大的支持和理解.
最后感谢各位老师在百忙中评阅我的论文,并提出宝贵意见!