【物流配送管理系统的设计与实现9300字(论文)】_第1页
【物流配送管理系统的设计与实现9300字(论文)】_第2页
【物流配送管理系统的设计与实现9300字(论文)】_第3页
【物流配送管理系统的设计与实现9300字(论文)】_第4页
【物流配送管理系统的设计与实现9300字(论文)】_第5页
已阅读5页,还剩34页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

物流配送管理系统的设计与实现内容摘要随着人们生活水平的提高,计算机的使用已遍布各行各业,对于近年来兴起的物流业也是必不可缺。本文在研究传统物流配送需求的基础上,结合网上购物流程,使用c#语言、采用三层架构框架开发并实现了物流配送管理系统,该系统可在线完成用户发送货需求,为有物流需求的用户提供一种便捷的网上发货收货方式,有效提高了物流配送效率,提高了用户物流配送体验。该系统不仅为用户提供了便捷的选择方式,更有效避免了传统物流配送效率低下的缺点,网上物流配送更贴近人们现代生活的方式,更能满足社会的快节奏需求。【关键词】C/S结构c#语言三层架构数据库物流配送管理系统AbstractWiththeimprovementofpeople'slivingstandards,theuseofcomputershasspreadthroughoutallwalksoflife.Basedonthestudyoftraditionallogisticsdistributionneeds,combinedwithonlineshoppingprocess,thispaperdevelopsandimplementsalogisticsdistributionmanagementsystemusingC#languageandthree-tierarchitectureframework.Thesystemcancompletetheonlinedeliveryneedsofusers,provideaconvenientonlinedeliveryandreceiptmethodforuserswithlogisticsneeds,andeffectivelyimprovetheefficiencyoflogisticsdistribution,Improvetheuserlogisticsdistributionexperience.Thesystemnotonlyprovidesuserswithaconvenientwaytochoose,butalsoeffectivelyavoidstheshortcomingsoflowefficiencyoftraditionallogisticsdistribution.Onlinelogisticsdistributionisclosertopeople'smodernwayoflife,andcanbettermeetthefast-pacedneedsofsociety.【KeyWords】C/SC#3-tierarchitecturedatabaseLogisticsdistributionmanagementsystem

