毕业设计-企业订单管理系统

更新时间:2024-05-15 06:23:01 阅读量: 综合文库 文档下载

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

本科毕业设计(论文)

企业订单管理系统的设计与开发

学 号:2班4号

学生姓名:冯金明 指导教师:邵珠富

所在学院:计算机科学技术学院 所学专业:网络工程

2016年6月

摘 要

本文阐述了基于B/S的企业订单管理系统的设计与开发的开发背景、意义和目前的发展现状。提出了企业订单管理的功能目标,以及如何实现这个目标的方法。本文从需求分析、总体设计等方面详细的论述了系统的设计和实现过程。系统主要完成了普通用户注册、登陆、商品查看、下单;管理员进行用户管理、权限管理、订单管理、商品管理、分类管理等功能。在设计方面,本系统采用B/S三层结构,选择MySQL作为数据库,Tomcat作为服务器,同时使用JSP和Servlet技术进行动态页面的设计,使用AJAX技术对页面进行局部刷新,并且运用JavaBean对程序的关键代码进行了封装。本毕业设计的主要目的是实现订单的管理,可以进行订单管理、订单查询、订单处理、权限管理、商品管理等行管理,包括订单审核、发货等。

关键词:MVC架构;JSP;订单管理;AJAX

I

Abstract

This is a complete enterprise order management system, we studied online enterprise order management system based on data association rules. This scenario compared with some online programs today have been employed, it has a simpler user interface more intuitive and so on. This article focuses on the use of JSP + struts2.x + JPA development technology development enterprise order management system design process, and gives a detailed coding system design and implementation, and ultimately the user can single under their own needs, to find merchandise. The system is divided into frontend user registration, login, single function, users can purchase their favorite products, background administrator registered user management, commodity classification, commodity management, supplier management, order management, system management authority, management members can order processing, maintenance order. By demonstrating various aspects of the system has a certain theoretical and practical value. Through the study, the use of JSP technology can basically solve common problems encountered in business orders, transfer orders so easy and convenient.

Key words:MVC;JSP;Order Management;AJAX

II

目 录

摘 要 ............................................................................................................................... I Abstract ............................................................................................................................... II 第1章 概述 ....................................................................................................................... 1 1.1 课题背景 .................................................................................................................. 1 1.2 项目开发的目的及意义 .......................................................................................... 1 1.3 国内外动态分析 ...................................................................................................... 1 1.4 本文结构 .................................................................................................................. 2 第2章 方案论证 ............................................................................................................... 3 2.1 可行性分析 .............................................................................................................. 3 2.1.1 技术可行性 ........................................................................................................ 3 2.1.2 经济可行性 ........................................................................................................ 3 2.1.3 操作可行性 ........................................................................................................ 3 2.1.4 法律可行性 ........................................................................................................ 3 2.2 最佳设计方案选择简介 .......................................................................................... 3 2.2.1 MySQL5.0数据库 ............................................................................................ 3 2.2.2 JSP技术 ............................................................................................................ 4 2.2.3 Servlet技术 ....................................................................................................... 4 2.2.4 AJAX技术 ........................................................................................................ 4 2.2.5 Eclipse开发工具 .............................................................................................. 4 2.3 开发方案的选择 ........................................................................................................ 5 第3章 需求分析 ............................................................................................................... 6 3.1 系统需求分析 .......................................................................................................... 6 3.2 数据流图 .................................................................................................................. 6 3.2.1 顶层数据流图 ................................................................................................... 6 3.2.2 一层数据流图 ................................................................................................... 7 3.2.3 二层数据流图 ................................................................................................... 7 3.3 数据字典 .................................................................................................................. 8 3.4 系统E-R图 ............................................................................................................ 10 3.5 运行环境需求 ........................................................................................................ 13 3.5.1 软件环境 ......................................................................................................... 13 3.5.2 硬件环境 ......................................................................................................... 13 第4章 过程论述 ............................................................................................................. 14 4.1 概要设计 ................................................................................................................ 14 4.1.1 设计原则 ......................................................................................................... 14 4.1.2 软件架构说明 ................................................................................................. 14

