JAVA语言的物流管理系统的设计与实现 - 图文

更新时间:2023-03-13 04:38:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

齐 齐 哈 尔 大 学

毕业设计(论文)

题 目 基于JAVA语言的物流管理系统的设计与实现 学 院 计控学院 专业班级 计本077班 学生姓名 赵玉广 指导教师 王柠 成 绩

2011年 6 月 16 日

齐齐哈尔大学毕业设计(论文)

摘 要

物流信息管理系统是一个企业不可缺少的一部分,它的内容对于企业的决策者和管理者来说都是至关重要的,因此,物流信息管理系统应该能够为用户提供充足的信息和快捷的查询手段,但一直以来人们使用传统的人工方式管理物流,这种管理方式存在着许多缺点,诸如效率低,保密性差等,而且将会产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。企业信息管理通常比较复杂,由于各类信息繁多难以集中,利用计算机支持企业高效率完成企业信息管理,是适应现代企业制度要求,推动企业信息管理走向科学化、社会化、规范化和自动化,从而提高企业信息管理效率。

本文首先介绍了以JAVA语言实现的运通物流管理系统的开发过程,以及开发中所用到的技术,并对系统进行了分析设计,最后通过相应的开发平台进行实现。该系统达到了数据的一致性和安全性,应用程序功能完备,符合了物流信息管理系统作为典型的信息管理系统的要求。用户可以对物流信息进行新增、查询、修改以及数据分析统计等操作,为了达到企业内部的要求,本系统也对人事信息和客户信息进行了管理,使物流信息系统更加完善。

关键词: 物流;信息管理;JAVA

I

齐齐哈尔大学毕业设计(论文)

Abstract

Logistics information management system is an integral part of an enterprise. Its content for business decision makers and managers, are crucial, therefore, logistics information management system should be able to provide sufficient information and efficient query means. But it has been the use of traditional manual management of logistics, such management, there are many shortcomings, such as low efficiency, poor confidentiality, and over time, will produce a large number of documents and data, for search, update and maintain all brought many difficulties. Enterprise information management is often complex and difficult to concentrate as many types of information, efficient use of computer support companies to complete enterprise information management, is to adapt to the modern enterprise system, enterprise information management to promote scientific, social, standardization and automation to enhance enterprise information management efficiency. This paper introduces the operation of the JAVA language through the development process of the logistics management system, design and system analysis, and finally through the appropriate platform for implementation. The system has reached the consistency and security of data, application functions, in line with the logistics information management system as a typical management information systems. Logistics information for the user can add, query, modify, and data analysis, statistics, etc, in order to achieve the requirements of the enterprise, the system also on the personnel information and customer information to the management, logistics information management more perfect.

Key words :Logistics; Information management;JAVA

II

齐齐哈尔大学毕业设计(论文)

目 录

摘要 ..................................................................................................................................................I Abstract ....................................................................................................................................... II

第1章 绪论 ............................................................................................................................. 1

1.1 选题依据和意义 ....................................................................................................... 1 1.2 本课题在国内外的研究现状 ................................................................................ 1 1.3 课题研究的内容及拟采取的方法 ....................................................................... 2 第2章 系统开发模式、工具及环境 ................................................................................ 3

2.1 系统开发模式 ........................................................................................................... 3 2.2 系统开发环境的选择.............................................................................................. 3 2.3 系统运行环境的选择.............................................................................................. 3 2.4 系统实现过程中技术的选择 ................................................................................ 3 第3章 需求分析—软件需求规格说明书 ....................................................................... 4

3.1 引言 ............................................................................................................................. 4 3.2 背景 ............................................................................................................................. 4 3.3 任务概述 .................................................................................................................... 5 3.3.1 目标 ..................................................................................................................... 5 3.3.2 用户的特点 ....................................................................................................... 5 3.4 需求规定 .................................................................................................................... 5 3.4.1 对性能的规定 ................................................................................................... 6 3.4.2 系统用例图 ....................................................................................................... 6 3.5 运行环境规定 ........................................................................................................... 9 第4章 系统总体设计 ......................................................................................................... 10

4.1 设计目的 .................................................................................................................. 10 4.2 系统模块结构设计: ............................................................................................... 10 4.3 系统功能结构描述 ................................................................................................ 11 4.4 系统功能机构图 ..................................................................................................... 11 第5章 系统的数据库设计 ................................................................................................ 14

5.1 数据库的概念 ......................................................................................................... 14 5.2 数据库的选择 ......................................................................................................... 14 5.3 数据库设计 .............................................................................................................. 14 第6章 系统开发技术介绍 ................................................................................................ 22

6.1 JAVA开发语言的选择 .......................................................................................... 22 6.2 MVC设计模式描述 ................................................................................................. 24

III

齐齐哈尔大学毕业设计(论文)

6.3 Struts2,Hibernate技术描述 ........................................................................ 25 6.3.1 Struts2描述 .................................................................................................. 25 6.3.2 Hibernate描述 ............................................................................................. 27 6.4 SQL语言描述 .......................................................................................................... 27 第7章 系统的详细设计与实现 ....................................................................................... 28

7.1 架构Struts2框架和描述 .................................................................................. 28 7.2 架构Hibernate框架和描述 .............................................................................. 29 7.3 系统功能的实现 ..................................................................................................... 30 7.3.1 系统的登录功能实现 ................................................................................... 31 7.3.2 运通物流系统首页面设计 .......................................................................... 31 7.3.3 人事管理模块实现 ........................................................................................ 32 7.3.4 货物信息管理实现 ........................................................................................ 35 7.3.5 车辆信息管理实现 ........................................................................................ 40 7.3.6 订单信息查询 ................................................................................................. 46 7.3.7 费用统计 ......................................................................................................... 48 结论 ............................................................................................................................................... 49 参考文献 ...................................................................................................................................... 50 致谢 ............................................................................................................................................... 51

IV

齐齐哈尔大学毕业设计(论文)

第1章 绪 论

1.1

选题依据和意义

此次毕业设计的选题主要来源于对齐齐哈尔市周边中小型物流公司和超市走访,了解到仍然有很多中小企业和超市对物流管理方面仍然处于纸和笔的操作。因此,在种种因素的影响下,使其部分物流管理仍然处于业务处理繁琐,工作效率低下的状态。为了达到信息化仓储、运输、车辆调度等管理,基于java的物流管理系统能够解决这一问题,并实现人机结合的方式,这也将是现代工作方式的主流。

管理信息系统作为各项技术、业务、高水平管理及工作自动化的方法和式,正在广泛应用,它是为了实现系统的硬件、系统软件、应用软件及数据的共享,已经成为越来越破切的任务。

人们生活工作与通信,目前都与信息的日益紧密,但很多的国内企业的仓库作业没有达到信息化,因此为实现信息数字化,开发中小型物流管理系统正是实现利用现有的信息基础设施,重点开发和推广应用于各类科技经济等数据库和网络资源服务系统,以便取得更大的社会效益有着总要的意义和价值。

1.2 本课题在国内外的研究现状

