PC版
搜索导航
论文网 > 工学论文 > 交通运输论文

基于MVC框架的物流运输管理系统

  中图分类号:TP315 文献标识码:A 文章编号:1009-3044(2016)09-0283-03
  1 背景
  随着物流行业的不断发展,各物流公司之间竞争也日益加剧。目前,多数物流公司接收货物都是以用户上门提交来完成,用户运输的货物量大时还要自己寻找车辆运输,物流公司对各种用户的货物信息要计算货物运输费用并做出详细的清单,十分不便。针对以上的问题,设计并实现了基于传统MVC架构的物流运输管理系统,解决了用户注册后在线下单、物流运输公司后台操作员时时接单处理等需求。系统采用JSP语言和SQL server 2005数据库编写,采用传统的MVC编程模式实现系统,降低模块之间耦合性,方便后期进行扩展和维护。
  2 系统架构
  物流运输管理系统根据面临的实际需求来设计实现系统各个功能模块,使用JSP、Servlet和JavaBean实现。MVC设计模式使应用程序被分成模型(Model)、视图(View)和控制器(Control)三个核心部件,将系统设计者和程序员的角色清楚地划分开。模型是在系统程序中处理数据逻辑的部分,视图是在系统程序中处理数据显示的部分。控制器是在系统程序中处理用户交互的部分,将视图上的行为(比如点击Submit提交按钮)映射到模型上的操作(比如提交用户下单相关的信息),它的运行模式如图1所示。系统使用ExtJS设计界面,ExtJS是一套客户端框架,完全基于JavaScript、CSS和HTML实现,与主流浏览器完全兼容,并且无需安装任何插件。
  JSP全名为Java Server Pages,是在Sun Microsystems公司的倡导下、多家公司共同参与建立的一种跨平台的动态网页技术,在传统静态HTML页面中嵌入Java代码片段,再由Web服务器中的JSP引擎来进行编译并执行嵌入的Java代码片段,生成的页面信息返回给客户端。JavaBean是Java语言写成的一种可复用的平台独立软件组件,主要负责处理后台的数据运算和数据库的相关操作;Servlet是连接前台和后台service层的桥梁,是数据的中转站,主要负责交互式浏览和修改数据并生成动态内容,它的工作流程为:用户通过HTTP在本地Web端发出请求,服务器端收到用户的请求提交到Servlet容器并调用Servlet中编写设计的相关方法来处理请求,访问Sql Server数据库,调用Web服务、EJB或直接给出处理结果,并生成一个响应。响应由Servlet容器返回给服务器,服务器包装这个响应后以HTTP响应的方式发送给本地Web浏览器。 Servelt与一般JAVA类的不同之处是可以处理HTTP请求。
  ExtJS是采用JavaScript写的主要用于创建用户界面的前端框架。ExtJs由开发人员Jack Slocum开发,通过参考Java Swing等机制来组织可视化组件,无论是在UI界面上CSS样式的应用,到对数据解析异常处理,都算是一款不可多得的JavaScript客户端技术的精品。因为它与后台技术无关,因此可以在Java.、Net等各种语言开发的应用中使用ExtJS对前端页面进行设计美化,达到快速开发的目的,提升效率。
  3 系统需求设计
  在物流运输管理系统的特点是:用户注册后可以在线下单,方便高效,下单过程中根据填写的信息实时计算出所需支付的费用。用户可选择自己配送或是让物流公司上门提货,物流公司在线接单后根据用户实际订单货物量和地址距离来派车,充分提高了货物运送的效率。功能模块如图2所示。
  物流运输管理系统主要分为前台用户和后台管理员两类角色。后台管理员分为:系统操作员、主管、财务人员和超级管理员,其中系统操作员又分接单操作员、派单操作员和干线商联系人操作员。对于后台管理员的一系列操作,主要分几个时间节点:未审核状态、已审核未派车状态、已派车未入库状态、已入库待运输状态、运输中状态和运输完成已签收状态。
  1)前台用户模块。该模块实现用户注册、个人信息修改、密码修改、运单查询、在线下单和物流查询功能。
  2)接单操作员模块。接单操作员查看并审核客户已提交的运单信息,并反馈给客户。
  3)派单操作员模块。派单操作员根据运单的实际处理情况派车提货并能根据实际需求对运单部分信息进行修改。
  4)干线商联系人操作员模块。干线商联系人操作员通过本系统反馈,及时联系干线商进行货物运输及物流状态更新。
  5)主管模块。主管登录系统后,可以查看掌握所有订单的实时处理动态,做出相应决策。
  6)超级管理员模块。超级管理员可以通过系统后台管理所有人员,包括每个操作员的相关权限和人员的增加删除。
  4 系统部分功能设计与实现
  4.1 用户在线下单模块
  该部分主要实现了已注册登录的用户对货物运输的在线下单功能,设计过程如下:用户登录系统后点击“我要下单”进入下单页面,填写发货人信息、收货人信息、货物信息和其他增值费用信息。在填写相关信息的过程中,点击不同费用的id操作,触发onblur()事件和onchange事件等事件调用Ajax的异步传输,提交一个携带费用信息的长字符串到后台Servlet对用户当前所填内容进行实时计算,并将计算的详细费用显示在页面左侧,供下单用户参考。填写完毕后,用户勾选同意相关货物运输协议,“我要下单”按钮从灰色的不可点击状态转为蓝色可下单状态,点击按钮提交订单;前台js相关代码在提交前进行数据格式验证,若验证失败则弹出问题提示信息;若验证成功则提交请求至后台,此时运单状态变为未审核。用户也可以选择“保存草稿”对已填写内容保存,方便之后继续填写。图3为用户下单页面。   4.2 接单操作员审核运单模块
  后台接单员对用户新下的运单进行审核,若用户未选择上门提货,则审核通过后订单从未审核状态变为未入库状态,否则审核通过后转变为已派车状态。若审核未通过则转为审核未通过状态。当用户新下单后超过一定时间未被审核处理时,系统自动提高其处理优先级,将运单按照其优先级的高低顺序显示给接单操作员处理。接单操作员对新收到的运单操作如图4所示。
  4.3 派单操作员派车提货模块操
  后台派单员对需要派车提货运单填写派出的车辆信息并进行派车提货,并转为已派车未入库状态。当确认货物入库后,派单操作员将运单装状态改为已入库待运输状态。当待派车的运单超过一定时间未被处理时,系统自动提高其处理优先级,将运单按照其优先级的高低顺序显示给派单操作员处理。派单操作员对运单派车操作如图5所示。
  4.4 干线商联系人操作员模块
  对于自身运输的线路,物流公司可以选择独自承担运输货物服务。对于超出运输路线的运单,物流公司需要联系干线商为其提供货物运输服务,并录入干线商运送货物车辆信息,货车信息组成为货车司机姓名+司机电话+货车车号+车型。此时运单状态变为运输中状态。
  4.5 签收确认模块
  货物已完成配送且收件人已签收后,需要对运单执行签收操作,并向系统上传签收拍照图片。运单完成后,状态更改为已完成状态,前台用户可在已完成运单中查看详细信息。
  5 数据库设计
  系统数据库采用SQL Server 2005,设计了dbo.admin1、dbo.adminorder、dbo.contacts、dbo.logistics、dbo.trunk、dbo.userorder、dbo.packing、dbo.goods、dbo.freighttype等17个表。各个数据库表图如图6所示。
  6 结束语
  本文介绍了使用传统MVC模式设计的物流运输管理系统,根据具体需求以时间节点为顺序分析了每个角色的功能作用和实现,希望该文能让读者了解物流运输的流程及具体的设计实现过程。

相关论文

物流运输框架管理系统基于运输物流
基于环境工程专业实验课程思政教育的
旅客综合运输服务水平指标体系探讨
基于学习通SPOC的高校保险学课程教学
基于企业内部财务控制制度创新思考
基于协同理论的项目财务管理系统建设
基于当前中药专业教学中存在的问题及
基于民营企业文化建设的问题与对策思
农村电子商务与物流配送运营服务体系
基于案例的行政单位内部控制建设研究
基于现金流量税重构国际税收规则的理