4.1.3 功能模块图 ..................................................................................................... 15 4.2 数据库设计 ............................................................................................................ 18 4.2.1 命名规范 ......................................................................................................... 18 4.2.2 基本表汇总 ..................................................................................................... 18 4.2.3 基本表结构 ..................................................................................................... 18 4.3 详细设计 .................................................................................................................. 20 4.3.1 数据库连接技术 ............................................................................................. 20 4.3.2 前台用户模块设计 ......................................................................................... 21 4.3.3 后台管理员模块设计 ..................................................................................... 28 第5章 软件测试与结果分析 ......................................................................................... 37 5.1 白盒测试 ................................................................................................................ 37 5.2 黑盒测试 ................................................................................................................ 38 5.3 集成测试 ................................................................................................................ 39 结 论 ............................................................................................................................. 40 致 谢 ............................................................................................................................. 41 参考文献 ............................................................................................................................. 42 附 录 ............................................................................................................................. 43

第1章 概述

1.1 课题背景

目前国内企业在管理销售方面还处在比较低的水平。大多数企业在生产和购进货物后,只是将销售用手写式的记录和简单的管理。进入信息社会后,随着企业销售订单的增多,带的麻烦也逐渐增多,管理方面也得不到很好的解决方法,使得大量的数据丢失,使企业造成了很大的损失。Internet已经成为人们生活、工作、学习越来越离不开的平台,在网上进行下单,交易可以更好方便,同时减少了纸质交易资料的管理工作,将全部交由数据库进行保存。

1.2 项目开发的目的及意义

建立一个基于B/S架构的企业订单系统,实现信息网络化.通过较丰富的功能将 Web的技术特点体现出来。该系统可供注册用户登录使用.登录者可以查询商品以及下订单,可以通过此网站管理供应商、商品 、订单等操作,实现增删改查的操作,方便网站的管理与维护。要实现这样的功能,离不开后台数据库的支持。本系统中数据库采用了MYSQL作为后台数据库,通过JDBC进行连接,通过SQL语句进行需要的增删改查功能,使得系统与数据库完美结合。整个页面由JSP技术进行开发实现,主要由Web页面生成与JS技术结合JavaBeans技术实现组件重用两部分组成。

本设计主要完成客户端,Web服务器端应用程序和数据库的制作,实现企业订单系统的创建,用户注册/登陆、对记录信息进行添加,删除,修改等功能。实现与完善整个基于B/S企业订单管理系统的组织建立和测试工作。

利用SUN公司推出的强大应用程序开发软件Java,结合有关管理规范的知识和实际调研的结果,进行了对“企业订单管理系统”的开发。该系统具有操作简单性、稳定性、安全性和友好性的优点,给用户呈现出满意的界面。

1.3 国内外动态分析

在国外,企业订单管理系统的发展非常迅速,在网上进行交易,进行订单的管理非常先进,减少了大量人工工作,同时减少了纸质管理中容易出现的一些错误。

目前,我国企业订单管理系统的管理还比较落后,很多企业还停留在纸质的订单管理。企业需要扩大客户数量,就要做好财务的收付工作和产品的管理,同时做好交易数据的管理。面对来自全世界的竞争和挑战,国内企业需要加强自身的管理,自己的信息化水平,更好的管理自己的数据,所以B/S的企业订单管理系统可

1

以解决这一方面的需求。

1.4 本文结构

第1章是概述,主要介绍课题背景与项目开发的目的和意义,以及对国内外动态的分析。

第2章是方案论证,主要介绍该系统开发时的方案选择,并从经济上、技术上论证了本系统是否可行,以及此系统所应用到的一些关键技术的简介。

第3章是需求分析,主要介绍了用户的需求,然后根据用户的需求得出系统应该具有什么功能。最后总结出系统最核心的两个业务逻辑:用户登录和用户下单,管理员对用户的订单进行管理。