中国物流业近几年才开始起步,并进入发展期。由于我国计算机软件技术的发展迅速,也同时也解决了国内很多生产和管理技术的提升。因此,多数软件公司都以应用软件开发为主,实现办公自动化软件的推广和应用。多数以中小型企业管理软件为主,不论是制造还是运输、销售、仓储等方面都离不开计算机软件的管理。目前国内的物流管理系统都是根据公司规模的差距使物流管理系统的管理的内容也不尽相同,但是主要目的都是要以计算机为载体来解决当前庞大的数国外物流的发展不仅与社会经济和生产力的发展水平有关,同时也与科学技术发展的水平有关。国外的物流管理系统, 随着新经济和现代信息技术的迅还发展,不论是物流管理软件系统的开发,还是其他应用型软件开发,在实现的功能上都达到了很高的水平。

1.3 课题研究的内容及拟采取的方法

研究内容及方法:物流管理系统包含的内容非常的广泛,但是对于不同的公司对软件功能的需求有所不同,所以我们对物流管理系统的功能模块的构思和设计也有所不

1

齐齐哈尔大学毕业设计(论文)

同。主要运用Java web应用技术来实现该系统的功能,通过动态页面jsp来实现页面的显示和验证,应用Hibernate框架和Struts2框架来封装从而实现与数据库的交互和页面跳转达到了快速的软件开发。

2

齐齐哈尔大学毕业设计(论文)

第2章 系统开发模式、工具及环境

2.1 系统开发模式

在软件系统开发模式中,一般采用mvc模式,即视图层,逻辑层和控制层,但是在项目开发中,目前已经不局限于这种模式。 对于本系统的开发模式,我此次采用的是重新构建MVC架构:

1.系统开发模式主要分五层:JSP(HTML)视图层

[13]

、Struts2(使用它对动作Action

的跳转进行管理)控制层、具体的业务逻辑(javaBean)、数据持久层(DAO,基于Hibernate的DAO)、service层(该层用来负责为模式层提供对应的DAO的接口,而不是直接在模式层中进行调用,降低对数据持久层的依赖度)。

2.service层的介绍:本次应用service层,主要是对数据持久层进行再次的封装,使得上层的操作不用理解底层的具体使用,只需要通过service提供相应的接口方法即可。这种做法降低了各层之间的耦合度。

2.2 系统开发环境的选择

本次系统的开发环境我选择MyEclipse 7.0 软件作为编写程序的软件。该软件广泛应用于软件开发行业。由于版本的问题,MyEclipse6.0以下版本不支持Hibernate框架,所以我此次选择7.0版本。

MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, JSP, CSS, Javascript, SQL, Hibernate。

2.3 系统运行环境的选择

系统运行环境,运通物流管理系统是基于Java Web 应用的系统软件,那么它就离

不开服务器对它的支持,所以在服务器上我选择tomcat6.0版本,在对Java代码的编译上,本系统应用的是Sun公司出品的Jdk6.0版本。

Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的

3

齐齐哈尔大学毕业设计(论文)

一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5 支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。目前最新版本是6.0。

2.4 系统实现过程中技术的选择

目前软件开发都是基于框架开发的,目的是为了达到开发的快捷性,所以本次对运通物流管理系统的开发上,我也运用了这样的开发手段。

应用的技术简介:在当今企业级的开发环境之下处理面向对象与关系数据库的转化是非常繁琐也相当费时的。

1.Hibernate是适合与处理对象关系映射的一个工具。Hibernate [2]是「对象/关系对应」(Object/Relational Mapping)的解决方案,简写为ORM,简单的说就是将 Java 中的对象与对象关系,映像至关系型数据库中的表格与表格之间的关系,ORM这个术语指代一种映射数据的技术,它能够通过基于SQL的语法映射对象模型的数据到关系模型数据。这样就简化了对数据库的操作。

2.struts2框架:Struts是一个MVC框架(Framework),用于快速开发Java Web应用。

对于这两种技术,主要对项目的类,和方法,对象进行封装,因为在Java编程中,时刻都要将“封装”考虑在项目开发的整个过程中。这也降低了系统模块与模块,类与类之间的耦合度,使系统的结构更稳定。

4

齐齐哈尔大学毕业设计(论文)

第3章 需求分析—软件需求规格说明书

3.1 引言

需求分析是软件开发的重要组成部分,需求分析是用户对软件功能需求的描述,通过详细了解用户对软件功能的要求从而达到软件需求面向用户的目的。该软件需求规格说明书正是对用户需求做的详细分析的文档。以便作为程序员今后编写该软件时进行参考。

3.2 背景

编写背景:因对该运通管理系统的功能进行用户需求分析,从而编写该文档,该文档是对运通管理系统的功能进行描述和可行性分析,达到正确的功能描述的目的。

3.3 任务概述

3.3.1 目标

通过对运通管理系统用户的功能需求,编写需求文档,来记录分析该系统的具体功能和逻辑。 从而达到实现系统登录,入库管理,出入管理,库存管理,人事管理,以及车辆调度管理等模块的实现。为今后编写该软件程序做准备。

运通管理系统,主要是为了方便对物流过程中对货物流通进行科学化管理,方便管理过程中的繁琐过程,提高物流管理的效率,通过客户的订单的生成,其他的一系列任务直接由操作员在电脑前完成所有繁琐操作。

3.3.2 用户的特点

该系统是对企业内部人员使用的应用软件,它是基于web应用的,因此面向的用户是企业内部人员。 具备基础的计算机知识的人即可对本系统进行操作。

该系统包含了对企业内部的人事管理、客户信息管理、车辆调度和货物出入库信息管理、以及对货物状态的全程监管。确保了货物的流通状态的管理的顺畅。

3.4 需求规定

能够完全实现对公司产品流通过程中所有业务的包含,实现综合的管理和简单的操作即可,使操作简单化,可视化。在对系统要求方面要达到系统的稳定性。

5

齐齐哈尔大学毕业设计(论文)

3.4.1 对性能的规定

对系统的时间性要求:要求系统能够有快捷的操作响应。对系统编写代码是,优化系统结构和层次,达到提高系统性能的可操作性,提高系统效率。

对精度要求:对数据库信息的存储,减少对数据库信息的冗余。减少页面缓存。

3.4.2 系统用例图

系统用例图(Use Case Diagram)是在软件需求分析到最终实现的第一步,也是软件开发中重要的组成部分。

用例图定义:由参与者(Actor)、用例(Use Case)以及它们之间的关系构成的用于描述系统功能的动态视图称为用例图。

用例图(User Case)是被称为参与者的外部用户所能观察到的系统功能的模型图,呈现了一些参与者和一些用例,以及它们之间的关系,主要用于对系统、子系统或类的功能行为进行建模。

用例图展示了用例之间以及同用例参与者之间是怎样相互联系的。用例图用于对系统、子系统或类的行为进行可视化,使用户能够理解如何使用这些元素,并使开发者能够实现这些元素。

以下是系统的用例图,使用用例图主要原因是它具有三个主要的作用:(1)获取需求;(2)指导测试;(3)还可在整个过程中的其它工作流起到指导作用。 1.登录模块用例图:

图3-1登录模块用例图

图3-1登陆了模块用例图:主要来描述系统的操作人员通过访问主页面来登录本系

6

齐齐哈尔大学毕业设计(论文)

统。此图也描述了系统的整个功能组成部分。 2.人事管理模块用例图:

图3-2人事管理模块用例图

图3-2人事管理模块用例图: 此图描述的是系统人事管理模块下的子系统的功能描述。通过访问系统的人事管理功能模块,来进行对员工信息管理,对客户信息管理。 从而对员工信息和客户信息进行操作。

3.货物信息管理用例图:

图3-3货物信息管理模块用例图:此图是对货物信息管理模块的用例进行描述,该模块主要包含货物出库,货物入库和盘点三个功能点,此图详细的描述了该系统货物信息管理中子系统的关系和功能点。

7

齐齐哈尔大学毕业设计(论文)

更信出库信息更新入库信息查看在途货物信息货物入库删除已处理订单货物出库修改货物信息货物信息管理模块运通系统用户货物基本信息查询查询在库货物信息生成客户订单库存盘点显示货物信息修改错误的订单图3-3货物信息管理模块用例图

4.车辆信息管理用例图:

图3-4车辆信息管理模块用例图

8

备份记录

齐齐哈尔大学毕业设计(论文)

图3-4车辆信息管理模块图:主要为客户描述车辆信息模块下的铁运、汽运、空运以及对车辆分配的功能描述。 5.货物信息查询模块用例图:

图3-5货物基本信息查询管理模块用例图

图3-5货物基本信息查询管理模块用例图:用于描述用户对货物信息的查询操作描述。

6.盘点信息模块用例图:

图3-6盘点信息管理模块用例图

图3-6盘点信息管理模块用例图:主要描述盘点库存功能用例内容,来对其子系统的概要描述。此模块包含对货物信息的费用计算。

3.5 运行环境规定

要对Windows XP 或Windows 7 系统兼容。系统必须具备安装Oracle10g和Tomcat6.0 的基本硬件要求。

9

齐齐哈尔大学毕业设计(论文)

第4章 系统总体设计

4.1 设计目的

系统设计又称为物理设计,是开发管理信息系统的第二阶段,本章是总体设计,其任务是设计系统的框架和概貌,此阶段是开发人员进行的工作,他们将系统设计阶段得到的目标系统的逻辑模型转换为目标系统的物理模型,该阶段得到工作成果――系统总体设计是下一个阶段系统实施的工作依据。

4.2 系统模块结构设计

图4-1是系统模块结构图,主要描述对此系统的功能结构的总体描述。该系统包含登录模块,人事管理模块,货物信息管理模块,车辆信息管理模块,货物信息查询以及费用统计等。此图采用Microsoft Office Visio 2003软件来生成的。 它详细的描述了本系统中各个模块的应用功能内容。

轻舟装饰BSS轻舟装饰客户管理系统龙发装饰报价系统东易日盛客服系统龙发装饰仓库管理系统业务系统决策支持系统。。。BtoB电子商务SaaS运营平台供求信息发布电子订单电子支付物流企业用户管理系统定制系统后台支持BtoC电子商务家装门户网上建材商城基础服务平台家装知识库论坛中心数据库支撑数据库主数据库甲企业库已企业库

图 4-1 系统模块结构图

10

齐齐哈尔大学毕业设计(论文)

4.3 系统功能结构描述

1.用户登录模块:实现用户登录后可对用户名和密码进行修改。并要求用户的验证在数据库后台进行验证,不是前台页面中对用户名和密码进行检验。为了达到安全性,系统登陆后不能再通过web浏览器的后退按键会退到此登陆页面。

2.人事管理模块:任何操作都离不开人员,因此对人员管理方面要实现对员工的信息的添加和更新删除等操作。另一方面是对客户信息的管理,也要具有查询和修改的功能。

3.货物信息模块: 要对货物入库和出库进行管理,对已经处理完的内容进行删除,并存入其他表中,达到数据有据可寻的目的。 另一点是对库存的信息进行定期盘点。对在途货物信息进行监控。

4.对公司运输车辆进行管理:主要是对车辆的调度,都要具备增加和更新的功能。对订单中采用车辆运输的部分,进行车辆分配。

5.对本系统基本信息的综合查询功能:按照订单查询,按车牌号查询车辆,按日期查询盘点内容等。

4.4 系统功能流程图

该图主要是对系统的功能流程的描述:当系统的客户有货物运输需求时,系统的管理员会对客户的需求进行分析,从而对客户的信息进行编辑。首先生成客户订单,客户订单中主要包含了客户的基本信息,比如客户的编号、客户的所属公司、客户的公司的所在地以及客户的联系方式等。

当客户订单生成后,会对客户的收货人进行添加。客户的收货人主要是对货物到达目的地后接受货物的人员的信息进行管理。主要包含联系人的姓名、地址、电话、以及Email等信息。

客户订单以及客户的联系人已经产生,那么此时就要对订单详细进行编辑,客户订单详细主要是对运输的货物进行详细的描述,包含数量,类别,货物名,货物条形码,以及货物的颜色,体积等内容。 它是对货物的信息的一个详细的描述,为系统管理员提供货物的详细信息作依据。

此时是货物的入库操作,当货物到达仓库后,要对货物进行货物入库操作,此时要记录货物是属于哪个订单货物,此时管理员要对其进行记录。 当货物入库后,系统操作员可以查看在库货物的信息。

当货物出库时,要记录出库货物是属于哪个订单的,同时要分配出库货物订单运输方式,管理员根据货物订单要求的运输方式分配相对应的运输方式。此操作包含汽运,铁运以及空运等方式,每次分配操作时,同时记录一条数据,使此数据和订单一一对应。

11

齐齐哈尔大学毕业设计(论文)

当货物出库分配运输方式后一律可以看做是“在途”状态。

生成客户订单货物入库生成客户信息客户需求生成订单详细信息分析货物出库铁运生成收货人信息系统用户分配运输方式空运车辆信息根据车辆信息分配车辆汽运货物管理订单管理

图4-2 系统功能流程图

分配运输方式时,铁运信息根据铁路运输的车次进行分配,空运按照不同时间的航

12

齐齐哈尔大学毕业设计(论文)

班进行分配,汽运管理信息是按照本公司内部的车辆进行有序化管理的。汽运管理分配的就是本公司内部的车辆,不同车辆的详细信息可以通过系统来管理。

在货物到达目的地时,收货人确认收货后,操作员改变货物“在途”状态,其订单上由操作员编辑货物是“否到达目的地”一项来标注货物订单。此时货物的订单就已经处理完毕。

13

齐齐哈尔大学毕业设计(论文)

第5章 系统的数据库设计

5.1 数据库的概念

当人么从不同角度描述数据库的概念是,往往会有不同的概念。例如,有人称数据库是一个“记录保存系统”(该定义强调了数据库是若干记录的集合)。又比如说数据库是“人们为解决特定的任务,以一定的组织方式存储在一起的相关的数据的集合”(该定义侧重于数据的组织)。也有人将数据库当做是“一个数据仓库”。当然,这些描述都很形象,但是并不是那么严谨。严格地说,数据库是“按照数据结构来组织、存储和管理数据的仓库”。