目录TOC\o"1-3"\h\u5534一、绪论 一、绪论(一)物流配送管理系统开发背景及意义当今时代,随着网络的发展与进步,在全球范围内网民数量大大增加。而且现在社会高速发展,人们的生活节奏加快,所以大部分消费者群体对物流配送这一服务的需求提升。由于计算机处理信息高效快速安全成本低的特点,利用计算机实现物流配送比之以往的手工方式更加便捷安全,能够满足大部分消费者的物流需求,成为这个时代必不可少的一项工作。现如今,物流配送已经成为我国人民发展生产必不可少的一项服务。较之发达国家来说,我国在物流配送方面还稍显不足。物流配送就是整合物流中的各种信息,在保障的货物配送速度,简化配送各项事务,方便用户的基础上,将货物从发货人交到收货人手中的这样一种货物流通方式。本文设计的物流配送管理系统,就是在物流配送的基础上,旨在方便快捷的特点,从用户下单到管理员配送车辆、配送货物再到收货人收货这一流程出发,来实现的一个完整的系统。具有实际意义。(二)物流配送管理系统开发目标及内容1.开发目标通过学习与了解我国物流配送的发展现状,确立本系统开发目标主要有以下几个方面:一是要方便用户,满足用户货物流通的需求;二是保障用户的基本权益,能够在货物未送达之前取消订单,并且在货物送达之后的规定时间内用户可自行收货,任何人不得替用户收货;三是在用户下单时,必须保障收货人与发货人都为本系统用户;四是用户能够查看到当前系统中所有个人的发货订单以及收货订单,订单要显示完备的订单信息以及货物信息;五是用户可以查看当前系统的配送区域;六是保障用户信息基本完善;七是能够保障管理员能够在规定条件内获得管理用户、车辆、货物、订单信息的权限;八是在系统数据方面,要有完备的各种信息的记录,并且要方便管理员以及用户进行查看;九是能够保证系统安全性,能够保证订单信息完整,及时更新订单状态,用户能够及时获得货物当前地点信息,并且保证客户信息不被泄露。2.开发内容使用c#语言设计一个高效便捷,能够完成用户运送货需求,管理员能够有效管理系统用户、订单、车辆、货物配送区域的物流配送管理系统。二、物流配送管理系统开发需求分析(一)需求分析概述该系统最主要的需求就是完成货物从用户下单到用户收货的一个完整流程,便捷人们的日常生活。这个需求可以通过两个方面来分析。首先从用户需求分析,一是要给用户提供良好的系统使用体验,各个功能页面要简洁美观,操作便捷;二是对于用户所需订单信息、配送区域信息等也要全面,易于用户查看。三是用户下单时要保障发货人与收货人都为本系统用户,对用户输入不规范信息进行检测,用户完成下单后,系统要自动生成订单编号供用户查找其订单。四是用户可查看自己所有的发货订单与收货订单,并且在订单未被送达之前可取消订单,在货物送达之后可确认收货;五是用户可查看自己的个人信息,并且可进行修改。六是用户可修改个人密码。其次从管理员方面分析,一是管理员对系统中的重要信息不可修改;二是管理员应该具有查看与管理系统中库存、用户、车辆、订单信息的权利,所以应该设计一套方便管理员进行工作的操作程序。三是对于管理员执行不符合逻辑的操作时,进行提醒并且系统不予处理。比如替其他用户收货行为。四是需要相对应的服务提醒,防止管理员疏漏。(二)可行性分析1.技术可行性该物流配送管理系统是基于C/S结构采用三层架构来实现的。使用c#语言进行程序设计。对于系统数据的存储维护使用SQLserver2014数据库软件来进行。开发平台使用VisualStudio2019。以上软件在技术发展层面上已经成熟,使用其进行开发系统更加方便快速。2.经济可行性该系统设计开发成本较少,开发成功后能够提供便利的物流配送服务。同时,其对于运行设备要求不大,最基本的个人电脑就可以运行。在经济效益方面,减少了一部分人工投入,减少了人为出错概率。在经济上是可行的。3.社会可行性目前计算机的使用非常普遍。用户只需要拥有一台能够上网的计算机就可使用本系统。而且当今社会发展迅速,人们普遍生活节奏快,大家都在追求高效率的生活方式,该物流管理系统能够有效提高用户运货效率,避免传统找寻车辆方式耗时费力以及诸多不确定的缺点,具有很高的社会价值。三、物流配送管理系统开发概要设计(一)系统功能设计对于本系统的功能设计主要分为以下两个模块:1.用户模块(1)用户可以实现注册、登录、注销、修改密码、完善个人信息、实名认证功能;(2)创建订单功能:用户发货时新建订单,用户输入信息,系统判断用户输入信息格式正确后,下单成功,生成订单编号,供用户复制。订单进入审核状态。(3)订单查询功能:用户可根据订单编号查询订单信息,也可查询自己所有的订单。订单信息包括发货人信息、收货人信息、订单状态与货物信息。(4)取消订单功能:用户在查询订单页面,查找到自己要取消的订单后,如果订单未被送达,可点击取消订单按钮作废订单;(5)运输点查询功能:用户可查看当前系统派送的所有的运输点;(6)帮助功能:如果用户在使用过程中出现问题,可点击帮助按钮弹出帮助电话;(7)确认收货功能:用户收到货确认无误后在订单页面点击确认收货按钮。2.管理员模块(1)用户信息管理:查看用户信息,修改用户密码,可以通过修改用户状态为注销来删除用户,修改用户状态为正常激活用户;(2)订单管理:查看订单,更改订单信息,不可以修改订单状态为确认收货;(3)车辆管理:添加车辆;车辆信息查询;修改车辆信息;为车辆派送订单;删除车辆;(4)货物管理:可查看、更改货物信息;(5)运输点管理:管理员可通过添加删除运输点的方式来设置系统派送范围;(6)系统对车辆、货物、订单信息进行判断,如若不符合正常逻辑,拒绝管理员修改操作。主要功能结构如图1所示。图SEQ图\*ARABIC1物流配送管理系统主要功能图(二)系统结构分析根据以上对系统功能的设计,将本系统分为六个模块进行设计。1.用户登录注册模块为用户提供登录界面与注册界面,判断用户是否为本系统用户;若不是系统用户,则为用户提供注册功能,赋予用户系统身份;若是系统用户,登录系统,进入系统界面。2.订单模块为用户提供运送货服务,发货人新建订单,输入订单信息之后提交订单,用户获得订单编号,订单进入待审核状态。管理员审核订单,审核车辆,审核成功后等待发货。管理员审核库存,派送车辆运送货物。货物送达之后,用户确认收货,订单完成。在此期间用户都可查询订单信息,在货物未送达之前用户可以取消订单。并且管理员可以查找订单和改变订单状态与货物地址。3.车辆管理模块管理员可以向系统中添加车辆信息。当有新订单时,管理员可以搜索到当今空闲且位置距离发货点近的车辆,及时安排车辆运送货物。4.货物管理模块管理员可以查看货物信息,对于货物信息的修改在订单页面完成,并且货物信息要与订单信息同步。同步的信息有状态、地址等。5.运输点模块管理员可以根据实际情况添加或者删除运输点,只有发货地点与收货地点在运输点范围内的货物才可进行配送。管理员与用户可以查询运输点范围。6.用户管理模块管理员可以针对性的查找系统所有用户,修改自己与用户的密码,注销与激活用户,并且可以查看用户最近登陆时间、注册时间等信息。普通用户与管理员可以查看自己的个人信息并进行修改。(三)系统框架设计根据以上对系统的需求分析、功能设计与结构分析,本系统主要分为登录注册模块、用户管理模块、订单管理模块、车辆管理模块、货物管理模块以及运输点模块。各个模块之间的关系如图2所示。图SEQ图\*ARABIC2系统框架设计(四)系统总体结构设计本系统的设计主要从三个方面来进行,第一个方面是对系统的主要功能进行设计,将主要功能分为多个模块,并分别针对每个模块进行详细的设计。第二个方面是对数据库的设计,首先针对系统设计ER图方便理清各个实体之间的关系,以及每个实体要包含的属性要有那些。然后建立数据库字典,根据实体属性建立数据库表,并确定每个数据库表中要包含的实体以及实体数据类型。第三个方面是对系统主要界面的设计。系统总体结构设计如图3所示。图SEQ图\*ARABIC3系统总体框架图(五)数据流程图当发货人A需要运送货时,登录系统,创建订单,管理员登录系统审核订单,等待管理员审核订单通过后,管理员审核货物库存信息,然后分配车辆送货。送货到达后,收货人确认收货,订单状态变为已收货,此次配送完成。此过程的数据流程如图4所示。图SEQ图\*ARABIC4数据流程图四、数据库构架设计(一)系统E-R图根据系统的主要功能,确定联系、实体属性,构造E-R图。如图5所示。各个实体的属性:普通用户:身份证号、真实姓名、手机号、用户名、密码、性别、电子邮箱、地址等。订单:收货人、发货人、订单编号、订单状态、发货时间、收货时间等。货物:名称、重量、编号、状态等。车辆:载重、类型、燃油、使用时间、车检时间等。司机:家庭住址、身份证号、姓名、手机号等。配送点:省、市等。图SEQ图\*ARABIC5系统E-R图