第4章是过程论述,主要介绍了软件的系统构架以及系统的相关实体和实体间的关系,并论述了整个数据库的设计过程。最后详细的介绍了各个功能模块的实现过程,并讨论了系统的安全性设计。

第5章是软件测试,介绍了常用的软件测试方法:黑盒测试和白盒测试。并使用基本路径测试的方式对普通用户注册、管理员登录、管理员订单管理进行了测试。

最后是对本次毕业设计的总结和致谢。并在附录里给出了一些功能实现的代码和相关截图。

2

第2章 方案论证

2.1 可行性分析

2.1.1 技术可行性

本系统使用Java语言编写,Java语言简单,易上手,开发周期短。 在页面中使用AJAX进行网页局部刷新,减少了对服务器的请求压力。

在开发工具上使用Eclipse,数据库使用MySQL,MySQL数据库同样为轻便型小型数据库,其系统从一个地方到另一个地方的难易程度和安全性都是很乐观的,MVC在使用领域也逐渐地老练起来,该企业订单管理系统在技术上是切实可行的。

2.1.2 经济可行性

随着网络的迅速发展,计算机得到了普遍性。企业订单管理系统成为了很多企业在网上的分销渠道,该系统选择B/S架构,使用B/S架构的系统只需对服务器进行管理,所有的客户端都是浏览器,不需要做任何其它的维护,只要有一台电脑就能使用。同时,本系统的规模并不大,不需要太多的经费,但却十分有效的提高了办公的效率。所以开发订单管理系统是具有经济可行性的。 2.1.3 操作可行性

本系统操作较为简便,同时人员使用起来简单易上手,在开发中会在必要的地方加以提示,帮助人们更加方便地使用,所以在计算机较为普及的今天,很多人都可以进行操作。 2.1.4 法律可行性

本系统所使用的Eclipse和数据方面的信息及技术不违背法律,相关实现和技术不存在侵权问题。系统开发完后主要用于客户对企业进行下单,管理员进行管理订单,文明安全,禁止涉及任何违法行为。

2.2 最佳设计方案选择简介

2.2.1 MySQL5.0数据库

MySQL数据库是一个对源码开放的“小型关联式数据库管理系统”。MySQL比较适合运用于中小型网站。因为MySQL的运行速度比较快、所占容量较少、使用成本价较低,所以很多企业在经济实用角度出发会选择MySQL。其主要特性是:CPU利用率高,能够在一定程度上提高查询速度,同时优化了SQL语句的查

3

询算法,并且支持多线程,提供多种语言的支持,因此所需费用较低[1]。 2.2.2 JSP技术

JSP是一种动态网页技术标准。它是一种建立在由Servlet提供的规范功能智商的一种动态页面技术,它其实就是在早期的HTML形成网页的XML文件中插入了Java代码和一些JSP标记,从而形成了一个JSP文件[2]。

JSP开发的Web应用是跨平台的,不但能够在Linux下运行,也能在其他操作系统上运行。

JSP采用MVC的设计模式,可以将后台的业务逻辑控制与前台的网页设计分离,耦合性较低,同时给予组件进行设计,并且降低了WEB的前端程序开发[3]。 2.2.3 Servlet技术

Servlet是基于服务器端的一种Java应用程序,它有着与协议和平台都独立的特性,并且能够生成动态的Web网页(但是它自己本身的编程还是较为麻烦的,已经被很少运用)。Servlet可以作为MVC中的V层,也就是说作为服务器响应与客户请求的中间层,它其实是Web 服务器内部服务器端的一个比较小型的Java应用程序,但是Servlet与原来在命令行中启动的Java语言还是有所不同的[4]。Web服务器负责加载Servlet,但前提是Web服务器必须包含能够支持Servlet的Java虚拟机。