本系统将使用一直以来使用都最为广泛的关系模型作为数据库的建设依据。在用户的观点下,关系模型中数据的逻辑结构是一张二维表,一个关系对应通常说的一张表,并且关系的每一个分量必须是一个不可分的数据项。而一个基于关系模型的数据库则是由若干个二维表组成的。对于一些大型和中型的数据库,如Oracle,SQL Server 2000/7.0等都属于关系型数据库,同时它们所带有的数据库管理工具是其他小型数据库所没有的,而同时这些工具又为管理员的工作节省了很多的时间和财力。

5.2 数据库的选择

在选择数据库上,我选择目前市场上占有率最大的Oracle数据库,这次我应用的是Oracle 10g. 我们以前使用数据库连接,都是使用单联接(或单例模式),但是在大并发量出现的时候,总有可能会达到数据库连接数的上限。那么应用数据池(DATA POOL)可以解决系统因访问量过多而崩溃的问题。但是使用了数据池并不是为了解决连接数据库速度的问题,而是为了实现数据连接的稳定性和提高并发的能力。但是由于此系统是用于企业内部的,访问量的并发性要求不高,因此此系统部分内容采用数据库的单链接。

5.3 数据库设计

概念模型是对信息世界建模,其表示方法有很多,其中最为常用的是实体-联系模型,即E-R模型,它是用E-R图来描述现实世界的概念模型。E-R图中用矩形表示实体;用菱形表示联系。如图:5-1系统E-R图。

14

齐齐哈尔大学毕业设计(论文)

图5-1 系统E-R图

该图只是描述了系统的实体与实体之间的关系,并没有添加实体的属性内容。由图可知,系统的管理员对系统员工信息、货物入库出库信息、车辆信息、以及货物订单和客户信息都是一对多的关系。

Office Visio 2003 或者Office Visio2010 是一种便于 IT 和商务专业人员就复杂信息、系统和流程进行可视化处理、分析和交流的构图软件。因此这里用了此软件来画各种流程图,而不是用Microsoft Word2003或者是Microsoft Word2007,因为这会 使开发更加的快捷,而不至于因构图而浪费时间。为了清楚简便的描述出实体与其性之间的关系,用Microsoft Office Visio 2003软件生成了一张包含实体属性的完E-R图,见图5-2和图5-3。

15

齐齐哈尔大学毕业设计(论文)

ytrenshiPK ytrenshi_worknumytrenshi_nameytrenshi_sexytrenshi_chushengytrenshi_cardnoytrenshi_addressytrenshi_teltyrenshi_bumennumytbumenPKkhdingdanPK khdingdan_dnumkhdingdan_knumkhdingdan_ystypekhdingdan_fhkhdingdan_shrnumkhdingdan_ftimekhdingdan_dtimekhdingdan_stimehkdingdan_typehkdingdan_czyuanhkdingdan_czaddkhdingdan_beizhuPK shouhrenshouhren_numshouhren_gongsishouhren_nameshouhren_addressshouhren_telshouhren_emailshouhren_dingshouhren_typeshouhren_beizhuoutputimagePKddxiangxiPK dd_iddd_ddnumdd_cpnumdd_cptmdd_cpleibiedd_cpnamedd_cpyansedd_cptijidd_cpshuliangdd_cpdanweidd_xianghaodd_ysfangshidd_ysbianhaodd_beizhu output_numoutput_ddnumoutput_cpleibieoutput_cpnameoutput_suoshuoutput_cpnumoutput_cptiaooutput_cpxianghaooutput_yckshuliangoutput_shijichukuoutput_danwei output_outtimeoutput_outtypeoutput_outtypeoutput_mddtypeoutput_beizhu ytbumen_numytbumen_namekucunxinxiPKPK kucun_numkucun_ddnumkucun_leibiekucun_cpnamekucun_suoshukucun_cpnumkucun_tiaoxingkucun_xianghaokucun_cpshuliangkucun_rukushukucun_danweikucun_rktimekucun_ckshukucun_beizhuinputimagePK input_numinput_ddnuminput_cpleibieinput_cpnameinput_suoshuinput_cpnuminput_cpxianghaoinput_cpshulianginput_shijirukuinput_danweiinput_rutimeinput_rutypeinput_beizhuytclientPK ytclient_numytclient_gsnameytclient_gsaddytclient_perytclient_telytclient_emailytclient_dingnumytclient_beizhukulishiPK kulishi_rnumkulishi_dnumkulishi_cpleibiekulishi_cpnamekulishi_suoshukulishi_cpnumkulishi_cptiaokulishi_cpxiangkulishi_cpshukulishi_rkshukulishi_danweikulishi_rutimekulishi_chutimekulishi_beizhuzaituPK zaitu_idzaitu_chunumzaitu_dingnumzaitu_beizhu

图 5-2 系统表的完整关系模型

16

齐齐哈尔大学毕业设计(论文)

ddxiangxi1PKdd_id dd_ddnumdd_cpnumdd_cptmdd_cpleibiedd_cpnamedd_cpyansedd_cptijidd_cpshuliangdd_cpdanweidd_xianghaodd_ysfangshidd_ysbianhaodd_beizhucheckPKcheck_id check_ddnumcheck_yunfeicheck_cunfeicheck_banfeicheck_zongecheck_timecheck_beizhukongyunPKkongyun_idqiyunPKqiyun_id qiyun_ddnumqiyun_chenumqiyun_zhongzhuanqiyun_ctimeqiyun_dtimeqiyun_sijiqiyun_peiyuanqiyun_beizhu kongyun_ddnumkongyun_bancikongyun_zhongzhuankongyun_qtimekongyun_dtimekongyun_tidankongyun_peiyuankongyun_beizhutieyunPKtieyun_id tieyun_ddnumtieyun_checitieyun_zhongzhuantieyun_ctimetieyun_dtimetieyun_peiyuantieyun_beizhuytrenshiPKytrenshi_worknum ytrenshi_nameytrenshi_sexytrenshi_chushengytrenshi_cardnoytrenshi_addressytrenshi_teltyrenshi_bumennum cheliangPKcheliang_numcheliang_zaicheliang_longcheliang_wcheliang_hcheliang_sijicheliang_gongnumcheliang_type

图 5-3 系统表的完整关系模型

以上两个图 5-2和图5-3描述了运通物流管理系统的表与表之间的字段的关系,它更鲜明的显示了表结构的关系。例如:系统的人事表 ytrenshi 与车辆信息表 chenliang 对应的主外键关系一目了然,cheliang表中主键是cheliang_num 外键是cheliang_siji (员工编号),对应ytrenshi表中的主键ytrenshi_worknum 关系。

17

齐齐哈尔大学毕业设计(论文)

系统表的建立:

表5-1 用户表 ytuser

字段描述 编号 用户名 用户密码

字段名

ytuser_id ytuser_name ytuser_pwd

数据类型

varchar2(10) varchar2(30) varchar2(30)

是否为空

notnull notnull notnull

主键 PK

表5-1 用户表中主键是用户编号,其中用户名唯一,不能为空,用户密码不能为空,其中用户名和用户密码是用户进入系统的为一标识。

表5-2人事表 ytrenshi

字段描述

工作证号 姓名 性别 出生年月 身份证号 居住地址 联系电话 部门编号

字段名

ytrenshi_worknum ytrenshi_name ytrenshi_sex

ytrenshi_chusheng ytrenshi_cardno ytrenshi_address ytrenshi_tel

