Commit ca8bb724175a8f53b44fa35ebb0d9208ec9f0f88

Authored by YunaiV
1 parent 8684468f

版本 1.7.0 发布:增加微信公众号、站内信、邮箱、数据脱敏!

README.md
@@ -41,7 +41,20 @@ @@ -41,7 +41,20 @@
41 | `ruoyi-vue-pro` | Spring Boot 多模块 | **[Gitee](https://gitee.com/zhijiantianya/ruoyi-vue-pro)**     [Github](https://github.com/YunaiV/ruoyi-vue-pro) | 41 | `ruoyi-vue-pro` | Spring Boot 多模块 | **[Gitee](https://gitee.com/zhijiantianya/ruoyi-vue-pro)**     [Github](https://github.com/YunaiV/ruoyi-vue-pro) |
42 | `yudao-cloud` | Spring Cloud 微服务 | **[Gitee](https://gitee.com/zhijiantianya/yudao-cloud)**     [Github](https://github.com/YunaiV/yudao-cloud) | 42 | `yudao-cloud` | Spring Cloud 微服务 | **[Gitee](https://gitee.com/zhijiantianya/yudao-cloud)**     [Github](https://github.com/YunaiV/yudao-cloud) |
43 | `Spring-Boot-Labs` | Spring Boot & Cloud 入门 | **[Gitee](https://gitee.com/zhijiantianya/SpringBoot-Labs)**     [Github](https://github.com/YunaiV/SpringBoot-Labs) | 43 | `Spring-Boot-Labs` | Spring Boot & Cloud 入门 | **[Gitee](https://gitee.com/zhijiantianya/SpringBoot-Labs)**     [Github](https://github.com/YunaiV/SpringBoot-Labs) |
44 - | `ruoyi-vue-pro-mini` | 精简版:移除工作流、支付等模块 | **[Gitee](https://gitee.com/zhijiantianya/ruoyi-vue-pro/tree/mini)** | 44 +
  45 +## 🐰 分支说明
  46 +
  47 +| | JDK 8 完整版 | JDK 8 精简版 | JDK 17 完整版 |
  48 +|-------|-----------------------------------------------------------|--------------------------------------------------------------------|-----------------------------------------------------------------------------|
  49 +| 分支 | [`master`](https://gitee.com/zhijiantianya/ruoyi-vue-pro) | [`mini`](https://gitee.com/zhijiantianya/ruoyi-vue-pro/tree/mini/) | [`boot-dev`](https://gitee.com/zhijiantianya/ruoyi-vue-pro/tree/boot3-dev/) |
  50 +| 说明 | 包括所有功能 | 只保留核心功能 | 适配 Spring Boot 3.X |
  51 +| 系统功能 | √ | √ | √ |
  52 +| 基础设施 | √ | √ | √ |
  53 +| 会员中心 | √ | √ | √ |
  54 +| 工作流程 | √ | x | 适配中 |
  55 +| 数据报表 | √ | x | 适配中 |
  56 +| 商城系统 | √ | x | √ |
  57 +| 微信公众号 | √ | x | √ |
45 58
46 ## 😎 开源协议 59 ## 😎 开源协议
47 60
@@ -55,6 +68,14 @@ @@ -55,6 +68,14 @@
55 68
56 ③ 代码整洁、架构整洁,遵循《阿里巴巴 Java 开发手册》规范,代码注释详细,57000 行 Java 代码,22000 行代码注释。 69 ③ 代码整洁、架构整洁,遵循《阿里巴巴 Java 开发手册》规范,代码注释详细,57000 行 Java 代码,22000 行代码注释。
57 70
  71 +## 💰 项目外包
  72 +
  73 +我们也是接外包滴,如果你有项目想要外包,可以微信联系【**coeus2016**】。
  74 +
  75 +团队包含专业的项目经理、架构师、前端工程师、后端工程师、测试工程师、运维工程师,可以提供全流程的外包服务。
  76 +
  77 +项目可以是商城、SCRM 系统、OA 系统、物流系统、ERP 系统、CMS 系统、HIS 系统、支付系统、IM 聊天、微信公众号、微信小程序等等。
  78 +
58 ## 🐼 内置功能 79 ## 🐼 内置功能
59 80
60 系统内置多种多种业务功能,可以用于快速你的业务系统: 81 系统内置多种多种业务功能,可以用于快速你的业务系统:
@@ -30,7 +30,7 @@ @@ -30,7 +30,7 @@
30 <url>https://github.com/YunaiV/ruoyi-vue-pro</url> 30 <url>https://github.com/YunaiV/ruoyi-vue-pro</url>
31 31
32 <properties> 32 <properties>
33 - <revision>1.6.6-snapshot</revision> 33 + <revision>1.7.0-snapshot</revision>
34 <!-- Maven 相关 --> 34 <!-- Maven 相关 -->
35 <java.version>1.8</java.version> 35 <java.version>1.8</java.version>
36 <maven.compiler.source>${java.version}</maven.compiler.source> 36 <maven.compiler.source>${java.version}</maven.compiler.source>
yudao-dependencies/pom.xml
@@ -14,7 +14,7 @@ @@ -14,7 +14,7 @@
14 <url>https://github.com/YunaiV/ruoyi-vue-pro</url> 14 <url>https://github.com/YunaiV/ruoyi-vue-pro</url>
15 15
16 <properties> 16 <properties>
17 - <revision>1.6.6-snapshot</revision> 17 + <revision>1.7.0-snapshot</revision>
18 <!-- 统一依赖管理 --> 18 <!-- 统一依赖管理 -->
19 <spring.boot.version>2.7.7</spring.boot.version> 19 <spring.boot.version>2.7.7</spring.boot.version>
20 <!-- Web 相关 --> 20 <!-- Web 相关 -->
yudao-framework/yudao-spring-boot-starter-banner/src/main/java/cn/iocoder/yudao/framework/banner/core/BannerApplicationRunner.java
@@ -40,6 +40,10 @@ public class BannerApplicationRunner implements ApplicationRunner { @@ -40,6 +40,10 @@ public class BannerApplicationRunner implements ApplicationRunner {
40 if (isNotPresent("cn.iocoder.yudao.framework.flowable.config.YudaoFlowableConfiguration")) { 40 if (isNotPresent("cn.iocoder.yudao.framework.flowable.config.YudaoFlowableConfiguration")) {
41 System.out.println("[工作流模块 yudao-module-bpm - 已禁用][参考 https://doc.iocoder.cn/bpm/ 开启]"); 41 System.out.println("[工作流模块 yudao-module-bpm - 已禁用][参考 https://doc.iocoder.cn/bpm/ 开启]");
42 } 42 }
  43 + // 微信公众号
  44 + if (isNotPresent("cn.iocoder.yudao.module.mp.framework.mp.config.MpConfiguration")) {
  45 + System.out.println("[微信公众号 yudao-module-mp - 已禁用][参考 https://doc.iocoder.cn/mp/build/ 开启]");
  46 + }
43 }); 47 });
44 } 48 }
45 49
yudao-server/src/main/java/cn/iocoder/yudao/server/controller/DefaultController.java
@@ -21,4 +21,10 @@ public class DefaultController { @@ -21,4 +21,10 @@ public class DefaultController {
21 "[工作流模块 yudao-module-bpm - 已禁用][参考 https://doc.iocoder.cn/bpm/ 开启]"); 21 "[工作流模块 yudao-module-bpm - 已禁用][参考 https://doc.iocoder.cn/bpm/ 开启]");
22 } 22 }
23 23
  24 + @RequestMapping("/admin-api/mp/**")
  25 + public CommonResult<Boolean> mp404() {
  26 + return CommonResult.error(NOT_IMPLEMENTED.getCode(),
  27 + "[微信公众号 yudao-module-mp - 已禁用][参考 https://doc.iocoder.cn/mp/build/ 开启]");
  28 + }
  29 +
