From 4f33da2a3f47a594ead52cc0467249977a92c772 Mon Sep 17 00:00:00 2001 From: RuoYi Date: Tue, 15 Dec 2020 10:04:09 +0800 Subject: [PATCH 01/24] =?UTF-8?q?=E7=99=BB=E5=BD=95=E5=90=8Epush=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0catch=E9=98=B2=E6=AD=A2=E5=87=BA=E7=8E=B0=E6=A3=80?= =?UTF-8?q?=E6=9F=A5=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-ui/src/permission.js | 14 ++------------ ruoyi-ui/src/views/login.vue | 15 ++++++--------- 2 files changed, 8 insertions(+), 21 deletions(-) diff --git a/ruoyi-ui/src/permission.js b/ruoyi-ui/src/permission.js index 17e5b3d54..2c0b1cfb8 100644 --- a/ruoyi-ui/src/permission.js +++ b/ruoyi-ui/src/permission.js @@ -23,28 +23,18 @@ router.beforeEach((to, from, next) => { // 拉取user_info const roles = res.roles store.dispatch('GenerateRoutes', { roles }).then(accessRoutes => { - // 测试 默认静态页面 - // store.dispatch('permission/generateRoutes', { roles }).then(accessRoutes => { // 根据roles权限生成可访问的路由表 router.addRoutes(accessRoutes) // 动态添加可访问路由表 next({ ...to, replace: true }) // hack方法 确保addRoutes已完成 }) - }) - .catch(err => { - store.dispatch('FedLogOut').then(() => { + }).catch(err => { + store.dispatch('LogOut').then(() => { Message.error(err) next({ path: '/' }) }) }) } else { next() - // 没有动态改变权限的需求可直接next() 删除下方权限判断 ↓ - // if (hasPermission(store.getters.roles, to.meta.roles)) { - // next() - // } else { - // next({ path: '/401', replace: true, query: { noGoBack: true }}) - // } - // 可删 ↑ } } } else { diff --git a/ruoyi-ui/src/views/login.vue b/ruoyi-ui/src/views/login.vue index 574ca0b8f..6b2139ea3 100644 --- a/ruoyi-ui/src/views/login.vue +++ b/ruoyi-ui/src/views/login.vue @@ -126,15 +126,12 @@ export default { Cookies.remove("password"); Cookies.remove('rememberMe'); } - this.$store - .dispatch("Login", this.loginForm) - .then(() => { - this.$router.push({ path: this.redirect || "/" }); - }) - .catch(() => { - this.loading = false; - this.getCode(); - }); + this.$store.dispatch("Login", this.loginForm).then(() => { + this.$router.push({ path: this.redirect || "/" }).catch(()=>{}); + }).catch(() => { + this.loading = false; + this.getCode(); + }); } }); } From 67198aede9c4a249eb5bf17c3b00ef9b6868aad9 Mon Sep 17 00:00:00 2001 From: RuoYi Date: Tue, 15 Dec 2020 10:06:12 +0800 Subject: [PATCH 02/24] README --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 1bb329dbd..a7b485fd3 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,7 @@ ## 平台简介 +若依是一套全部开源的快速开发平台,毫无保留给个人及企业免费使用。 + * 前端采用Vue、Element UI。 * 后端采用Spring Boot、Spring Security、Redis & Jwt。 * 权限认证使用Jwt,支持多终端认证系统。 From 6cf2a8edeb0bb8219572d87488f25f993e6415d9 Mon Sep 17 00:00:00 2001 From: RuoYi Date: Wed, 16 Dec 2020 10:05:53 +0800 Subject: [PATCH 03/24] =?UTF-8?q?=E5=8D=87=E7=BA=A7SpringBoot=E5=88=B0?= =?UTF-8?q?=E6=9C=80=E6=96=B0=E7=89=88=E6=9C=AC2.2.12=20=E6=8F=90=E5=8D=87?= =?UTF-8?q?=E5=90=AF=E5=8A=A8=E9=80=9F=E5=BA=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- .../main/java/com/ruoyi/common/filter/RepeatableFilter.java | 4 ++-- .../com/ruoyi/common/filter/XssHttpServletRequestWrapper.java | 3 +-- .../src/main/java/com/ruoyi/framework/config/RedisConfig.java | 4 +++- 4 files changed, 7 insertions(+), 6 deletions(-) diff --git a/pom.xml b/pom.xml index e5954a9a5..d15458b17 100644 --- a/pom.xml +++ b/pom.xml @@ -41,7 +41,7 @@ org.springframework.boot spring-boot-dependencies - 2.1.18.RELEASE + 2.2.12.RELEASE pom import diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/filter/RepeatableFilter.java b/ruoyi-common/src/main/java/com/ruoyi/common/filter/RepeatableFilter.java index 15a6804f2..3698c75c3 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/filter/RepeatableFilter.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/filter/RepeatableFilter.java @@ -29,8 +29,8 @@ public class RepeatableFilter implements Filter throws IOException, ServletException { ServletRequest requestWrapper = null; - if (request instanceof HttpServletRequest && StringUtils.equalsAnyIgnoreCase(request.getContentType(), - MediaType.APPLICATION_JSON_VALUE, MediaType.APPLICATION_JSON_UTF8_VALUE)) + if (request instanceof HttpServletRequest + && StringUtils.equalsAnyIgnoreCase(request.getContentType(), MediaType.APPLICATION_JSON_VALUE)) { requestWrapper = new RepeatedlyRequestWrapper((HttpServletRequest) request, response); } diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/filter/XssHttpServletRequestWrapper.java b/ruoyi-common/src/main/java/com/ruoyi/common/filter/XssHttpServletRequestWrapper.java index 12ef5517c..6794394c9 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/filter/XssHttpServletRequestWrapper.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/filter/XssHttpServletRequestWrapper.java @@ -99,7 +99,6 @@ public class XssHttpServletRequestWrapper extends HttpServletRequestWrapper public boolean isJsonRequest() { String header = super.getHeader(HttpHeaders.CONTENT_TYPE); - return MediaType.APPLICATION_JSON_VALUE.equalsIgnoreCase(header) - || MediaType.APPLICATION_JSON_UTF8_VALUE.equalsIgnoreCase(header); + return MediaType.APPLICATION_JSON_VALUE.equalsIgnoreCase(header); } } \ No newline at end of file diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/RedisConfig.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/RedisConfig.java index 6322686fb..5eeabda2a 100644 --- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/RedisConfig.java +++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/RedisConfig.java @@ -8,8 +8,10 @@ import org.springframework.data.redis.connection.RedisConnectionFactory; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.serializer.StringRedisSerializer; import com.fasterxml.jackson.annotation.JsonAutoDetect; +import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.PropertyAccessor; import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.jsontype.impl.LaissezFaireSubTypeValidator; /** * redis配置 @@ -31,7 +33,7 @@ public class RedisConfig extends CachingConfigurerSupport ObjectMapper mapper = new ObjectMapper(); mapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); - mapper.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL); + mapper.activateDefaultTyping(LaissezFaireSubTypeValidator.instance, ObjectMapper.DefaultTyping.NON_FINAL, JsonTypeInfo.As.PROPERTY); serializer.setObjectMapper(mapper); template.setValueSerializer(serializer); From e23ad2018649106a115c1794947e5ccd8cb804d7 Mon Sep 17 00:00:00 2001 From: RuoYi Date: Wed, 16 Dec 2020 10:20:02 +0800 Subject: [PATCH 04/24] README --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index a7b485fd3..5bd064209 100644 --- a/README.md +++ b/README.md @@ -7,9 +7,9 @@ * 权限认证使用Jwt,支持多终端认证系统。 * 支持加载动态权限菜单,多方式轻松权限控制。 * 高效率开发,使用代码生成器可以一键生成前后端代码。 -* 提供了一个Oracle版本[RuoYi-Vue-Oracle](https://github.com/yangzongzhuan/RuoYi-Vue-Oracle),保持同步更新。 +* 提供了单应用版本[RuoYi-Vue-fast](https://github.com/yangzongzhuan/RuoYi-Vue-fast),Oracle版本[RuoYi-Vue-Oracle](https://github.com/yangzongzhuan/RuoYi-Vue-Oracle),保持同步更新。 * 不分离版本,请移步[RuoYi](https://gitee.com/y_project/RuoYi),微服务版本,请移步[RuoYi-Cloud](https://gitee.com/y_project/RuoYi-Cloud) -* 感谢[Vue-Element-Admin](https://github.com/PanJiaChen/vue-element-admin),[eladmin-web](https://gitee.com/elunez/eladmin-web?_from=gitee_search)。 +* 特别鸣谢:[element](https://github.com/ElemeFE/element),[vue-element-admin](https://github.com/PanJiaChen/vue-element-admin),[eladmin-web](https://github.com/elunez/eladmin-web)。 * 阿里云折扣场:[点我进入](http://aly.ruoyi.vip),腾讯云秒杀场:[点我进入](http://txy.ruoyi.vip)   * 阿里云优惠券:[点我领取](https://www.aliyun.com/minisite/goods?userCode=brki8iof&share_source=copy_link),腾讯云优惠券:[点我领取](https://cloud.tencent.com/redirect.php?redirect=1025&cps_key=198c8df2ed259157187173bc7f4f32fd&from=console)   From ecc7a8be46475f5d7235073214857e241d4741dd Mon Sep 17 00:00:00 2001 From: RuoYi Date: Wed, 16 Dec 2020 20:57:48 +0800 Subject: [PATCH 05/24] =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=A4=9A=E7=BA=A7?= =?UTF-8?q?=E8=8F=9C=E5=8D=95=E4=B9=8B=E9=97=B4=E5=88=87=E6=8D=A2=E6=97=A0?= =?UTF-8?q?=E6=B3=95=E7=BC=93=E5=AD=98=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-ui/src/layout/components/AppMain.vue | 121 ++---------------- .../src/layout/components/Sidebar/index.vue | 4 +- .../src/layout/components/TagsView/index.vue | 5 - ruoyi-ui/src/store/getters.js | 3 +- ruoyi-ui/src/store/modules/permission.js | 51 ++++++-- .../views/system/user/profile/resetPwd.vue | 2 - .../views/system/user/profile/userInfo.vue | 2 - ruoyi-ui/src/views/tool/gen/editTable.vue | 2 - 8 files changed, 55 insertions(+), 135 deletions(-) diff --git a/ruoyi-ui/src/layout/components/AppMain.vue b/ruoyi-ui/src/layout/components/AppMain.vue index 8da571465..423437b72 100644 --- a/ruoyi-ui/src/layout/components/AppMain.vue +++ b/ruoyi-ui/src/layout/components/AppMain.vue @@ -1,8 +1,7 @@ -