tyrenshi_bumennum

数据类型

varchar2(30) varchar2(30) varchar2(30) varchar2(50) varchar2(30) varchar2(50) varchar2(20) varchar2(30)

是否为空

notnull notnull notnull notnull notnull notnull notnull notnull

主键 PK FK

表5-2是系统的人事表信息,它存储了该系统的使用的公司的整体员工信息。 其中员工的工作证号是主键,它存储了员工的姓名、性别、出生年月、省份证号、居住地址、联系方式、部门编号等信息,其中部门编号是外键。由于任何一个系统或者一个企业都离不开人员,因此此处设计一个对企业内部人员信息的表,其中部门编号标识了员工所在的部门,部门编号是部门表的主键,那么此处可以通过部门编号来查询部门信息。从而查看员工所在的部门信息。

表5-3用户部门表 ytbumem

字段描述

字段名

数据类型

是否为空

主键 PK

部门编号 ytbumen_num varchar2(30) notnull 部门名称 ytbumen_name varchar2(30) notnull

表5-3用户部门表 主要由部门编号和部门名称组成,其中部门编号是主键。它存储了部门信息的详细内容。

表5-4客户信息表 ytclient

18

齐齐哈尔大学毕业设计(论文)

字段描述 客户编号 公司名称 公司所在地址 联系人姓名 联系电话 email 订单号 备注

字段名

ytclient_num ytclient_gsname ytclient_gsadd ytclient_per ytclient_tel ytclient_email ytclient_dingnum ytclient_beizhu

数据类型 varchar2(30) varchar2(30) varchar2(50) varchar2(30) varchar2(20) varchar2(30) varchar2(50) varchar2(100)

是否为空 notnull notnull notnull notnull notnull notnull notnull

主键 PK

表5-4客户信息表主要存储客户的基本信息,主要由客户编号、公司名称、公司所在地址、联系人姓名、联系电话、Email和订单号、备注组成。它主要是存储客户的基本信息。

表5-5收货人信息表 shouhren

字段描述 编号 收获公司 收货人 所在地 联系电话 email 订单号 收获状态 备注

字段名

shouhren_num shouhren_gongsi shouhren_name shouhren_address shouhren_tel shouhren_email shouhren_ding shouhren_type shouhren_beizhu

数据类型

varchar2(30) varchar2(30) varchar2(30) varchar2(50) varchar2(30) varchar2(50) varchar2(50) varchar2(10) varchar2(100)

是否为空

notnull notnull notnull notnull notnull notnull notnull notnull

主键 PK

表5-5收货人信息表,主要存储收货人的基本信息。 其中主键是收货人编号。

表5-6 客户订单表 khdingdan

字段描述 客户编号 订单编号 运输方式 发货目的地 收获人编号 预发时间 遇到达时间 订单生成时间

字段名

khdingdan_knum khdingdan_dnum khdingdan_ystype khdingdan_fh khdingdan_shrnum khdingdan_ftime khdingdan_dtime khdingdan_stime

数据类型 varchar2(50) varchar2(50) varchar2(30) varchar2(50) varchar2(50) varchar2(50) varchar2(50) varchar2(50)

是否为空 notnull notnull notnull notnull notnull notnull notnull notnull

主键 PK

19

齐齐哈尔大学毕业设计(论文)

是否已经发货 操作员姓名 操作员人所在地 备注 hkdingdan_type hkdingdan_czyuan hkdingdan_czadd khdingdan_beizhu varchar2(10) varchar2(30) varchar2(50) varchar2(100) notnull notnull notnull

表5-6客户订单表主要描述的是客户编号、客户发货时间、到达时间等基本信息,为订单详细信息提供客户的基本信息作简单描述和存储。

表5-7订单详细表 ddxiangxi

字段描述 订单序号 订单编号 产品编号 产品条形码 产品类别 产品名称 产品颜色 产品体积 产品数量 单位 产品箱号 运输方式 运输编号 备注

字段名

dd_id dd_ddnum dd_cpnum dd_cptm dd_cpleibie dd_cpname dd_cpyanse dd_cptiji dd_cpshuliang dd_cpdanwei dd_xianghao dd_ysfangshi dd_ysbianhao dd_beizhu

数据类型 varchar2(50) varchar2(50) varchar2(50) varchar2(50) varchar2(50) varchar2(50) varchar2(50) varchar2(50) varchar2(30) varchar2(20) varchar2(50) varchar2(20) varchar2(50) varchar2(100)

是否为空 notnull notnull notnull notnull notnull notnull notnull notnull notnull notnull notnull notnull notnull

主键 PK

表5-7订单详细表,主要存储订单的详细信息,它主要是对货物信息的描述。通过客户订单的订单编号可以查找到详细的订单内容。也就是这个表的内

表5-8入库信息表 Inputimage

字段描述

入库编号 订单号 产品类别 产品名称 产品所属公司 产品编码 产品箱号 产品总数量 实际入库数量 单位

字段名

input_num input_ddnum input_cpleibie input_cpname input_suoshu input_cpnum

input_cpxianghao input_cpshuliang input_shijiruku input_danwei

数据类型

varchar2(50) varchar2(50) varchar2(50) varchar2(50) varchar2(50) varchar2(50) varchar2(50) varchar2(50) varchar2(50) varchar2(10)

notnull notnull notnull notnull notnull notnull notnull notnull notnull notnull

主键

PK

20

齐齐哈尔大学毕业设计(论文)

入库时间

入库是否已完成 备注 input_rutime input_rutype input_beizhu varchar2(50) varchar2(10) varchar2(50) notnull notnull

表5-8入库信息表主要存储已经入库的货物信息,也就是货物信息的详细记录。其中主键是入库编号。由系统自动生成。

表5-9 出库信息表 outputimage

字段描述 出库编号 订单号 产品类别 产品名称 产品所属公司 产品编号 产品条形码 产品箱号 应出库总数量 实际出库数量 单位 出库时间

是否已完全出库 是否已到达目的地 备注

字段名

output_num output_ddnum output_cpleibie output_cpname output_suoshu output_cpnum output_cptiao output_cpxianghao output_yckshuliang output_shijichuku output_danwei output_outtime output_outtype output_mddtype output_beizhu

数据类型 varchar2(50) varchar2(50) varchar2(50) varchar2(50) varchar2(50) varchar2(50) varchar2(50) varchar2(50) varchar2(30) varchar2(30) varchar2(10) varchar2(50) varchar2(10) varchar2(10) varchar2(100)

是否为空 notnull notnull notnull notnull notnull notnull notnull notnull notnull notnull notnull notnull notnull notnull

主键 PK

表5-9出库信息表,主要存储出库信息记录。标识货物的状态,是否已经完成出库货物的操作。

表5-10库存信息表 Kucunxinxi

字段描述

入库编号 订单号 产品类别 产品名称 产品所属公司 产品编号 产品条形码 产品箱号 产品数量

字段名

kucun_num kucun_ddnum kucun_leibie kucun_cpname kucun_suoshu kucun_cpnum kucun_tiaoxing kucun_xianghao kucun_cpshuliang

数据类型

varchar2(50) varchar2(50) varchar2(50) varchar2(50) varchar2(50) varchar2(50) varchar2(50) varchar2(30) varchar2(30)

