README.md 6.5 KB
Newer Older
夏天飘过的风's avatar
夏天飘过的风 已提交
1
# 领课教育-领课网络在线教育系统
夏天飘过的风's avatar
夏天飘过的风 已提交
2 3

### 项目介绍
夏天飘过的风's avatar
修改  
夏天飘过的风 已提交
4
领课教育是基于领课团队多年的在线教育开发和运营经验的产品,打造一个全行业都适用的在线教育系统。
夏天飘过的风's avatar
夏天飘过的风 已提交
5

夏天飘过的风's avatar
夏天飘过的风 已提交
6 7
##### 如果对你有用,请给个star!

夏天飘过的风's avatar
夏天飘过的风 已提交
8 9 10 11
### 相关链接
##### 前端工程(roncoo-education-web):[码云地址](https://gitee.com/roncoocom/roncoo-education-web) | [Github地址](https://github.com/roncoo/roncoo-education-web)
##### 配置工程(roncoo-education-config):[码云地址](https://gitee.com/roncoocom/roncoo-education-config) | [Github地址](https://github.com/roncoo/roncoo-education-config)
##### 使用文档:[码云地址](https://gitee.com/roncoocom/roncoo-education/wikis/Home) | [Github地址](https://github.com/roncoo/roncoo-education/wiki)
夏天飘过的风's avatar
修改  
夏天飘过的风 已提交
12 13
#### 前端演示地址:[领课教育](http://edu.os.roncoo.com/)
#### 后台演示地址:[管理后台](http://roncoo.vicp.net/boss/login)
夏天飘过的风's avatar
修改  
夏天飘过的风 已提交
14

夏天飘过的风's avatar
夏天飘过的风 已提交
15
### 功能介绍
夏天飘过的风's avatar
更新  
夏天飘过的风 已提交
16 17 18 19 20 21 22 23
* 权限管理功能,多角色多用户自定义配置
* 系统配置功能,自定义进行站点配置及第三方参数配置
* 讲师管理功能,讲师申请入驻,后台具有审核功能
* 课程管理功能,讲师管理自有课程,后台具有审核功能
* 用户登录功能,同一时间只允许同一个账号在同一个地方登录,防止账号共享
* 广告管理功能,后台自定义广告设置,增加营销效果
* 支付功能,系统无缝集成了龙果支付

夏天飘过的风's avatar
夏天飘过的风 已提交
24 25 26 27 28
### TODO
* 动态更新配置(spring cloud bus + kafka + spring cloud config)
* 日志收集统计(kafka + Elasticsearch + Logstash + Kibana)
* 链路追踪监控(spring cloud sleuth + kafka + zipkin)

夏天飘过的风's avatar
更新  
夏天飘过的风 已提交
29
### 技术选型
夏天飘过的风's avatar
更新  
夏天飘过的风 已提交
30 31 32 33 34 35 36
| 核心技术框架                           | 注册中心                                  | 服务网关                                   | 负载均衡                                     |
| ----------------- | ----------------- | ----------------- | ------------------ | 
| Spring Cloud      | Eureka            | Zuul              | Feign + Ribbon     | 
| 断路器                                      | 持久层                                       | 连接池                                      | 缓存                                            | 
| Hystrix           | Mybatis           | Druid             | Redis              | 
| 模板引擎                                  | 日志框架                                   | 常用工具                                   | 版本维护                                     | 
| Freemarker        | Logback           | Hutool            | Spring IO Platform | 
夏天飘过的风's avatar
夏天飘过的风 已提交
37

夏天飘过的风's avatar
夏天飘过的风 已提交
38
### 流程图说明
夏天飘过的风's avatar
夏天飘过的风 已提交
39 40 41
* 系统架构图
![系统架构图](/doc/images/01.jpg)

夏天飘过的风's avatar
夏天飘过的风 已提交
42
* 课程播放流程
夏天飘过的风's avatar
夏天飘过的风 已提交
43
![课程播放流程](/doc/images/course.png)
夏天飘过的风's avatar
夏天飘过的风 已提交
44 45

* 播放鉴权流程
夏天飘过的风's avatar
夏天飘过的风 已提交
46
![播放鉴权流程](/doc/images/course_callback.png)
夏天飘过的风's avatar
夏天飘过的风 已提交
47 48

* 课程下单流程
夏天飘过的风's avatar
夏天飘过的风 已提交
49
![课程下单流程](/doc/images/pay.png)
夏天飘过的风's avatar
夏天飘过的风 已提交
50 51

* 下单回调流程
夏天飘过的风's avatar
夏天飘过的风 已提交
52 53
![下单回调流程](/doc/images/pay_callback.png)

夏天飘过的风's avatar
夏天飘过的风 已提交
54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
### 项目结构

