基于Java的ERP系统设计与实现

您所在的位置:网站首页 erp项目开发团队介绍 基于Java的ERP系统设计与实现

基于Java的ERP系统设计与实现

2024-07-12 19:09| 来源: 网络整理| 查看: 265

基于Java的ERP系统设计与实现 摘  要

本次课题结合了结合目前市面上很多正在使用的企业ERP系统和对未来企业ERP系统的发展进行广泛的研究和分析,在此基础上结合当前软件应用现状对软件系统进行新的创新和改进,利用所学MySql数据库,JavaEE,SpringBoot框架,JQuery,EasyUI等知识开发一个基于Java的企业ERP系统。以期实现综合平衡和优化管理企业所拥有的人、财、物、信息、时间和空间等综合资源,协调企业各管理部门,ERP管理系统围绕市场导向开展业务活动,提高企业的核心竞争力,从而取得最好的经济效益。

关键词:ERP;MYSQL;SpringBoot;JQuery;EasyUI

Design and implementation of ERP system based on Java Abstract

This topic combines many enterprise ERP systems currently in use in the market with extensive research and Analysis on the development of enterprise ERP system in the future. On this basis, combined with the current situation of software application, this paper carries out new innovation and improvement on the software system, using the MySQL database, JavaEE, springboot framework, jQuery, Develop an enterprise ERP system based on Java. In order to achieve a comprehensive balance and optimize the management of human, financial, material, information, time and space and other comprehensive resources owned by the enterprise, coordinate the management departments of the enterprise, ERP management system around the market-oriented business activities, improve the core competitiveness of the enterprise, so as to achieve the best economic benefits.

Key words: ERP;MYSQL;SpringBoot;JQuery;EasyUI

目 录

摘  要

Abstract

第1章 前 言

1.1 项目背景

1.2 研究现状

1.3 开发系统的意义

第2章 系统设计思想和技术介绍

2.1 设计思想

2.2 技术介绍

第3章 需求建模

3.1 需求分析

3.2 模块分析

3.3 可行性分析

第4章 概要设计

4.1 数据库需求分析

4.2 数据库物理实现

第5章 功能实现

5.1 登录功能

5.2 采购管理

5.3 销售管理

5.4 仓库管理

5.5 财务管理

5.6 报表查询

5.7 商品管理

5.8 基本资料

5.9 系统管理

第6章 系统测试

6.1 测试的目的与目标

6.2 测试方法和内容

6.3 测试结论

第7章 结  论

参考文献

致  谢

前 言 1.1. 项目背景

        随着时代的发展,科学技术有了很大的发展,数据库技术,数字化技术,网络系统大规模应用技术,网络系统开发工具等等不断完善。中国也顺应时代的发展进入到了高速的“互联网+”时代。高速的互联网给人们的日常生活带来的很大的便利和改善,很多行业得益于此快速发展。

        ERP管理系统是IT技术与管理思想的融合体,ERP管理系统也就是先进的管理思想借助IT技术,来达成提升企业的管理水平的目标。当企业发展到一定的阶段,常规的管理显然已不能满足现实发展的需要,所以如何实现规范化、标准化的管理来提高企业经营效益,就成为一个新的议题。如果不建立与之相适应的管理信息系统,就很难在这个竞争日趋激烈的时代获胜。

1.2. 研究现状

        毋庸置疑,21世纪是网络经济、电子商务的信息化的世纪,而一个真正的电子商务必须包括网上商务(B2B)、客户管理(CRM )、供应商管理(SCM )、企业内部管理(ERP管理系统 )四大系统,因此企业当前首要的目标是实现企业内部管理与ERP管理系统 整合,实现资源充分有效利用、运作效率提高、成本的降低和准时交货承诺的保证,在拥有了ERP管理系统 “后台”这一核心的基础上再与“前台”的网上商务集成在线实时运作,跨进电子商务时代。所以,企业要规范化、规模化、国际化,则ERP管理系统的引入是必然的。

