乐趣区

关于spring:悟空CRM110介绍

悟空 CRM-11.0

悟空 CRM 介绍

演示地址:http://www.5kcrm.com

下载地址:https://gitee.com/wukongcrm


注:悟空 CRM 采纳全新的前后端拆散模式,本仓库代码中已集成前端 vue 打包后文件,可免去打包操作。如需调整前端代码,请独自下载前端代码

悟空 CRM 目录构造

wk_crm
├── admin         -- 系统管理模块和用户治理模块
├── authorization -- 鉴权模块,目前仅用于登录鉴权,前期可能有更改
├── bi            -- 商业智能模块
├── core          -- 通用的代码和工具类
├── crm           -- 客户治理模块
├── gateway       -- 网关模块
├── job           -- 定时工作模块
├── oa            -- OA 模块
└── work          -- 项目管理模块

悟空 CRM 应用的次要技术栈

名称 版本 阐明
spring-cloud-alibaba 2.2.1.RELEASE(Hoxton.SR3) 外围框架
swagger 2.9.2 接口文档
mybits-plus 3.3.0 ORM 框架
sentinel 2.2.1.RELEASE 断路器以及限流
nacos 2.2.1.RELEASE 注册核心以及分布式配置管理
seata 1.2.0 分布式事务
elasticsearch 2.2.5.RELEASE(6.8.6) 搜索引擎中间件
jetcache 2.6.0 分布式缓存框架
xxl-job 2.1.2 分布式定时工作框架
gateway 2.2.2.RELEASE 微服务网关
feign 2.2.2.RELEASE 服务调用

悟空 CRM 我的项目架构图

应用阐明

一、前置环境

  • Jdk1.8
  • Maven3.5.0+
  • Mysql5.7.20(数据库装置注意事项)
  • Redis(版本不限)
  • Elasticsearch 6.8.6(环境配置注意事项)
  • Seata(1.2.0)(配置阐明)
  • Sentinel(1.7.2)(我的项目中 sentinel 应用 8079 端口)
  • Nacos(1.2.1)

二、装置阐明

1. 导入初始化 sql, 目前我的项目下 gateway 模块应用的独立数据库,其余模块应用同一数据库
- 初始化 gateway 模块数据库:新建数据库 `nacos` 在 `nacos` 数据库中运行 ` DB/config_info_route.sql`
- 初始化其余模块数据库:新建数据库 `wk_crm_single` 在 `wk_crm_single` 数据库中运行 `DB/wk_crm_single.sql`
- 初始化定时工作模块数据库:新建数据库 `xxl_job` 在 `xxl_job` 数据库中运行 `DB/xxl_job.sql`
- 初始化 seata 数据库:新建数据库 `seata` 在 `seata` 数据库中运行 `DB/seata.sql`
2. 在我的项目根目录执行mvn install
3. 在各个模块下 resource 目录配置数据库帐号信息以及 redis 帐号信息(默认应用的是 application-dev.yml 配置文件, 打包后启动脚本默认应用的 application-test.yml 配置文件)
4. 在 crm\src\main\resources\application-dev.yml 外面批改 elasticsearch 配置
spring.elasticsearch.rest.uris = elasticsearch 地址 例:127.0.0.1:9200
spring.elasticsearch.rest.username = elasticsearch 用户名 例:elastic 无明码可留空
spring.elasticsearch.rest.password = elasticsearch 明码 例: password 无明码可留空
5.(可选)批改零碎中文件上传地址,默认为本地配置,本地上传还需配置公网地址,指向服务器网关
crm.upload.config:1                文件上传配置 1: 本地 2: 阿里云 OSS 
crm.upload.oss                     oss 上传文件所需配置内容 
crm.upload.oss.bucketName        须要配置两个 bucket,0 为登录才可拜访文件上传地址,1 为齐全公开文件上传地址
crm.upload.local                   本地上传文件所需配置内容 
crm.upload.local.uploadPath      须要配置两个地址 0 为登录才可拜访文件上传地址,1 为齐全公开文件上传地址
6.(可选)批改 jetcache 缓存配置详见 官网文档
7.(可选)我的项目日志文件在 core\src\main\resources\logback-spring.xml 批改
8. 我的项目打包部署
·在我的项目根目录下执行 mvn clean -Dmaven.test.skip=true package
·而后把对应模块下 target 文件夹下
·${name}-${version}-SNAPSHOT.zip/tar.gz 上传到服务器, 例:admin-0.0.1-SNAPSHOT.zip 并将压缩文件解压,查看对应配置文件。
9. 我的项目启动 <br/>
先启动 nacos,seata,sentinel, elasticsearch,mysql,redis 等根底服务
在第八步解压的文件模块下通过执行 `sh 72crm.sh start`(windows 下间接运行 72crm.bat)启动各个模块服务。其中我的项目根底模块:gateway,authorization,admin 必须启动,其余模块可按需启动。启动实现后,在浏览器中拜访:http://localhost:8443/ 即可登录零碎

三、其余阐明

1. 代码生成器及接口文档 <br/>
代码生成器地址:core\src\test\com\kakarote\generator\Generator.java
接口文档地址 `http://localhost:8443/swagger-ui.html` 或者拜访对应服务下 http:// 服务地址: 端口 /swagger-ui.html
2. 模块依赖关系 <br/>
- 除网关外,其余我的项目均依赖于 admin 模块,用于获取以后登录人的信息
- oa 模块的工作依赖于 work 模块,其余一些关联业务性能依赖于 crm 模块
- 商业智能依赖 crm,oa 模块

三、悟空 CRM 功能模块预览











退出移动版