Servlet是Java Web服务器用来处理用户请求以及其他基于Web服务的Java类。他在Web服务中,根据用户的请求和传递过参数进行运算,返回处理后的结果。开发Servlet类须按照Servlet的要求继承HttpServlet类,实现相应的方法[5]。 2.2.4 AJAX技术

AJAX是Asynchronous JavaScript and XML的缩写,这一技术能够向服务器请求额外的数据而无需卸载整个页面,会带来良好的用户体验。传统的HTTP请求流程大概是这样的,浏览器向服务器发送请求-〉服务器根据浏览器传来数据生成response-〉服务器把response返回给浏览器-〉浏览器刷新整个页面显示最新数据,这个过程是同步的,顺序执行[6]。

AJAX 在浏览器与 Web 服务器之间使用异步数据传输(HTTP 请求)从服务器获取数据,这里的异步是指脱离当前浏览器页面的请求、加载等单独执行,这意味着可以在不重新加载整个网页的情况下,通过JavaScript接受服务器传来的数据,然后操作DOM将新数据对网页的某部分进行更新[7]。使用Ajax最直观的感受是向服务器获取新数据不需要刷新页面等待了。 2.2.5 Eclipse开发工具

Eclipse maven企业级工作平台是对EclipseIDE的一种引申,利用它我们可以在数据库方面和Java2E的开发方面、发布以及应用程序服务器的整合方面,减少工作所用时间,极大的提升工作效益。它是功能非常全面的Java2E集成开发环

4

境,拥有完善编码、进行调试、进行测试以及发布功能,并且支持各种技术,包括:HTML,Struts,JSP技术,CSS,Javascript,Spring,SQL数据库,Hibernate。

Eclipse maven是一个非常优秀的用于开发Java, J2EE,maven项目的 Eclipse 插件集合,Eclipse maven的功能非常强大,支持范围也十分广泛,尤其是对各种开源产品的支持也非常好。Eclipse maven可以支持JavaServlet技术,AJAX,JSP,JSF,Struts,Spring,Hibernate,EJB3,JDBC数据库连接链接工具等多项功能。可以说Eclipse maven是几乎涵盖了目前所有主流开源产品的专属Eclipse开发工具。

2.3 开发方案的选择

B/S结构,是Web崛起后的一个计算机结构,Web是客户端最重要的使用软件。这种计算机结构融合了客户端,将系统模块完成的最主要部分会集到服务器上,使系统的开发、运行和应用得到相应的简化。开发企业订单管理系统,客户机上只要安装一个浏览器就可以了,最好是IE浏览器,服务器上安装一个MySQL数据库。

在B/S模式的体系结构系统中,服务器会对浏览器发出的请求进行进一步处理,将用户所需要的信息发到浏览器上。B/S架构使客户端的操作变得更加简单化,客户机上只需要配置一些客户端的软件[8]。

主要优点包括: 1. 具有分布性特点,可以随时随地进行查询、浏览等业务处理。 2. 业务扩展简单方便,通过增加网页即可增加服务器功能。

3. 维护简单方便,只需要改变网页,即可实现所有用户的同步更新。 4. 开发简单,共享性强。

综上所述,本系统使用B/S架构,选用Eclipse maven作为程序开发的主要工具、选用MySQL为数据库管理平台,使用AJAX技术进行页面的局部刷新。

5

(2)供应商实体属性图,如图3-6所示。 名字 地址 供应商

详情

电话 联系人 图3-6 供应商实体图

(3)订单实体属性图,如图3-7所示。

订单编号 下单时间 订单 支付方式 订单总价 订单状态 订单地址 图3-7 订单实体图

订单用户 商品编号 商品数量 (4)商品实体属性图,如图3-8所示。

商品编号 供应商编号 商品 商品价格 商品名字 分类编号 商品备注 图3-8 商品实体图

商品库存 上架时间 商品图片 (5)管理员实体属性图,如图3-9所示。

11

分类建立时间 分类编号 商品分类 分类名 图3-9 商品分类实体图