1.3. 开发系统的意义

        ERP系统,将企业实际管理需求与先进信息技术完美结合,打造企业全程一体化管理体系,打破各部门、各区域、各系统之间沟通和协作的壁垒,建立规范、灵捷、高效的业务流程,实现销售、客户、项目、生产、库存、采购、人资、财务、办公等所有环节全程无缝管理,确保了数据信息在传递过程中的准确性、时效性和有效性,帮助企业快速反应、紧密协作、良好运营,更快推进业务发展,全面提升核心竞争力。

系统设计思想和技术介绍 2.1. 设计思想

        技术方面系统采用B/S架构,并将数据库和后台服务端以及前台展示页面部署到公有云上的形式以方便用户任何时间,任何地点高效率的办理自己的业务。数据库采用免费开源的MySQL数据库以节省成本,后台服务器端采用SpringBoot框架进行快速搭建和运行,采用Maven管理依赖提升项目开发过程中规范性与高效性,采用MyBatis框架做持久层处理器,采用MVC的设计模式方便代码的阅读和编辑,采用EasyUI解决界面设计问题。

2.2. 技术介绍 2.2.1. Spring框架

        Spring框架是由Pivotal团队开发的轻量级开发脚手架。通过注解对java对象进行管理提高开发的效率和质量和面向切面编程的能力,去繁从简,将大量重复的业务逻辑一个注解搞定,并且程序间的耦合度非常低,任何java应用都可以从中受益。

        Spring的一个最大特点就是它是一个万金油似的框架,他可以和其他的任何框架结合起来使用,并对这些框架进行管理和配置,是当今SSH,SSM,SpringBoot等框架的基础。

2.2.2. Mybatis框架

        Mybatis是现在绝大多数java项目的必用框架,是当今最火热的半自动化的SQL语句模板引擎,在解决数据库范式带来的问题和提升数据库表扁平化的角度上起了很大的作用。在我的了解中,现在很多人摈弃数据库范式的关联关系,大量使用冗余数据,这就给半自动化的Mybatis发展起了很大的发展作用。

        Mybatis是用来解决MVC中的持久数据库层问题的解决方案,它是一个组件,开发时我们也要以组件的方式去引用它,并且它可以被集成进入Spring管理,只要引入了它并一键开启,除了SQL外我们都不用管,但是SQL语句本身我们还是要自己来编撰的,所以Mybatis是一个半自动的SQL语句处理框架,这给我们开发实现过程化中优化SQL语句,提升服务的整体性能提供了很大的帮助。

2.2.3. SpringMVC框架

        早期JAVA网络程序开发模式理论和实际层次很简单,所有的要实现的功能都在一个类中实现,没有层次,这样虽然很大的降低的代码的复用率和开发周期,但是程序之间的耦合度很高很高。并且前端和后端相互依赖夹杂,使程序的很难看懂实现了那些功能,不能进行有效的再次开发测试。

        这种开发方式虽然很简单,弊病也很重,因此这种代码逻辑方式被前后分离的MVC 模式取代,而MVC的核心是由Servlet组件实现的。前端发生的HTTP请求到后台,经过后台解析后找到相应的方法,然后根据请求的参数和解析结果调用相应的实体类和分层实现获取需要的结果,结果返回后,前端页面完成业务处理,这样的模式我们就称为 MVC 模式。

SpringMVC的执行过程如下图2-1所示:

图2-1 SpringMVC执行过程

2.2.4. SpringBoot框架

        SpringBoot也是由Pivotal团全新开源的轻量级框架,通过简化配置来进一步简化了Spring应用的整个搭建和开发过程,另外SpringBoot通过集成大量的框架使得依赖包的版本冲突,以及引用的不稳定性等问题。

2.2.5. Mysql数据库

        Mysql是由Apache公司提供的一款开源的数据库管理系统,其功能非常强大,提供了多种数据库存储引擎,各引擎各有所长,适用于不同的应用场合,用户可以选择最合适的引擎以得到最高性能,可以处理每天访问量超过数亿的高强度的搜索 Web 站点,并且支持事务、视图、存储过程、触发器等。

