From de3adb2230d6531ffaed03c8013cd22dfd385163 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 19 Oct 2023 14:14:23 +0800 Subject: [PATCH 01/13] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20powerjob=20?= =?UTF-8?q?=E4=BD=BF=E7=94=A8=20nginx=20=E9=83=A8=E7=BD=B2=E6=97=A0?= =?UTF-8?q?=E6=B3=95=E8=AE=BF=E9=97=AE=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- script/docker/nginx/conf/nginx.conf | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/script/docker/nginx/conf/nginx.conf b/script/docker/nginx/conf/nginx.conf index 38c422a92..9776f33f9 100644 --- a/script/docker/nginx/conf/nginx.conf +++ b/script/docker/nginx/conf/nginx.conf @@ -68,7 +68,7 @@ http { } location / { - root /usr/share/nginx/html; + root /usr/share/nginx/html; # docker映射路径 不允许更改 try_files $uri $uri/ /index.html; index index.html index.htm; } @@ -103,6 +103,11 @@ http { proxy_pass http://powerjob-server/; } + # 解决 powerjob 代理之后静态文件无法访问的问题 请勿修改乱动 + location .*\.(js|css|jpg|png|svg|woff|ttf|ico)?$ { + proxy_pass http://powerjob-server; + } + error_page 500 502 503 504 /50x.html; location = /50x.html { root html; From 0e6464d3449fa6c239f8a26991ab2259d99b4aae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 20 Oct 2023 10:10:11 +0800 Subject: [PATCH 02/13] =?UTF-8?q?update=20springboot=203.1.4=20=3D>=203.1.?= =?UTF-8?q?5=20update=20springboot=202.7.14=20=3D>=202.7.17(=E6=89=A9?= =?UTF-8?q?=E5=B1=95=E6=9C=8D=E5=8A=A1)=20update=20poi=205.2.3=20=3D>=205.?= =?UTF-8?q?2.4=20update=20satoken=201.36.0=20=3D>=201.37.0=20update=20spri?= =?UTF-8?q?ngboot-admin=203.1.6=20=3D>=203.1.7=20update=20redisson=203.23.?= =?UTF-8?q?5=20=3D>=203.24.1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 20 +++++--------------- ruoyi-extend/ruoyi-powerjob-server/pom.xml | 4 ++-- 2 files changed, 7 insertions(+), 17 deletions(-) diff --git a/pom.xml b/pom.xml index 60254e867..8aac718d4 100644 --- a/pom.xml +++ b/pom.xml @@ -14,23 +14,23 @@ 5.1.0 - 3.1.4 + 3.1.5 UTF-8 UTF-8 17 3.0.2 2.2.0 0.15.0 - 5.2.3 + 5.2.4 3.3.2 2.3 - 1.36.0 + 1.37.0 3.5.3.2 3.9.1 5.8.22 4.10.0 - 3.1.6 - 3.23.5 + 3.1.7 + 3.24.1 2.2.5 4.1.3 2.14.2 @@ -43,9 +43,6 @@ 2.7.0 - - 1.33 - 1.12.540 @@ -290,13 +287,6 @@ ${alibaba-ttl.version} - - - org.yaml - snakeyaml - ${snakeyaml.version} - - org.bouncycastle diff --git a/ruoyi-extend/ruoyi-powerjob-server/pom.xml b/ruoyi-extend/ruoyi-powerjob-server/pom.xml index 60b4d27f2..72b23789a 100644 --- a/ruoyi-extend/ruoyi-powerjob-server/pom.xml +++ b/ruoyi-extend/ruoyi-powerjob-server/pom.xml @@ -10,8 +10,8 @@ ruoyi-powerjob-server - 2.7.14 - 2.7.10 + 2.7.17 + 2.7.11 From bf34781f045a9913f14a2548e10d1d7c349ed197 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 20 Oct 2023 12:10:53 +0800 Subject: [PATCH 03/13] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20commons-io=20?= =?UTF-8?q?=E4=BE=9D=E8=B5=96=E5=86=B2=E7=AA=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/pom.xml b/pom.xml index 8aac718d4..fd88920dd 100644 --- a/pom.xml +++ b/pom.xml @@ -47,6 +47,8 @@ 1.12.540 2.2.0 + + 2.13.0 3.2.2 @@ -164,6 +166,12 @@ + + commons-io + commons-io + ${commons-io.version} + + org.apache.velocity From f708492681b9ae25d6029c8c6c0cd9bc5d20b997 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Fri, 20 Oct 2023 12:25:51 +0800 Subject: [PATCH 04/13] =?UTF-8?q?update=20=E9=99=90=E5=88=B6=E6=A1=86?= =?UTF-8?q?=E6=9E=B6=E4=B8=AD=E7=9A=84fastjson=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/pom.xml b/pom.xml index fd88920dd..77af086a5 100644 --- a/pom.xml +++ b/pom.xml @@ -49,6 +49,8 @@ 2.2.0 2.13.0 + + 1.2.83 3.2.2 @@ -315,6 +317,12 @@ ${ip2region.version} + + com.alibaba + fastjson + ${fastjson.version} + + org.dromara ruoyi-system From 29118ae78c202f4e1f54f3220a69304f2149a97a Mon Sep 17 00:00:00 2001 From: MichelleChung <1242874891@qq.com> Date: Mon, 23 Oct 2023 01:28:11 +0000 Subject: [PATCH 05/13] =?UTF-8?q?!433=20=E6=9B=B4=E6=96=B0=E7=99=BB?= =?UTF-8?q?=E5=BD=95=E6=97=A5=E5=BF=97=E4=BB=A5=E5=8F=8A=E5=9C=A8=E7=BA=BF?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E5=B1=95=E7=A4=BA=E4=BF=A1=E6=81=AF=20*=20up?= =?UTF-8?q?date=20=E6=9B=B4=E6=96=B0=E7=99=BB=E5=BD=95=E6=97=A5=E5=BF=97,?= =?UTF-8?q?=20=E5=9C=A8=E7=BA=BF=E7=94=A8=E6=88=B7=E5=B1=95=E7=A4=BA?= =?UTF-8?q?=E4=BF=A1=E6=81=AF(=E5=A2=9E=E5=8A=A0=20=E5=AE=A2=E6=88=B7?= =?UTF-8?q?=E7=AB=AF,=20=E8=AE=BE=E5=A4=87=E7=B1=BB=E5=9E=8B)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/service/impl/EmailAuthStrategy.java | 2 ++ .../service/impl/PasswordAuthStrategy.java | 2 ++ .../web/service/impl/SmsAuthStrategy.java | 2 ++ .../web/service/impl/SocialAuthStrategy.java | 2 ++ .../web/service/impl/XcxAuthStrategy.java | 2 ++ .../common/core/domain/dto/UserOnlineDTO.java | 10 ++++++++++ .../common/core/domain/model/LoginUser.java | 10 ++++++++++ .../satoken/listener/UserActionListener.java | 2 ++ .../dromara/system/domain/SysLogininfor.java | 10 ++++++++++ .../dromara/system/domain/SysUserOnline.java | 10 ++++++++++ .../system/domain/bo/SysLogininforBo.java | 10 ++++++++++ .../system/domain/vo/SysLogininforVo.java | 13 +++++++++++++ .../impl/SysLogininforServiceImpl.java | 17 +++++++++++++++++ script/sql/oracle/oracle_ry_vue_5.X.sql | 4 ++++ script/sql/postgres/postgres_ry_vue_5.X.sql | 4 ++++ script/sql/ry_vue_5.X.sql | 2 ++ script/sql/sqlserver/sqlserver_ry_vue_5.X.sql | 14 ++++++++++++++ .../sql/update/oracle/update_5.1.0-5.1.1.sql | 5 +++++ .../update/postgres/update_5.1.0-5.1.1.sql | 5 +++++ .../update/sqlserver/update_5.1.0-5.1.1.sql | 19 +++++++++++++++++++ script/sql/update/update_5.1.0-5.1.1.sql | 3 +++ 21 files changed, 148 insertions(+) create mode 100644 script/sql/update/oracle/update_5.1.0-5.1.1.sql create mode 100644 script/sql/update/postgres/update_5.1.0-5.1.1.sql create mode 100644 script/sql/update/sqlserver/update_5.1.0-5.1.1.sql create mode 100644 script/sql/update/update_5.1.0-5.1.1.sql diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/EmailAuthStrategy.java b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/EmailAuthStrategy.java index c284e3df3..edb12c925 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/EmailAuthStrategy.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/EmailAuthStrategy.java @@ -60,6 +60,8 @@ public class EmailAuthStrategy implements IAuthStrategy { loginService.checkLogin(LoginType.EMAIL, tenantId, user.getUserName(), () -> !validateEmailCode(tenantId, email, emailCode)); // 此处可根据登录用户的数据不同 自行创建 loginUser 属性不够用继承扩展就行了 LoginUser loginUser = loginService.buildLoginUser(user); + loginUser.setClientKey(client.getClientKey()); + loginUser.setDeviceType(client.getDeviceType()); SaLoginModel model = new SaLoginModel(); model.setDevice(client.getDeviceType()); // 自定义分配 不同用户体系 不同 token 授权时间 不设置默认走全局 yml 配置 diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/PasswordAuthStrategy.java b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/PasswordAuthStrategy.java index 401dfb20c..46bd5661f 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/PasswordAuthStrategy.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/PasswordAuthStrategy.java @@ -70,6 +70,8 @@ public class PasswordAuthStrategy implements IAuthStrategy { loginService.checkLogin(LoginType.PASSWORD, tenantId, username, () -> !BCrypt.checkpw(password, user.getPassword())); // 此处可根据登录用户的数据不同 自行创建 loginUser LoginUser loginUser = loginService.buildLoginUser(user); + loginUser.setClientKey(client.getClientKey()); + loginUser.setDeviceType(client.getDeviceType()); SaLoginModel model = new SaLoginModel(); model.setDevice(client.getDeviceType()); // 自定义分配 不同用户体系 不同 token 授权时间 不设置默认走全局 yml 配置 diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SmsAuthStrategy.java b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SmsAuthStrategy.java index 3fd05691d..0ddb75350 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SmsAuthStrategy.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SmsAuthStrategy.java @@ -60,6 +60,8 @@ public class SmsAuthStrategy implements IAuthStrategy { loginService.checkLogin(LoginType.SMS, tenantId, user.getUserName(), () -> !validateSmsCode(tenantId, phonenumber, smsCode)); // 此处可根据登录用户的数据不同 自行创建 loginUser 属性不够用继承扩展就行了 LoginUser loginUser = loginService.buildLoginUser(user); + loginUser.setClientKey(client.getClientKey()); + loginUser.setDeviceType(client.getDeviceType()); SaLoginModel model = new SaLoginModel(); model.setDevice(client.getDeviceType()); // 自定义分配 不同用户体系 不同 token 授权时间 不设置默认走全局 yml 配置 diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SocialAuthStrategy.java b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SocialAuthStrategy.java index d0d4b433c..2b055df06 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SocialAuthStrategy.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SocialAuthStrategy.java @@ -97,6 +97,8 @@ public class SocialAuthStrategy implements IAuthStrategy { // 此处可根据登录用户的数据不同 自行创建 loginUser 属性不够用继承扩展就行了 LoginUser loginUser = loginService.buildLoginUser(user); + loginUser.setClientKey(client.getClientKey()); + loginUser.setDeviceType(client.getDeviceType()); SaLoginModel model = new SaLoginModel(); model.setDevice(client.getDeviceType()); // 自定义分配 不同用户体系 不同 token 授权时间 不设置默认走全局 yml 配置 diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/XcxAuthStrategy.java b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/XcxAuthStrategy.java index 7096f136f..5016e5bc4 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/XcxAuthStrategy.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/XcxAuthStrategy.java @@ -54,6 +54,8 @@ public class XcxAuthStrategy implements IAuthStrategy { loginUser.setUsername(user.getUserName()); loginUser.setNickname(user.getNickName()); loginUser.setUserType(user.getUserType()); + loginUser.setClientKey(client.getClientKey()); + loginUser.setDeviceType(client.getDeviceType()); loginUser.setOpenid(openid); SaLoginModel model = new SaLoginModel(); diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/UserOnlineDTO.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/UserOnlineDTO.java index 0e8def817..43d8c3c11 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/UserOnlineDTO.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/UserOnlineDTO.java @@ -34,6 +34,16 @@ public class UserOnlineDTO implements Serializable { */ private String userName; + /** + * 客户端 + */ + private String clientKey; + + /** + * 设备类型 + */ + private String deviceType; + /** * 登录IP地址 */ diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/LoginUser.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/LoginUser.java index 66262680c..e2671243a 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/LoginUser.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/LoginUser.java @@ -112,6 +112,16 @@ public class LoginUser implements Serializable { */ private Long roleId; + /** + * 客户端 + */ + private String clientKey; + + /** + * 设备类型 + */ + private String deviceType; + /** * 获取登录id */ diff --git a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/listener/UserActionListener.java b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/listener/UserActionListener.java index 11245e099..80034f117 100644 --- a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/listener/UserActionListener.java +++ b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/listener/UserActionListener.java @@ -49,6 +49,8 @@ public class UserActionListener implements SaTokenListener { dto.setLoginTime(System.currentTimeMillis()); dto.setTokenId(tokenValue); dto.setUserName(user.getUsername()); + dto.setClientKey(user.getClientKey()); + dto.setDeviceType(user.getDeviceType()); dto.setDeptName(user.getDeptName()); if(tokenConfig.getTimeout() == -1) { RedisUtils.setCacheObject(CacheConstants.ONLINE_TOKEN_KEY + tokenValue, dto); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysLogininfor.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysLogininfor.java index f08dd61d9..c57dc0a52 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysLogininfor.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysLogininfor.java @@ -37,6 +37,16 @@ public class SysLogininfor implements Serializable { */ private String userName; + /** + * 客户端 + */ + private String clientKey; + + /** + * 设备类型 + */ + private String deviceType; + /** * 登录状态 0成功 1失败 */ diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysUserOnline.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysUserOnline.java index fca680a35..6def906e1 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysUserOnline.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysUserOnline.java @@ -26,6 +26,16 @@ public class SysUserOnline { */ private String userName; + /** + * 客户端 + */ + private String clientKey; + + /** + * 设备类型 + */ + private String deviceType; + /** * 登录IP地址 */ diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysLogininforBo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysLogininforBo.java index 564f86bf2..464616278 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysLogininforBo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysLogininforBo.java @@ -33,6 +33,16 @@ public class SysLogininforBo { */ private String userName; + /** + * 客户端 + */ + private String clientKey; + + /** + * 设备类型 + */ + private String deviceType; + /** * 登录IP地址 */ diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysLogininforVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysLogininforVo.java index cf9720e95..de19aeabd 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysLogininforVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysLogininforVo.java @@ -45,6 +45,19 @@ public class SysLogininforVo implements Serializable { @ExcelProperty(value = "用户账号") private String userName; + /** + * 客户端 + */ + @ExcelProperty(value = "客户端") + private String clientKey; + + /** + * 设备类型 + */ + @ExcelProperty(value = "设备类型", converter = ExcelDictConvert.class) + @ExcelDictFormat(dictType = "sys_device_type") + private String deviceType; + /** * 登录状态(0成功 1失败) */ diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysLogininforServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysLogininforServiceImpl.java index d1c071e05..d215d5951 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysLogininforServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysLogininforServiceImpl.java @@ -1,5 +1,6 @@ package org.dromara.system.service.impl; +import cn.hutool.core.util.ObjectUtil; import cn.hutool.http.useragent.UserAgent; import cn.hutool.http.useragent.UserAgentUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; @@ -12,10 +13,14 @@ import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.core.utils.ServletUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.core.utils.ip.AddressUtils; +import org.dromara.common.satoken.utils.LoginHelper; +import org.dromara.system.domain.SysClient; import org.dromara.system.domain.SysLogininfor; import org.dromara.system.domain.bo.SysLogininforBo; import org.dromara.system.domain.vo.SysLogininforVo; +import org.dromara.system.mapper.SysClientMapper; import org.dromara.system.mapper.SysLogininforMapper; +import org.dromara.system.service.ISysClientService; import org.dromara.system.service.ISysLogininforService; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -41,6 +46,8 @@ public class SysLogininforServiceImpl implements ISysLogininforService { private final SysLogininforMapper baseMapper; + private final ISysClientService clientService; + /** * 记录登录信息 * @@ -52,6 +59,12 @@ public class SysLogininforServiceImpl implements ISysLogininforService { HttpServletRequest request = logininforEvent.getRequest(); final UserAgent userAgent = UserAgentUtil.parse(request.getHeader("User-Agent")); final String ip = ServletUtils.getClientIP(request); + // 客户端信息 + String clientid = request.getHeader(LoginHelper.CLIENT_KEY); + SysClient client = null; + if (StringUtils.isNotBlank(clientid)) { + client = clientService.queryByClientId(clientid); + } String address = AddressUtils.getRealAddressByIP(ip); StringBuilder s = new StringBuilder(); @@ -70,6 +83,10 @@ public class SysLogininforServiceImpl implements ISysLogininforService { SysLogininforBo logininfor = new SysLogininforBo(); logininfor.setTenantId(logininforEvent.getTenantId()); logininfor.setUserName(logininforEvent.getUsername()); + if (ObjectUtil.isNotNull(client)) { + logininfor.setClientKey(client.getClientKey()); + logininfor.setDeviceType(client.getDeviceType()); + } logininfor.setIpaddr(ip); logininfor.setLoginLocation(address); logininfor.setBrowser(browser); diff --git a/script/sql/oracle/oracle_ry_vue_5.X.sql b/script/sql/oracle/oracle_ry_vue_5.X.sql index ecab07c9f..1100fa92e 100644 --- a/script/sql/oracle/oracle_ry_vue_5.X.sql +++ b/script/sql/oracle/oracle_ry_vue_5.X.sql @@ -925,6 +925,8 @@ create table sys_logininfor ( info_id number(20) not null, tenant_id varchar2(20) default '000000', user_name varchar2(50) default '', + client_key varchar2(32) default '', + device_type varchar2(32) default '', ipaddr varchar2(128) default '', login_location varchar2(255) default '', browser varchar2(50) default '', @@ -942,6 +944,8 @@ comment on table sys_logininfor is '系统访问记录'; comment on column sys_logininfor.info_id is '访问ID'; comment on column sys_logininfor.tenant_id is '租户编号'; comment on column sys_logininfor.user_name is '登录账号'; +comment on column sys_logininfor.client_key is '客户端'; +comment on column sys_logininfor.device_type is '设备类型'; comment on column sys_logininfor.ipaddr is '登录IP地址'; comment on column sys_logininfor.login_location is '登录地点'; comment on column sys_logininfor.browser is '浏览器类型'; diff --git a/script/sql/postgres/postgres_ry_vue_5.X.sql b/script/sql/postgres/postgres_ry_vue_5.X.sql index 5992e6aa6..48860dc7c 100644 --- a/script/sql/postgres/postgres_ry_vue_5.X.sql +++ b/script/sql/postgres/postgres_ry_vue_5.X.sql @@ -946,6 +946,8 @@ create table if not exists sys_logininfor info_id int8, tenant_id varchar(20) default '000000'::varchar, user_name varchar(50) default ''::varchar, + client_key varchar(32) default ''::varchar, + device_type varchar(32) default ''::varchar, ipaddr varchar(128) default ''::varchar, login_location varchar(255) default ''::varchar, browser varchar(50) default ''::varchar, @@ -963,6 +965,8 @@ comment on table sys_logininfor is '系统访问记录'; comment on column sys_logininfor.info_id is '访问ID'; comment on column sys_logininfor.tenant_id is '租户编号'; comment on column sys_logininfor.user_name is '用户账号'; +comment on column sys_logininfor.client_key is '客户端'; +comment on column sys_logininfor.device_type is '设备类型'; comment on column sys_logininfor.ipaddr is '登录IP地址'; comment on column sys_logininfor.login_location is '登录地点'; comment on column sys_logininfor.browser is '浏览器类型'; diff --git a/script/sql/ry_vue_5.X.sql b/script/sql/ry_vue_5.X.sql index 596dd414f..09f15ff26 100644 --- a/script/sql/ry_vue_5.X.sql +++ b/script/sql/ry_vue_5.X.sql @@ -699,6 +699,8 @@ create table sys_logininfor ( info_id bigint(20) not null comment '访问ID', tenant_id varchar(20) default '000000' comment '租户编号', user_name varchar(50) default '' comment '用户账号', + client_key varchar(32) default '' comment '客户端', + device_type varchar(32) default '' comment '设备类型', ipaddr varchar(128) default '' comment '登录IP地址', login_location varchar(255) default '' comment '登录地点', browser varchar(50) default '' comment '浏览器类型', diff --git a/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql b/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql index f16edb1de..2045c587e 100644 --- a/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql +++ b/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql @@ -1383,6 +1383,8 @@ CREATE TABLE sys_logininfor info_id bigint NOT NULL, tenant_id nvarchar(20) DEFAULT ('000000') NULL, user_name nvarchar(50) DEFAULT '' NULL, + client_key nvarchar(32) DEFAULT '' NULL, + device_type nvarchar(32) DEFAULT '' NULL, ipaddr nvarchar(128) DEFAULT '' NULL, login_location nvarchar(255) DEFAULT '' NULL, browser nvarchar(50) DEFAULT '' NULL, @@ -1420,6 +1422,18 @@ EXEC sys.sp_addextendedproperty 'TABLE', N'sys_logininfor', 'COLUMN', N'user_name' GO +EXEC sys.sp_addextendedproperty + 'MS_Description', N'客户端' , + 'SCHEMA', N'dbo', + 'TABLE', N'sys_logininfor', + 'COLUMN', N'client_key' +GO +EXEC sys.sp_addextendedproperty + 'MS_Description', N'设备类型' , + 'SCHEMA', N'dbo', + 'TABLE', N'sys_logininfor', + 'COLUMN', N'device_type' +GO EXEC sys.sp_addextendedproperty 'MS_Description', N'登录IP地址' , 'SCHEMA', N'dbo', diff --git a/script/sql/update/oracle/update_5.1.0-5.1.1.sql b/script/sql/update/oracle/update_5.1.0-5.1.1.sql new file mode 100644 index 000000000..538258375 --- /dev/null +++ b/script/sql/update/oracle/update_5.1.0-5.1.1.sql @@ -0,0 +1,5 @@ +ALTER TABLE sys_logininfor ADD (client_key VARCHAR(32) DEFAULT ''); +COMMENT ON COLUMN sys_logininfor.client_key IS '客户端'; + +ALTER TABLE sys_logininfor ADD (device_type VARCHAR(32) DEFAULT ''); +COMMENT ON COLUMN sys_logininfor.device_type IS '设备类型'; diff --git a/script/sql/update/postgres/update_5.1.0-5.1.1.sql b/script/sql/update/postgres/update_5.1.0-5.1.1.sql new file mode 100644 index 000000000..29f550761 --- /dev/null +++ b/script/sql/update/postgres/update_5.1.0-5.1.1.sql @@ -0,0 +1,5 @@ +ALTER TABLE sys_logininfor ADD client_key varchar(32) default ''::varchar; +COMMENT ON COLUMN sys_logininfor.client_key IS '客户端'; + +ALTER TABLE sys_logininfor ADD device_type varchar(32) default ''::varchar; +COMMENT ON COLUMN sys_logininfor.device_type IS '设备类型'; diff --git a/script/sql/update/sqlserver/update_5.1.0-5.1.1.sql b/script/sql/update/sqlserver/update_5.1.0-5.1.1.sql new file mode 100644 index 000000000..2238536fa --- /dev/null +++ b/script/sql/update/sqlserver/update_5.1.0-5.1.1.sql @@ -0,0 +1,19 @@ +ALTER TABLE sys_logininfor ADD client_key nvarchar(32) DEFAULT '' NULL +GO + +EXEC sp_addextendedproperty + 'MS_Description', N'客户端', + 'SCHEMA', N'dbo', + 'TABLE', N'sys_logininfor', + 'COLUMN', N'client_key' +GO + +ALTER TABLE sys_logininfor ADD device_type nvarchar(32) DEFAULT '' NULL +GO + +EXEC sp_addextendedproperty + 'MS_Description', N'设备类型', + 'SCHEMA', N'dbo', + 'TABLE', N'sys_logininfor', + 'COLUMN', N'device_type' +GO diff --git a/script/sql/update/update_5.1.0-5.1.1.sql b/script/sql/update/update_5.1.0-5.1.1.sql new file mode 100644 index 000000000..5383fe663 --- /dev/null +++ b/script/sql/update/update_5.1.0-5.1.1.sql @@ -0,0 +1,3 @@ +ALTER TABLE sys_logininfor + ADD COLUMN client_key VARCHAR(32) NULL DEFAULT NULL COMMENT '客户端' AFTER `user_type`, + ADD COLUMN device_type VARCHAR(32) NULL DEFAULT NULL COMMENT '设备类型' AFTER `client_key`; From 3774d71bac896fb62e547cc006a554f631375727 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 23 Oct 2023 15:54:25 +0800 Subject: [PATCH 06/13] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E9=94=99?= =?UTF-8?q?=E8=AF=AF=E5=A2=9E=E5=8A=A0=E7=BB=84=E5=AF=BC=E8=87=B4=E7=9A=84?= =?UTF-8?q?=E6=A0=A1=E9=AA=8C=E4=B8=8D=E7=94=9F=E6=95=88=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/system/domain/bo/SysConfigBo.java | 17 ++++++++--------- .../org/dromara/system/domain/bo/SysDeptBo.java | 10 ++++------ .../dromara/system/domain/bo/SysDictDataBo.java | 14 ++++++-------- .../dromara/system/domain/bo/SysDictTypeBo.java | 12 +++++------- .../org/dromara/system/domain/bo/SysMenuBo.java | 14 ++++++-------- .../dromara/system/domain/bo/SysNoticeBo.java | 12 +++++------- .../org/dromara/system/domain/bo/SysPostBo.java | 14 ++++++-------- .../org/dromara/system/domain/bo/SysRoleBo.java | 16 +++++++--------- 8 files changed, 47 insertions(+), 62 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysConfigBo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysConfigBo.java index 757af85f7..56c40faa7 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysConfigBo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysConfigBo.java @@ -1,14 +1,13 @@ package org.dromara.system.domain.bo; -import org.dromara.common.core.validate.AddGroup; -import org.dromara.common.core.validate.EditGroup; -import org.dromara.system.domain.SysConfig; import io.github.linpeilie.annotations.AutoMapper; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import lombok.Data; import lombok.EqualsAndHashCode; -import jakarta.validation.constraints.*; - import org.dromara.common.mybatis.core.domain.BaseEntity; +import org.dromara.system.domain.SysConfig; /** * 参数配置业务对象 sys_config @@ -24,27 +23,27 @@ public class SysConfigBo extends BaseEntity { /** * 参数主键 */ - @NotNull(message = "参数主键不能为空", groups = { EditGroup.class }) + @NotNull(message = "参数主键不能为空") private Long configId; /** * 参数名称 */ - @NotBlank(message = "参数名称不能为空", groups = { AddGroup.class, EditGroup.class }) + @NotBlank(message = "参数名称不能为空") @Size(min = 0, max = 100, message = "参数名称不能超过{max}个字符") private String configName; /** * 参数键名 */ - @NotBlank(message = "参数键名不能为空", groups = { AddGroup.class, EditGroup.class }) + @NotBlank(message = "参数键名不能为空") @Size(min = 0, max = 100, message = "参数键名长度不能超过{max}个字符") private String configKey; /** * 参数键值 */ - @NotBlank(message = "参数键值不能为空", groups = { AddGroup.class, EditGroup.class }) + @NotBlank(message = "参数键值不能为空") @Size(min = 0, max = 500, message = "参数键值长度不能超过{max}个字符") private String configValue; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysDeptBo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysDeptBo.java index 613977dc0..9b2951e88 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysDeptBo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysDeptBo.java @@ -1,9 +1,5 @@ package org.dromara.system.domain.bo; -import org.dromara.common.core.validate.AddGroup; -import org.dromara.common.core.validate.EditGroup; -import org.dromara.common.mybatis.core.domain.BaseEntity; -import org.dromara.system.domain.SysDept; import io.github.linpeilie.annotations.AutoMapper; import jakarta.validation.constraints.Email; import jakarta.validation.constraints.NotBlank; @@ -11,6 +7,8 @@ import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.Size; import lombok.Data; import lombok.EqualsAndHashCode; +import org.dromara.common.mybatis.core.domain.BaseEntity; +import org.dromara.system.domain.SysDept; /** * 部门业务对象 sys_dept @@ -26,7 +24,7 @@ public class SysDeptBo extends BaseEntity { /** * 部门id */ - @NotNull(message = "部门id不能为空", groups = { EditGroup.class }) + @NotNull(message = "部门id不能为空") private Long deptId; /** @@ -37,7 +35,7 @@ public class SysDeptBo extends BaseEntity { /** * 部门名称 */ - @NotBlank(message = "部门名称不能为空", groups = { AddGroup.class, EditGroup.class }) + @NotBlank(message = "部门名称不能为空") @Size(min = 0, max = 30, message = "部门名称长度不能超过{max}个字符") private String deptName; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysDictDataBo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysDictDataBo.java index 70f062834..24a86c17d 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysDictDataBo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysDictDataBo.java @@ -1,15 +1,13 @@ package org.dromara.system.domain.bo; -import org.dromara.common.core.validate.AddGroup; -import org.dromara.common.core.validate.EditGroup; -import org.dromara.common.mybatis.core.domain.BaseEntity; -import org.dromara.system.domain.SysDictData; import io.github.linpeilie.annotations.AutoMapper; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.Size; import lombok.Data; import lombok.EqualsAndHashCode; +import org.dromara.common.mybatis.core.domain.BaseEntity; +import org.dromara.system.domain.SysDictData; /** * 字典数据业务对象 sys_dict_data @@ -25,7 +23,7 @@ public class SysDictDataBo extends BaseEntity { /** * 字典编码 */ - @NotNull(message = "字典编码不能为空", groups = { EditGroup.class }) + @NotNull(message = "字典编码不能为空") private Long dictCode; /** @@ -36,21 +34,21 @@ public class SysDictDataBo extends BaseEntity { /** * 字典标签 */ - @NotBlank(message = "字典标签不能为空", groups = { AddGroup.class, EditGroup.class }) + @NotBlank(message = "字典标签不能为空") @Size(min = 0, max = 100, message = "字典标签长度不能超过{max}个字符") private String dictLabel; /** * 字典键值 */ - @NotBlank(message = "字典键值不能为空", groups = { AddGroup.class, EditGroup.class }) + @NotBlank(message = "字典键值不能为空") @Size(min = 0, max = 100, message = "字典键值长度不能超过{max}个字符") private String dictValue; /** * 字典类型 */ - @NotBlank(message = "字典类型不能为空", groups = { AddGroup.class, EditGroup.class }) + @NotBlank(message = "字典类型不能为空") @Size(min = 0, max = 100, message = "字典类型长度不能超过{max}个字符") private String dictType; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysDictTypeBo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysDictTypeBo.java index c121d24a8..90294fe36 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysDictTypeBo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysDictTypeBo.java @@ -1,9 +1,5 @@ package org.dromara.system.domain.bo; -import org.dromara.common.core.validate.AddGroup; -import org.dromara.common.core.validate.EditGroup; -import org.dromara.common.mybatis.core.domain.BaseEntity; -import org.dromara.system.domain.SysDictType; import io.github.linpeilie.annotations.AutoMapper; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; @@ -11,6 +7,8 @@ import jakarta.validation.constraints.Pattern; import jakarta.validation.constraints.Size; import lombok.Data; import lombok.EqualsAndHashCode; +import org.dromara.common.mybatis.core.domain.BaseEntity; +import org.dromara.system.domain.SysDictType; /** * 字典类型业务对象 sys_dict_type @@ -26,20 +24,20 @@ public class SysDictTypeBo extends BaseEntity { /** * 字典主键 */ - @NotNull(message = "字典主键不能为空", groups = { EditGroup.class }) + @NotNull(message = "字典主键不能为空") private Long dictId; /** * 字典名称 */ - @NotBlank(message = "字典名称不能为空", groups = { AddGroup.class, EditGroup.class }) + @NotBlank(message = "字典名称不能为空") @Size(min = 0, max = 100, message = "字典类型名称长度不能超过{max}个字符") private String dictName; /** * 字典类型 */ - @NotBlank(message = "字典类型不能为空", groups = { AddGroup.class, EditGroup.class }) + @NotBlank(message = "字典类型不能为空") @Size(min = 0, max = 100, message = "字典类型类型长度不能超过{max}个字符") @Pattern(regexp = "^[a-z][a-z0-9_]*$", message = "字典类型必须以字母开头,且只能为(小写字母,数字,下滑线)") private String dictType; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysMenuBo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysMenuBo.java index 203b82331..751a49ad7 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysMenuBo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysMenuBo.java @@ -1,16 +1,14 @@ package org.dromara.system.domain.bo; import com.fasterxml.jackson.annotation.JsonInclude; -import org.dromara.common.core.validate.AddGroup; -import org.dromara.common.core.validate.EditGroup; -import org.dromara.common.mybatis.core.domain.BaseEntity; -import org.dromara.system.domain.SysMenu; import io.github.linpeilie.annotations.AutoMapper; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.Size; import lombok.Data; import lombok.EqualsAndHashCode; +import org.dromara.common.mybatis.core.domain.BaseEntity; +import org.dromara.system.domain.SysMenu; /** * 菜单权限业务对象 sys_menu @@ -26,7 +24,7 @@ public class SysMenuBo extends BaseEntity { /** * 菜单ID */ - @NotNull(message = "菜单ID不能为空", groups = { EditGroup.class }) + @NotNull(message = "菜单ID不能为空") private Long menuId; /** @@ -37,14 +35,14 @@ public class SysMenuBo extends BaseEntity { /** * 菜单名称 */ - @NotBlank(message = "菜单名称不能为空", groups = { AddGroup.class, EditGroup.class }) + @NotBlank(message = "菜单名称不能为空") @Size(min = 0, max = 50, message = "菜单名称长度不能超过{max}个字符") private String menuName; /** * 显示顺序 */ - @NotNull(message = "显示顺序不能为空", groups = { AddGroup.class, EditGroup.class }) + @NotNull(message = "显示顺序不能为空") private Integer orderNum; /** @@ -77,7 +75,7 @@ public class SysMenuBo extends BaseEntity { /** * 菜单类型(M目录 C菜单 F按钮) */ - @NotBlank(message = "菜单类型不能为空", groups = { AddGroup.class, EditGroup.class }) + @NotBlank(message = "菜单类型不能为空") private String menuType; /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysNoticeBo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysNoticeBo.java index e94366b8b..6a004f289 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysNoticeBo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysNoticeBo.java @@ -1,16 +1,14 @@ package org.dromara.system.domain.bo; -import org.dromara.common.core.validate.AddGroup; -import org.dromara.common.core.validate.EditGroup; -import org.dromara.common.core.xss.Xss; -import org.dromara.common.mybatis.core.domain.BaseEntity; -import org.dromara.system.domain.SysNotice; import io.github.linpeilie.annotations.AutoMapper; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.Size; import lombok.Data; import lombok.EqualsAndHashCode; +import org.dromara.common.core.xss.Xss; +import org.dromara.common.mybatis.core.domain.BaseEntity; +import org.dromara.system.domain.SysNotice; /** * 通知公告业务对象 sys_notice @@ -26,14 +24,14 @@ public class SysNoticeBo extends BaseEntity { /** * 公告ID */ - @NotNull(message = "公告ID不能为空", groups = { EditGroup.class }) + @NotNull(message = "公告ID不能为空") private Long noticeId; /** * 公告标题 */ @Xss(message = "公告标题不能包含脚本字符") - @NotBlank(message = "公告标题不能为空", groups = { AddGroup.class, EditGroup.class }) + @NotBlank(message = "公告标题不能为空") @Size(min = 0, max = 50, message = "公告标题不能超过{max}个字符") private String noticeTitle; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysPostBo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysPostBo.java index 7bb176bd3..1a5160aa1 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysPostBo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysPostBo.java @@ -1,15 +1,13 @@ package org.dromara.system.domain.bo; -import org.dromara.common.core.validate.AddGroup; -import org.dromara.common.core.validate.EditGroup; -import org.dromara.common.mybatis.core.domain.BaseEntity; -import org.dromara.system.domain.SysPost; import io.github.linpeilie.annotations.AutoMapper; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.Size; import lombok.Data; import lombok.EqualsAndHashCode; +import org.dromara.common.mybatis.core.domain.BaseEntity; +import org.dromara.system.domain.SysPost; /** * 岗位信息业务对象 sys_post @@ -25,27 +23,27 @@ public class SysPostBo extends BaseEntity { /** * 岗位ID */ - @NotNull(message = "岗位ID不能为空", groups = { EditGroup.class }) + @NotNull(message = "岗位ID不能为空") private Long postId; /** * 岗位编码 */ - @NotBlank(message = "岗位编码不能为空", groups = { AddGroup.class, EditGroup.class }) + @NotBlank(message = "岗位编码不能为空") @Size(min = 0, max = 64, message = "岗位编码长度不能超过{max}个字符") private String postCode; /** * 岗位名称 */ - @NotBlank(message = "岗位名称不能为空", groups = { AddGroup.class, EditGroup.class }) + @NotBlank(message = "岗位名称不能为空") @Size(min = 0, max = 50, message = "岗位名称长度不能超过{max}个字符") private String postName; /** * 显示顺序 */ - @NotNull(message = "显示顺序不能为空", groups = { AddGroup.class, EditGroup.class }) + @NotNull(message = "显示顺序不能为空") private Integer postSort; /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysRoleBo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysRoleBo.java index 94fb31ec2..788973cad 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysRoleBo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysRoleBo.java @@ -1,10 +1,5 @@ package org.dromara.system.domain.bo; -import org.dromara.common.core.constant.UserConstants; -import org.dromara.common.core.validate.AddGroup; -import org.dromara.common.core.validate.EditGroup; -import org.dromara.common.mybatis.core.domain.BaseEntity; -import org.dromara.system.domain.SysRole; import io.github.linpeilie.annotations.AutoMapper; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; @@ -12,6 +7,9 @@ import jakarta.validation.constraints.Size; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; +import org.dromara.common.core.constant.UserConstants; +import org.dromara.common.mybatis.core.domain.BaseEntity; +import org.dromara.system.domain.SysRole; /** * 角色信息业务对象 sys_role @@ -28,27 +26,27 @@ public class SysRoleBo extends BaseEntity { /** * 角色ID */ - @NotNull(message = "角色ID不能为空", groups = { EditGroup.class }) + @NotNull(message = "角色ID不能为空") private Long roleId; /** * 角色名称 */ - @NotBlank(message = "角色名称不能为空", groups = { AddGroup.class, EditGroup.class }) + @NotBlank(message = "角色名称不能为空") @Size(min = 0, max = 30, message = "角色名称长度不能超过{max}个字符") private String roleName; /** * 角色权限字符串 */ - @NotBlank(message = "角色权限字符串不能为空", groups = { AddGroup.class, EditGroup.class }) + @NotBlank(message = "角色权限字符串不能为空") @Size(min = 0, max = 100, message = "权限字符长度不能超过{max}个字符") private String roleKey; /** * 显示顺序 */ - @NotNull(message = "显示顺序不能为空", groups = { AddGroup.class, EditGroup.class }) + @NotNull(message = "显示顺序不能为空") private Integer roleSort; /** From 7abd419d8cf9ef7d9fd2c9bdc85d3c2e13e2dc1a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 25 Oct 2023 10:27:50 +0800 Subject: [PATCH 07/13] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20commmons-io=20?= =?UTF-8?q?=E7=9A=84=E7=89=88=E6=9C=AC=E9=99=90=E5=88=B6=20=E5=AF=BC?= =?UTF-8?q?=E8=87=B4=E7=9A=84=E5=90=84=E7=A7=8D=E9=97=AE=E9=A2=98=20?= =?UTF-8?q?=E5=9B=9E=E6=BB=9A=20poi=20=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/pom.xml b/pom.xml index 77af086a5..5f3b87a9b 100644 --- a/pom.xml +++ b/pom.xml @@ -21,7 +21,7 @@ 3.0.2 2.2.0 0.15.0 - 5.2.4 + 5.2.3 3.3.2 2.3 1.37.0 @@ -47,8 +47,6 @@ 1.12.540 2.2.0 - - 2.13.0 1.2.83 @@ -168,12 +166,6 @@ - - commons-io - commons-io - ${commons-io.version} - - org.apache.velocity From e2e7cee58b208e8eade82571495e5393146ffd2c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 25 Oct 2023 10:29:49 +0800 Subject: [PATCH 08/13] =?UTF-8?q?update=20mybatis-plus=203.5.3.2=20=3D>=20?= =?UTF-8?q?3.5.4=20=E9=80=82=E9=85=8Dmp=E6=96=B0=E7=89=88=E6=9C=AC?= =?UTF-8?q?=E6=94=B9=E5=8A=A8=20update=20dynamic-ds=204.1.3=20=3D>=204.2.0?= =?UTF-8?q?=20update=20bouncycastle=201.72=20=3D>=201.76?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 6 +++--- .../common/mybatis/core/mapper/BaseMapperPlus.java | 9 +++++---- .../dromara/system/service/impl/SysMenuServiceImpl.java | 6 +++--- .../system/service/impl/SysTenantServiceImpl.java | 2 +- 4 files changed, 12 insertions(+), 11 deletions(-) diff --git a/pom.xml b/pom.xml index 5f3b87a9b..f3498ebf0 100644 --- a/pom.xml +++ b/pom.xml @@ -25,20 +25,20 @@ 3.3.2 2.3 1.37.0 - 3.5.3.2 + 3.5.4 3.9.1 5.8.22 4.10.0 3.1.7 3.24.1 2.2.5 - 4.1.3 + 4.2.0 2.14.2 4.3.3 1.3.5 0.2.0 1.18.30 - 1.72 + 1.76 1.16.5 2.7.0 diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/mapper/BaseMapperPlus.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/mapper/BaseMapperPlus.java index b2b74a0f7..9018a791c 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/mapper/BaseMapperPlus.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/core/mapper/BaseMapperPlus.java @@ -6,12 +6,12 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.core.toolkit.ReflectionKit; +import com.baomidou.mybatisplus.core.toolkit.reflect.GenericTypeUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.toolkit.Db; -import org.dromara.common.core.utils.MapstructUtils; import org.apache.ibatis.logging.Log; import org.apache.ibatis.logging.LogFactory; +import org.dromara.common.core.utils.MapstructUtils; import java.io.Serializable; import java.util.Collection; @@ -35,11 +35,12 @@ public interface BaseMapperPlus extends BaseMapper { Log log = LogFactory.getLog(BaseMapperPlus.class); default Class currentVoClass() { - return (Class) ReflectionKit.getSuperClassGenericType(this.getClass(), BaseMapperPlus.class, 1); + GenericTypeUtils.resolveTypeArguments(this.getClass(), BaseMapperPlus.class); + return (Class) GenericTypeUtils.resolveTypeArguments(this.getClass(), BaseMapperPlus.class)[1]; } default Class currentModelClass() { - return (Class) ReflectionKit.getSuperClassGenericType(this.getClass(), BaseMapperPlus.class, 0); + return (Class) GenericTypeUtils.resolveTypeArguments(this.getClass(), BaseMapperPlus.class)[0]; } default List selectList() { diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysMenuServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysMenuServiceImpl.java index dfff53857..6e1765ba5 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysMenuServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysMenuServiceImpl.java @@ -7,6 +7,7 @@ import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import lombok.RequiredArgsConstructor; import org.dromara.common.core.constant.UserConstants; import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.StreamUtils; @@ -26,7 +27,6 @@ import org.dromara.system.mapper.SysRoleMapper; import org.dromara.system.mapper.SysRoleMenuMapper; import org.dromara.system.mapper.SysTenantPackageMapper; import org.dromara.system.service.ISysMenuService; -import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; import java.util.*; @@ -169,11 +169,11 @@ public class SysMenuServiceImpl implements ISysMenuService { if (tenantPackage.getMenuCheckStrictly()) { parentIds = baseMapper.selectObjs(new LambdaQueryWrapper() .select(SysMenu::getParentId) - .in(SysMenu::getMenuId, menuIds), Convert::toLong); + .in(SysMenu::getMenuId, menuIds), x -> {return Convert.toLong(x);}); } return baseMapper.selectObjs(new LambdaQueryWrapper() .in(SysMenu::getMenuId, menuIds) - .notIn(CollUtil.isNotEmpty(parentIds), SysMenu::getMenuId, parentIds), Convert::toLong); + .notIn(CollUtil.isNotEmpty(parentIds), SysMenu::getMenuId, parentIds), x -> {return Convert.toLong(x);}); } /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java index 740db578b..516149f15 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java @@ -117,7 +117,7 @@ public class SysTenantServiceImpl implements ISysTenantService { // 获取所有租户编号 List tenantIds = baseMapper.selectObjs( - new LambdaQueryWrapper().select(SysTenant::getTenantId), Convert::toStr); + new LambdaQueryWrapper().select(SysTenant::getTenantId), x -> {return Convert.toStr(x);}); String tenantId = generateTenantId(tenantIds); add.setTenantId(tenantId); boolean flag = baseMapper.insert(add) > 0; From f1232a60f3f72a73b0150f00f9deba9ea1d088ef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 25 Oct 2023 11:54:33 +0800 Subject: [PATCH 09/13] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20update=20sql?= =?UTF-8?q?=20=E7=BC=96=E5=86=99=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- script/sql/update/update_5.1.0-5.1.1.sql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/script/sql/update/update_5.1.0-5.1.1.sql b/script/sql/update/update_5.1.0-5.1.1.sql index 5383fe663..1dea49b44 100644 --- a/script/sql/update/update_5.1.0-5.1.1.sql +++ b/script/sql/update/update_5.1.0-5.1.1.sql @@ -1,3 +1,3 @@ ALTER TABLE sys_logininfor - ADD COLUMN client_key VARCHAR(32) NULL DEFAULT NULL COMMENT '客户端' AFTER `user_type`, + ADD COLUMN client_key VARCHAR(32) NULL DEFAULT NULL COMMENT '客户端' AFTER `user_name`, ADD COLUMN device_type VARCHAR(32) NULL DEFAULT NULL COMMENT '设备类型' AFTER `client_key`; From 22a8057ea4c94f7740d81093ffcabd2014e95f51 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 25 Oct 2023 15:29:41 +0800 Subject: [PATCH 10/13] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=AE=A2?= =?UTF-8?q?=E6=88=B7=E7=AB=AF=E7=A6=81=E7=94=A8=E9=99=90=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/org/dromara/web/controller/AuthController.java | 3 +++ ruoyi-admin/src/main/resources/i18n/messages.properties | 1 + ruoyi-admin/src/main/resources/i18n/messages_en_US.properties | 1 + ruoyi-admin/src/main/resources/i18n/messages_zh_CN.properties | 1 + 4 files changed, 6 insertions(+) diff --git a/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java b/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java index 3c03e4248..e41b4d013 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java @@ -10,6 +10,7 @@ import me.zhyd.oauth.model.AuthResponse; import me.zhyd.oauth.model.AuthUser; import me.zhyd.oauth.request.AuthRequest; import me.zhyd.oauth.utils.AuthStateUtils; +import org.dromara.common.core.constant.UserConstants; import org.dromara.common.core.domain.R; import org.dromara.common.core.domain.model.LoginBody; import org.dromara.common.core.domain.model.RegisterBody; @@ -78,6 +79,8 @@ public class AuthController { if (ObjectUtil.isNull(client) || !StringUtils.contains(client.getGrantType(), grantType)) { log.info("客户端id: {} 认证类型:{} 异常!.", clientId, grantType); return R.fail(MessageUtils.message("auth.grant.type.error")); + } else if (!UserConstants.NORMAL.equals(client.getStatus())) { + return R.fail(MessageUtils.message("auth.grant.type.stop")); } // 校验租户 loginService.checkTenant(loginBody.getTenantId()); diff --git a/ruoyi-admin/src/main/resources/i18n/messages.properties b/ruoyi-admin/src/main/resources/i18n/messages.properties index 5c9f42271..c8635612a 100644 --- a/ruoyi-admin/src/main/resources/i18n/messages.properties +++ b/ruoyi-admin/src/main/resources/i18n/messages.properties @@ -29,6 +29,7 @@ user.notfound=请重新登录 user.forcelogout=管理员强制退出,请重新登录 user.unknown.error=未知错误,请重新登录 auth.grant.type.error=认证权限类型错误 +auth.grant.type.blocked=认证权限类型已禁用 auth.grant.type.not.blank=认证权限类型不能为空 auth.clientid.not.blank=认证客户端id不能为空 ##文件上传消息 diff --git a/ruoyi-admin/src/main/resources/i18n/messages_en_US.properties b/ruoyi-admin/src/main/resources/i18n/messages_en_US.properties index 2ab82a667..355da8432 100644 --- a/ruoyi-admin/src/main/resources/i18n/messages_en_US.properties +++ b/ruoyi-admin/src/main/resources/i18n/messages_en_US.properties @@ -29,6 +29,7 @@ user.notfound=Please login again user.forcelogout=The administrator is forced to exit,please login again user.unknown.error=Unknown error, please login again auth.grant.type.error=Auth grant type error +auth.grant.type.blocked=Auth grant type disabled auth.grant.type.not.blank=Auth grant type cannot be blank auth.clientid.not.blank=Auth clientid cannot be blank ##文件上传消息 diff --git a/ruoyi-admin/src/main/resources/i18n/messages_zh_CN.properties b/ruoyi-admin/src/main/resources/i18n/messages_zh_CN.properties index 5c9f42271..c8635612a 100644 --- a/ruoyi-admin/src/main/resources/i18n/messages_zh_CN.properties +++ b/ruoyi-admin/src/main/resources/i18n/messages_zh_CN.properties @@ -29,6 +29,7 @@ user.notfound=请重新登录 user.forcelogout=管理员强制退出,请重新登录 user.unknown.error=未知错误,请重新登录 auth.grant.type.error=认证权限类型错误 +auth.grant.type.blocked=认证权限类型已禁用 auth.grant.type.not.blank=认证权限类型不能为空 auth.clientid.not.blank=认证客户端id不能为空 ##文件上传消息 From b537b1ecd24bd513ae71bcf8da191cb4f1bd067f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 25 Oct 2023 15:31:41 +0800 Subject: [PATCH 11/13] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=AE=A2?= =?UTF-8?q?=E6=88=B7=E7=AB=AF=E7=A6=81=E7=94=A8=E9=99=90=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/org/dromara/web/controller/AuthController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java b/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java index e41b4d013..86452e53d 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/controller/AuthController.java @@ -80,7 +80,7 @@ public class AuthController { log.info("客户端id: {} 认证类型:{} 异常!.", clientId, grantType); return R.fail(MessageUtils.message("auth.grant.type.error")); } else if (!UserConstants.NORMAL.equals(client.getStatus())) { - return R.fail(MessageUtils.message("auth.grant.type.stop")); + return R.fail(MessageUtils.message("auth.grant.type.blocked")); } // 校验租户 loginService.checkTenant(loginBody.getTenantId()); From 4198dce4f0b419c1ec87f7bd885d0777a8d313f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 25 Oct 2023 15:37:41 +0800 Subject: [PATCH 12/13] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=E6=A0=A1=E9=AA=8C=E4=B8=BB=E9=94=AEid=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/org/dromara/system/domain/bo/SysConfigBo.java | 2 -- .../src/main/java/org/dromara/system/domain/bo/SysDeptBo.java | 1 - .../main/java/org/dromara/system/domain/bo/SysDictDataBo.java | 1 - .../main/java/org/dromara/system/domain/bo/SysDictTypeBo.java | 2 -- .../src/main/java/org/dromara/system/domain/bo/SysMenuBo.java | 1 - .../src/main/java/org/dromara/system/domain/bo/SysNoticeBo.java | 2 -- .../src/main/java/org/dromara/system/domain/bo/SysPostBo.java | 1 - .../src/main/java/org/dromara/system/domain/bo/SysRoleBo.java | 1 - 8 files changed, 11 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysConfigBo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysConfigBo.java index 56c40faa7..257935dd1 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysConfigBo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysConfigBo.java @@ -2,7 +2,6 @@ package org.dromara.system.domain.bo; import io.github.linpeilie.annotations.AutoMapper; import jakarta.validation.constraints.NotBlank; -import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.Size; import lombok.Data; import lombok.EqualsAndHashCode; @@ -23,7 +22,6 @@ public class SysConfigBo extends BaseEntity { /** * 参数主键 */ - @NotNull(message = "参数主键不能为空") private Long configId; /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysDeptBo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysDeptBo.java index 9b2951e88..a5031d7f6 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysDeptBo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysDeptBo.java @@ -24,7 +24,6 @@ public class SysDeptBo extends BaseEntity { /** * 部门id */ - @NotNull(message = "部门id不能为空") private Long deptId; /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysDictDataBo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysDictDataBo.java index 24a86c17d..042946ca1 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysDictDataBo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysDictDataBo.java @@ -23,7 +23,6 @@ public class SysDictDataBo extends BaseEntity { /** * 字典编码 */ - @NotNull(message = "字典编码不能为空") private Long dictCode; /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysDictTypeBo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysDictTypeBo.java index 90294fe36..39257f70b 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysDictTypeBo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysDictTypeBo.java @@ -2,7 +2,6 @@ package org.dromara.system.domain.bo; import io.github.linpeilie.annotations.AutoMapper; import jakarta.validation.constraints.NotBlank; -import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.Pattern; import jakarta.validation.constraints.Size; import lombok.Data; @@ -24,7 +23,6 @@ public class SysDictTypeBo extends BaseEntity { /** * 字典主键 */ - @NotNull(message = "字典主键不能为空") private Long dictId; /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysMenuBo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysMenuBo.java index 751a49ad7..498280a90 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysMenuBo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysMenuBo.java @@ -24,7 +24,6 @@ public class SysMenuBo extends BaseEntity { /** * 菜单ID */ - @NotNull(message = "菜单ID不能为空") private Long menuId; /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysNoticeBo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysNoticeBo.java index 6a004f289..cdcc57508 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysNoticeBo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysNoticeBo.java @@ -2,7 +2,6 @@ package org.dromara.system.domain.bo; import io.github.linpeilie.annotations.AutoMapper; import jakarta.validation.constraints.NotBlank; -import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.Size; import lombok.Data; import lombok.EqualsAndHashCode; @@ -24,7 +23,6 @@ public class SysNoticeBo extends BaseEntity { /** * 公告ID */ - @NotNull(message = "公告ID不能为空") private Long noticeId; /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysPostBo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysPostBo.java index 1a5160aa1..b93c39cd5 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysPostBo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysPostBo.java @@ -23,7 +23,6 @@ public class SysPostBo extends BaseEntity { /** * 岗位ID */ - @NotNull(message = "岗位ID不能为空") private Long postId; /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysRoleBo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysRoleBo.java index 788973cad..0c8b4dca9 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysRoleBo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysRoleBo.java @@ -26,7 +26,6 @@ public class SysRoleBo extends BaseEntity { /** * 角色ID */ - @NotNull(message = "角色ID不能为空") private Long roleId; /** From e2b169e07ae5379e5490363e4d15320b7eb0c59e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 25 Oct 2023 22:18:21 +0800 Subject: [PATCH 13/13] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E6=B3=A8=E5=86=8C=E6=8E=A5=E5=8F=A3=E6=A0=A1=E9=AA=8C?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E5=90=8D=E4=B8=8D=E5=8C=BA=E5=88=86=E7=A7=9F?= =?UTF-8?q?=E6=88=B7=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/web/service/SysRegisterService.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/SysRegisterService.java b/ruoyi-admin/src/main/java/org/dromara/web/service/SysRegisterService.java index 013773e50..4d4b07283 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/SysRegisterService.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/SysRegisterService.java @@ -1,6 +1,8 @@ package org.dromara.web.service; import cn.dev33.satoken.secure.BCrypt; +import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import org.dromara.common.core.constant.Constants; import org.dromara.common.core.constant.GlobalConstants; import org.dromara.common.core.domain.model.RegisterBody; @@ -14,8 +16,11 @@ import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.log.event.LogininforEvent; import org.dromara.common.redis.utils.RedisUtils; +import org.dromara.common.tenant.helper.TenantHelper; import org.dromara.common.web.config.properties.CaptchaProperties; +import org.dromara.system.domain.SysUser; import org.dromara.system.domain.bo.SysUserBo; +import org.dromara.system.mapper.SysUserMapper; import org.dromara.system.service.ISysUserService; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; @@ -30,6 +35,7 @@ import org.springframework.stereotype.Service; public class SysRegisterService { private final ISysUserService userService; + private final SysUserMapper userMapper; private final CaptchaProperties captchaProperties; /** @@ -53,7 +59,11 @@ public class SysRegisterService { sysUser.setPassword(BCrypt.hashpw(password)); sysUser.setUserType(userType); - if (!userService.checkUserNameUnique(sysUser)) { + boolean exist = userMapper.exists(new LambdaQueryWrapper() + .eq(TenantHelper.isEnable(), SysUser::getTenantId, tenantId) + .eq(SysUser::getUserName, sysUser.getUserName()) + .ne(ObjectUtil.isNotNull(sysUser.getUserId()), SysUser::getUserId, sysUser.getUserId())); + if (exist) { throw new UserException("user.register.save.error", username); } boolean regFlag = userService.registerUser(sysUser, tenantId);