分类备注 (6)管理员实体属性图,如图3-10所示。

用户名 密码 备注 管理员 订单管理权限 用户管理权限 分类管理权限 商品管理权限 供用商管理权限 权限管理权 图3-10 管理员实体图

2.系统E-R图

企业订单管理系统采用E-R图的方法对数据库概念结构进行设计。单个的实体属性图只能体现一个实现的属性和行为,不能描述整个系统的结构。因此,我们需要找出各个实体间的关系,组成完整的系统E-R图,如图3-11所示。

m

管理n 1 用户 管理员 管理

m 1 1 n

m 浏览 提交 处理 m n m n n 浏览 管理 分类 订单

1 管理 n n n 包含 n 包含 n 1 1 供应商 提供 商品 n 图3-11系统E-R图 12

3.5 运行环境需求

3.5.1 软件环境

软件环境信息表,如表3-1所示。

表3-1 软件环境信息表 操作系统 数据库平台 服务器平台 客户端软件 名称 Ubuntu/Unix/Linux Windows 7/Windows Server MySQL Tomcat IE/基于IE内核浏览器 版本 不限 sp3/2000/2003 5.0或以上 5.5或以上 6.0或以上 语种 中文或英文 中文 英文 英文 中文 3.5.2 硬件环境

硬件环境信息表,如表3-2所示。

表3-2 硬件环境信息表

应用和数据库服务器 名称 CPU 内存 硬盘 最大配置 P4 2.0G 2G 320G 推荐配置 P4 2.8G 2G 120G 13

第4章 过程论述

4.1 概要设计

4.1.1 设计原则

在系统进行编码之前,我们用该对系统所要实现的功能进行整理,如何进行实现以及实现方法的删选,这样做的优点包括:对系统软件整体的代码架构有一定的思路,更好的部署各个功能模块的代码,优化整体的结构,对各层功能代码进行剥离,更加符合MVC的设计模式[12]。

在设计的过程中我们应该遵循的原则包括:

1.全面性:考虑不同用户对系统使用的不同需求,所以系统必须尽量操作简单,容易上手,提高系统使用的普遍性,使系统尽量适合所有用户的需求。

2.规范性:本系统遵循MVC的设计模式进行设计,遵循MySQL数据库的操作原理。

3.实用性:根据用户需求情况,满足客户和管理员的使用需求。 4.安全性:保证系统在实际应用时的安全性。 4.1.2 软件架构说明

1.MVC架构各层功能实现说明:

Model层(模型层)主要是实现具体业务功能的一些类,业务流程的处理,Model只是一种经过性的操作,模型会接收来自页面的请求,并把最终得出的结果返回给页面,MVC最主要的核心是业务模型的设计。

Control层(控制层)就是从视图层接受数据请求去匹配相应的模型,共同来完成用户的请求。主要负责系统中业务功能的实现流程管理工作,事实上,控制层并不对请求做任何的处理,只是把该用户传来的信息传给了模型,告诉它去在怎么做,然后它做的只是负责把符合要求的视图再返回给用户。所以,一个模型可能会对应很多个视图,一个视图也可能对应很多个模型。

View层(视图层)是指用户与用户之间的交互界面,对于web应用来说,可以把它概括为HTML界面,也有可能是XML、XHTML、Applet。随着应用的规模性和复杂性,界面的处理也变得很有挑战性。一个应用包含多个的视图,MVC设计模式就是视图的处理权限和视图对数据进行处理,包括对用户的请求,但不包括业务流程的处理。业务流程的处理交给模型处理[13]。

2.MVC架构优点:

(1)对应中小型项目的开发效率高,架构的搭建相对简单

结构看起来非常简单易懂,搭建时的配制信息只有“web.xml”这一个文件,web.xml主要是用来映射Servlet。Control层的应用在很大程度上是将JSP中的

14

Java代码给分离开来,降低了JSP文件的复杂程度。另外本架构涉及的架构知识其实是很很少的,很容易把它掌握。