2.2.6. EasyUI

        EasyUI是一种基于jQuery的用户界面插件集。 EasyUI 提供易于使用的组件,它使 Web 开发人员能快速地在流行的 jQuery 核心和 HTML5 上建立程序页面,节省您网页开发的时间和规模。

需求建模 3.1. 需求分析

        本系统开发的目的是实现企业在运营过程中涉及的采购流程、入库流程、销售流程以及财务管理和生产等方面智能化。

        根据需求分析目前想要实现的主要功模块能有:采购管理,销售管理,仓库管理,财务管理,报表查询,商品管理,基本资料及系统管理。同时从细节上对各个功能模块进行设计。

        设计采购管理模块包含了订单,入库,退货等功能。

        设计销售管理模块包含订单管理类,出库,入库等功能。

        设计仓库管理模块包含出库,入库功能。

        设计财务管理模块包含了对收入、支出、收付款、转账的管理。

        设计报表管理模块包含了对库存状况,进货统计,销售统计,入库明细,出库明细等的管理设计。

        设计商品管理模块包含了对商品类型,详细信息,型号,商品编号的管理。

        设计基本资料模块包含了供应商信息,客户信息,会员信息,仓库信息,账户信息,经手人管理的设计。

        设计系统管理包含了角色管理,用户,机构,日志,常用配置等功能。

        需求模块分析图如下图3-1所示。  

图3-1系统模块需求分析图

3.2. 模块分析 3.2.1. 登录模块

登录模块是一个系统安全保证的核心功能,本系统采用shiro安全校验框架,结合session数据存储,搭建用户安全拦截校验。登录模块流程如下图3-2所示。

图3-2登录模块需求分析图

3.2.2. 采购模块

采购管理模块包括三部分功能:采购订单,采购入库,采购退货。

采购管理模块流程图如下图3-3所示:

图3-3采购管理模块流程图

采购人员在采购订单中新建一个采购订单。新建订单信息后,由采购单审核权限的审核人员在采购订单中进行审核。审核通过后,采购人员在采购入库中新建一个入库单,该入库单可关联已经审核通过的采购单,然后采购单中采购的商品入库,该商品库存增加。如需退货,在采购退货中新建一个退货单,在退货单中选择供应商及退货的商品,退货商品数量。

3.2.3. 销售模块

销售管理模块包括三部分功能:销售订单,销售出库,销售退货。

销售管理模块流程图如下图3-4所示:

图3-4销售管理模块流程图

销售人员在销售订单中新建一个销售订单。新建后,有销售单审核权限的审核人员在销售订单中进行审核。审核通过后,销售人员在销售出库中新建一个出库单,该出库单可关联已经审核通过的销售单,然后销售单中销售的商品出库,该商品库存减少。如需退货,在销售退货中新建一个退货单,在退货单中选择客户及退货的商品,退货商品数量等信息。

​​​​​​​3.2.4. 仓管模块

仓管管理模块包括三部分功能:新增仓库,出库,入库退货。

仓管管理模块流程图如下图3-5所示:

图3-5仓管模块流程图

仓库管理员新增仓库信息。出库时需要将仓库,商品信息,客户信息关联起来,用以达到 很快捷方便创建出库信息的目的。仓库管理员在执行入库操作是只需选择相应的商品就可以执行入库操作。

3.2.5. ​​​​​​​系统管理

系统管理模块包括5个部分功能:角色管理,用户管理,机构管理,日志管理和系统配置。

系统管理模块流程图如下图3-6所示:

图3-6系统管理流程图

系统管理员新增首先用户角色信息,机构信息等。

创建系统用户时需要选择用户的角色信息,和机构信息,赋能用户的权限角色。

系统日志管理的功能是记录系统用户的操作信息。

3.3. 可行性分析 3.3.1. 技术可行性

