基于SpringBoot企业级进销存ERP系统.docx
- 文档编号:4970324
- 上传时间:2022-12-12
- 格式:DOCX
- 页数:40
- 大小:4.02MB
基于SpringBoot企业级进销存ERP系统.docx
《基于SpringBoot企业级进销存ERP系统.docx》由会员分享,可在线阅读,更多相关《基于SpringBoot企业级进销存ERP系统.docx(40页珍藏版)》请在冰豆网上搜索。
基于SpringBoot企业级进销存ERP系统
基于SpringBoot企业级进销存ERP系统
设计与实现
DesignandImplementationofEnterpriseInvoicingERPSystemBasedonSpringBoot
中文摘要
随着互联网时代的到来,计算机领域在商业的影响力不断扩大,对企业的信息存储和管理思想造成了较大的冲击。
为了满足企业的人力、物流、资金、业务一体化综合化管理,出现了一个将“人、财、物、产、供、销”各个方面整合的互联网产品——ERP企业资源计划管理系统。
ERP系统始于上个世纪90年代,是企业管理人员在实践中管理思想的总结。
它通过集成的系统、优化的流程、协同的工作流将企业的运行变成一个有机的整体,将信息化渗透到企业生产经营的各个方面,到如今已经是新一代新兴企业必不可缺的信息管理系统。
本篇文章以目前流行的JAVA语言开发框架Springboot为主进行了ERP系统程序的开发与实现。
在ERP系统的设计和开发过程中,采用Maven项目对象模型、运用了B/S构架,以Mybatis为持久层框架,SpringBoot为核心框架,旨在实现系统中的权限校验模块、员工管理模块、供应商管理模块、采购模块、销售模块、退货模块等。
此ERP系统主要是围绕进销存系统进行开发,通过对进销存等流程的调控,对企业所拥有的员工、物品、信息以及业务流程运行时间、业务流程可调配空间等企业资源进行平衡和更好地规划,使得企业在发展上有明显的技术提升,提高企业再市场上的核心竞争力,从而能够获取更好的利益。
关键词:
B/S架构、SpringBoot、ERP、Mybatis、进销存
Abstract
WiththeadventoftheInternetera,theinfluenceofthecomputerfieldinbusinesshascontinuedtoexpand,whichhascausedagreaterimpactontheinformationstorageandmanagementthinkingofenterprises.Inordertomeettheintegratedmanagementofhumanresources,logistics,capital,andbusinessoftheenterprise,anInternetproduct-anERPenterpriseresourceplanningmanagementsystemthatintegratesprocurement,inventory,production,sales,finance,andengineeringtechnologymanagementhasemerged.TheERPsystembeganinthe1990sandisasummaryofmanagementideasofenterprisemanagersinpractice.Itusesintegratedsystems,optimizedprocesses,andcollaborativeworkflowstoturntheoperationoftheenterpriseintoanorganicwhole,andinfiltrateinformationintoallaspectsofthecompany'sproductionandoperation.ItisnowanindispensableinformationforanewgenerationofenterprisesManagementsystem.
ThisarticlefocusesonthecurrentpopularJAVAlanguagedevelopmentframeworkSpringbootforthedevelopmentandimplementationofERPsystemprograms.DuringthedesignanddevelopmentprocessoftheERPsystem,theMavenprojectobjectmodelwasused,theB/Sframeworkwasused,Mybatiswasthepersistencelayerframework,andSpringBootwasthecoreframework.Itwasdesignedtoimplementtheauthorityverificationmodule,employeemanagementmodule,Suppliermanagementmodule,purchasingmodule,salesmodule,returnmodule,etc.ThisERPsystemismainlydevelopedaroundtheinvoicingsystem.Throughtheadjustmentofinvoicingandotherprocesses,itbalancesandbalancesenterpriseresourcessuchasemployees,items,information,businessprocessruntime,andbusinessprocessallocationspace.Betterplanningenablesenterprisestohavesignificanttechnologicalimprovementsindevelopmentandimprovetheircorecompetitivenessintheremarket,sothattheycanobtainbetterbenefits.
Keywords:
B/Sarchitecture、SpringBoot、ERP、Mybatis、Invoicing
第一章绪论
一.1ERP系统的产生和意义
在90年代以前,中国商业对计算机的应用还并未普及,企业的经营和资源管理主要为部门间采用一种较为传统的管理方法,口头调度的流程型生产,流程的调配模式较为固定。
这种传统的模式,是上个世纪80年代最初企业资源的管理模式。
但是随着互联网信息时代的到来,以及信息数据存储和企业管理思想地不断进步,这种传统管理模式显然已经不适合社会发展的需求。
除却企业内部的管理之外,从上世纪90年代至今,经济全球化概念的提出和货物市场全球流通,市场实现国际化,使得传统的企业面临了一个很大的挑战,内忧外患的情况、日益激烈的竞争促使一个以客户、时间、供应链、生产、员工的调度管理系统诞生。
通过计算机,一个以客户为中心、基于时间的调控、面向整个供应链、加之企业生产能力和企业内部员工调度的企业资源计划管理系统(ERP),成为了这个新的时代、新的形势下制造类企业发展的基本动向。
ERP系统是由MRPⅡ进一步完善形成的,它不但具有MRPⅡ所拥有的经营计划、销售与运作计划、主生产计划、物资清单与物资需求计划、能力需求计划、车间作业管理、物料管理(包括仓库管理与采购管理)、产品成本管理、财务管理等一系列功能,更适应目前的全球化市场,更加强大的功能规划着更多的企业资源,包含了企业供应链、产品链、运营链,进行企业全局角度的经营与生产规划,是传统企业更新换代地不可或缺的产品。
一.2ERP的发展趋势
进销存ERP系统起兴于上个世纪,它是计算机普及所带来了一系列产物之一。
利用计算机进行仓库资源管理来推广,很多企业实现了对进销存货物的合理化管理规划,它是现在企业发展不可或缺的产品。
其实,国外很早就开始有针对进销存系统的研究开发,并且也广泛应用在国外的很多大中型企业。
Oracle——世界领先级别的数据库的营销商,很早便利用自身的优势,建立起构架在自身产品之上的企业管理软件。
当然,虽然国内相对起步较慢,但是融合了国外先进的企业管理理念,使得国内进销存管理系统发展迅猛,有广阔的发展前景。
近年来,为了提高进销存系统的通用性,在进销存系统上创新地融合ERP系统思想,两者之间的结合出乎意料得好,规范了行业进销存系统的业务流程。
借助互联网的优势,将企业、供应商、客户立于同一平面,实现进销存系统的通用性和复用性。
一.3ERP系统的优劣势
一.3.1ERP系统的优势
实施以客户为中心的模式,是上个世纪90年代以来企业在经营管理的发展策略这方面的做出的重要转变。
这个系统中,产品不再定型、可以根须客户需求、原材料来选配。
业务流程和生产流程不再是一成不变,而是针对客户需求,物尽其用,也大大减少了非增值的无效劳动力。
ERP系统的集成性,使得企业普遍存在的数据不共享、各种信息孤岛,同一信息在不同部门、不同员工之间反复传递的这一类现实不复存在,一切都存在于系统上,提高管理效率和决策水平。
ERP系统的流程规范,能够对原有的管理流程和作业流程进行了一个深入检讨分析、挖掘出各个流程中存在的缺陷和潜在的不足,基于ERP系统的管理思想,对管理流程和作业流程进行一个规范化,提升企业整体运作效率、提高企业收益。
一.3.2ERP系统的劣势
昂贵的建置投资成本:
ERP的建置需要花费的软、硬件及顾问公司收取的顾问费都是庞大的开支。
安全性问题:
为合乎电子商务的需要,整合企业功能部门在单一系统所建构出的坚实安全性,在提供网络模块后,受到强烈的挑战。
一.4论文结构及内容安排
本文的大概结构如下:
第一章,绪论
第二章,系统所用技术与开发环境
第三章,系统的需求分析与概要设计
第四章,系统的设计与实现
第五章,系统的测试
总结章,总结与展望
第二章系统所用技术与开发环境
二.1技术整理
本文在对基于Springboot企业级进销存ERP系统设计与实现的过程中,主要用到JAVA语言开发,开发所用的IDE是IntelliJIDEA,主要用到的技术框架为:
XML/XHTML/HTML5的模板引擎Thymeleaf,安全框架Shiro,核心开发框架SpringBoot,持久层框架Mybatis,项目管理框架Maven。
二.1.1SpringBoot框架
提到SpringBoot框架,还是要讲一下Spring框架。
Spring框架是Java语言的一种轻量型应用框架。
其创建的主要目的是为了解决企业在应用开发时的繁琐,通过提供对象依赖被动传递来实现控制反转特征,也称IOC特征。
这种方式在容器中管理对象声明周期容器化时,不等对象请求,直接通过依赖注入,促进低耦合。
IOC目的是保证方便维护和测试开发应用,提供一种反射机制对容器中的管理对象继而统一配置和管理。
Spring框架具有的面向切面编程框架,即AOP,利用面向切面编程进行分离应用的生命式业务逻辑和系统服务的开发,整合多种持久化技术来管理数据层面的访问,主要正对模块之间的交叉点模块化。
Spring框架的容器可以通过XML文件或者注解配置对象,服务器就通过依赖的注入来获取对象。
SpringBoot框架就是以SpringBoot4.0为基底框架设计,在保留Spring框架原有的特性之外,还进一步简化了在应用构造和在开发时所用的配置信息。
内嵌Tomcat使得开发者不需要再去重新整合Tomcat服务器。
二.1.2Thymeleaf框架和Shiro框架
在本设计中,前端界面框架使用了Thymeleaf,Shiro作为权限控制安全框架,两者之间配合使用。
Thymeleaf身为一个Java开发前端模板,是SpringBoot官方支持的服务渲染模块,在SpringBoot整合时,就已经将之整合了,所以不需要在添加任何配置。
它适用于基于HTML5/XHTML的WEB程序,建立在自然模板的概念上,将其逻辑注入到模板文件中,不会影响模板被用作设计原型。
Shiro安全框架则是JAVA世界新出现的权限框架,较之JAAS和SpringSecurity,Shiro在保持强大功能的同时,还在简单性和灵活性方面拥有巨大优势。
二.1.3Mybatis框架
Mybatis框架起源于iBatis,是基于Java的持久层框架,提供包括SQLMaps和DataAccessObjects,它定制了一套格式去定义SQL以及映射,避免了手动设置参数等繁杂过程。
与Spring框架类是,Mybatis通过XML或注解配置和映射信息,将接口以及Java类映射成数据库的记录。
二.1.4Maven框架
Maven项目对象模型,可以通过一小段的描述信息来配置管理一个开发项目的构建的一个项目管理工具。
它包含了对象模型POM、项目生命周期、依赖管理系统、定义生命周期阶段中插件目标逻辑。
可被用于构建和管理各种项目,例如C#,Ruby,Scala和其他语言编写的项目,能够很方便的帮助开发人员管理项目报告、Jar文件,生成站点等。
二.2开发环境
数据库:
MySQL及可视化工具NavicatPremium15
开发软件:
IntelliJIDEA
JAVA环境配置:
JDK1.8.0
Tomcat服务器:
SpringBoot框架自带
操作系统:
Window10
二.2.1IntelliJIDEA
作为目前在JAVA开发行业统一认为最好的开发软件,其在智能代码辅助、自动代码提示、Java2EE、各个版本的git、svn工具支持、Junit、开创性的GUI设计等等方面都有着比较突出优势,另外还支持各种技术框架。
当然最突出的功能还是调试,也就是程序员赖以生存的Debug功能,可以对在开发过程中的Java代码、JavaScript、JQuery、Ajax等技术进行调试。
在此工具实际运行的过程中,数据是通过IntelliJIDEA的服务端经过数据库最终传递到客户端,以实现获取数据的目标。
二.2.2JDK
JDK全称是JavaSEDevelopmentkit,中文翻译为java标准版开发包,是Oracle公司发明的一套用于开发JAVA应用程序的开发包。
其负责提供编译,运行java程序所需要的各种工具和资源,包括java语言编译器、java运行时的环境,亦称JVM,以及常用的java类库等。
作为Java语言的应用程序开发包,是JAVA开发的核心。
第三章系统的需求分析与概要设计
本章主要是研究中小型制造类企业对进销存事务即进货、销售、储存,以及人员信息、分工调配等企业的运营管理事务的处理,主要用户为企业内部员工,主要角色为企业的部门角色。
意在为设计出一个具有人员管理、角色管理、部门管理、商品管理、进货流程管理、储存流程管理、销售流程管理等这类企业需求功能模块的简易版ERP企业资源计划管理系统。
三.1系统的需求
ERP管理系统主要的面向的操作人员为企业的员工,包括:
系统的管理人员、企业各个部门的领导、企业的普通员工。
对于企业的普通员工和各个部门的领导来说此系统相对的操作难度并不是很高,只要能够熟悉基本的计算机操作知识,会利用浏览器上网,就能很方便的操作业务流程。
当然,相对来说对系统的管理人员的计算机专业技术水平要求能力就会高一些,也方便管理以及处理解决系统网站可能会出现的一系列异常。
本ERP系统对企业内部员工定义了多种角色,分别为:
普通员工、各个部门员工、各个部门领导、管理员等。
对于每一个角色都分配了不一样的权限、不一样的操作活动内容以及不一样的系统服务功能。
对于部门普通员工而言,在使用此ERP系统的时候,需要能够得知最新通知,查询到自己的个人信息,修改个人信息,查询商品的目录、查看库存信息,进行自己所在部门需要的一系列业务流程操作等。
对于部门领导而言,在使用此ERP系统的时候,需要能够发布最新通知,得知最新通知,查询自己的个人信息,修改信息,查看商品的目录、查看库存信息,对自己所属的部门进行一系列的业务流程操作以及管理操作等。
对于系统管理员而言,在使用此ERP系统的时候,要求具有最高权限,需要能够对本系统归属下所有的员工、部门、角色、权限等系列信息进行管理,要求能够方便的查询公司业务下所有的流程信息以及操作,能够查看普通员工的各类信息,也能够查看部门领导的各类信息。
相对来说,系统管理员直属与董事部,与最高管理者挂钩。
三.2系统的设计原则
(1)实用性和便捷性原则
由于社会发展速度逐步加快,企业的生产能力也非同以往,制造企业进行取货生产销售流程逐渐紧密及频繁,在这紧凑的业务流程之间,传统的业务处理系统效率已经跟不上时代。
使用一个ERP企业资源计划管理系统,能够有效的解决这个实际的问题,有效的管理企业,提高企业运作效率。
此外,本系统采用的分布式B/S架构模式,在企业内部客户端只需要一个浏览器,有网络支持的地方就可以访问系统并对系统进行操作,非常实用。
(2)适应性和可扩展性原则
一个合格的ERP系统,意味着它必须有良好地适应能力以及优秀的可扩展能力,能够适应多种类型地企业,其中制造类型企业提升最为突出显著。
然而,不仅仅是制造类企业。
现在网络流行的阿里巴巴B2B商业模式、淘宝天猫B2C商业模式,本ERP系统都能适应。
(3)可维护性原则
本系统中,有一个系统监控管理模块,可以实时的观察在线用户、系统运行日志、系统运行监控,方便系统管理员便捷地进行维护。
(4)安全性原则
本系统具有完善地密保措施,在系统用户登陆、注册地过程中,对其密码进行了MD5散列加密措施,此加密方法是不可逆的,提供信息完整性保护,保证密文泄露后的安全问题。
且使用了Shiro安全权限框架,系统对所有管理端链接都进行用户身份权限验证,防止用户直接填写URL进行访问。
从技术层面上对系统信息进行了一定地保护措辞。
(5)完整性原则
此系统采用前端框架Thymeleaf及后端框架SpringBoot+MyBatis框架,采用“分而治之”的思想,实现“高内聚,低耦合”。
且根据功能设计模块,分别有:
个人信息管理模块、系统管理模块、系统监控模块、办公管理模块、商品管理模块、采购管理模块、仓库管理模块、销售管理模块等,各个模块之间分工明确,且相互联系,具有完整性原则。
三.3系统的结构设计
本ERP系统结构所使用的核心框架主要为前端采用Thymeleaf框架、后端采用核心框架SpringBoot+Mybatis。
这三个框架紧密结合,分成了三个部分,分别为表示层(View)、业务逻辑层(BusinessLogicLayer)、数据访问层(Dao)。
业务逻辑层又根据业务流程的需要和有关的系统设计,分为了三个层次:
实体层(Entity)、控制层(Controller)、业务层(Service)。
表示层(View)采用Thymeleaf框架,主要功能是将数据以及图形界面展示在屏幕给用户阅读,进行信息的交互。
表示层(View)的数据采集是通过业务逻辑层的处理后,在HTML页面呈现。
业务逻辑层(BusinessLogicLayer)之实体层(Entity)主要是作为数据管理和业务逻辑处理层面上存在的类别。
在本系统中采用JavaBean充当着实体类模型(model),它的主要功能是用于对必须存储和管理系统内部信息进行建模,同时它也可以有它所代表的实体类对象密切相关的行为信息。
所以,其生存期一般都很长。
业务逻辑层(BusinessLogicLayer)之控制层(Controller)主要负责具体的业务模块流程控制,在本层需要调用到业务层(Service)的接口来控制业务流程处理,本系统中控制配置主要是通过注解的方式进行。
针对具体的业务流程,我们会有不同的控制器,具体的设计过程将流程进行抽象归纳,设计出可以重复利用的子单元流程模块。
业务逻辑层(BusinessLogicLayer)之业务层(Service)主要负责业务模块的逻辑应用设计。
首先设计接口,再设计其实现类,就可以再应用中调用Service接口来进行业务处理。
Service层的业务实现具体要调用已经定义的Dao层接口。
数据访问层(Dao)采用MyBatis框架,主要做数据持久层工作,负责与数据库进行联络的一些任务都封装在这里,Dao层的设计与业务层相似,先是设计Dao层的接口,在通过SpringBoot的配置文件中定义的XML文件定义接口实现类,然后调用接口对数据进行处理。
图3.1系统逻辑结构图
三.4系统的功能模块设计
根据上述对本ERP系统的需求分析,系统的结构设计以及对市场上其他的官方权威ERP企业资源计划管理系统的学习借鉴,设计出以下8个功能模块:
(1)基础个人信息管理模块:
此模块主要是用于管理系统的用户基本信息、权限信息、图像信息等,主要实现对用户相应的信息进行添加、修改、删除、查询操作。
(2)系统管理模块:
此模块主要分为系统用户权限管理、员工管理、角色管理、系统菜单管理、部门管理及仓库管理。
此模块主要是授权给系统管理员使用,系统管理员能通过上述的员工管理、角色管理、菜单管理、部门管理、仓库管理对各自的定位模型进行增删改查等操作。
(3)系统监控模块:
此模块比较特殊,分为在线用户、系统日志、运行监控,适用于系统管理人员在系统发生错误时,对系统进行修正时的工具模块以及平时对系统用户操作的监控模块。
系统维护人员能在系统运行日志查看错误信息进行维护、系统监管人员也能在在线用户以及运行监控对系统用户进行统一监控。
(4)办公管理模块:
此模块就是用户办公不可或缺的模块、是部门领导发布通知的渠道,部门员工也在此可以查看个人通知。
(5)商品管理模块:
此模块是负责企业商品信息的模块,其中有对企业供应商的管理、企业所售商品类别的管理、企业所售商品的管理。
其作为企业的进货渠道,相对企业来说,直接与采购部门相关,所以其相关权限也归属于采购部部长。
(6)采购模块:
采购模块就是对上述商品模块所提供的信息进行采购和采购过程中的运输管理、入库管理。
其中,针对已下商品采购订单添加了审核操作,采购部长能够对已下的商品采购订单进行审核并指派运输人员,运输人员接到运输订单后,查看订单供应商信息,对订单进行采购。
(7)仓库管理:
显而易见,就是对采购来的商品进行审查,对劣质商品或不合格商品进行退货处理,对合格商品进行入库,保存库存操作。
(8)销售管理:
系统的销售模块,系统销售人员通过此模块下单,售出商品。
当售出的商品有特殊因素发生退货时,也有对商品进行再次审查,判断商品能够重新入库。
如果商品合格,既重新入库;若不合格,既销毁商品。
第四章系统的设计与实现
本章主要内容是根据第三章,系统的需求和概要设计,实现此次ERP企业资源计划管理系统。
主要介绍数据库的设计以及控制器模块、业务流程的设计。
四.1数据库的设计与实现
四.1.1数据库管理系统的选用原则
本项目使用的数据库管理系统为目前市面上较为普遍的MySQL作为实现数据库,该数据库具有多种好处。
除了安全稳定、对数据关系维护性强、体积小、运行速度快等特点,其次作为学生,在经济层面略有不足,MySQL数据库开源的属性最受学生的青睐,使用本数据库可以降低ERP设计的总体成本。
当然,作为企业,如果经济条件允许的情况下,可以选换其他同样优秀的数据库,例如:
Oracle、Sybase等,甚至是云数据库。
同时,在本项目中,考虑到在登陆时用户数据的安全性,对用户密码采用了MD5散列加密算法,该加密算法不可逆,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 SpringBoot 企业级 进销存 ERP 系统