(2)架构的性能优越

相对于使用其他的架构技术创建的系统来说,在使用Jsp+Servlet+JavaBean架构时,系统的执行效率其实是非常高的,主要是因为该架构的配置相对来说比较简单,信息加载量较小。 4.1.3 功能模块图

此系统按照角色的不同分为两大功能模块,一个是前台用户模块,一个是后台管理模块。

1.系统模块图

系统模块图,如图4-1所示。

企业订单管理系统 后台 前台 用户管理 商品分类 商品管理 供应商管理 订单管理 权限管理 用户注册 用户登陆 用户下单 商品搜索 个人中心 查看商品 图4-1 系统模块图

2.普通用户功能模块

普通用户功能模块图,如图4-2所示。

(1)用户注册:用户第一次登陆该系统下单需要先注册账号:

(2)用户登陆:用户通过填写正确的“用户名”和“密码”后,点击“登陆”按钮,便可完成普通用户的登录。

(3)商品搜索:用户在页面上可以进行商品的搜索,输入需要的商品名称进行商品搜索。

(4)查看商品:用户在页面上可以查看商品,也可以点击页面左侧导航栏进行不同商品类别下的商品。

(5)用户下单:用户在选择好商品后,点击购买,填写相关商品数量,送货地址,付款方式等。

(6)个人中心:用户可以点击个人中心查看自己提交的订单详情,以及订单的当前状态。

15

普通用户 用户注册 填写用户信息 用户登陆 使用账密登陆 商品搜索 关键字搜索商品 查看商品 导航栏查看商品 用户下单 购买物品下单 个人中心 查看已提交订单 图4-2 普通用户功能图

3.管理员用户

管理员用户功能模块图,如图4-3所示。

(1)用户管理:维护前台的注册的用户信息。 (2)商品分类:维护商品的类别。

(3)供应商管理:该商品的供应商管理。 (4)商品管理:管理商品,删除修改等。

(5)订单管理:管理订单,审核订单,安排发货,订单状态查询等。 (6)权限管理:维护后台用户的权限。

16

查看所有用户信息 修改用户信息 用户管理 删除用户信息 根据用户名查询用户 查看所有分类 新增分类 商品分类 修改分类信息 删除某一分类 根据分类名查询分类 查看所有供应商 新增供应商 供应商管理 修改供应商信息 删除供应商信息 根据供应商名查询 管理员 查看所有商品 新增商品信息 商品管理 修改商品信息 删除商品信息 根据商品名查询商品 查看订单以及状态 根据订单发货 订单管理 订单审核不通过 根据订单状态查询 查看所有管理员权限 新增管理员 权限管理 修改管理员权限 删除管理员 根据管理员用户名查询 图4-3 管理员用户功能图

17

4.2 数据库设计

数据库系统是各种系统实现信息化的基础。数据库把系统所需数据进行整理并进行保存,使得信息系统可以更加方便,准确,及时地获取想要的数据[14]。数据库保存的数据量非常巨大,提高了数据共享性,信息管理方便,用户及其权限管理便捷。目前,常用的一些数据库管理系统包括MySQL 、SQL Server 、Access、Oracle等。

MySQL 是一个关系型数据库管理系统,属于轻量级数据库,安全稳定,目前属于 Oracle 公司。MySQL 是较为流行的关系型数据库管理系统。在 WEB 应用中, MySQL 是一款优秀的RDBMS 应用软件。MySQL 是一种关联数据库管理系统,关联数据库将数据进行整理并分类保存到不同的数据表中,而非将全部的数据保存到一个大仓库里面,提高了提取的速度和管理的灵活性。MySQL 使用 SQL 语言进行数据库的访问以及各种操作,同时支持可视化界面操作。MySQ优点:体积小、速度快、成本低,同时开放源代码,所以一些小型网站一般都会倾向于选择MYSQL数据库。因此本系统将采用MySQL 数据库。 4.2.1 命名规范