根据上述功能需求分析,本课题使用JAVA作为本次课题落地技术实现的技术支撑。根据页面的动态效果和个人所学知识,采用JQuery以及EsayUI,bootstrap等前端开发技术作为前端页面展示效果的技术支撑。服务器后端采用当今比较火的SpringBoot框架作为主体框架,并结合Mybatis数据库持久层组件,druid组件等技术作为后端技术支撑。数据库选用免费开源易操作且功能完善的mysql数据库。采用tomcat服务器作为项目发布部署运行的服务器,采用Maven做项目架构管理和版本信息管理等。

以上技术完整的搭建了一个从前端到后台在到数据库最后发布到服务器的项目。从技术层面上来分析,以上技术均是当前比较火热的前沿技术,而且技术成熟,用例很广,容易搭建,容易维护,所以在技术上本需求可行。

3.3.2. ​​​​​​​实用性分析

对于很多的想要实现采购,入库,销售等企业资源智能化、信息化管理的机构来说,无论是大型的企业平台还是中小型的企业,超市等,都需求一个具有核心功能完善的ERP管理系统。一个核心完善的ERP管理能够极大的加快货款回收效率,同时也能节省很多的运营成本,优化采购及销售环节的同时,也减轻了企业的账目管理压力,给用户带来更加直观的数据体验。就像上述功能分析的一样,无论从什么角色和什么方向,本系统都能适应,而且开发成本低,实用性强,所以从经济实用性角度来说,本系统可行。

概要设计 4.1. 数据库需求分析

针对上述需求分析,设计系统数据库主要需求表如下表4-1所示:

表4-1 数据库需求表

jsh_account

账户信息

jsh_account_head

财务主表

jsh_account_item

财务子表

jsh_depot

仓库表

jsh_depot_head

单据主表

jsh_depot_item

单据子表

jsh_function

功能模块表

jsh_in_out_item

收支项目

jsh_log

操作日志

jsh_material

产品表

jsh_material_category

产品类型表

jsh_material_current_stock

产品当前库存

jsh material extend

产品价格扩展

jsh_material_initial_stock

产品初始库存

jsh_material_property

产品扩展字段表

jsh_msg

消息表

jsh_orga_user_rel

机构用户关系表

jsh_organization

机构表

jsh_person

经手人表

jsh_platform_config

平台参数

jsh_role

角色表

jsh_sequence

单据编号表

jsh_serialnumber

序列号表

jsh_supplier

供应商/客户信息表

jsh_system_config

系统参数

jsh_tenant

租户

jsh_unit

多单位表

jsh_user

用户表

jsh_user_business

用户/角色/模块关系表

4.2. 数据库物理实现

        财务主表如下表4-2所示:

        表4-2 jsh_account_head财务主表

序号

列名

字段类型

长度

允许为空

备注

1

id

bigint

20

NO

Id主键

2

type

varchar

50

YES

类型

3

organ_id

bigint

20

YES

单位Id

4

hands_person_id

bigint

20

YES

经手人id

5

creator

bigint

20

YES

操作员

6

change_amount

decimal

24

YES

变动金额

7

total_price

decimal

24

YES

合计金额

8

account_id

bigint

20

YES

账户

9

bill_no

varchar

50

YES

单据编号

10

bill_time

datetime

0

YES

单据日期

11

remark

varchar

100

YES

备注

12

tenant_id

bigint

20

YES

租户id

13

delete_flag

varchar

1

YES

删除标记

        财务子表如下表4-3所示:

        表4-3 jsh_account_item 财务子表

序号

列名

字段类型

长度

允许为空

备注

1

id

bigint

20

NO

Id主键

2

header_id

bigint

20

YES

表头Id

3

account_id

bigint

20

YES

账户Id

4

in_out_item_id

bigint

20

YES

收支项目Id

5

each_amount

decimal

24

YES

单项金额

6

remark

varchar

100

YES

单据备注

7

tenant_id