(二)数据库字典在数据库建立用户表存放用户信息,内容如表1所示。表SEQ表\*ARABIC1用户表Users序号字段名类型索引允许Null值备注1userIDintKey2userNamenvarchar(30)3userPasswordnvarchar(50)4userSexnvarchar(10)√5userPhonevarchar(20)6userEmailvarchar(30)√7userCreateTimedatetime用户注册时间8userAddressnvarchar(50)9userStateint用户状态:0.注销;1.正常10userRealNamenvarchar(10)√11userCardIdvarchar(30)√12userLogInTimedatetime√用户最后登陆时间13userTypeint用户类型:0.管理员;1.普通用户

建立订单表存放订单信息,并且为了将订单与用户和货物联系起来,存放了发货人Id、收货人Id以及该订单所配送的货物Id,内容如表2所示。表SEQ表\*ARABIC2订单表order序号字段名类型索引允许Null值备注1orderIdintKey2orderNumbervarchar(50)3orderCreateTimedatetime4orderStateint订单状态:0.待审核;1.待发货;2.待收货;3.已收货;4.作废;5.已送达5SenderAddressnvarchar(50)6ReceiverAddressnvarchar(50)7ContactPhonevarchar(20)联系电话8SendTimedatetime√9ReceiveTimedatetime√收货时间10SenderIdint11ReceiverIdint12goodsIdint13SenderNamenvarchar(20)14ReceiverNamenvarchar(20)15ServiceTimedatetime√