```
├─roncoo-education -----------------------------父项目,公共依赖
│  │
│  ├─roncoo-education-course -------------------课程模块,包括订单模块
│  │  │
│  │  ├─roncoo-education-course-common ---------共用工程
│  │  │
│  │  ├─roncoo-education-course-feign ----------接口工程,供其他工程模块使用
│  │  │
│  │  └─roncoo-education-course-service --------服务工程,其他接口服务
│  │
│  ├─roncoo-education-crontab-plan -------------定时任务,处理过期订单和统计等
│  │
│  ├─roncoo-education-gateway-api --------------网关工程
│  │
夏天飘过的风's avatar
说明  
夏天飘过的风 已提交
71 72
│  ├─roncoo-education-server-admin -------------监控中心
│  │
夏天飘过的风's avatar
夏天飘过的风 已提交
73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
│  ├─roncoo-education-server-config ------------配置中心
│  │
│  ├─roncoo-education-server-eureka ------------注册中心
│  │
│  ├─roncoo-education-system -------------------系统基础工程
│  │  │
│  │  ├─roncoo-education-system-common ---------共用工程
│  │  │
│  │  ├─roncoo-education-system-feign ----------接口工程,供其他工程模块使用
│  │  │
│  │  └─roncoo-education-system-service --------服务工程,其他接口服务
│  │
│  ├─roncoo-education-user ---------------------用户工程
│  │  │
│  │  ├─roncoo-education-user-common -----------共用工程
│  │  │
│  │  ├─roncoo-education-user-feign ------------接口工程,供其他工程模块使用
│  │  │
│  │  └─roncoo-education-user-service ----------服务工程,其他接口服务
│  │
│  ├─roncoo-education-web-boss -----------------管理后台工程
│  │
│  ├─doc
│  │  │
│  │  ├─images --------------------------------项目演示截图
│  │  │
│  │  ├─lombok.jar ----------------------------Eclipse使用,放到Eclipse的根目录即可
│  │  │
夏天飘过的风's avatar
说明  
夏天飘过的风 已提交
101
└──└──└─*.sql----------------------------------项目SQL脚本:带有demo数据
夏天飘过的风's avatar
夏天飘过的风 已提交
102 103
```

夏天飘过的风's avatar
夏天飘过的风 已提交
104 105 106 107 108 109 110 111 112 113 114 115 116
### 加速maven构建
在maven的settings.xml 文件里配置mirrors的子节点,添加如下mirror
```
<mirror>
    <id>nexus-aliyun</id>
    <mirrorOf>*</mirrorOf>
    <name>Nexus aliyun</name>
    <url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
```

### Lombok使用
Lombok是一个可以通过简单的注解形式来帮助我们简化消除一些必须有但显得很臃肿的Java代码的工具,通过使用对应的注解,可以在编译源码的时候生成对应的方法。
夏天飘过的风's avatar
更新  
夏天飘过的风 已提交
117
[官方地址:https://projectlombok.org/](https://projectlombok.org/)
夏天飘过的风's avatar
夏天飘过的风 已提交
118 119 120 121 122 123 124 125 126 127

#### 1. Eclipse使用方法
把lombok.jar放入Eclipse的根目录,在eclipse.ini配置文件的最后加上
```
-javaagent:lombok.jar 
```

#### 2. IntelliJ IDEA使用方法
安装插件,如图所示

夏天飘过的风's avatar
夏天飘过的风 已提交
128
![](/doc/images/lombok1.png)
夏天飘过的风's avatar
夏天飘过的风 已提交
129

夏天飘过的风's avatar
夏天飘过的风 已提交
130
### 官方QQ群(加群免费获取sql脚本)
夏天飘过的风's avatar
更新  
夏天飘过的风 已提交
131
<a target="_blank" href="//shang.qq.com/wpa/qunwpa?idkey=7d1b7f1a78715320d09ed841c66d6bf0fa7b9105964cc327e9483e459b46abd4"><img border="0" src="https://pub.idqqimg.com/wpa/images/group.png" alt="在线教育系统-领课" title="在线教育系统-领课"> 826617734</a>
夏天飘过的风's avatar
夏天飘过的风 已提交
132

夏天飘过的风's avatar
夏天飘过的风 已提交
133
## 项目推荐
夏天飘过的风's avatar
更新  
夏天飘过的风 已提交
134 135
##### roncoo-recharge:[码云地址](https://gitee.com/roncoocom/roncoo-recharge) | [Github地址](https://github.com/roncoo/roncoo-recharge)
##### roncoo-jui-springboot:[码云地址](https://gitee.com/roncoocom/roncoo-jui-springboot) | [Github地址](https://github.com/roncoo/roncoo-jui-springboot)