bigint

20

YES

租户id

8

delete_flag

varchar

1

YES

删除标记

        仓库表如下表4-4所示:

        表4-4 jsh_depot 仓库表

序号

列名

字段类型

长度

允许为空

备注

1

id

bigint

20

NO

Id主键

2

name

varchar

20

YES

仓库名称

3

address

varchar

50

YES

仓库地址

4

warehousing

decimal

24

YES

仓储费

5

truckage

decimal

24

YES

搬运费

6

type

int

10

YES

类型

7

sort

varchar

10

YES

排序

8

remark

varchar

100

YES

描述

9

principal

bigint

20

YES

负责人

10

tenant_id

bigint

20

YES

租户id

11

delete_Flag

varchar

1

YES

删除标记

12

is_default

bit

1

YES

是否默认

        单据主表如下表4-5所示:

        表4-5 jsh_depot_head 单据主表

序号

列名

字段类型

长度

允许为空

备注

1

id

bigint

20

NO

Id主键

2

type

varchar

50

YES

类型

3

sub_type

varchar

50

YES

出入库分类

4

default_number

varchar

50

YES

初始票据号

5

number

varchar

50

YES

票据号

6

create_time

datetime

0

YES

创建时间

7

oper_time

datetime

0

YES

出入库时间

8

organ_id

bigint

20

YES

供应商id

9

hands_person_id

bigint

20

YES

经手人id

10

creator

bigint

20

YES

操作员

11

account_id

bigint

20

YES

账户id

12

change_amount

decimal

24

YES

变动金额

13

total_price

decimal

24

YES

合计金额

14

pay_type

varchar

50

YES

付款类型

15

bill_type

varchar

50

YES

单据类型

16

remark

varchar

1000

YES

备注

17

sales_man

varchar

50

YES

业务员

18

account_id_list

varchar

50

YES

账户ID

19

account_money_list

varchar

200

YES

金额列表

20

discount

decimal

24

YES

优惠率

21

discount_money

decimal

24

YES

优惠金额

22

discount_last_money

decimal

24

YES

优惠后金额

23

other_money

decimal

24

YES

费用合计

24

other_money_list

varchar

200

YES

项目Id数组

25

other_money_item

varchar

200

YES

费用

26

account_day

int

10

YES

结算天数

27

status

varchar

1

YES

状态

28

link_number

varchar

50

YES

关联订单号

29

tenant_id

bigint

20

YES

租户id

30

delete_flag

varchar

1

YES

删除标记

        单据子表如下表4-6所示:

        表4-6 jsh_depot_item单据子表

序号

列名

字段类型

长度

允许为空

备注

1

id

bigint

20

NO

Id主键

2

header_id

bigint

20

YES

表头Id

3

material_id

bigint

20

YES

商品Id

4

material_extend_id

bigint

20

YES

商品扩展id

5

material_unit

varchar

20

YES

商品计量单位

6

oper_number

decimal

24

YES

数量

7

basic_number

decimal

24

YES

基础数量

8

unit_price

decimal

24

YES

单价

9

tax_unit_price

decimal

24

YES

含税单价

10

all_price

decimal

24

YES

金额

11

remark

varchar

200

YES

备注

12

img

varchar

50

YES

图片

13

incidentals

decimal

24

YES

运杂费

14

depot_id

bigint

20

YES

仓库ID

15

another_depot_id

bigint

20

YES

对方仓库Id

16

tax_rate

decimal

24

YES

税率

17

tax_money

decimal

24

YES

税额

18

tax_last_money

decimal

24

YES

价税合计

19

material_type

varchar

20

YES

商品类型

20

tenant_id

bigint

20

YES

租户id

21

delete_flag

varchar

1

YES

删除标记

        收支项目表如下表4-7所示:

        表4-7 jsh_in_out_item收支项目表

序号

列名

字段类型

长度

允许为空

备注

1

id

bigint

20

NO

Id主键

2

name

varchar

50

YES