建立货物表存放货物相关信息,内容如表3所示。表SEQ表\*ARABIC3货物表goods序号字段名类型索引允许Null值备注1goodsIdintKey2goodsNumbervarchar(50)3goodsNamenvarchar(30)4goodsWeightfloat5goodsTypeint√6goodsStateint货物状态:0.待入库;1.待发货;2.待收货;3.已收货;4.订单作废;5.已送达7goodsAddressnvarchar(50)√8SenderIdint9ReceiverIdint10goodsCreateTimedatetime添加货物信息时间建立车辆表存放车辆信息,具体内容如表4所示。表SEQ表\*ARABIC4车辆表cars序号字段名类型索引允许Null值备注1carIdintKey2carNumbervarchar(50)3carPlateNumbernvarchar(20)车牌号4carStateint车辆状态:0.空闲;1.运输5carAddressnvarchar(50)√6carCreateTimedatetime7carLoadfloat车载重8carUseTimevarchar(10)√9carTypeint车类型:0.挂车;1.箱车;2.板车10carCheckTimedatetime车检时间11carOilint燃油类型:0.汽油;1.天然气12carDirverNamenvarchar(30)车辆司机姓名13carDirverCardIdvarchar(30)√14carDirverPhonevarchar(30)√15carDirverAddressnvarchar(50)√建立配送点存放每一个配送点信息,具体内容如表5所示。表SEQ表\*ARABIC5配送点表area序号字段名类型索引允许Null值备注1areaIdintKey2areaProvincenvarchar(20)配送省份3areaCitynvarchar(20)配送城市4areaCreateTimedatetime配送点创建时间为了联系起车辆与其所配送订单,建立映射表存放订单表与车辆表的映射,具体内容如表6所示。表SEQ表\*ARABIC6映射表link序号字段名类型索引允许Null值备注1linkIdintKey2carIdint3orderIdint4linkCreateTimedatetime五、主要模块开发详细设计(一)用户登录注册模块1.用户登录:用户输入用户名密码,若用户名与密码正确,系统判断用户身份。判断用户身份为普通用户,进入普通用户界面。判断用户身份为管理员进入管理员界面。2.用户注册:若普通用户没有系统身份,点击注册按钮进入注册界面。输入用户名,密码,手机号,地址等信息,获取系统身份。通过注册不可以获取管理员身份,并且本系统只有一位用户名为“管理员”的管理员。3.退出:点击退出按钮,弹出提示框“是否确认退出?”,点击确认退出系统,点击取消,取消操作。4.普通用户主界面:普通用户登录成功后进入普通用户主界面,主界面内容主要包括用户中心:个人信息、修改密码、注销、返回登录界面、退出系统;我的订单:委托订单、我的订单;运输点查看;帮助。5.管理员主界面:管理员登录成功后进入管理员主界面,主界面内容主要包括系统管理:个人信息、修改密码、用户查找、注销激活、返回登录界面、退出系统;车辆管理:添加车辆、查看车辆;订单管理:委托订单、查看订单、我的订单;库存管理:货物管理;运输点管理:设置运输点、查看运输点;每日确认收货订单信息提示。6.确认收货提醒:有用户在货物送达后超过七天未收货,系统自动收货,并且在管理员登录系统时,弹出货物自动收货提示框。在管理员主界面,可显示今日所有确认收货订单信息,每一分钟刷新一次。显示的订单信息有订单编号、发货人用户名、收货人用户名、订单状态。7.返回登录界面:在主界面点击系统管理下面的返回登录界面按钮,弹出提示框。点击确认返回的登录界面,点击取消返回主界面。登录界面如图6所示。图SEQ图\*ARABIC6用户登录界面