24 } 30 }
yudao-ui-admin-vue3/package.json
1 { 1 {
2 "name": "yudao-ui-admin-vue3", 2 "name": "yudao-ui-admin-vue3",
3 - "version": "1.6.6-snapshot.1925", 3 + "version": "1.7.0-snapshot.1925",
4 "description": "基于vue3、vite4、element-plus、typesScript", 4 "description": "基于vue3、vite4、element-plus、typesScript",
5 "author": "xingyu", 5 "author": "xingyu",
6 "private": false, 6 "private": false,
yudao-ui-admin/package.json
1 { 1 {
2 "name": "yudao-ui-admin", 2 "name": "yudao-ui-admin",
3 - "version": "1.6.6-snapshot", 3 + "version": "1.7.0-snapshot",
4 "description": "芋道管理系统", 4 "description": "芋道管理系统",
5 "author": "芋道", 5 "author": "芋道",
6 "license": "MIT", 6 "license": "MIT",
yudao-ui-admin/src/components/DocAlert/index.vue
1 <template> 1 <template>
2 - <el-alert v-if="enable()" :title="'【' + title + '】文档地址:' + url" type="success" show-icon /> 2 + <el-alert v-if="enable()" type="success" show-icon>
  3 + <template slot="title">
  4 + <div @click="goToUrl">{{ '【' + title + '】文档地址:' + url }}</div>
  5 + </template>
  6 + </el-alert>
3 </template> 7 </template>
4 8
5 <script> 9 <script>
@@ -14,6 +18,9 @@ export default { @@ -14,6 +18,9 @@ export default {
14 methods: { 18 methods: {
15 enable: function () { 19 enable: function () {
16 return getDocEnable(); 20 return getDocEnable();
  21 + },
  22 + goToUrl: function() {
  23 + window.open(this.url);
17 } 24 }
18 } 25 }
19 }; 26 };
yudao-ui-admin/src/views/mp/account/index.vue
1 <template> 1 <template>
2 <div class="app-container"> 2 <div class="app-container">
  3 + <doc-alert title="公众号接入" url="https://doc.iocoder.cn/mp/account/" />
3 4
4 <!-- 搜索工作栏 --> 5 <!-- 搜索工作栏 -->
5 <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> 6 <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
yudao-ui-admin/src/views/mp/autoReply/index.vue
@@ -26,6 +26,8 @@ SOFTWARE. @@ -26,6 +26,8 @@ SOFTWARE.
26 --> 26 -->
27 <template> 27 <template>
28 <div class="app-container"> 28 <div class="app-container">
  29 + <doc-alert title="自动回复" url="https://doc.iocoder.cn/mp/auto-reply/" />
  30 +
29 <!-- 搜索工作栏 --> 31 <!-- 搜索工作栏 -->
30 <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> 32 <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
31 <el-form-item label="公众号" prop="accountId"> 33 <el-form-item label="公众号" prop="accountId">
yudao-ui-admin/src/views/mp/draft/index.vue
@@ -27,6 +27,8 @@ SOFTWARE. @@ -27,6 +27,8 @@ SOFTWARE.
27 --> 27 -->
28 <template> 28 <template>
29 <div class="app-container"> 29 <div class="app-container">
  30 + <doc-alert title="公众号图文" url="https://doc.iocoder.cn/mp/article/" />
  31 +
30 <!-- 搜索工作栏 --> 32 <!-- 搜索工作栏 -->
31 <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> 33 <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
32 <el-form-item label="公众号" prop="accountId"> 34 <el-form-item label="公众号" prop="accountId">
yudao-ui-admin/src/views/mp/freePublish/index.vue
@@ -25,6 +25,8 @@ SOFTWARE. @@ -25,6 +25,8 @@ SOFTWARE.
25 --> 25 -->
26 <template> 26 <template>
27 <div class="app-container"> 27 <div class="app-container">
  28 + <doc-alert title="公众号图文" url="https://doc.iocoder.cn/mp/article/" />
  29 +
28 <!-- 搜索工作栏 --> 30 <!-- 搜索工作栏 -->
29 <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> 31 <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
30 <el-form-item label="公众号" prop="accountId"> 32 <el-form-item label="公众号" prop="accountId">
yudao-ui-admin/src/views/mp/material/index.vue
@@ -27,6 +27,8 @@ SOFTWARE. @@ -27,6 +27,8 @@ SOFTWARE.
27 --> 27 -->
28 <template> 28 <template>
29 <div class="app-container"> 29 <div class="app-container">
  30 + <doc-alert title="公众号素材" url="https://doc.iocoder.cn/mp/material/" />
  31 +
30 <!-- 搜索工作栏 --> 32 <!-- 搜索工作栏 -->
31 <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> 33 <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
32 <el-form-item label="公众号" prop="accountId"> 34 <el-form-item label="公众号" prop="accountId">
yudao-ui-admin/src/views/mp/menu/index.vue
@@ -26,6 +26,8 @@ SOFTWARE. @@ -26,6 +26,8 @@ SOFTWARE.
26 --> 26 -->
27 <template> 27 <template>
28 <div class="app-container"> 28 <div class="app-container">
  29 + <doc-alert title="公众号菜单" url="https://doc.iocoder.cn/mp/menu/" />
  30 +
29 <!-- 搜索工作栏 --> 31 <!-- 搜索工作栏 -->
30 <el-form ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> 32 <el-form ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
31 <el-form-item label="公众号" prop="accountId"> 33 <el-form-item label="公众号" prop="accountId">
yudao-ui-admin/src/views/mp/message/index.vue
1 <template> 1 <template>
2 <div class="app-container"> 2 <div class="app-container">
  3 + <doc-alert title="公众号消息" url="https://doc.iocoder.cn/mp/message/" />
3 4
4 <!-- 搜索工作栏 --> 5 <!-- 搜索工作栏 -->
5 <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> 6 <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
yudao-ui-admin/src/views/mp/statistics/index.vue
1 <template> 1 <template>
2 <div class="app-container"> 2 <div class="app-container">
  3 + <doc-alert title="公众号统计" url="https://doc.iocoder.cn/mp/statistics/" />
  4 +
3 <!-- 搜索工作栏 --> 5 <!-- 搜索工作栏 -->
4 <el-form ref="queryForm" size="small" :inline="true" label-width="68px"> 6 <el-form ref="queryForm" size="small" :inline="true" label-width="68px">
5 <el-form-item label="公众号" prop="accountId"> 7 <el-form-item label="公众号" prop="accountId">
yudao-ui-admin/src/views/mp/tag/index.vue
1 <template> 1 <template>
2 <div class="app-container"> 2 <div class="app-container">
  3 + <doc-alert title="公众号标签" url="https://doc.iocoder.cn/mp/tag/" />
  4 +
3 <!-- 搜索工作栏 --> 5 <!-- 搜索工作栏 -->
4 <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> 6 <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
5 <el-form-item label="公众号" prop="accountId"> 7 <el-form-item label="公众号" prop="accountId">
yudao-ui-admin/src/views/mp/user/index.vue
1 <template> 1 <template>
2 <div class="app-container"> 2 <div class="app-container">
  3 + <doc-alert title="公众号粉丝" url="https://doc.iocoder.cn/mp/user/" />
3 4
4 <!-- 搜索工作栏 --> 5 <!-- 搜索工作栏 -->
5 <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> 6 <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">