1、本 科 毕 业 论 文(设计)院 系 软件学院 题 目 物流配送管理系统-财务管理子模块的实现 学生姓名 陆文翰 学 号 071251095 年 级 2007级 专 业 软件工程 指导教师 职 称 论文提交日期 32南京大学软件学院本科毕业论文摘 要物流是供应链活动的一部分,是为了满足客户需要而对商品、服务以及相关信息从产地到消费地的高效、低成本流动和储存进行的规划、实施与控制的过程。如何利用现代信息技术和设备,将物品从供应地向接收地准确的、及时的、安全的、保质保量的、门到门的合理化服务模式和先进的服务流程是物流配送管理中需要面对的一大难题。同时,由于传统物流配送管理具备复杂的业务流程以及时间
2、和空间上的离散型,使得整个业务的管理和操作增加了难度。电子商务的出现和兴起对现代物流业的发展和物流企业的运作产生了深远的影响: 电子商务则恰好为物流管理提供了良好的运作平台。在电子商务环境下,供应链中的各个节点企业能更好地实现信息共享,加强供应链中的联系,使企业可以提高生产力,为产品提供更大的附加值。 SSH(Struts+Spring+Hibernate)框架是典型的J2EE三层结构,分为表现层、中间层(业务逻辑层)和数据服务层。三层体系将业务规则、数据访问及合法性校验等工作放在中间层处理。客户端不直接与数据库交互,而是通过组件与中间层建立连接,再由中间层与数据库交互。本项目小组完成了一个物
3、流配送管理系统具备的基本功能,并进行了适当的扩展,如销售统计。系统总共分为七个模块,客户管理模块负责与客户的交互和订单的生成;财务管理模块负责与供应商和分站的结算及发票管理;系统管理子模块负责角色权限的管理;库房管理模块负责维护库房货物信息;配送中心管理负责商品信息管理;调度管理模块负责货物调度管理;分站管理模块负责分站信息维护和发票填写。本人在项目中主要承担财务管理子系统的设计与实现。本论文首先简单介绍物流配送管理系统的应用背景和发展情况,然后在第二章深入展开本次开发系统所应用的SSH框架的相关JavaWeb技术,第三章介绍整个物流配送管理系统的业务流程以及系统功能点,第四章将就SSH框架技
4、术运用于财务系统模块进行阐述,第五章对项目进行了总结和展望。关键词:物流配送管理系统,SSH框架,Struts,Spring,HibernateAbstractLogistics is part of the supply chain activities in order to meet customers needs is for goods, services and related information from origin to consumption of high efficiency, low cost to the flow and storage planning, i
5、mplementing, and control process. How to make use of the modern information technology and equipment, things to receive from source to accurate, timely and safety, quality and quantity of, door to door rationalization service mode and the advanced service process is the logistics distribution manage
6、ment to face a dilemma. Meanwhile, as the traditional logistics management have complex business process and the time and space of discrete, make the whole business administration and operation of an increased level of difficulty.The emergence of electronic business and rise in the development of mo
7、dern logistics industry and logistics enterprise operation has far-reaching influence:E-commerce will just for logistics management provides good operation platform. Under the e-commerce environment, supply chain in each node enterprise to better achieve the information sharing and strengthen the su
8、pply chain link enterprise can improve the productivity, to provide greater value-added products.SSH (Struts + Spring+ Hibernate) framework are is typical of J2EE tri-tier structure, divided into the presentation layer, interlayers (business logic layer) and data service layer. Three-layer system wi
9、ll process business rules, such as data access and legitimacy calibration work in the interlayers. Client does not interact directly with database, but the component and interlayers establish a connection, which is interacted by interlayers.This project team finished a logistics management system wi
10、th the basic functions, and the appropriate extension, such as sales statistics. System into 7 module, total customer management module is responsible for the interaction and orders with customers the generation; Responsible for financial management module with suppliers and the settlement and invoi
11、ce management; System management module roles permissions son management; Warehouse management module is responsible for maintaining the goods warehouse information; Distribution center management is responsible for commodity information management; Scheduling management module is responsible for go
12、ods dispatching management; Substation management module is responsible for maintenance and invoice information writing. Im in a project responsible for the financial management subsystem of design and implementation.This paper firstly introduces the logistics management system application backgroun
13、d and development situation, and then in the second chapter of this development system starts comprehensively applied by the relevant JavaWeb technology SSH framework, the third chapter presents the whole logistics management system of business process and system function point, the fourth chapter o
14、n SSH frame technology will be applied to the financial system module is expounded, the fifth chapter to the project are summarized and prospect.Keywords:logistics management system, SSH framework, Struts,Spring,Hibernate目 录摘 要IAbstractII目 录IV第一章 概述/绪论11.1 项目背景11.2 国内外物流管理系统现状11.3 论文主要工作/组织结构2第二章 Ja
15、va Web应用技术概述32.1 J2EE技术32.2 JDBC技术42.3 SSH框架技术42.3.1 Struts1.x52.3.2 Spring2.x62.3.3 Hibernate3.x62.4 XML技术72.5 Div/CSS技术7第三章 物流配送管理系统项目概述93.1 项目应用领域93.2 项目背景93.3 项目需求93.3.1 一般性需求93.3.2 功能性需求103.3.3 具体功能点需求123.4 项目总体结构15第四章 SSH在财务管理子系统的应用174.1 财务系统模块分析174.2 财务系统模块设计184.2.1 供应商结算子模块194.2.2 分站结算子模块204
16、.2.3 销售统计子模块214.2.4 发票管理子模块214.3 技术运用及实现234.3.1 SSH框架在项目中的配置234.3.2 Struts技术在项目中的运用244.3.3 Spring技术在项目中的运用264.3.4 Hibernate技术在项目中的运用274.3.5 JavaScript在项目中的运用284.3.6 SSH框架集成29第五章 总结与展望305.1 总结305.2 展望30参考文献31致谢32第一章 概述/绪论1.1 项目背景随着国内信息化步伐的加快,物流企业对行业信息需求日益增大,这促使物流配送管理系统迅速发展。目前电子商务的发展和信息化系统支撑以及数字化的生存方式
17、正逐渐代表着未来的贸易方式、消费方式以及服务方式。因此建设和发展以商品代理和配送为主要特征,物流、商流、信息流有机结合的社会化物流配送中心,已成为打破传统物流模式、更新物流行业解决方案的目标。构建高效率的物流配送体系显得尤为重要。本系统主要应用于物流配送行业,即按照客户的要求,经过分货、拣选等商品配备工作,实现最终商品从生产线的末端到消费者手中的移动和存储过程。有效精简了物流过程中复杂的业务流程,并且节约了物流配送过程中信息成本。电子商务时代,由于企业销售范围的扩大,企业和商业销售方式及最终消费者购买方式的转变,使得送货上门等业务成为一项极为重要的服务业务,促使了物流行业 的兴起。物流行业即能
18、完整提供物流机能服务,以及运输配送、仓储保管、分装包装、流通加工等以收取报偿的行业。其主要包括仓储企业、运输企业、装卸搬运、 配送企业、流通加工业等。信息化、全球化、多功能化和一流的服务水平,已成为电子商务下的物流企业追求的目标。物流信息化是电子商务的必然要求,物流信息化表现为物流信息的商品化、物流信息收集的数据库化和代码化、物流信息处理的电子化和计算机化、 物流信息传递的标准化和实时化、物流信息存储的数字化等。因此,条码技术(Bar Code)、数据库技术 Database 、电子定货系统 EOS 、电子数据交换 EDI 、快速反应 QR 及有效的客户反映 ECR 、企业资源计划 ERP 等
19、技术与观念在物流中将会得到普遍应用。信息化是一切的基础,没有物流的信息化,任何先进的技术设备都不可能应用于物流领域,信息技术及计算机技术在物流中的应用将会彻底改变世界物流的面貌。1.2 国内外物流管理系统现状随着信息技术和电子商务的发展,传统物流技术在空间和时间上的劣势越发明显,而电子商务具备的信息化、智能化、网络化的优势将逐步取代传统物流技术。近年来,在全球经济保持平稳增长和互联网宽带技术迅速普及的背景下,世界主要国家和地区电子商务市场保持了高速增长态势。以美国为首的发达国家,仍然是世界电子商务的主力军;而中国等发展中国家电子商务异军突起,正成为国际电子商务市场的重要力量。随着国内Inter
20、net使用人数的增加,利用Internet进行网络购物的电子商务活动越来越频繁,市场份额也在快速增长,相关的电子商务网站也层出不穷,而物流是电子商务的重要内容,它支持者电子商务的发展。因此物流在电子商务中起到不可替代的作用。对于国外的电子商务物流,主要具备了多功能化的特点,一体化的物流配送中心不仅单单提供仓储和运输服务,更包括了订货、配货、配送等复杂的业务流程;其次还具备物流系统化的特点,从采购物流开始,经过生产物流,再进入销售物流,同时还要满足用户不断变化的需求;最后还具备了一流的服务,对于介于供货方和购货方之间的第三方,良好的服务永远是第一宗旨,多地区长距离的服务将成为电子商务物流的又一复
21、杂难题。与发达国家的电子商务物流相比,我国的电子商务物流存在着一定的不足之处,一是运输企业系统效率低,运输成本高,在运输成本和周转速度以及产业化方面存在较大差距;二是物流基础设施配套性、兼容性较差,物流技术装备水平低,这主要是是由于我国广阔的面积和巨大的人口基数造成的;三是标准化建设滞后,对于跨地区跨行业的物流运作系统,标准化程度的高低直接影响着社会物流效率的高低,由于我国在标准化方面缺乏有效的规章制度,而标准化执行力度又不够坚决,因而物流标准化才会滞后不前。物流行业想要去的更好发展,物流技术和物流服务的提升将会是最关键的问题,同时如何运用技术手段改善落后的技术设施,如何利用严格的规章制度规范
22、物流行为,如何通过标准化手段提高物流效率,将是发展我国电子商务物流的重中之重。1.3 论文主要工作/组织结构本论文主要就SSH框架技术运用于电子商务环境下的物流配送管理系统开发进行阐述,首先将介绍Java Web的主流技术,其次在第三章会详细介绍物流配送管理系统的整体业务流程和项目应用领域,接着第四章将就SSH框架技术具体运用到物流配送管理系统项目中进行深入分析,最后将在第五章进行总结和展望。第二章 Java Web应用技术概述2.1 J2EE技术一个完整的Java Web应用软件通常是由多种组件构成的,一般由表示层组件、控制层组件、业务逻辑层组件及数据访问层组件组成。表示层组件通常由HTML
23、和JSP页面构建,控制层组件一般是Servlet,业务逻辑层组件是JavaBeans或EJB,数据访问层是JDBC,Hibernate或CMP。此外,Java Web应用的各个组件需要在XML格式的配置文件中进行声明,然后打包,部署到Java Web服务器中运行。图2.1 Java Web结构图2.2 JDBC技术JDBC是Java Web应用程序开发中的最主要的API之一,因为任何应用软件总是需要访问数据库的。当在数据库中查询数据时,Java应用程序先调用JDBC API,然后JDBC API把查询语句提交给JDBC驱动器。JDBC驱动器把查询语句转化为特定数据库能够理解的形式。然后,JDB
24、C驱动器检索SQL查询的结果,并把此结果转化为Java应用程序使用的等价JDBC API类和接口。图2.2 JDBC架构层次2.3 SSH框架技术所谓SSH,即Struts+Spring+Hibernate的组合框架模式,三者包含了各自的特点,Struts的MVC设计模式使业务逻辑变得清晰,Spring的IC和AOP使得系统在最大限度上减少了耦合度,而Hibernate实现了实体对象的持久化,成为关系模型和对象模型的桥梁。图2.3 SSH框架2.3.1 Struts1.xStruts是Apache Jakarta项目于2001年推出的一个开源Java Web框架。它很好地实现了MVC设计模式。
25、通过一个配置文件,它把各个层面的应用组件联系起来,使组件在程序层面上联系较少,耦合度较低,这就大大提高了应用程序的可维护性和可扩展性。Struts是一个开源的、基于MVC模式的Java Web框架。它定义了自己的标签库来实现自己的视图层,创建了一个内在的Servlet,叫ActionServlet,作为它的控制器,建立了一个叫做Action类的对象实现业务逻辑。视图组件与业务逻辑组件的关系在一个叫做struts-config.xml的配置文件中声明。当Struts应用程序启动时,它首先从struts-config.xml文件中读取相关信息。根据这些信息,它的控制器ActionServlet可以
26、知道把视图中的请求转发给哪个业务逻辑组件处理。视图组件、控制器与业务逻辑组件之间没有代码上的联系,它们之间的关系在struts-config.xml中声明,这样就保证了Web应用程序的可移植性和可维护性,因此能够受到业界的认可,成为主流的Java Web应用框架。图2.4 Struts工作原理图2.3.2 Spring2.x传统J2EE应用的开发效率低,应用服务器厂商对各种技术的支持并没有真正统一,导致J2EE的应用没有真正实现只编写一次就可以随处运行的承诺。Spring作为开源的中间件,独立于各种应用服务器,甚至无须应用服务器的支持,也能提供应用服务器的功能,如声明式事务等。Spring致力
27、于J2EE应用的各层的解决方案,而不是仅仅专注于某一层的方案。可以说Spring是企业应用开发的“一站式”选择,并贯穿表现层、业务层及持久层。然而,Spring并不想取代那些已有的框架,而是与它们无缝地整合。Spring是一个开源框架,它由Rod Johnson创建。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。图2.5 Spring框架图2.3.3 Hibernate3.xHibernate是一
28、个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。Hibernate的核心接口一共有5个,分别为:Session、SessionFactory、Transaction、Query和Configuration。这5个核心接口在任何开发中都会用到。通过这些接口,不仅可以对持久化对
29、象进行存取,还能够进行事务控制。图2.6 Hibernate核心接口图2.4 XML技术XML(Extensible Markup Language,可扩展标记语言)是数据表示的一种重要方法,与HTML一样从SGML派生而来,目前已经得到了普遍应用。在Java Web应用程序中,XML主要用做配置文件。Servlet,Struts和Hibernate都需要配置文件,他们的配置文件都是XML格式的。由于XML是可读的,很容易编辑,并且可以表示在不同Web服务器中使用相同的配置文件。XML的简单使其易于在任何应用程序中读写数据,这使XML很快成为数据交换的唯一公共语言,虽然不同的应用软件也支持其它
30、的数据交换格式,但不久之后他们都将支持XML,那就意味着程序可以更容易的与Windows、Mac OS, Linux以及其他平台下产生的信息结合,然后可以很容易加载XML数据到程序中并分析他,并以XML格式输出结果。2.5 Div/CSS技术DIV+CSS是网站标准(或称“WEB标准”)中常用术语之一,div+css 是一种网页的布局方法,这一种网页布局方法有别于传统的HTML网页设计语言中的表格(table)定位方式,真正地达到了w3c内容与表现相分离。HTML语言自HTML4.01以来,不再发布新版本,原因就在于HTML语言正变得越来越复杂化、专用化。XHTML语言是一种可以将HTML语言
31、标准化,用XHTML语言重写后的HTML页面可以应用许多XML应用技术。使得网页更加容易扩展,适合自动数据交换,并且更加规整。在XHTML网站设计标准中,不再使用表格定位技术,而是采用DIV+CSS的方式实现各种定位。DIV元素是用来为HTML文档内大块(block-level)的内容提供结构和背景的元素。DIV的起始标签和结束标签之间的所有内容都是用来构成这个块的,其中所包含元素的特性由DIV标签的属性来控制,或者是通过使用样式表格式化这个块来进行控制。第三章 物流配送管理系统项目概述3.1 项目应用领域随着网络技术和信息技术的不断发展,物流企业对电子商务的依赖越来越大,这促使电子商务物流配
32、送管理系统迅速发展。目前电子商务的发展和信息化系统支撑以及数字化的生存方式正逐渐代表着未来的贸易方式、消费方式以及服务方式。因此建设和发展以商品代理和配送为主要特征,物流、商流、信息流有机结合的社会化物流配送中心,已成为打破传统物流模式、更新物流行业解决方案的目标。构建高效率的物流配送体系显得尤为重要。本系统主要应用于物流配送行业,即按照客户的要求,经过分货、拣选等商品配备工作,实现最终商品从生产线的末端到消费者手中的移动和存储过程。3.2 项目背景目前大多数物流企业提供的主要服务还停留在传统的运输和仓库两大块业务上,仓库在物流中还占据着比较重要的地位。仓库管理对企业来说是一项繁琐复杂的工作,
33、每天要处理大量的单据数据。库管人员要花费大量人力物力和时间来做数据统计工作,而且很容易出错。比如说,有的企业单位的库存管理部分目前仍然为手工、半手工操作。从配送中心管理员办理入库登记开始,到调度中心领货出库办理手续为止,所有操作基本上都是由仓库管理人员笔写、手算再加上计算器完成。不仅会造成分工不明确,流程模糊,而且过程繁琐,效率低下,再加上缺乏库存管理的一些基本手段(如库存状况统计),这在一定程度上给企业造成了管理上的落后,以及经济上的损失。我们就根据上述在国内物流配送管理系统在企业应用普及时出现的各种问题,将用我们学到的知识,利用当前管理信息系统科学的、实用的理论,开发一套基于JavaEE的
34、物流配送管理系统。3.3 项目需求3.3.1 一般性需求完全基于浏览器的操作模式,安装简单、操作方便,具有良好的系统扩展能力。对于系统执行的重要操作自动记录操作人和操作时间。操作人默认为当前登录人员,操作时间默认为当天的当前时间(精确到秒)。根据不同用户角色,设置相应权限,用户的重要操作都做相应的日志记录以备查看,没有权限的用户或权限受到限制的用户禁止使用系统或不能充分使用系统的全部功能。具体权限及相关操作可参照角色说明。本系统对一些重要的数据按一定的算法进行加密,如用户口令、重要参数等。允许用户进行数据的备份和恢复,以弥补数据的破坏和丢失。本系统应该能够记录系统运行时所发生的所有错误,包括本
35、机错误和网络错误。这些错误记录便于查找错误的原因。日志同时记录用户的关键性操作信息。3.3.2 功能性需求角色说明:整个业务流程会涉及到如下角色:客户、客服人员、调度中心管理员、配送中心管理员、中心库房管理员、分站库房管理员、分站管理员、配送员、财务中心管理员、供应商。各角色在本系统中的工作流程所起的作用如下:客户:首先提出配送请求,最终享受配送服务。在本系统中既是服务的起点,也是服务的终点。客服人员:接受客户配送请求,生成订单。根据库存确定订单状态,当中心库房有货时,生成可分配订单;当中心库房缺货时,生成中心库房缺货订单。调度中心管理员:实现订单调度与库房调度功能。调度中心可自动调度,也可人
36、工干预调度。 可以修改缺货订单状态,工作流程为:当客户所订购的商品缺货(中心库房缺货)时,到货后,调度人员将订单置为可分配订单,然后与正常订单的配送流程一样进行后续流程。配送中心管理员:对配送业务进行管理,并对进货进行管理。当发现中心库房缺货或存货数据达到预警值时,则提示进货。中心库房管理员:存放公司所配送的货物,是公司货物的入口管理者。分站库房管理员:分站库房可能是一个虚拟库房,存放分站配送商品,是一个中转库房。具体工作流程为:接收到中心库房提交的验货单与发送过来的货物和分发单,比较相同则可做入库操作,并修改中心库房出库订单状态为配送站到货订单;根据调拨出库单及配送员的配送任务单领取货物,领
37、货后置订单状态为:已领货订单。分站管理员:完成商品的投递,具体包含:给配送员派单,并作结单操作。订单状态由分站库房到货订单改为:任务已分配订单;投递员领货后订单状态置为:已领货订单;结单后置为:已完成订单。配送员:根据配送单,将货物投送到客户,并与客户进行资金结算。财务中心管理员:负责分站与中心库房的结算及公司与供应商的结算,并管理发票。 整体业务流程描述:整个货物配送体系以客户为中心,组织公司内、合作伙伴(运输公司及供应商)的各种可以利用的资源及配送员,为客户提供配送服务。物流配送系统是该体系中的核心,是一个服务平台,主要功能是对货物配送中的信息流、资金流及物流进行管理。其总体业务流图如下:
38、图3.1 系统流程图客服接收客户的配送要求生成订单;调度中心根据订单 时生成货物调拨单(退货不生成货物调拨单);中心库房接到货物调拨单后,将货物出库到相应的分站库房;若退货,则分站接到任务单后可将任务分配给相关配送员;否则,则分站接到货物后将配送任务分配给相关的配送员; 打印配送单,若非退货情况,则配送员到相应库房领货;配送员完成配送任务后,分站根据完成情况录入回执。3.3.3 具体功能点需求客户管理子模块根据功能点可以将子系统分为3个子模块,订单管理,客户管理,工作量管理订单管理模块完成与订单相关的操作,订单管理包括创建订单、退订单、退货单、换货单的功能;创建订单的过程由客服人员完成;客服人
39、员可以查询订单详细信息。客户管理模块完成对客户信息的管理,包括新增客户信息,查询客户详细信息,并能查询该客户所下订单的详细信息。工作量管理模块提供查询操作员每月所下的新订单、换货单、退货单、退订单、缺货单的数量,并提供超链接查询上述订单的详细信息。财务管理子模块财务管理的职责分为两块:一是定期与供应商、分站进行结算,二是对整个公司的发票进行管理。与供应商结算:财务会定期根据购货和退货情况和供应商之间进行资金结算,并可以由财务中心管理员输入不同时间段进行与供应商之间结算数据的比较。与分站结算:财务会定期根据购货和退货情况和分站之间进行资金结算,也可以由财务中心管理员输入不同时间段进行与分站之间结
40、算数据的比较。发票管理:管理物流公司提供给客户需要的发票。整个公司的发票都统一由财务进行管理,财务在使用发票之前必须先在系统中进行登记,然后发票才可以配送到分站,通过分站再配送到客户手中。并能进行发票的查询和状态修改等操作。 需求描述:系统管理子模块包括权限管理、角色管理、菜单定制、用户管理、系统登录/注销、日志管理等;权限管理:对系统中的所有权限进行管理。角色管理:建立角色与权限间的对应关系(一个角色对应多个权限),对角色进行管理。菜单定制:系统管理员可以灵活定制不同角色人员登录系统后显示的菜单。用户管理:管理系统用户信息、修改密码等。注意:应该包含管理员对所有用户的管理、用户对自己信息的维
41、护;管理员修改用户密码、用户自己修改密码等。系统登录/注销:只有登录用户才能使用本系统;提供系统注销功能。日志管理:记录做关键操作的用户信息及操作时间;并提供管理及查询功能。库房管理子模块对货物出库、入库、货物存放进行管理。主要业务包括:中心库房购货入库、中心库房调拨出库、分站库房调拨入库、领货管理、退货管理。中心库房购货入库:配送中心安排购货后,供应商将商品送至中心库房,中心库房管理员根据购货单进行入库处理。中心库房调拨出库:订单经过调度中心调度后,会产生货物调拨单,调拨出库指的就是中心库房根据货物调拨单进行出库操作。同时产生验货单,当运输公司把货物运送到相应分站后,分站库房管理员根据验货单
42、对货物的数量进行验证。分站库房调拨入库:分站库房管理员在接到中心库房调拨过来的商品后,根据实际到货的商品和数量,进行入库处理。领货管理:分站库房管理员根据配送员的配送任务单进行货物出库,配送员领取货物。退货管理:根据退货订单,将商品退回到分站库房,再从分站库房退回到中心库房的管理。包括退货登记(当客服中心接收到客户的退货请求生成退货订单后,配送员从客户手中取回商品到分站库房登记并入库)、分站库房退货出库(分站库房根据退货的商品情况进行出库处理)、中心库房退货入库(当运输公司将货物从分站库房运输到中心库房后,通过退货入库操作可以将分站退货的商品进行入库处理)、中心库房退货出库(根据配送中心安排的
43、退货,中心库房将商品退回到供应商)。配送中心子模块配送中心子系统提供配送管理服务,包括商品管理、库房管理、进货管理、退货管理、供应商管理。供应商管理模块:对供应商信息进行维护操作。库房管理模块:查询库房的出入库信息;查询库房的库存量;修改库房信息;设置每种商品的预警值。进货管理模块:提供缺货检查功能;提供预警查询功能;根据缺货查询结果生成订购单。退货管理模块:修改中心库房库存记录,进行退货操作,查询对应供应商信息,生成退货单。调度管理子模块主要职责是对客服生成的订单进行调度处理,以及对由于缺货原因产生的缺货订单修改订单状态(在来货后)。同时也可以实现商品在各库房之间的调拨。包括手工调度、自动调
44、度、订单状态修改、任务单查询。手工调度:当客服传过来的订单没有描述执行任务分站时,需要对订单手工指定执行任务分站,这个过程为手工调度。调度管理员定位需要调度的订单,为订单指定分站,然后进行调度。调度后生成任务单和调拨单。自动调度:当客服传过来的订单有执行任务分站时,可以对订单进行自动调度(该操作也可以不用人工触发,由系统实时执行;要在页面中增加自动调度开关功能)。调度后生成任务单和调拨单。订单状态修改:当缺货订单的所有货物到货后,可以使用此功能修改订单状态为“可分配”。任务单查询:完成任务单信息的查询。分站管理子模块分站的主要工作是直接面向分站管理员,为分站管理员提供服务。功能包括:任务单查询
45、、任务分配、打印商品配送签收单、回执录入、缴款查询、发票管理。任务定查询:方便分站管理员查询本分站的任务单信息。任务分配:当订单被调度中心调度之后会生成任务单,然后由分站来分配具体执行任务的配送员。首先定位任务单,然后考虑配送员工作量的负载平衡(所有配送员当前拥有的任务,把任务分配给任务量较少的配送员)。打印商品配送签收单:任务分配给配送员后,配送员会拿商品配送签收单(数据库中与任务单是同一个表)到分站库房去领货。回执录入:当配送员拿货物和商品配送签收单完成配送任务后,要回到分站进行送货完成情况录入。分站管理员根据商品配送签收单的内容进行任务完成情况录入。缴款查询:统计一段时间内本分站每种商品
46、的送货收款情况,以及总的收款、退款金额。发票管理:当客户要求提供发票时,配送员在执行配送任务时,连同发票一同带给客户。本功能主要是提供配送员领用发票的功能。当有退货订单时,会把原发票作废,重新给客户产生一个新的发票。3.4 项目总体结构由于项目业务流程的复杂和模块种类的繁多,针对项目的不同模块划分,系统提供不同的接口供业务逻辑层调用,并最终进行数据库的持久化操作或查询,形成了高内聚低耦合的设计结构系统结构图:图3.2 系统结构图本系统使用MyEclipse 7.0为主要开发工具,采用JavaEE技术,并基于MVC的开发模式。前台部分基于Struts框架,应用JSP、XML等技术实现,主要接受用
47、户的请求并委派调用业务逻辑及其他上层业务处理;在业务逻辑方面基于Spring框架,实现应用程序业务逻辑处理,提供与其他层相互作用的接口,并管理相关的JavaBean;在数据管理方面,采用Hibernate框架,使用mysql数据库实现对数据的有效存储和查询。第四章 SSH在财务管理子系统的应用4.1 财务系统模块分析财务管理的职责分为三块:一是定期与供应商、分站进行结算,二是对整个公司的发票进行管理,三是根据给定的时间段统计销售信息并生成图表。与供应商结算:财务会定期根据购货和退货情况和供应商之间进行资金结算,并可以由财务中心管理员输入不同时间段进行与供应商之间结算数据的比较。与分站结算:财务会定期根据购货和退货情况和分站之间进行资金结算,也可以由财务中心管理员输入不同时间段进行与分站之间结算数据的比较。发票管理:管理物流公司提供给客户需要的发票。整个公司的发票都统一由财务进行管理,财务在使用发票之前