1.表命名规则:

该企业订单管理系统的表命名规则是,数据库表名由该表的实体类英文组成的,前缀为t,中间为下划线‘_’,之后是实体类名称,如订单表被命名为:t_order。

2.表项命名规则:

该企业订单管理系统的表项命名规则是每个表格字段采用见闻识意的方法,采用其英文单词或者单词简写定义。 4.2.2 基本表汇总

表4-1 基本表汇总

中文名 管理员表 商品类别表 商品表 订单表 供应商表 用户表 英文名 t_adminuser t_category t_item t_order t_seller t_user 说明 存储管理员信息 存储商品类别信息 存储商品信息 存储用户订单信息 存储供应商信息 存储用户信息 4.2.3 基本表结构

1.管理员表(t_adminuser):括用户名、密码、管理员级别、管理员权限1、管理员权限2、管理员权限3、管理员权限4、管理员权限5、管理员权限6,主要是用来存放管理员信息,如表4-2所示。

18

表4-2 t_adminuser表

中文名 用户名 密码 英文名 name password 数据类型 bigint(20) varchar(255) varchar(255) varchar(255) varchar(255) varchar(255) varchar(255) varchar(255) varchar(255) varchar(255) 是否为空 否 初始值 说明 主键 管理员编号 id 管理员级别 remark 权限1 权限2 权限3 权限4 权限5 权限6 role1 role2 role3 role4 role5 role6 2.商品类别表(t_category):括商品编号、商品类别上架时间、商品类别名称、商品类别备注,主要是用来存放商品类别信息,如表4-3所示。

表4-3 商品类别表

中文名 商品编号 英文名 id 数据类型 bigint(20) datetime varchar(255) varchar(255) 是否为空 否 初始值 说明 主键 商品上架时间 create_date 商品名称 商品备注 name remark 3.供用商表(t_seller):主要包括供应商编号、供应商地址、详细信息、名称、电话、联系人。主要用来保存供应商的一些基本信息 ,如表4-4所示。

表4-4 供应商表

中文名 供应商编号 供应商地址 详细信息 名称 电话 联系人 英文名 id addr detail name tel user_name 数据类型 bigint(20) varchar(255) varchar(255) varchar(255) varchar(255) varchar(255) 是否为空 否 初始值 说明 主键 4.订单表(t_order):主要包括订单编号、订单总价、订单数量、订单创建时间、订单付款方式、订单状态、商品编号、用户编号、送货地址。主要用来订单信息,如表4-5所示。

19

表4-5 订单信息表

中文名 订单编号 订单总价 订单数量 英文名 id total_price count 数据类型 bigint(20) double int(11) date varchar(255) varchar(255) bigint(20) bigint(20) varchar(255) 是否为空 否 外键 外键 初始值 说明 主键 订单创建时间 create_date 订单付款方式 pay_type 订单状态 商品编号 用户编号 送货地址 state item user addr 3. 商品信息表(t_item):主要包括商品数量、商品上架时间、商品图片编号、商品名称、商品备注、商品类别、价格、供应商,主要用来保存商品信息,如表4-6所示。

表4-6 商品信息表

中文名 商品编号 商品数量 英文名 id count 数据类型 bigint(20) int(11) 是否为空 否 外键 外键 初始值 说明 主键 商品上架时间 create_date datetime 商品图片编号 img_path varchar(255) varchar(255) varchar(255) bigint(20) double bigint(20) 商品名称 商品备注 商品类别 商品价格 供应商

name remark category price seller 4.3 详细设计

4.3.1 数据库连接技术

数据库存储是现代信息化系统中的核心与基础,因此数据库的连接是非常必要的。Hibernate是个轻量级数据库连接的框架,不用特定的运行环境,所以,该企业订单管理系统使用MySQL5.0作为数据库,使用Hibernate的配置文件来进行数据库的连接[15],数据库连接的实现代码如下:

20

}