名称

3

type

varchar

20

YES

类型

4

remark

varchar

100

YES

备注

5

tenant_id

bigint

20

YES

租户id

6

delete_flag

varchar

1

YES

删除标记

        产品表如下表4-8所示:

        表4-8 jsh_material 产品表

序号

列名

字段类型

长度

允许为空

备注

1

id

bigint

20

NO

Id主键

2

category_id

bigint

20

YES

产品类型id

3

name

varchar

50

YES

名称

4

mfrs

varchar

50

YES

制造商

5

safety_stock

decimal

24

YES

安全存量

6

model

varchar

50

YES

型号

7

standard

varchar

50

YES

规格

8

color

varchar

50

YES

颜色

9

unit

varchar

50

YES

单位-单个

10

remark

varchar

100

YES

备注

11

unit_id

bigint

20

YES

计量单位Id

12

enabled

bit

1

YES

启用

13

enable_serial_number

varchar

1

YES

开启序列号

14

tenant_id

bigint

20

YES

租户id

        产品类型表如下表4-9所示:

        表4-9 jsh_material_category产品类型表

序号

列名

字段类型

长度

允许为空

备注

1

id

bigint

20

NO

Id主键

2

name

varchar

50

YES

名称

3

category_level

smallint

6

YES

等级

4

parent_id

bigint

20

YES

上级id

5

sort

varchar

10

YES

显示顺序

6

status

varchar

1

YES

状态

7

serial_no

varchar

100

YES

编号

8

remark

varchar

1024

YES

备注

9

create_time

datetime

0

YES

创建时间

10

creator

bigint

20

YES

创建人

11

update_time

datetime

0

YES

更新时间

12

updater

bigint

20

YES

更新人

13

tenant_id

bigint

20

YES

租户id

        产品库存表如下表4-10所示:

        表4-10 jsh_material_current_stock产品库存表

序号

列名

字段类型

长度

允许为空

备注

1

id

bigint

20

NO

Id主键

2

material_id

bigint

20

YES

产品id

3

depot_id

bigint

20

YES

仓库id

4

current_number

decimal

24

YES

当前库存数量

5

tenant_id

bigint

20

YES

租户id

6

delete_flag

varchar

1

YES

删除标记

        供应商/客户信息表如下表4-11所示:

        表4-11 jsh_supplier供应商/客户信息表

序号

列名

字段类型

长度

允许为空

备注

1

id

bigint

20

NO

Id主键

2

supplier

varchar

255

YES

供应商名称

3

contacts

varchar

100

YES

联系人

4

phone_num

varchar

30

YES

联系电话

5

email

varchar

50

YES

电子邮箱

6

description

varchar

500

YES

备注

7

isystem

tinyint

4

YES

是否系统自带

8

type

varchar

20

YES

类型

9

enabled

bit

1

YES

启用

10

advance_in

decimal

24

YES

预收款

11

begin_need_get

decimal

24

YES

期初应收

12

begin_need_pay

decimal

24

YES

期初应付

13

all_need_get

decimal

24

YES

累计应收

14

all_need_pay

decimal

24

YES

累计应付

15

fax

varchar

30

YES

传真

16

telephone

varchar

30

YES

手机

17

address

varchar

50

YES

地址

18

tax_num

varchar

50

YES

纳税人识别号

19

bank_name

varchar

50

YES

开户行

20

account_number

varchar

50

YES

账号

21

tax_rate

decimal

24

YES

税率

22

tenant_id

bigint

20

YES

租户id

23

delete_flag

varchar

1

YES

删除标记

        机构表如下表4-12所示:

        表4-12 jsh_organization机构表

序号

列名

字段类型

长度

允许为空

备注

1

id

bigint

20

NO

Id主键

2

org_no

varchar

20

YES

机构编号

3

org_full_name

varchar

500

YES

机构全称

4

org_abr

varchar

20

YES

机构简称

5

org_tpcd

varchar

9

YES

机构类型