注册界面如图7所示。图SEQ图\*ARABIC7用户注册界面

普通用户登录成功界面如图8所示。图SEQ图\*ARABIC8普通用户主界面管理员登录成功界面如图9所示。图SEQ图\*ARABIC9管理员主界面

确认收货提醒功能代码如图10、图11所示。解释:在实现这部分功能时,创建了一个子线程,定义了他的更新频率为一分钟。然后创建一个死循环,在循环里面查找数据库中存放的所有订单状态为已收货的订单,并将这些订单放在一个List集合里面。然后在进行判断订单收货时间是否是当天,如果是,判断他是否已经存在在之前定义的List集合里面,如果不存在将其添加到List集合。然后让子线程休息一分钟再进行下一次循环。之后再建一个函数,进行判断,判断是否在主线程上操作控件,如果不是,将这个方法传给主线程调用;若是,将List集合数据作为数据源绑定到主界面BindingSource控件上。图SEQ图\*ARABIC10确认收货提醒功能代码1

图SEQ图\*ARABIC11确认收货提醒功能代码2

货物送达七天后系统自动收货代码如图12所示。解释:在打开管理员主界面时,查找系统中所有订单状态为已送达的订单,将其放在List集合order里面。建一个循环,挨个判断List集合里面的订单送达时间是否比当前时间早七天,如果是,将订单状态改为已收货。弹出提示框提醒管理员系统有自动收货订单。图SEQ图\*ARABIC12自动收货功能代码(二)订单模块1.委托订单:用户可以点击委托订单按钮,输入收货人用户名、发货人用户名、收货人联系电话、货物名称、货物重量、在下拉框选择出发地与目的地、货物信息后,点击下单。系统自动生成订单编号。下单完成的同时获得下单时间。自动生成订单编号,显示在下单界面上,供用户查看复制。订单进入待审核状态。其中出发地与目的地的下拉框地点只包括系统中所有存在的运输点。2.查看订单:管理员可以查看所有订单信息,或者根据订单编号、订单状态查询订单。用户可以查看个人所有订单信息或者根据订单编号查询订单。在每个订单信息之前都有一个管理按钮,单击管理按钮进入管理订单页面。3.管理订单:在管理订单界面,管理员可以查看到当前修改订单所包含的订单信息、货物信息以及运送该订单的车辆车牌号,可以修改送货人地址、收货人地址、收货人联系电话、订单状态、货物名、货物重量、货物地址。订单状态有六种,分别为待审核、待发货、待收货、已送达、已收货、作废。在修改订单状态时,若当前订单状态为待审核,只能修改为待发货;当前状态为待发货,只能修改为待收货,同时更新发货时间;待收货只能修改为已送达,同时更新送达时间。修改订单状态后不需修改货物状态,货物状态自动与订单状态同步。管理员不可将订单状态更改为已收货。4.我的订单:用户可以在我的订单界面查看自己的所有订单,当订单状态为已送达时,收货人可在我的订单界面,确认收货,同时货物状态与订单状态更改为已收货,并且同步更新收货时间。在货物未被送达之前用户可以取消订单,即将订单状态更改为作废。

委托订单界面如图13所示。图SEQ图\*ARABIC13委托订单页面查看订单界面如图14所示。图SEQ图\*ARABIC14管理员查看订单页面

