基于J2EE架构的企业煤炭销售管理系统毕业论文Word文档下载推荐.docx
《基于J2EE架构的企业煤炭销售管理系统毕业论文Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《基于J2EE架构的企业煤炭销售管理系统毕业论文Word文档下载推荐.docx(48页珍藏版)》请在冰豆网上搜索。
5.3合同管理模块37
5.4称重管理模块38
5.5统计管理模块39
5.6系统管理模块40
6系统测试43
6.1软件测试的意义43
6.2系统功能测试44
6.2.1测试过程44
6.2.2测试环境45
结论46
参考文献47
致谢48
1绪论
1.1课题研究背景
1.1.1课题背景
随着科学技术水平的不断提高,人们对销售管理系统的需求也越来越大。
很多煤炭销售公司的业务环节仍然运用人工记账的传统方法,既容易出错又会导致账目混乱,查询和统计起来也非常不方便,费时又费力,严重时会给公司造成难以挽回的损失。
如何管理好这些,使整个公司协调一致、高效率地运转,是各公司急待解决的问题。
煤炭销售管理系统不但能使各业务环节协调一致,而且操作简单,账目清晰。
通过账目查询,公司能在最短的时间内获得市场信息,从而制订相应的决策。
因此,完成一个适用于企业的煤炭销售管理系统,实现管理过程的信息化,能充分利用信息资源,建立企业竞争优势,提高企业管理效益。
本系统是在分析了现行小煤矿销售管理流程的基础上,结合信息管理系统开发的概念、各功能需求和公司里的情况而设计的这套系统。
1.1.2研究方法
本系统采用HTML语言及CSS、JavaScript编辑页面,采用Java语言、Struts框架、Wabacus框架结合MySQL数据库和MyEclipse平台来设计完成。
1.1.3研究工具
(1)Java
Java是一种简单的,跨平台的,面向对象的,分布式的,解释的,健壮的安全的,结构的中立的,可移植的,性能很优异的多线程的,动态的语言。
当1995年SUN推出Java语言之后,全世界的目光都被这个神奇的语言所吸引。
Java编程语言的风格十分接近C、C++语言。
Java是一个纯的面向对象的程序设计语言,它继承了C++语言面向对象技术的核心,Java舍弃了C++语言中容易引起错误的指针(以引用取代)、运算符重载(operatoroverloading)、多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。
在JavaSE1.5版本中,Java又引入了泛型编程(GenericProgramming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。
Java不同于一般的编译执行计算机语言和解释执行计算机语言。
它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码,从而实现了“一次编译、到处执行”的跨平台特性。
不过,每次的编译执行需要消耗一定的时间,这同时也在一定程度上降低了Java程序的运行效率。
但在J2SE1.4.2发布后,Java的执行速度有了大幅提升。
与传统程序不同,Sun公司在推出Java之际就将其作为一种开放的技术。
全球数以万计的Java开发公司被要求所设计的Java软件必须相互兼容。
“Java语言靠群体的力量而非公司的力量”是Sun公司的口号之一,并获得了广大软件开发商的认同。
这与微软公司所倡导的注重精英和封闭式的模式完全不同。
Sun公司对Java编程语言的解释是:
Java编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言。
Java平台是基于Java语言的平台。
这样的平台非常流行,因此微软公司推出了与之竞争的.NET平台以及模仿Java的C#语言。
(2)MySQL数据库
MySQL是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MySQLAB公司。
MySQL被广泛地应用在Internet上的中小型网站中。
由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
与其他的大型数据库例如Oracle、DB2、SQLServer等相比,MySQL自有它的不足之处,但是这丝毫也没有减少它受欢迎的程度。
对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。
MySQL具有如下的系统特性:
使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性。
支持AIX、FreeBSD、HP-UX、Linux、MacOS、NovellNetware、OpenBSD、OS/2Wrap、Solaris、Windows等多种操作系统。
为多种编程语言提供了API。
这些编程语言包括C、C++、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。
支持多线程,充分利用CPU资源。
优化的SQL查询算法,有效地提高查询速度。
既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中。
提供多语言支持,常见的编码如中文的GB2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名。
提供TCP/IP、ODBC和JDBC等多种数据库连接途径。
提供用于管理、检查、优化数据库操作的管理工具。
支持大型的数据库。
可以处理拥有上千万条记录的大型数据库。
支持多种存储引擎。
Mysql是开源的,所以你不需要支付额外的费用。
MySQL使用标准的SQL数据语言形式。
Mysql对PHP有很好的支持,PHP是目前最流行的Web开发语言。
Mysql是可以定制的,采用了GPL协议,你可以修改源码来开发自己的Mysql系统。
1.2设计意义
煤炭销售管理是一个煤矿企业不可缺少的部分,它的内容对于企业的决策者和管理者来说都至关重要,所以煤炭管理系统应该能够为用户提供充足的信息和快捷的查询手段。
但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:
效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。
作为计算机应用的一部分,使用计算机企业信息进行管理,有着手工管理所无法比拟的优点。
例如:
检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高人事劳资管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。
因此,开发这样一套软件成为很有必要的事情,在下面的各章中我们将以开发一套煤炭管理系统为例,谈谈其开发过程和所涉及到的问题及解决方法。
2可行性研究
2.1技术可行性
2.1.1软件及硬件可行性
本系统仅需要一台装有Office软件的计算机即可,对机器本身没有太高的要求,一般当前学校或个人电脑完全可满足要求。
对于软件技术要求,现在的程序设计语言已非常成熟,前台页面使用HTML和JSTL标签配合来开发。
开发环境的介绍:
(1)操作系统:
MicrosoftWindows7旗舰版;
(2)数据库:
MySQL;
(3)开发环境:
MyEclipse;
(4)开发语言:
Java;
(5)服务器:
tomcat6.0;
(6)浏览器:
IE6.0以上;
(7)分辨率:
最佳效果1366*768像素。
2.1.2人员可行性
笔者是太原工业学院计算机工程系网络工程专业的学生,通过在校四年的学习,对计算机专业知识已有一定了解,在校外的培训机构进行过为期四个月的培训,能够熟练的运用Java语言,MySQL数据库进行软件开发。
除此之外,笔者具备一定的自学能力,对于不熟悉的领域,能够通过自身学习,快速的掌握相关知识,从而进行正确的开发。
所以,笔者完全有能力完成此次系统的开发任务。
2.2经济可行性
由于开发此煤炭销售管理所需的硬件和软件环境(MyEclipse),系统成本主要集中在本管理系统的开发与维护上,对用户不造成过重的经济负担。
而一旦此系统投入使用,不仅可以减少商家的工作强度,提高工作效率,而且方便了用户的使用,打破了传统的管理模式,极大限度的方便了用户。
本系统的开发需要资金少,系统开发运行后可以实现资料管理的计算机化,减少查找和登记中无意的失误,节省大量的时间,管理效率大幅度提高。
此外目标系统不是很复杂,开发的周期较短,人员经济零支出低成本,所以从经济方面讲开发此系统是可行的。
2.3操作可行性
本系统是一个基于Web的煤炭销售管理系统,在操作使用上十分方便,在自己的电脑上通过Web浏览器就可使用本系统,同时所有的操作都是基于Web的的操作方式,如:
链接、按钮、文本框等等。
所有的操作通过浏览器完成,客户端不需要配置其他应用软件,用户不需培训。
因此,在操作使用上,本系统简单、方便,易于使用户接受。
系统的目标是根据用户的要求来确定的,因此,能够处理实际工作中所遇到的问题而且尽力为用户着想,因而该系统是方便可操作的。
2.4法律可行性
本系统完全由笔者个人独立设计开发,笔者没有侵犯任何个人或集体的利益。
系统具有个人版权,受国家法律保护。
3需求分析
3.1功能简介
该系统主要内容和模块:
(1)客户信息模块:
该模块主要是对客户的基本资料进行管理,操作员可以添加客户信息,还可以查看客户详细信息以及对相应信息进行修改和删除等。
(2)合同管理模块:
该模块主要是对企业与客户签订合同的详细信息的管理,操作员可以添加签约完成的合同信息,还可以查看合同详细信息以及对相应信息进行修改和删除等。
(3)称重管理模块:
该模块主要是采集车辆的信息来管理煤炭的销售量,操作员可以采集车辆入厂时的信息以及出厂时的信息。
(4)统计管理模块:
该模块可以对煤炭的销售量进行日销售量统计、月销售量统计、年销售量统计、年计划生产量统计。
(5)系统管理模块:
该模块主要是对系统的用户、角色进行管理,可以给系统用户进行分配角色,可以给角色分配权限。
3.2业务流程
3.2.1登录控制
该系统的用户根据角色的不同,当操作员进入该系统时可以通过身份验证显示不同的菜单,这就是根据其具有的权限而显示的。
当普通用户登录时由于其权限的不同,其只能看到部分的界面,设置权限保证的数据的保密性和准确性,这样设置可以保证未登录的用户不能访问系统资源。
在数据库中预插入一条登录数据,并设置默认的系统级角色管理员可以访问系统所有资源。
用户成功登录后,系统根据用户的角色检索角色所具有的权限,从而生成用户可操作的页面,并显示给当前用户。
登录控制部分的示意图如图3.1所示:
图3.1登录信息控制图
登录过程中的密码验证是通过查询数据库实现的,同时登录过程中也要根据用户角色从数据库中提取相应的权限生成页面。
3.2.2页面显示
根据用户的角色信息不同,不同的角色拥有不同的权限,然后从数据库中查询相应的菜单,然后显示到页面,如图3.2所示。
图3.2登录页面显示
3.3系统功能描述
3.3.1用例图
图3.3煤炭销售管理系统用例图
3.3.2用例描述
用例描述是以书面文档的形式对用例图进行描述。
对于整个系统,应该分功能对系统用例进行描述。
以下以管理员维护客户信息、管理员维护合同信息、管理员维护称重信息等几个用例为例进行用例描述。
(1)管理员维护客户信息用例描述:
表3.1管理员维护客户信息用例描述
标识符
用例-1
用例描述
管理员获取客户信息,进行信息录入、修改或删除
参与者
管理员
状态
通过核对信息
前置条件
管理员登录进入煤炭销售管理系统
后置条件
客户基本信息被修改
基本操作流程
1管理员查询出客户基本信息
2管理员对客户信息进行修改、录入、删除
3对编辑的客户基本信息进行保存
可选操作流程
管理员对编辑的操作进行取消;
管理员对编辑的操作进行保存,客户信息被修改
假设
管理员已经成功登录进入煤炭销售管理系统
(2)管理员维护合同信息用例描述:
表3.2管理员维护合同信息用例描述
用例-2
管理员获取合同信息,进行信息录入、修改或删除
合同基本信息被修改
1理员查询出合同基本信息
2管理员对合同信息进行修改、录入、删除
3对编辑的合同基本信息进行保存
管理员对编辑的操作进行保存,合同信息被修改
(3)管理员维护称重信息用例描述:
表3.2管理员维护称重信息用例描述
用例-3
管理员获取称重信息,进行信息录入、修改或删除
称重基本信息被修改
1理员查询出称重基本信息
2管理员对称重信息进行修改、录入、删除
3对编辑的称重基本信息进行保存
管理员对编辑的操作进行保存,称重信息被修改
4系统详细设计
煤炭销售管理系统由客户管理、合同管理、称重管理、统计管理及系统管理等功能模块组成,同时提供强大的信息分析处理功能,为企业各级管理者提供准确、及时、全面的业务经营信息,为各级管理者的经营决策和业务控制提供帮助。
下面我分别介绍部分模块的具体功能、数据库设计、系统界面设计等。
4.1模块设计
前面已经对系统的功能做了简单的介绍,下面将对功能模块进行详细描述。
4.1.1用户信息管理模块
(1)新用户信息添加
考虑到此系统使用的安全性,取消了新用户自己注册信息模块,所有用户由管理员根据每个用户的角色,为其分配相应的系统操作权限。
(2)用户登录
对用户身份进行验证,防止非法用户登录,保障系统安全,只有系统管理员才可以对用户信息模块和角色管理模块进行操作。
并且当用户登录后有一个响应时间,如果超时的话,用户需要重新登录,这样有利于系统的安全性。
(3)个人信息管理
用户可以对个人信息进行修改,如密码的变动,系统管理员可以对用户的基本信息进行修改,如修改联系方式等。
(4)退出系统
所有用户可通过安全退出模式退出系统,以取消用户当前的登录状态,防止用户离开时,账户被非法使用。
4.1.2角色管理模块
根据每个系统用户所属角色,进行权限设置,保障系统信息的安全,各用户只对案件进行个人权限范围内的操作。
4.2系统功能图
综合该系统功能,根据实际的系统需求将系统结构划分为如图4.1所示:
图4.1系统功能图
4.3数据库设计
对于煤炭销售管理系统,数据基本上都是使用数据库进行管理。
数据库设计是对保存管理系统数据的数据库结构进行设计,对整个系统的开发具有非常重要的作用。
4.3.1实体属性分析
用户登陆表(用户编号,用户名称,用户密码,创建时间,所属部门,邮箱,电话,性别,地址,出生日期,角色)
公司信息表(公司编号,公司名称,公司地址,邮政编码,法人代表,联系电话,E-mail,添加人,添加时间)
合同信息表(合同编号,合同名称,所属公司,产品名称,产品单价,产品数量,交易开始时间,交易截止时间,创建人,创建时间)
销售单表(销售单编号,合同编号,车牌号,入厂称重员,出厂称重员,皮重,总重,煤炭重量,提货人,入厂时间,进厂时间,状态)
角色表(ID,角色ID,角色名称,创建者,创建时间)
权限表(ID,角色ID,菜单ID)
菜单表(ID,菜单ID,菜单名称,菜单链接地址,父级菜单,菜单描述,菜单等级,菜单顺序)
数据字典表(ID,名称ID,名称,类型)
4.3.2数据库概念结构设计
为了把用户的数据要求清晰明确地表达出来,通常要建立一个概念性的数据模型。
概念性数据模型是一种面向问题的数据模型,是按照用户的观点来对数据和信息建模。
描述了从用户角度看到的数据,反映了用户的现实环境。
得到上面数据项和数据结构以后,就可以设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。
这些实体包含各种具体信息,通过相互之间的作用形成数据的流动。
最常用的表示概念性数据模型的方法,是实体—联系方法。
本系统规划出的实体有:
用户信息实体、合同信息实体、销售单信息实体、客户信息实体、公司信息实体、角色信息实体、权限信息实体、菜单信息实体、数据字典信息实体。
实体之间关系的E-R图下所示:
图4.2用户信息实体E-R图
图4.3客户信息实体E-R图
图4.4合同信息实体E-R图
图4.5销售单信息实体E-R图
图4.6菜单信息实体E-R图
图:
4.7角色信息实体E-R图
4.8权限信息实体E-R图
图4.9业务实体关系图
图4.10用户角色菜单关系图
4.3.3数据库逻辑结构设计
数据库的概念结构设计完毕后,现在可以将上面的数据库概念结构转化为某种数据库系统所支持的实际数据库模型,也就是数据库的逻辑结构。
煤炭销售管理系统数据库中各个表的设计结果如表所示。
每个表格表示在数据库中的一个表。
表4.1custom表
序号
字段名称
字段类型
大小
允许为空
备注
1
ID
Int
4
自增编号
2
Code
varchar
20
否
客户编号
3
company_name
100
是
公司名称
address
255
公司地址
5
legal_person
法人代表
6
telephone
电话号码
7
create_date
Date
创建时间
8
creater
创建人
表4.2contract表
contract_code
合同编号
contract_name
合同名称
custom_code
product_name
产品名称
amount
Int
10
数量
price
double
单价
total
总价
9
30
datetime
11
deal_startdate
date
交易开始时间
12
deal_enddate
交易结束时间
13
first_part
表4.3sale表
int
sale_code
销售单编号
car_id
车牌号
enter_weighter
入厂称重员
leave_weighter
出厂称重员
car_weight
车皮重量
total_weight
总重量
coal_weight
煤炭总量
custom
购买人
enter
入厂时间
leave
出厂时间
state
表4.4employee表
id
emp_id
员工ID
emp_email
Email
emp_entrytime
入职时间
emp_phone
电话号码
emp_sex
性别
emp_name
姓名
emp_pwd
密码
emp_address
地址
emp_birth
Datetime
生日
dept_id
char
部门
role_id
角色
表4.5menu表
menu_id
菜单ID
menu_name
菜单名称
menu_address
链接地址
supermenu
父级菜单