6

org_stcd

char

1

YES

机构状态

7

org_parent_no

varchar

20

YES

机构父节点

8

sort

varchar

20

YES

机构显示顺序

9

remark

varchar

500

YES

备注

10

create_time

datetime

0

YES

创建时间

11

creator

bigint

20

YES

创建人

12

update_time

datetime

0

YES

更新时间

13

updater

bigint

20

YES

更新人

14

org_create_time

datetime

0

YES

机构创建时间

15

org_stop_time

datetime

0

YES

机构停运时间

16

tenant_id

bigint

20

YES

租户id

        角色信息表如下表4-13所示:

        表4-13 jsh_role角色信息表

序号

列名

字段类型

长度

允许为空

备注

1

id

bigint

20

NO

Id主键

2

name

varchar

50

YES

名称

3

type

varchar

50

YES

类型

4

value

varchar

200

YES

5

description

varchar

100

YES

描述

6

tenant_id

bigint

20

YES

租户id

7

delete_flag

varchar

1

YES

删除标记

        新闻信息表如下表4-14所示:

        表4-14 movie_news新闻信息表

序号

数据类型

字段类型

长度

允许为空

备注

1

id

bigint

20

NO

主键id

2

create_time

datetime

0

NO

创建时间

3

update_time

datetime

0

NO

更新时间

4

abs

varchar

256

NO

摘要

5

content

varchar

2560

NO

内容

6

picture

varchar

128

NO

图片

7

title

varchar

128

NO

标题

8

view_num

int

11

YES

观看次数

        用户信息表如下表4-15所示:

        表4-15 jsh_user用户信息表

序号

列名

字段类型

长度

允许为空

备注

1

id

bigint

20

NO

Id主键

2

username

varchar

255

YES

表头Id

3

login_name

varchar

255

YES

商品Id

4

password

varchar

50

YES

商品扩展id

5

position

varchar

200

YES

商品计量单位

6

department

varchar

255

YES

数量

7

email

varchar

100

YES

基础数量

8

phonenum

varchar

100

YES

单价

9

ismanager

tinyint

4

YES

含税单价

10

isystem

tinyint

4

YES

金额

11

status

tinyint

4

YES

备注

12

description

varchar

500

YES

图片

13

remark

varchar

500

YES

运杂费

14

tenant_id

bigint

20

YES

仓库ID

功能实现

5.1. 登录功能

5.2. 采购管理

5.3. ​​​​​​​销售管理

5.4. ​​​​​​​仓库管理

5.5. 财务管理

5.6. ​​​​​​​报表查询​​​​​​​

5.7. 商品管理

5.8. ​​​​​​​基本资料

5.9. ​​​​​​​​​​​​​​系统管理

系统测试 6.1. 测试的目的与目标

        为了使系统稳定健壮,能够适应在各种环境下的使用场景,本系统使用各种方法对系统的整体内容加以测试,并在测试过程中找到系统存在的问题和不足,通过论坛网络资源等查询解决办法,解决遇到的问题。

6.2. 测试方法和内容

        本次测试采用了软件开发中常用的压力测试,功能测试,健壮性测试以及安全性测试这4个测试方法。

        利用压力测试测试了多个角色同时登录和操作对系统的负载和影响,查看是否有冲突等。

        利用功能测试,测试系统各个功能模块在各种情况下是否使用正常,若测试出不正常的查看后台日志和bug输出,及时的解决各种bug。功能测试的方法主要就是采用不同的角色身份对系统整体流程进行操作,查看流程是否能够走通,逻辑是否有异常,功能实现是否有异常等。

        健壮性测试就是测试系统在各种使用环境下是否能够正常使用,采用人为制造bug的形式,观察系统在运行中遇到bug后的情况。查看是否有逻辑漏洞,查看是否有突发事件异常无法处理等。

        系统的安全性测试包含了2个部分的安全。一部分是系统接口调用安全,系统采用Session安全校验组件对整体的接口做安全校验拦截,若用户没有安全登录,则拦截所有对系统不安全的请求。另一部分是数据库安全,系统采用事务处理和Mybatis框架对数据进行数据安全校验,保证数据库持久化的数据正常。