return predicate; } }; Page result = (Page) itemRepository.findAll( spec, pageRequest); return result; }

5.用户下单

用户挑选自己喜欢的商品放入购物车,选择数量并且填写送货地址后提交订单。后台安排人员审核订单。其中用户下单流程如下,用户下单流程如图4-9所示,用户下单界面如4-10所示。 开始 商品加入购物车

跳转登录页面 是否已登

填写订单并提交

后台审核

发货

图4-9 普通用户下单图

END 在用户下单模块中,用户选择喜欢的商品加入购物车,然后程序进行判断当前是否用户已经登录,如果没有登录则跳转到登陆界面进行用户登陆,如果已经登录,则已该用户的名义生成订单并提交订单,然后管理员在后台对订单进行审核,如果审核通过则进行发货处理。

26

图4-10 普通用户下单界面图

用户下单功能主要代码:

@Action(value = \ @Result(name = \ @Result(name = \ public String order() throws Exception {

User user = (User) ServletActionContext.getRequest().getSession() .getAttribute(\ if (user == null) { tip = \您还没有登录,请登录后在购买!\ return LOGIN; } else { item = this.itemService.find(order.getItem().getId()); order.setTotalPrice(item.getPrice() * order.getCount()); order.setCreateDate(new Date(System.currentTimeMillis())); order.setUser(user); }

}

order.setState(\待审核\this.orderService.save(order);

this.tip = \下单成功,请等待客服审核!\orders = orderService.findByUser(user); return SUCCESS;

27

6.个人中心模块

用户在页面上点击个人中心后可以显示自己已经提交的所有订单,以及当前订单的处理状态、支付方式等信息。用户个人中心如图4-11所示。

图4-11 普通用户个人中心图

用户个人中心主要代码:

@Action(value = \ @Result(name = \ @Result(name = \

public String myorder() throws Exception { User user = (User) ServletActionContext.getRequest().getSession() .getAttribute(\ if (user == null) { tip = \您还没有登录,请登录后在查询!\ return LOGIN; } else { orders = orderService.findByUser(user); } return SUCCESS; }

4.3.3 后台管理员模块设计

后台管理模块即是管理员的功能模块,包括用户管理、商品分类、供应商、商

品信息、订单管理、系统管理员权限管理等功能。

1.用户管理

在此模块中,管理员可以查看到注册用户的详细信息,可以对用户进行分页显

28

示、删除、修改、查询等操作。用户信息截图如图4-12所示。

用户可以点击修改按钮对用户名、密码、昵称、性别、email等信息,可以点击删除按钮对某一用户进行删除操作,也可以在搜索框中填写姓名进行相关用户。

图4-12 注册用户管理图

主要的功能代码: /***

* 查找所有的用户 * @return */

@Action(value = \results = { @Result(name = \type = \

public String list(){

int pageNumber = (int) (iDisplayStart / iDisplayLength) + 1;

int pageSize = iDisplayLength;

Page list = userService.findAll(pageNumber, pageSize, userName);

resultMap.put(\

resultMap.put(\ resultMap.put(\list.getTotalElements());

resultMap.put(\ return SUCCESS; }

29

2.商品分类

在此模块中,管理员可以新增分类,新增的分类会显示的前台的首页中。分类信息如图4-13所示。

在商品分类中,主要包括商品分类的名称、备注、创建时间等信息。用户可以在这个模块中新建一个商品分类或者修改已经创建完的商品分类,创建完成之后,可以将商品归于某个商品分类,以便于用户更加方便的查找商品。

图4-13 商品分类管理图

商品分类管理的主要代码 /* 修改商品分类信息 */

@Action(value = \params = {

\ public String update() {

}

Category bean = categoryService.find(category.getId()); bean.setName(category.getName()); bean.setRemark(category.getRemark()); categoryService.save(bean);

resultMap.put(\resultMap.put(\修改成功\return SUCCESS;

30

本文来源:https://www.bwwdw.com/article/1f07.html

Top