是否为空

notnull notnull notnull notnull notnull notnull notnull notnull notnull

主键 PK

21

齐齐哈尔大学毕业设计(论文)

实际入库数量 单位 入库时间 出库数量 备注 kucun_rukushu kucun_danwei kucun_rktime kucun_ckshu kucun_beizhu varchar2(30) varchar2(10) varchar2(50) varchar2(30) varchar2(100) notnull notnull notnull notnull

表5-10库存信息表主要存储已经入库的信息。在这里它是辅助入库信息的记录的,为了达到便于用户查询的目的建立的一张信息表。

22

齐齐哈尔大学毕业设计(论文)

第6章 系统开发技术介绍

6.1 JAVA开发语言的选择

现在,市场上可以选购的应用开发产品很多,流行的也有数十种。目前在我国市场上最为流行,使用最多,最为先进的可用作企业级开发语言的产品有:

SUN公司的Java

Microsoft公司的Visual Basic Microsoft公司的Visual C Borland公司的Delphi Powersoft公司的PowerBulider

在目前市场上这些众多的程序开发工具中,有些强调语言的弹性与执行效率;有些偏重于可视化程序开发工具所带来的便利性与效率的提高,各有各的优点和特色,也满足了不同用户的不同需求。我的网站选择Java语言开发,其原因基于以下几点:

Java是一种简单的、面向对象的、分布式的、健壮的、安全的、结构中立的、可移植的、性能很优异的[12]、多线程的、动态的语言。

1. 简单

Java的风格类似于C++,并且摒弃了C++中容易引发程序错误的地方,如指针和内存管理。 此外Java提供了丰富的类库。

2. 面向对象

面向对象可以说是Java最重要的特性。Java语言的设计完全是面向对象的。Java支持静态和动态风格的代码继承及重用。

3. 分布式[14]

Java包括一个支持HTTP和FTP等基于TCP/IP协议的子库。因此,Java应用程序可凭借URL打开并访问网络上的对象,其访问方式与访问本地文件系统几乎完全相同。

4. 健壮

Java致力于检查程序在编译和运行时的错误。Java自己操纵内存减少了内存出错的可能性。Java提供Null指针检测数组边界、检测异常出口、字节代码校验。

5. 安全

Java的安全性可从两个方面得到保证。一方面,在Java语言里,像指针和释放内存等C++功能被删除,避免了非法内存操作。另一方面,当Java用来创建浏览器时,语言功能和浏览器本身提供的功能结合起来,使它更安全。

23

齐齐哈尔大学毕业设计(论文)

6.结构中立

为了建立Java作为网络的一个整体,Java将它的程序编译成一种结构中立的中间文件格式。只要有Java运行系统的机器都能执行这种中间代码。Java源程序被编译成一种高层次的与机器无关的byte-code格式语言,这种语言被设计在虚拟机上运行,由机器相关的运行调试器实现执行。

7. 可移植的

Java的可移植性一直是Java程序设计师们的精神指标,也是Java之所以能够受到程序设计师们喜爱的原因之一,最大的功臣就是JVM的技术。JAVA编译器产生的目标代码(J-Code) 是针对一种并不存在的CPU--JAVA虚拟机(JAVA Virtual Machine),而不是某一实际的CPU。JAVA虚拟机能掩盖不同CPU之间的差别,使J-Code能运行于任何具有JAVA虚拟机的机器上。

8. 高性能

Java可以在运行时直接将目标代码翻译成机器指令。Sun用直接解释器一秒钟内可调用300,000个过程。翻译目标代码的速度与C/C++的性能没什么区别。

9. 多线程[16]

Java支持多线程,多线程功能使得在一个程序里可同时执行多个小任务。线程,有时也称小进程,是一个大进程里分出来的小的独立的进程。

10. 动态

Java的动态特性是其面向对象设计方法的发展。它允许程序动态地装入运行过程中所需要的类,这是C++语言进行面向对象程序设计所无法实现的。Java编译器不是将对实例变量和成员函数的引用编译为数值引用,而是将符号引用信息在字节码中保存下传递给解释器,再由解释器在完成动态连接类后,将符号引用信息转换为数值偏移量。

6.2 MVC设计模式描述

MVC[12]是Model-View-Controller的简称,它是一种设计模式,它把应用程序分成三个核心模块:模型、视图、控制器,它们各自处理自己的任务。

视图是用户看到并与之交互的界面,作用包括向用户显示相关的数据、接受用户的输入、向模型查询业务状态、接受模型发出的数据更新事件,从而对用户界面进行同步更新。

模型表示业务数据和业务逻辑,是应用程序的主体部分。一个模型能为多个视图提供数据,因此提高了代码的可重用性。

控制器接受用户的输入并调用模型和视图去完成用户的需求。当Web用户单击Web页面中的递交按钮来发送HTML表单时,控制器本身不输出任何东西和做任何处理。控

24

齐齐哈尔大学毕业设计(论文)

制器接收请求并决定调用哪个模型组件去处理请求,然后决定调用哪个视图来显示模型处理返回的数据。

MVC的优点表现在如下几个方面:

1.首先,最重要的一点是多个视图能共享一个模型。同一个模型可以被不同的视图重用,大大提高了代码的可重用性。

2.由于MVC的三个模块相互独立,改变其中一个不会影响其他两个,所以依据这种设计思想能构造良好的松偶合的构件。

3.此外,控制器提高了应用程序的灵活性和可配置性。控制器可以用来联接不同的模型和视图去完成用户的需求,这样控制器可以为构造应用程序提供强有力的手段。

MVC处理过程的结构图,见图6-1。

图6-1 MVC模式图

6.3 Struts2,Hibernate技术描述

6.3.1 Struts2描述

Struts2[9] 是目前Java Web MVC框架中不争的王者。Struts2由一组相

协作的类(组件)、Serlvet以及jsp tag lib组成。由于Struts 实质上就是在JSP Model2的基础上实现的一个MVC框架,所以基于struts构架的web应用程序基本上符

25

齐齐哈尔大学毕业设计(论文)

合JSP Model2即MVC的设计标准。其中的模型是JavaBean,控制器是ActionServlet、Action,视图是JSP、Struts客户化标签。

Struts2的体系与Struts1体系的差别非常大,因为Struts2使用WebWork的设计核心,而不是Struts1的设计核心。Struts2中大量使用拦截器来处理用户的请求,从而允许用户的业务逻辑控制器与Servlet API分离。

Struts2 控制器组件主要包括:充当Struts2框架的中央控制器的ActionServlet组件、充当每个子应用模块的请求处理器的RequestProcessor组件、负责处理一项具体的业务的Action组件。其工作流程如图6-2:

图6-2 Struts2流程图

Struts2 的另一特点是使用ActionForm Bean,ActionForm Bean也是一种JavaBean,除了具有一些JavaBean的常规方法,还包含一些特殊的方法,用于验证HTML表单数据以及将其属性重新设置为默认值。Strut2s框架利用ActionForm Bean来进行View组件和Controller组件之间表单数据的传递。JSP文件使用Struts2标签读取修改后的ActionForm Bean的信息,重新设置HTML表单。

26

齐齐哈尔大学毕业设计(论文)

6.3.2 Hibernate描述