6.3. 测试结论

        经过一系列的测试排除和解决问题,本次基于Java的企业ERP系统达到能整体运行,前端适配性强,后台代码健壮,安全性高的目标。在测试过程中,发现了很多系统存在的问题,有很多的问题都是由于自己的不细心和知识储备不充分造成的。经过这次的测试开发我希望自己以后能够细心的对待开发过程,尽量减少开发编写过程中的bug。

结  论

        本文介绍了基Java的ERP系统,采用目前市场上流行的springboot框架进行搭建,采用B/S架构对系统进行设计,采用shiro安全校验框架对系统的整体安全性能进行提升,使系统更加适用于需求明确且不复杂的企业。总体上来说,系统的结构还是比较完善的,各个角色的权限功能简洁方便,没有用不上的功能,但是还是有好多不尽人意的地方,本系统还是可以继续扩展增加功能的。比如说加上第三方支付,加上短信验证通知等,介于个人能力以及设计的时间有限,本设计仅实现适用于企业资源管理的核心功能,这些扩展功能就不一一的加入进来了。

        通过本项目的开发,自己从中也学习到了java开发很多的知识,比如说springboot框架的搭建,数据库的设计,开发方案的确定,需求的分析等等这些问题,对自己的技术提升有很大的帮助。同时我在开发过程中也遇到很多的难题,比如说mybatis编写xml文件完成dao层的映射,手动编写sql语句,优化sql,设计数据库之间的关联等,通过解决这些问题我也意识到自己的能力点,然后有针对性的加强这些方面的学习。

        希望自己以后能够做出更加完善的项目,一步步的解决这些问题,进一步提升自己的能力。

参考文献

[1] 胡强.MySQL数据库常见问题分析与研究[J].电脑编程技巧与维护,2019(12):91-92.

[2] 刘新丽.电子产品企业性ERP系统设计与实现[D].硕士.哈尔滨:哈尔滨工业大学,2015

[3] 赵国文,夏平平.基于JavaEE的人事管理系统的设计与实现[J].现代工业经济和信息化,2019,9(11):88-89.

[4] 王小丽.中小企业资源计划管理系统的设计与实现[D].硕士.成都.电子科技大学.2018.06

[5] 陈静.基于云计算的新零售化妆品企业ERP系统的设计与实施[D].硕士.济南.山东大学.2020

[6] 段明磊.SaaS HR软件开发项目商业计划书[D].硕士,广州:华南理工大学,2019.

[7] 李凯佳.基于J2EE企业ERP管理系统的设计与实现[D].硕士.吉林:吉林大学,2019

[8] 陆长城.陇源公司ERP系统实施研究[D].硕士.兰州.兰州大学.2020

[9] 岳青玲.Java面向对象编程的三大特性[J/OL].电子技术与软件工程,2019(24):239-240

[10] 王崇娴.中小企业进销存管理信息系统设计与实现[D].硕士.南昌.江西财经大学.2017

致  谢

        时间过得确实快,四年一下就过去了,好多时候我甚至感觉自己还是一个刚上大学的学生。大学四年里,经历了很多的人和事,很多人对我都很好,教我做人做事的方法和原则,很感谢他们帮助了我成长。很感谢我的老师们,是你们教会了我学习的本领,让我学习到很多的知识。从选题至今,碰到过很多的难点和疑问,经过老师的指导以及同事的帮助,我完成了这次毕业设计。

        不管怎么说吧,大学四年匆匆过去了,留下的不仅仅是宝贵的知识财富还有很多美好的回忆。和老师及同学们一起拼搏的日子,我永远都不能忘怀。衷心感谢学院的各位老师们,谢谢大学四年有您们的关照,您们辛苦了!

1453632038 yuquan1083



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3