修改订单界面如图15所示。图SEQ图\*ARABIC15修改订单页面用户查看个人订单界面如图16所示。图SEQ图\*ARABIC16普通用户查找个人订单页面(三)车辆管理模块1.添加车辆信息:管理员可以点击添加车辆按钮,输入车辆信息,点击添加,添加成功后弹出“添加成功”提示框。2.查询车辆信息:管理员可以查看当前系统中所有车辆信息,或者根据车牌号,车辆状态查找符合要求车辆。3.修改车辆信息:管理员点击查找到的车辆信息之前的管理按钮,进入管理车辆界面,输入要修改的信息值,点击修改。如果要给车辆派送订单,在当前页面派送订单框中输入订单编号,点击修改。4.删除车辆信息:在管理订单界面,点击删除按钮,可以删除当前车辆所有信息。管理员添加车辆信息界面如图17所示。图SEQ图\*ARABIC17添加车辆界面管理员查找车辆信息界面如图18所示。图SEQ图\*ARABIC18查找车辆界面

管理员管理车辆信息界面如图19所示。图SEQ图\*ARABIC19管理车辆界面(四)货物管理模块1.添加货物:在用户下单填写货物信息时,添加货物信息。2.查询货物:管理员可以点击货物管理按钮,查看所有货物信息,或者根据货物编号、货物状态查找货物信息。3.修改货物信息:管理员可以在管理订单页面修改货物状态与货物所处位置信息。查找货物信息界面如图20所示。图SEQ图\*ARABIC20查找货物信息界面(五)运输点模块1.添加运输点:管理员进入设置运输点界面,点击添加按钮,进入添加运输点界面。输入省市信息,点击添加。2.删除运输点:管理员在设置运输点界面,选中要删除的运输点,点击删除。3.查看运输点:管理员与普通用户可以查看系统当前所有运输点,也可以输入地点关键字来进行查找。比如:输入“太”,显示“山西,太原”运输点。设置运输点界面如图21所示。图SEQ图\*ARABIC21设置运输点界面添加运输点界面如图22所示。图SEQ图\*ARABIC22添加运输点界面查看运输点界面如图23所示。图SEQ图\*ARABIC23查看运输点界面(六)用户管理模块1.删除与激活用户:管理员可以在注销激活页面,输入用户名,点击注销或激活来改变用户状态。管理员身份不可注销。普通用户可以点击注销按钮,注销自己的账号。状态为注销的用户不可登陆本系统。2.查找用户:管理员可以查找系统中所有的用户,或者根据用户名精确查找用户。3.修改密码:管理员可以修改系统中所有用户密码。普通用户只可可修改自己的密码。4.修改用户信息:用户可以在个人信息界面查看修改个人信息。

个人信息界面如图24所示。图SEQ图\*ARABIC24查看修改个人信息界面

修改密码界面如图25所示。图SEQ图\*ARABIC25修改密码界面用户查找界面如图26所示。图SEQ图\*ARABIC26查找用户界面

注销激活界面如图27所示。图SEQ图\*ARABIC27注销用户界面管理员在本模块所有可使用功能如图28所示。图SEQ图\*ARABIC28管理员系统管理菜单普通用户在本模块所有可使用功能如图29所示。图SEQ图\*ARABIC29普通用户系统管理菜单注:系统中所有的车辆编号、订单编号与货物编号均使用全局唯一标识符GUID生成。

六、系统程序测试(一)测试环境软件环境:客户端:Windows10;VisualStudio2019。服务器端:Windows10;VisualStudio2019。数据库:SQLserver2014,运行于服务器端。硬件环境:服务器端处理器:Intel(R)Core(TM)i5-7200UCPU@2.50GHz2.70GHz;内存:8G。客户机端处理器:Intel(R)Core(TM)i5-7200UCPU@2.50GHz2.70GHz;内存:8G。(二)系统功能测试采用黑盒测试法进行系统功能测试。在测试过程中,严格遵循系统功能测试用例。对于不符合预期结果的测试结果进行二次开发和测试。测试用例如表7所示。表SEQ表\*ARABIC7系统功能测试用例用例名称物流配送管理系统测试流程普通用户功能测试:1.进入系统初始登录页面,点击注册按钮,输入用户信息,点击注册

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论