Hibernate是连接Java应用程序和关系数据库的中间件,它封装了JDBC,实现了Java对象的持久化;封装了所有数据访问细节,使业务逻辑层专注于业务逻辑。并且通过对象关系映射(Object Relational Mapping,简称ORM)解决了面向对象与关系数据

库之间存在的互不匹配的现象。如图6-3:

如图6-3 Hibernate流程图

6.4 SQL语言描述

SQL(Structure Query Language结构化查询语言)自1974年被提出,至今已经是世界上最流行的关系数据库的标准语言。

SQL语言的分类

1. DDL(Data Definition Language)数据定义语言,其作用包括创建数据库对象、删除数据库对象、修改数据库对象(create、drop、alter)。

2. DML(Data Manipulation Language)数据操纵语言,其作用包括查找数据信息、插入数据信息、删除数据信息、更改数据信息(select、 insert、 delete、 update)。

3. DCL(Data Control Language)数据控制语言,作用主要对是授权数据库对象(grant, revoke)。

27

齐齐哈尔大学毕业设计(论文)

第7章 系统的详细设计与实现

7.1 架构struts2框架和描述

1.在项目的lib目录下加载以下struts2相关类包如图7-1。

图7-1 struts2相关类包

他类包是配合struts2 进行其他操作的相关辅助类包。

2.配置一个struts.xml文件,到src包下:

其中这几个包都是struts2 配置文件需要的,struts2-core-2.1.6 是struts2的核心包,其

/success.jsp /error.jsp

28

齐齐哈尔大学毕业设计(论文)

3.配置web.xml文件内容:

xmlns=\

xmlns:xsi=\xsi:schemaLocation=\http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd\

struts2

org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter

struts2 /*

index.jsp

此处配置web.xml 文件的目的是为了配置Sturts2的入口,系统是通过web.xml 文件来找到Struts2 的配置文件的位置以及其他相关的内容的。所以配置此内容是必须有的。

7.2 架构Hibernate框架和描述

1.右键项目名,点击Myeclipse,再点击AddHibernate…导入Hibernate相关类包。同时在src包下建立hibernate.cfg.xml配置文件。

2.由于hibernate自身分装了配置数据库驱动,在配置hibernate框架的同时,利用hibernate自身的特点,来建立数据库的链接,如图7-2。图7-2主要显示的是配置Hibernate时候要配置的数据库驱动操作。它显示了数据库的驱动的类型和数据库用户的用户名等信息。

29

齐齐哈尔大学毕业设计(论文)

图7-2配置Hibernate链接

3.在Hibernate配置文件下(hibernate.cfg.xml)中配置数据池操作如下:

50 10 1000

50

7.3 系统功能的实现

7.3.1 系统的登录功能实现

图7-3系统登录功能图

30

齐齐哈尔大学毕业设计(论文)

系统登录功能页面主要是通过Macromedia Dreamweaver 8 软件来实现的前台页面。通过css样式和div标签实现页面的组合。系统登录的用户名和密码都是通过系统的数据库的表Tyuser中的username和password两个字段来控制的。在后台处理上,为了达到系统的安全性,当系统用户进入系统后,不能通过Web页面的后退按钮再次返回该页面。系统的标签通过action属性也就是

String sql=\ytuser_name=? and ytuser_pwd=?\pst=conn.prepareStatement(sql);

如果通过验证则跳入系统的菜单页面,如果不成功则跳入一个提示页面,五秒后自动返回登录页面。

7.3.2 运通物流系统首页面设计

图7-4系统功能首页

图7-4显示的是系统的首页面,它显示了系统的主要功能。系统的功能菜单采用js来控制下拉菜单的弹出效果,在点击系统功能菜单的选项,并弹出子菜单。通过点击子菜单的功能目录,系统的右侧页面会显示系统的操作功能。

7.3.3 人事管理模块实现

1.员工信息管理(如图7-5):

31

齐齐哈尔大学毕业设计(论文)

图7-5员工信息管理

人事管理包含员工信息管理和客户信息管理,在员工信息管理中,主要是对员工信息表进行操作,该表记录了企业内部员工的基本信息。主要包含员工信息的多条分页查询,新增员工信息以及按照工作证号来查询员工信息。在新增员工信息的页面上(如图7-5)可以添加新的部门名称和部门编号,同时此页面显示部分部门信息,供新增员工信息时对部门选择提供参考。 主要通过以下代码跳入方法体内:

图7-6新增员工、部门信息查询

32

齐齐哈尔大学毕业设计(论文)

在对系统信息的分页查询中,利用Hibernate的setFirstResult()和setMaxResults() 实现分段查询。 2.客户信息管理(如图7-7):

客户信息管理主要是对公司客户的基本信息进行录入和查询等操作,为了以后方便的快捷的来处理客户关系信息具有辅助性作用。

图7-7客户信息管理首页

图7-7是客户信息管理功能页面,主要是记录客户的基本信息,包括客户的公司、公司的所在地、联系人姓名、联系电话、Email和订单号。当点击客户信息管理菜单选项时,首先出现的是分页查询客户信息,其中可以查看到不同客户对应不同的订单号,通过订单号以便查询到订单的详细信息,本功能是对客户信息表进行基本操作,订单号对客户编号是多对一的关系。通过后面的功能模块可以详细的了解到这种关系的存在。在对客户信息进行新增(如图7-8)新增客户信息时,客户编号由系统自动生成,生成方式是由数据库的序列来完成。点击复选框,多条选择,可以进行批量的删除。在通过客户编号来查询单条客户信息时,可以对此条信息进行删除操作。跳入方法体内的链接如下:

src=\width=\height=\/> 新增

33

齐齐哈尔大学毕业设计(论文)

图7-8新增客户信息

点击确定按钮后调回分页查询页面。另一方面是对客户编号查询客户的信息。输入客户编号可以查询单条的客户信息如图(7-9)。

图7-9按客户编号查询

询后的结果进行编辑客户信息(如图7-10)。

通过对客户信息的单条查询,可以方便的快捷的查询到所要了解的客户内容。并通过查

图7-10编辑客户信息

此时通过查询到的单条的客户信息编号会传到编辑客户信息页面。其中客户编号是readonly属性的,客户编号一旦生成,即不可已修改,只能删除,这样确保了客户编号的正确和可靠。

34

齐齐哈尔大学毕业设计(论文)

7.3.4 货物信息管理实现

货物信息管理主要是对客户的货物进行入库、出库、在库货物处理以及对订单的生成编辑等操作。

1.客户订单管理(如图7-11):

该功能主要是对客户订单进行系统化的管理。货物信息管理后弹出子菜单,再点击客户订单管理此时出现客户订单表的分页查询信息。此模块主要是对客户信息表、订单详细信息表、联系人信息表的操作。其中客户信息显示了客户的编号,订单号运输方式,发货目的地信息以及一些时间的记录。其中是否已发货标识了客户货物的返货状态,以便实时跟踪货物的流动状态。

图7-11 客户订单管理

新增客户订单(如图7-12)时,同时对客户的详细订单(如图7-14)和联系人信息进行新增(如图7-13)。 在点击添加客户订单时订单编号分别传入新增详细订单页面和联系人页面,这样使订单编号一致。

此处页面使用了EL表达式,从Struts2的配置文件找到对应的方法, ActionContext.getContext().getSession().put(“list”,”list”);通过此方法将对象传入页面。使要显示的内容显示在页面上。

35

齐齐哈尔大学毕业设计(论文)

图7-12 新增客户订单

新增客户订单时同时生成订单编号和客户编号,标识发货的目的等信息。新增客户信息后进行新增收货人信息,也就是对联系人信息的新增。此时订单号已经传入此页面,当点击确定时完成收货人信息的新增跳入新增详细订单页面。

图7-13新增联系人信息

详细订单是记录详细订单的内容,包括此次订单中要运输的货物类型和名称数量等信息。它是对客户订单的详细描述,记录了订单的详细内容。

36

齐齐哈尔大学毕业设计(论文)

图7-14 详细订单信息新增

在确定提交新增详细订单信息时,调回分页查询客户信息页面。在编辑客户信息时,同样不可以编辑订单编号。订单编号仍然是只读类型。此功能模块中不包含对详细订单和联系人信息的编辑修改,此功能在其他模块操作。 但是在删除客户订单的信息时,同时删除跟客户订单编号相同的详细订单和联系人信息。 此功能中要到了Oracle数据库的触发器。另一方面,在按照客户订单进行单条信息查询时,查询出单条客户信息时候,也可点击查看跟此信息有关的订单明细信息和联系人信息(如图7-15)

图7-15 查询单条客户信息

2.货物入库管理

37

齐齐哈尔大学毕业设计(论文)

入库管理主要是对入库信息表的增删改查,它记录了货物入库的详细信息。再点击货物入库按钮时,此时会进入分页查询入库货物的详细信息。此页面包含了按入库编号进行单条入库信息的查询,每条信息都可以点击“查看客户信息”都可以产看到此条入库信息的客户信息详情。如图7-16所示:

图7-16 货物入库

图7-17 新增产品入库信息

图7-17是产品入库信息的新增,它主要是对入库产品的新增操作。 3.货物出库

货物出库管理是对在库货物的出库操作,其中它标识了货物出库的情况,对货物的状态进行跟踪处理(如图7-18)

38

齐齐哈尔大学毕业设计(论文)

图7-18货物出库

货物出库管理页面主要显示了对货物出库的分页查询,主要向用户显示了出库编号、订单号、产品名称、产品编号、产品应出库数量、实际出库数量、单位、出库时间、出库完成状况、是否到达目的地等信息。 其中应出库数量和实际出库数量标识了出库完成状态,当两个数目一致时,应当及时对货物信息进行出库完成处理,此时出库是否已经完成这项,要通过修改按钮来进行修改,完成出库。当货物出库时,一直到货物到达目的地这段时间内,都属于未到达目的地,用“是否到达”这项来标识货物状态。在对货物出库信息进行新增和修改时。保持订单编号不变。如图7-19和7-20所示,分别为出库信息新增以及出库信息编辑操作。

图7-19新增出库信息

新增出库信息的出库编号由序列自增完成。

39

齐齐哈尔大学毕业设计(论文)

图7-20编辑出库信息

当点击“编辑”时,此时通过前台的中的href属性来传要编辑的整个信息,传入到此页面。以便用户来方便修改出库信息。默认的出库完成和是否在途都为N,对出库信息不论修改还是删除操作完成后,一旦成功都返回分页查询出库信息页面。 4.库存盘点

库存盘点主要是查询在库货物的信息。按产品类别、产品名、产品数量称等信息对货物进行分类查询(如图7-21)。

图7-21库存盘点

库存盘点操作中,对在库货物进行分页查询,而且跟其它分页查询一样,都可跳页查询。

7.3.5 车辆信息管理实现

车辆信息管理主要是实现货物的运输管理、汽运管理、空运管理、铁运管理以及车辆信息管理操作(如图7-22)。

40

齐齐哈尔大学毕业设计(论文)

图7-22车辆信息管理

1.货物运输管理

货物运输管理主要功能是对货物运输方式的管理,当订单生成后,要对订单的客户要求对其货物采取运输方式的管理,以便满足客户的需求。如图7-23 所示,其中显示的订单号、运输方式、运输编号、备注等信息是在客户订单中查询到的信息,对其订单号一致的订单分配不同的运输方式,每种运输方式的生成,都是对其他表的新增。但是每条信息的新增,都要和此时分页查询到的订单编号和运输方式匹配。如图所示如图7-24,分配汽运管理信息,对汽运信息表进行新增。如图所示如图7-25,分配铁运管理信息,对铁运信息表进行新增。如图所示如图7-26,分配空运管理信息,对空运信息表进行新增。

图7-23货物信息查询

41

齐齐哈尔大学毕业设计(论文)

图7-24汽运分配

图7-25铁运分配

42

齐齐哈尔大学毕业设计(论文)

图7-26空运分配

在添加运输方式时,每条信息的订单号都是由页面的订单部分信息分页查询得到的订单号一致,运输编号都是由不同运输方式的序列由数据库自动生成。此模块只是对其运输方式的分配(新增运输方式信息)不包含对运输方式表信息的修改。 2.汽运管理

汽运管理是对所有汽运方式的订单进行查询(对所有汽运表信息分页查询)如图

7-27:

图7-27空运管理

空运信息管理不仅仅是对以汽运运输方式为主的所有信息查询,还有对已经分配了汽运

43

齐齐哈尔大学毕业设计(论文)

方式的订单进行修改运输方式。也就是在汽运表中删除已存在的订单信息,根据主键汽运标号删除,在货物运输管理中新增其他运输费方式即可完成对其修改分配方式的操作。在汽运信息管理中,对单条信息修改的是车牌号,中转城市,出发时间以及到达时间,司机和配总员等信息。实际上此系统对汽运管理上,都使用的是本公司自带的汽车或者货车来进行分配。因此后面多了一个车辆管理信息的功能模块。 3.铁运管理

铁运管理是对所有铁运方式的订单进行查询(对所有铁运表信息分页查询)如图7-28所示:

图7-28铁运管理

铁运管理和汽运管理的主要功能是一致的,但是在存储字段上有区别。它记录的铁运的车次,以便收货人方便的取货。 4.空运管理

空运管理主要是对空运方式运输的货物进行处理。如图7-29 空运管理:

图7-29 空运管理

44

齐齐哈尔大学毕业设计(论文)

空运管理是对已分配运输方式的订单的运输方式的详细描述和查询。它反映了空运方式的基本信息。 5.车辆信息管理

车辆信息管理主要是对公司内部车辆的信息进行管理以及对司机和车辆的分配管理如图7-30。

图7-30车辆信息管理

车辆信息管理主要是对车辆信息表的处理,其中它存储了车牌号、汽车的载重量、车长、车高、车宽、以及司机和司机的工作证件号,其中还包含状态,“状态”字段主要是为了表示此司机和此车牌号的汽车已经被使用。这样能详细的看到车辆的状态和司机是否在途中运输货物,通过车辆信息管理,这些信息可一目了然。当公司已经购买新车时,也可对此信息进行新增(如图7-31)。

图7-31添加车辆信息

45

本文来源:https://www.bwwdw.com/article/42xo.html

Top