From 48992b574dc0fa4f63c171c33c40a790018da85a 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, 13 Mar 2026 19:36:14 +0800 Subject: [PATCH] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E7=BB=9F?= =?UTF-8?q?=E4=B8=80=E8=A1=A5=E5=85=A8=E4=BB=A3=E7=A0=81=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/controller/AuthController.java | 22 ++-- .../web/controller/CaptchaController.java | 20 ++-- .../web/controller/IndexController.java | 4 +- .../org/dromara/web/domain/vo/CaptchaVo.java | 3 + .../dromara/web/domain/vo/LoginTenantVo.java | 2 +- .../org/dromara/web/domain/vo/LoginVo.java | 2 +- .../web/listener/UserActionListener.java | 10 +- .../dromara/web/service/IAuthStrategy.java | 2 +- .../dromara/web/service/SysLoginService.java | 14 ++- .../web/service/SysRegisterService.java | 3 +- .../web/service/impl/EmailAuthStrategy.java | 19 ++- .../service/impl/PasswordAuthStrategy.java | 19 ++- .../web/service/impl/SmsAuthStrategy.java | 19 ++- .../web/service/impl/SocialAuthStrategy.java | 9 +- .../web/service/impl/XcxAuthStrategy.java | 13 +++ .../common/core/config/ThreadPoolConfig.java | 5 + .../common/core/config/ValidatorConfig.java | 3 + .../common/core/constant/CacheConstants.java | 2 +- .../common/core/constant/CacheNames.java | 2 +- .../common/core/constant/Constants.java | 2 +- .../common/core/constant/GlobalConstants.java | 2 +- .../core/domain/dto/CompleteTaskDTO.java | 5 + .../common/core/domain/dto/OssDTO.java | 2 +- .../common/core/domain/dto/PostDTO.java | 2 +- .../common/core/domain/dto/RoleDTO.java | 3 +- .../core/domain/dto/StartProcessDTO.java | 12 +- .../domain/dto/StartProcessReturnDTO.java | 2 +- .../core/domain/dto/TaskAssigneeDTO.java | 5 +- .../common/core/domain/dto/UserOnlineDTO.java | 3 +- .../core/domain/model/EmailLoginBody.java | 3 +- .../common/core/domain/model/LoginBody.java | 5 +- .../common/core/domain/model/LoginUser.java | 6 +- .../core/domain/model/SmsLoginBody.java | 3 +- .../core/domain/model/SocialLoginBody.java | 3 +- .../core/domain/model/XcxLoginBody.java | 3 +- .../core/domain/model/XcxLoginUser.java | 4 +- .../common/core/enums/BusinessStatusEnum.java | 2 +- .../dromara/common/core/enums/DeviceType.java | 2 +- .../dromara/common/core/enums/LoginType.java | 2 +- .../dromara/common/core/enums/UserStatus.java | 7 ++ .../dromara/common/core/enums/UserType.java | 6 + .../core/exception/ServiceException.java | 31 ++++- .../common/core/exception/SseException.java | 25 +++- .../core/exception/base/BaseException.java | 26 ++++- .../common/core/service/WorkflowService.java | 9 +- .../common/doc/config/SpringDocConfig.java | 12 ++ .../core/model/SaTokenSecurityMetadata.java | 1 + .../doc/core/resolver/JavadocResolver.java | 12 +- ...okenAnnotationMetadataJavadocResolver.java | 30 +++++ .../common/doc/handler/OpenApiHandler.java | 25 ++++ .../common/json/config/JacksonConfig.java | 10 ++ .../dromara/common/json/utils/JsonUtils.java | 5 + .../dromara/common/log/aspect/LogAspect.java | 32 ++++- .../dromara/common/mail/utils/MailUtils.java | 6 +- .../handler/MybatisExceptionHandler.java | 12 +- .../common/mybatis/helper/DataBaseHelper.java | 4 +- .../mybatis/helper/DataPermissionHelper.java | 18 ++- .../dromara/common/oss/core/OssClient.java | 3 + .../common/oss/core/WriteOutSubscriber.java | 6 + .../common/oss/exception/OssException.java | 5 + .../common/oss/factory/OssFactory.java | 9 +- .../redis/handler/KeyPrefixHandler.java | 15 ++- .../redis/handler/RedisExceptionHandler.java | 6 +- .../redis/manager/CaffeineCacheDecorator.java | 74 ++++++++++++ .../redis/manager/PlusSpringCacheManager.java | 34 +++++- .../common/redis/utils/CacheUtils.java | 1 + .../common/redis/utils/QueueUtils.java | 35 +++++- .../common/redis/utils/RedisUtils.java | 3 + .../core/service/SaPermissionImpl.java | 17 ++- .../handler/SaTokenExceptionHandler.java | 18 ++- .../common/satoken/utils/LoginHelper.java | 43 +++++-- .../security/config/SecurityConfig.java | 8 +- .../config/properties/SecurityProperties.java | 2 - .../security/handler/AllUrlHandler.java | 3 + .../config/SocialAutoConfiguration.java | 6 + .../common/social/utils/SocialUtils.java | 18 +++ .../common/sse/controller/SseController.java | 12 +- .../common/sse/core/SseEmitterManager.java | 12 +- .../common/sse/utils/SseMessageUtils.java | 12 +- .../core/TranslationInterface.java | 4 +- .../TranslationBeanSerializerModifier.java | 8 ++ .../core/handler/TranslationHandler.java | 20 ++++ .../core/impl/DeptNameTranslationImpl.java | 7 ++ .../core/impl/DictTypeTranslationImpl.java | 7 ++ .../core/impl/NicknameTranslationImpl.java | 7 ++ .../core/impl/OssUrlTranslationImpl.java | 7 ++ .../core/impl/UserNameTranslationImpl.java | 7 ++ .../common/web/config/FilterConfig.java | 10 ++ .../dromara/common/web/config/I18nConfig.java | 5 + .../common/web/config/ResourcesConfig.java | 19 +++ .../config/properties/CaptchaProperties.java | 3 + .../web/config/properties/XssProperties.java | 6 +- .../common/web/core/BaseController.java | 3 + .../common/web/core/I18nLocaleResolver.java | 15 ++- .../common/web/core/WaveAndCircleCaptcha.java | 72 +++++++++++- .../common/web/filter/RepeatableFilter.java | 21 +++- .../web/filter/RepeatedlyRequestWrapper.java | 21 +++- .../dromara/common/web/filter/XssFilter.java | 29 ++++- .../filter/XssHttpServletRequestWrapper.java | 34 +++++- .../PlusWebInvokeTimeInterceptor.java | 26 ++++- .../websocket/utils/WebSocketUtils.java | 14 +-- .../monitor/admin/config/SecurityConfig.java | 7 ++ .../admin/notifier/CustomNotifier.java | 7 ++ .../demo/service/ITestDemoService.java | 31 +++-- .../demo/service/ITestTreeService.java | 14 ++- .../service/impl/TestDemoServiceImpl.java | 56 ++++++++- .../service/impl/TestTreeServiceImpl.java | 37 ++++++ .../dromara/generator/config/GenConfig.java | 20 ++++ .../config/MyBatisDataSourceMonitor.java | 6 + .../generator/constant/GenConstants.java | 2 +- .../generator/controller/GenController.java | 35 +++++- .../dromara/generator/domain/GenTable.java | 37 +++++- .../generator/domain/GenTableColumn.java | 109 ++++++++++++++++++ .../service/GenTableServiceImpl.java | 28 +++++ .../generator/service/IGenTableService.java | 10 +- .../org/dromara/generator/util/GenUtils.java | 8 +- .../generator/util/VelocityInitializer.java | 2 + .../dromara/generator/util/VelocityUtils.java | 19 ++- .../job/snailjob/TestAnnoJobExecutor.java | 6 + .../controller/monitor/CacheController.java | 4 +- .../monitor/SysLoginInfoController.java | 23 +++- .../monitor/SysOperlogController.java | 17 ++- .../monitor/SysUserOnlineController.java | 13 ++- .../system/SysClientController.java | 32 +++-- .../system/SysConfigController.java | 33 +++++- .../controller/system/SysDeptController.java | 19 ++- .../system/SysDictDataController.java | 24 +++- .../system/SysDictTypeController.java | 31 ++++- .../controller/system/SysMenuController.java | 26 ++++- .../system/SysNoticeController.java | 18 ++- .../system/SysOssConfigController.java | 27 ++++- .../controller/system/SysOssController.java | 11 +- .../controller/system/SysPostController.java | 29 ++++- .../system/SysProfileController.java | 11 +- .../controller/system/SysRoleController.java | 54 +++++++-- .../system/SysSocialController.java | 4 +- .../controller/system/SysUserController.java | 54 +++++++-- .../system/service/ISysPostService.java | 20 ++-- .../system/service/ISysRoleService.java | 26 ++--- .../system/service/ISysUserService.java | 16 +-- .../service/impl/SysClientServiceImpl.java | 33 ++++++ .../service/impl/SysConfigServiceImpl.java | 10 +- .../service/impl/SysDataScopeServiceImpl.java | 5 +- .../service/impl/SysDeptServiceImpl.java | 12 ++ .../service/impl/SysDictDataServiceImpl.java | 6 + .../service/impl/SysDictTypeServiceImpl.java | 10 +- .../service/impl/SysLoginInfoServiceImpl.java | 6 + .../service/impl/SysMenuServiceImpl.java | 6 +- .../service/impl/SysNoticeServiceImpl.java | 6 + .../service/impl/SysOperLogServiceImpl.java | 6 + .../service/impl/SysOssConfigServiceImpl.java | 46 ++++++++ .../service/impl/SysOssServiceImpl.java | 22 ++++ .../impl/SysPermissionServiceImpl.java | 6 + .../service/impl/SysRoleServiceImpl.java | 6 + .../service/impl/SysSensitiveServiceImpl.java | 4 + .../service/impl/SysSocialServiceImpl.java | 23 ++++ .../service/impl/SysUserServiceImpl.java | 13 +++ .../common/constant/FlowConstant.java | 20 ++-- .../common/enums/ButtonPermissionEnum.java | 11 ++ .../common/enums/CopySettingEnum.java | 12 ++ .../common/enums/MessageTypeEnum.java | 10 +- .../workflow/common/enums/NodeExtEnum.java | 8 +- .../common/enums/TaskAssigneeEnum.java | 20 ++-- .../common/enums/TaskOperationEnum.java | 14 ++- .../workflow/common/enums/TaskStatusEnum.java | 5 +- .../workflow/common/enums/VariablesEnum.java | 14 ++- .../workflow/config/WarmFlowConfig.java | 2 +- .../controller/FlwCategoryController.java | 29 +++-- .../controller/FlwDefinitionController.java | 53 ++++++--- .../controller/FlwInstanceController.java | 39 ++++--- .../controller/FlwSpelController.java | 25 +++- .../controller/FlwTaskController.java | 55 ++++++--- .../controller/TestLeaveController.java | 35 ++++-- .../workflow/domain/bo/FlowCancelBo.java | 2 +- .../workflow/domain/bo/FlowCopyBo.java | 2 +- .../workflow/domain/bo/FlowInstanceBo.java | 2 +- .../workflow/domain/bo/FlowInvalidBo.java | 2 +- .../workflow/domain/bo/FlowNextNodeBo.java | 7 +- .../domain/vo/ButtonPermissionVo.java | 11 +- .../workflow/domain/vo/FlowCopyVo.java | 7 +- .../workflow/domain/vo/FlowInstanceVo.java | 5 +- .../workflow/domain/vo/FlowTaskVo.java | 10 +- .../handler/WorkflowPermissionHandler.java | 7 +- .../listener/WorkflowGlobalListener.java | 10 +- .../workflow/rule/SpelRuleComponent.java | 5 +- .../service/IFlwDefinitionService.java | 6 +- .../workflow/service/IFlwInstanceService.java | 18 +-- .../workflow/service/IFlwSpelService.java | 12 +- .../workflow/service/IFlwTaskService.java | 26 ++--- .../workflow/service/ITestLeaveService.java | 38 ++++-- .../impl/CategoryNameTranslationImpl.java | 7 ++ .../service/impl/FlwCategoryServiceImpl.java | 6 + .../service/impl/FlwChartExtServiceImpl.java | 2 +- .../impl/FlwDefinitionServiceImpl.java | 14 ++- .../service/impl/FlwInstanceServiceImpl.java | 15 +++ .../service/impl/FlwNodeExtServiceImpl.java | 11 ++ .../service/impl/FlwSpelServiceImpl.java | 8 ++ .../impl/FlwTaskAssigneeServiceImpl.java | 22 +++- .../service/impl/FlwTaskServiceImpl.java | 26 +++++ .../service/impl/TestLeaveServiceImpl.java | 31 +++++ .../service/impl/WorkflowServiceImpl.java | 7 ++ 201 files changed, 2554 insertions(+), 465 deletions(-) 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 2084547df..4e080dcac 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 @@ -47,7 +47,7 @@ import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.TimeUnit; /** - * 认证 + * 认证控制器,提供登录、注册、社交绑定和退出能力。 * * @author Lion Li */ @@ -103,10 +103,10 @@ public class AuthController { } /** - * 获取跳转URL + * 获取第三方绑定跳转地址。 * * @param source 登录来源 - * @return 结果 + * @return 跳转地址 */ @GetMapping("/binding/{source}") public R authBinding(@PathVariable("source") String source) { @@ -120,10 +120,10 @@ public class AuthController { } /** - * 前端回调绑定授权(需要token) + * 处理前端回调后的社交账号绑定。 * * @param loginBody 请求体 - * @return 结果 + * @return 操作结果 */ @PostMapping("/social/callback") public R socialCallback(@RequestBody SocialLoginBody loginBody) { @@ -144,9 +144,10 @@ public class AuthController { /** - * 取消授权(需要token) + * 取消当前用户的社交账号授权。 * * @param socialId socialId + * @return 操作结果 */ @DeleteMapping(value = "/unlock/{socialId}") public R unlockSocial(@PathVariable Long socialId) { @@ -167,7 +168,10 @@ public class AuthController { } /** - * 用户注册 + * 用户注册。 + * + * @param user 注册信息 + * @return 操作结果 */ @ApiEncrypt @PostMapping("/register") @@ -180,9 +184,11 @@ public class AuthController { } /** - * 登录页面租户下拉框 + * 获取登录页租户下拉框数据,当前仅预留返回结构。 * + * @param request 当前请求 * @return 租户列表 + * @throws Exception 异常 */ @RateLimiter(time = 60, count = 20, limitType = LimitType.IP) @GetMapping("/tenant/list") diff --git a/ruoyi-admin/src/main/java/org/dromara/web/controller/CaptchaController.java b/ruoyi-admin/src/main/java/org/dromara/web/controller/CaptchaController.java index d34d1c064..ab9f3acab 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/controller/CaptchaController.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/controller/CaptchaController.java @@ -53,9 +53,10 @@ public class CaptchaController { private final MailProperties mailProperties; /** - * 短信验证码 + * 发送短信验证码。 * * @param phonenumber 用户手机号 + * @return 操作结果 */ @RateLimiter(key = "#phonenumber", time = 60, count = 1) @GetMapping("/resource/sms/code") @@ -77,9 +78,10 @@ public class CaptchaController { } /** - * 邮箱验证码 + * 发送邮箱验证码。 * * @param email 邮箱 + * @return 操作结果 */ @GetMapping("/resource/email/code") public R emailCode(@NotBlank(message = "{user.email.not.blank}") String email) { @@ -91,8 +93,9 @@ public class CaptchaController { } /** - * 邮箱验证码 - * 独立方法避免验证码关闭之后仍然走限流 + * 发送邮箱验证码的实际执行方法,拆分出来避免开关关闭时仍触发限流。 + * + * @param email 邮箱 */ @RateLimiter(key = "#email", time = 60, count = 1) public void emailCodeImpl(String email) { @@ -108,7 +111,9 @@ public class CaptchaController { } /** - * 生成验证码 + * 获取图片验证码。 + * + * @return 验证码信息 */ @GetMapping("/auth/code") public R getCode() { @@ -122,8 +127,9 @@ public class CaptchaController { } /** - * 生成验证码 - * 独立方法避免验证码关闭之后仍然走限流 + * 实际生成图片验证码并缓存结果。 + * + * @return 验证码信息 */ @RateLimiter(time = 60, count = 10, limitType = LimitType.IP) public CaptchaVo getCodeImpl() { diff --git a/ruoyi-admin/src/main/java/org/dromara/web/controller/IndexController.java b/ruoyi-admin/src/main/java/org/dromara/web/controller/IndexController.java index cdcfed62a..4893c1754 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/controller/IndexController.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/controller/IndexController.java @@ -18,7 +18,9 @@ import org.springframework.web.bind.annotation.RestController; public class IndexController { /** - * 访问首页,提示语 + * 访问首页时返回引导提示。 + * + * @return 首页提示语 */ @GetMapping("/") public String index() { diff --git a/ruoyi-admin/src/main/java/org/dromara/web/domain/vo/CaptchaVo.java b/ruoyi-admin/src/main/java/org/dromara/web/domain/vo/CaptchaVo.java index 664df1ee6..df08f9ee8 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/domain/vo/CaptchaVo.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/domain/vo/CaptchaVo.java @@ -15,6 +15,9 @@ public class CaptchaVo { */ private Boolean captchaEnabled = true; + /** + * 验证码唯一标识。 + */ private String uuid; /** diff --git a/ruoyi-admin/src/main/java/org/dromara/web/domain/vo/LoginTenantVo.java b/ruoyi-admin/src/main/java/org/dromara/web/domain/vo/LoginTenantVo.java index 554d667c8..cde1f3770 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/domain/vo/LoginTenantVo.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/domain/vo/LoginTenantVo.java @@ -3,7 +3,7 @@ package org.dromara.web.domain.vo; import lombok.Data; /** - * 登录租户对象 + * 登录页租户信息返回对象。 * * @author Michelle.Chung */ diff --git a/ruoyi-admin/src/main/java/org/dromara/web/domain/vo/LoginVo.java b/ruoyi-admin/src/main/java/org/dromara/web/domain/vo/LoginVo.java index 834afe5a1..b38ac3324 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/domain/vo/LoginVo.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/domain/vo/LoginVo.java @@ -4,7 +4,7 @@ import com.fasterxml.jackson.annotation.JsonProperty; import lombok.Data; /** - * 登录验证信息 + * 登录成功后的令牌信息返回对象。 * * @author Michelle.Chung */ diff --git a/ruoyi-admin/src/main/java/org/dromara/web/listener/UserActionListener.java b/ruoyi-admin/src/main/java/org/dromara/web/listener/UserActionListener.java index 7d7c3d32f..d99b51dbd 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/listener/UserActionListener.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/listener/UserActionListener.java @@ -22,7 +22,7 @@ import org.springframework.stereotype.Component; import java.time.Duration; /** - * 用户行为 侦听器的实现 + * 用户行为监听器,用于同步在线状态和登录日志。 * * @author Lion Li */ @@ -34,7 +34,7 @@ public class UserActionListener implements SaTokenListener { private final SysLoginService loginService; /** - * 每次登录时触发 + * 登录成功后记录在线信息并写入登录日志。 */ @Override public void doLogin(String loginType, Object loginId, String tokenValue, SaLoginParameter loginParameter) { @@ -71,7 +71,7 @@ public class UserActionListener implements SaTokenListener { } /** - * 每次注销时触发 + * 注销时清理在线缓存。 */ @Override public void doLogout(String loginType, Object loginId, String tokenValue) { @@ -80,7 +80,7 @@ public class UserActionListener implements SaTokenListener { } /** - * 每次被踢下线时触发 + * 被踢下线时清理在线缓存。 */ @Override public void doKickout(String loginType, Object loginId, String tokenValue) { @@ -89,7 +89,7 @@ public class UserActionListener implements SaTokenListener { } /** - * 每次被顶下线时触发 + * 被顶下线时清理在线缓存。 */ @Override public void doReplaced(String loginType, Object loginId, String tokenValue) { diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/IAuthStrategy.java b/ruoyi-admin/src/main/java/org/dromara/web/service/IAuthStrategy.java index a75b9131e..15546e89f 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/IAuthStrategy.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/IAuthStrategy.java @@ -39,7 +39,7 @@ public interface IAuthStrategy { * * @param body 登录对象 * @param client 授权管理视图对象 - * @return 登录验证信息 + * @return 当前策略完成认证后的登录结果 */ LoginVo login(String body, SysClientVo client); diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java b/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java index d8918085c..936236a15 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java @@ -136,7 +136,10 @@ public class SysLoginService { } /** - * 构建登录用户 + * 根据用户视图对象组装登录态上下文。 + * + * @param user 用户基础信息 + * @return 包含部门、角色、岗位与权限数据的登录用户 */ public LoginUser buildLoginUser(SysUserVo user) { LoginUser loginUser = new LoginUser(); @@ -168,9 +171,10 @@ public class SysLoginService { } /** - * 记录登录信息 + * 更新用户最近一次登录IP与登录时间。 * * @param userId 用户ID + * @param ip 登录IP */ public void recordLoginInfo(Long userId, String ip) { SysUser sysUser = new SysUser(); @@ -182,7 +186,11 @@ public class SysLoginService { } /** - * 登录校验 + * 执行登录失败次数校验,并在成功后清空失败计数。 + * + * @param loginType 登录类型 + * @param username 登录标识 + * @param supplier 返回 {@code true} 表示本次认证失败 */ public void checkLogin(LoginType loginType, String username, Supplier supplier) { String errorKey = CacheConstants.PWD_ERR_CNT_KEY + username; 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 60d4aa48e..875d794e0 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 @@ -38,6 +38,8 @@ public class SysRegisterService { /** * 注册 + * + * @param registerBody 注册请求参数 */ public void register(RegisterBody registerBody) { String username = registerBody.getUsername(); @@ -95,7 +97,6 @@ public class SysRegisterService { * @param username 用户名 * @param status 状态 * @param message 消息内容 - * @return */ private void recordLoginInfo(String username, String status, String message) { LoginInfoEvent loginInfoEvent = new LoginInfoEvent(); 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 08342cac5..73e9ec92f 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 @@ -42,6 +42,13 @@ public class EmailAuthStrategy implements IAuthStrategy { private final SysLoginService loginService; private final SysUserMapper userMapper; + /** + * 执行邮箱验证码登录,并按客户端配置生成访问令牌。 + * + * @param body 登录请求体 + * @param client 当前客户端配置 + * @return 登录结果 + */ @Override public LoginVo login(String body, SysClientVo client) { EmailLoginBody loginBody = JsonUtils.parseObject(body, EmailLoginBody.class); @@ -72,7 +79,11 @@ public class EmailAuthStrategy implements IAuthStrategy { } /** - * 校验邮箱验证码 + * 校验邮箱验证码是否存在且匹配。 + * + * @param email 邮箱地址 + * @param emailCode 用户输入的邮箱验证码 + * @return 是否校验通过 */ private boolean validateEmailCode(String email, String emailCode) { String code = RedisUtils.getCacheObject(GlobalConstants.CAPTCHA_CODE_KEY + email); @@ -83,6 +94,12 @@ public class EmailAuthStrategy implements IAuthStrategy { return code.equals(emailCode); } + /** + * 按邮箱加载可登录用户,并校验是否存在或被停用。 + * + * @param email 邮箱地址 + * @return 用户信息 + */ private SysUserVo loadUserByEmail(String email) { SysUserVo user = userMapper.selectVoOne(new LambdaQueryWrapper().eq(SysUser::getEmail, email)); if (ObjectUtil.isNull(user)) { 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 635e83441..4968d8491 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 @@ -46,6 +46,13 @@ public class PasswordAuthStrategy implements IAuthStrategy { private final SysLoginService loginService; private final SysUserMapper userMapper; + /** + * 执行账号密码登录,并按客户端配置生成访问令牌。 + * + * @param body 登录请求体 + * @param client 当前客户端配置 + * @return 登录结果 + */ @Override public LoginVo login(String body, SysClientVo client) { PasswordLoginBody loginBody = JsonUtils.parseObject(body, PasswordLoginBody.class); @@ -84,11 +91,11 @@ public class PasswordAuthStrategy implements IAuthStrategy { } /** - * 校验验证码 + * 校验图形验证码是否有效且匹配。 * * @param username 用户名 - * @param code 验证码 - * @param uuid 唯一标识 + * @param code 用户输入的验证码 + * @param uuid 验证码缓存标识 */ private void validateCaptcha(String username, String code, String uuid) { String verifyKey = GlobalConstants.CAPTCHA_CODE_KEY + StringUtils.blankToDefault(uuid, ""); @@ -104,6 +111,12 @@ public class PasswordAuthStrategy implements IAuthStrategy { } } + /** + * 按用户名加载可登录用户,并校验是否存在或被停用。 + * + * @param username 用户名 + * @return 用户信息 + */ private SysUserVo loadUserByUsername(String username) { SysUserVo user = userMapper.selectVoOne(new LambdaQueryWrapper().eq(SysUser::getUserName, username)); if (ObjectUtil.isNull(user)) { 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 d134f72a6..3dd0e5ada 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 @@ -42,6 +42,13 @@ public class SmsAuthStrategy implements IAuthStrategy { private final SysLoginService loginService; private final SysUserMapper userMapper; + /** + * 执行短信验证码登录,并按客户端配置生成访问令牌。 + * + * @param body 登录请求体 + * @param client 当前客户端配置 + * @return 登录结果 + */ @Override public LoginVo login(String body, SysClientVo client) { SmsLoginBody loginBody = JsonUtils.parseObject(body, SmsLoginBody.class); @@ -72,7 +79,11 @@ public class SmsAuthStrategy implements IAuthStrategy { } /** - * 校验短信验证码 + * 校验短信验证码是否存在且匹配。 + * + * @param phonenumber 手机号 + * @param smsCode 用户输入的短信验证码 + * @return 是否校验通过 */ private boolean validateSmsCode(String phonenumber, String smsCode) { String code = RedisUtils.getCacheObject(GlobalConstants.CAPTCHA_CODE_KEY + phonenumber); @@ -83,6 +94,12 @@ public class SmsAuthStrategy implements IAuthStrategy { return code.equals(smsCode); } + /** + * 按手机号加载可登录用户,并校验是否存在或被停用。 + * + * @param phonenumber 手机号 + * @return 用户信息 + */ private SysUserVo loadUserByPhonenumber(String phonenumber) { SysUserVo user = userMapper.selectVoOne(new LambdaQueryWrapper().eq(SysUser::getPhonenumber, phonenumber)); if (ObjectUtil.isNull(user)) { 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 23edbb6b5..d8692fbc0 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 @@ -46,10 +46,11 @@ public class SocialAuthStrategy implements IAuthStrategy { private final SysLoginService loginService; /** - * 登录-第三方授权登录 + * 执行第三方授权登录,并校验授权账号与系统账号的绑定关系。 * * @param body 登录信息 * @param client 客户端信息 + * @return 登录结果 */ @Override public LoginVo login(String body, SysClientVo client) { @@ -89,6 +90,12 @@ public class SocialAuthStrategy implements IAuthStrategy { return loginVo; } + /** + * 根据用户ID加载用户,并校验账号状态是否允许登录。 + * + * @param userId 用户ID + * @return 用户信息 + */ private SysUserVo loadUser(Long userId) { SysUserVo user = userMapper.selectVoById(userId); if (ObjectUtil.isNull(user)) { 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 142651994..db8ba66d3 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 @@ -38,6 +38,13 @@ public class XcxAuthStrategy implements IAuthStrategy { private final SysLoginService loginService; + /** + * 执行微信小程序登录,并根据 openid 构建小程序用户登录态。 + * + * @param body 登录请求体 + * @param client 当前客户端配置 + * @return 登录结果 + */ @Override public LoginVo login(String body, SysClientVo client) { XcxLoginBody loginBody = JsonUtils.parseObject(body, XcxLoginBody.class); @@ -93,6 +100,12 @@ public class XcxAuthStrategy implements IAuthStrategy { return loginVo; } + /** + * 按 openid 查询小程序绑定用户。 + * + * @param openid 小程序用户唯一标识 + * @return 绑定的系统用户信息 + */ private SysUserVo loadUserByOpenid(String openid) { // 使用 openid 查询绑定用户 如未绑定用户 则根据业务自行处理 例如 创建默认用户 // todo 自行实现 userService.selectUserByOpenid(openid); diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/config/ThreadPoolConfig.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/config/ThreadPoolConfig.java index 1cc3bd683..c5caae8b1 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/config/ThreadPoolConfig.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/config/ThreadPoolConfig.java @@ -28,6 +28,8 @@ public class ThreadPoolConfig { /** * 执行周期性或定时任务 + * + * @return 全局定时任务线程池 */ @Bean(name = "scheduledExecutorService") protected ScheduledExecutorService scheduledExecutorService() { @@ -85,6 +87,9 @@ public class ThreadPoolConfig { /** * 打印线程异常信息 + * + * @param r 已执行的任务 + * @param t 任务执行过程中抛出的异常 */ public static void printException(Runnable r, Throwable t) { if (t == null && r instanceof Future) { diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/config/ValidatorConfig.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/config/ValidatorConfig.java index 3c8e60780..a56cb5bd4 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/config/ValidatorConfig.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/config/ValidatorConfig.java @@ -20,6 +20,9 @@ public class ValidatorConfig { /** * 配置校验框架 快速失败模式 + * + * @param messageSource 国际化消息源 + * @return 启用快速失败模式的校验器 */ @Bean public Validator validator(MessageSource messageSource) { diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/CacheConstants.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/CacheConstants.java index ceb837044..11cd764df 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/CacheConstants.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/CacheConstants.java @@ -1,7 +1,7 @@ package org.dromara.common.core.constant; /** - * 缓存的key 常量 + * Redis 缓存键前缀常量。 * * @author Lion Li */ diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/CacheNames.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/CacheNames.java index 4e07ac5f9..b6c7be2b9 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/CacheNames.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/CacheNames.java @@ -1,7 +1,7 @@ package org.dromara.common.core.constant; /** - * 缓存组名称常量 + * 缓存组名称常量,统一约定缓存名和缓存策略配置格式。 *

* key 格式为 cacheNames#ttl#maxIdleTime#maxSize#local *

diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/Constants.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/Constants.java index 0c6671a62..771637943 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/Constants.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/Constants.java @@ -1,7 +1,7 @@ package org.dromara.common.core.constant; /** - * 通用常量信息 + * 通用基础常量定义。 * * @author ruoyi */ diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/GlobalConstants.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/GlobalConstants.java index 5352b118f..f3b6992cf 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/GlobalConstants.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/GlobalConstants.java @@ -1,7 +1,7 @@ package org.dromara.common.core.constant; /** - * 全局的key常量 (业务无关的key) + * 全局通用键常量,主要用于业务无关的 Redis Key 前缀定义。 * * @author Lion Li */ diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/CompleteTaskDTO.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/CompleteTaskDTO.java index 21a561e61..21f034a32 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/CompleteTaskDTO.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/CompleteTaskDTO.java @@ -65,6 +65,11 @@ public class CompleteTaskDTO implements Serializable { */ private String ext; + /** + * 获取流程变量并自动剔除空值。 + * + * @return 流程变量 + */ public Map getVariables() { if (variables == null) { variables = new HashMap<>(16); diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/OssDTO.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/OssDTO.java index 463821c5f..dee986f65 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/OssDTO.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/OssDTO.java @@ -7,7 +7,7 @@ import java.io.Serial; import java.io.Serializable; /** - * OSS对象 + * OSS 文件简要信息对象。 * * @author Lion Li */ diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/PostDTO.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/PostDTO.java index 7536ee33d..65547c097 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/PostDTO.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/PostDTO.java @@ -7,7 +7,7 @@ import java.io.Serial; import java.io.Serializable; /** - * 岗位 + * 岗位简要信息对象。 * * @author AprilWind */ diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/RoleDTO.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/RoleDTO.java index d14ffbb0f..52d510f92 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/RoleDTO.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/RoleDTO.java @@ -7,11 +7,10 @@ import java.io.Serial; import java.io.Serializable; /** - * 角色 + * 角色简要信息对象。 * * @author Lion Li */ - @Data @NoArgsConstructor public class RoleDTO implements Serializable { diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/StartProcessDTO.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/StartProcessDTO.java index 115b42f68..2a3355232 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/StartProcessDTO.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/StartProcessDTO.java @@ -11,7 +11,7 @@ import java.util.Map; import java.util.Objects; /** - * 启动流程对象 + * 启动流程请求对象。 * * @author may */ @@ -46,6 +46,11 @@ public class StartProcessDTO implements Serializable { */ private FlowInstanceBizExtDTO bizExt; + /** + * 获取流程变量并自动剔除空值。 + * + * @return 流程变量 + */ public Map getVariables() { if (variables == null) { variables = new HashMap<>(16); @@ -55,6 +60,11 @@ public class StartProcessDTO implements Serializable { return variables; } + /** + * 获取流程业务扩展信息,为空时返回默认对象。 + * + * @return 业务扩展信息 + */ public FlowInstanceBizExtDTO getBizExt() { if (ObjectUtil.isNull(bizExt)) { bizExt = new FlowInstanceBizExtDTO(); diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/StartProcessReturnDTO.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/StartProcessReturnDTO.java index 9bcbd12c3..84de4ce1e 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/StartProcessReturnDTO.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/StartProcessReturnDTO.java @@ -7,7 +7,7 @@ import java.io.Serial; import java.io.Serializable; /** - * 启动流程返回对象 + * 启动流程后的返回结果对象。 * * @author Lion Li */ diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/TaskAssigneeDTO.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/TaskAssigneeDTO.java index 78fb40ec9..d3b4dac55 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/TaskAssigneeDTO.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/TaskAssigneeDTO.java @@ -29,7 +29,7 @@ public class TaskAssigneeDTO implements Serializable { private Long total = 0L; /** - * + * 受让人列表。 */ private List list; @@ -67,6 +67,9 @@ public class TaskAssigneeDTO implements Serializable { )).collect(Collectors.toList()); } + /** + * 任务受让人明细对象。 + */ @Data @NoArgsConstructor @AllArgsConstructor 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 4f6534ffa..2c48a4479 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 @@ -7,11 +7,10 @@ import java.io.Serial; import java.io.Serializable; /** - * 当前在线会话 + * 当前在线会话信息对象。 * * @author ruoyi */ - @Data @NoArgsConstructor public class UserOnlineDTO implements Serializable { diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/EmailLoginBody.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/EmailLoginBody.java index ffde8c63a..0ac3e9864 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/EmailLoginBody.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/EmailLoginBody.java @@ -6,11 +6,10 @@ import lombok.Data; import lombok.EqualsAndHashCode; /** - * 邮件登录对象 + * 邮箱验证码登录请求对象。 * * @author Lion Li */ - @Data @EqualsAndHashCode(callSuper = true) public class EmailLoginBody extends LoginBody { diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/LoginBody.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/LoginBody.java index 7fd5b703e..4731ba7cf 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/LoginBody.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/LoginBody.java @@ -7,11 +7,10 @@ import java.io.Serial; import java.io.Serializable; /** - * 用户登录对象 + * 通用登录请求对象,封装客户端、授权类型和验证码信息。 * * @author Lion Li */ - @Data public class LoginBody implements Serializable { @@ -36,7 +35,7 @@ public class LoginBody implements Serializable { private String code; /** - * 唯一标识 + * 验证码唯一标识。 */ private String uuid; 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 a3c906eb0..e23ff2d08 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 @@ -12,7 +12,7 @@ import java.util.Map; import java.util.Set; /** - * 登录用户身份权限 + * 登录用户上下文对象,保存当前会话的身份、权限和终端信息。 * * @author Lion Li */ @@ -134,7 +134,9 @@ public class LoginUser implements Serializable { private String deviceType; /** - * 获取登录id + * 获取 Sa-Token 使用的登录标识。 + * + * @return 登录标识 */ public String getLoginId() { if (userType == null) { diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/SmsLoginBody.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/SmsLoginBody.java index a878348f7..c285fa71f 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/SmsLoginBody.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/SmsLoginBody.java @@ -5,11 +5,10 @@ import lombok.Data; import lombok.EqualsAndHashCode; /** - * 短信登录对象 + * 短信验证码登录请求对象。 * * @author Lion Li */ - @Data @EqualsAndHashCode(callSuper = true) public class SmsLoginBody extends LoginBody { diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/SocialLoginBody.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/SocialLoginBody.java index 0d1b12198..6e8945789 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/SocialLoginBody.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/SocialLoginBody.java @@ -5,11 +5,10 @@ import lombok.Data; import lombok.EqualsAndHashCode; /** - * 三方登录对象 + * 第三方平台登录绑定请求对象。 * * @author Lion Li */ - @Data @EqualsAndHashCode(callSuper = true) public class SocialLoginBody extends LoginBody { diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/XcxLoginBody.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/XcxLoginBody.java index 518fe2ef8..823f6f197 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/XcxLoginBody.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/XcxLoginBody.java @@ -5,11 +5,10 @@ import lombok.Data; import lombok.EqualsAndHashCode; /** - * 三方登录对象 + * 小程序登录请求对象。 * * @author Lion Li */ - @Data @EqualsAndHashCode(callSuper = true) public class XcxLoginBody extends LoginBody { diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/XcxLoginUser.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/XcxLoginUser.java index e5f3d6c63..b32b0ec3d 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/XcxLoginUser.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/model/XcxLoginUser.java @@ -7,7 +7,7 @@ import lombok.NoArgsConstructor; import java.io.Serial; /** - * 小程序登录用户身份权限 + * 小程序登录用户上下文对象。 * * @author Lion Li */ @@ -20,7 +20,7 @@ public class XcxLoginUser extends LoginUser { private static final long serialVersionUID = 1L; /** - * openid + * 小程序 openid。 */ private String openid; diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/BusinessStatusEnum.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/BusinessStatusEnum.java index c1660ee93..b22ee70bf 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/BusinessStatusEnum.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/BusinessStatusEnum.java @@ -13,7 +13,7 @@ import java.util.function.Function; import java.util.stream.Collectors; /** - * 业务状态枚举 + * 流程业务状态枚举,统一定义单据在审批流转中的状态。 * * @author may */ diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/DeviceType.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/DeviceType.java index 1667ac7bb..cef24d116 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/DeviceType.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/DeviceType.java @@ -4,7 +4,7 @@ import lombok.AllArgsConstructor; import lombok.Getter; /** - * 设备类型 + * 登录设备类型枚举。 * * @author Lion Li */ diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/LoginType.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/LoginType.java index f9cac66dc..5359603a5 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/LoginType.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/LoginType.java @@ -4,7 +4,7 @@ import lombok.AllArgsConstructor; import lombok.Getter; /** - * 登录类型 + * 登录类型枚举,同时维护不同登录方式对应的重试提示配置。 * * @author Lion Li */ diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/UserStatus.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/UserStatus.java index be7e44d22..0ca6f78e7 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/UserStatus.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/UserStatus.java @@ -24,7 +24,14 @@ public enum UserStatus { */ DELETED("2", "删除"); + /** + * 状态编码。 + */ private final String code; + + /** + * 状态说明。 + */ private final String info; } diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/UserType.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/UserType.java index 636988f2f..3898f8db6 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/UserType.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/enums/UserType.java @@ -28,6 +28,12 @@ public enum UserType { */ private final String userType; + /** + * 根据字符串内容匹配用户类型。 + * + * @param str 待匹配字符串 + * @return 用户类型 + */ public static UserType getUserType(String str) { for (UserType value : values()) { if (StringUtils.contains(str, value.getUserType())) { diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/exception/ServiceException.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/exception/ServiceException.java index 90f5752b1..75e33cc54 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/exception/ServiceException.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/exception/ServiceException.java @@ -9,7 +9,7 @@ import lombok.NoArgsConstructor; import java.io.Serial; /** - * 业务异常(支持占位符 {} ) + * 通用业务异常,支持使用占位符拼接错误信息。 * * @author ruoyi */ @@ -37,15 +37,32 @@ public final class ServiceException extends RuntimeException { */ private String detailMessage; + /** + * 使用错误消息构造业务异常。 + * + * @param message 错误消息 + */ public ServiceException(String message) { this.message = message; } + /** + * 使用错误消息和错误码构造业务异常。 + * + * @param message 错误消息 + * @param code 错误码 + */ public ServiceException(String message, Integer code) { this.message = message; this.code = code; } + /** + * 使用占位符参数格式化错误消息。 + * + * @param message 模板消息 + * @param args 参数 + */ public ServiceException(String message, Object... args) { this.message = StrFormatter.format(message, args); } @@ -55,11 +72,23 @@ public final class ServiceException extends RuntimeException { return message; } + /** + * 设置错误消息并返回当前异常对象。 + * + * @param message 错误消息 + * @return 当前异常对象 + */ public ServiceException setMessage(String message) { this.message = message; return this; } + /** + * 设置错误明细并返回当前异常对象。 + * + * @param detailMessage 错误明细 + * @return 当前异常对象 + */ public ServiceException setDetailMessage(String detailMessage) { this.detailMessage = detailMessage; return this; diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/exception/SseException.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/exception/SseException.java index a76e16d9c..91368c128 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/exception/SseException.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/exception/SseException.java @@ -8,7 +8,7 @@ import lombok.NoArgsConstructor; import java.io.Serial; /** - * sse 特制异常 + * SSE 场景专用异常。 * * @author LionLi */ @@ -36,10 +36,21 @@ public final class SseException extends RuntimeException { */ private String detailMessage; + /** + * 使用错误消息构造 SSE 异常。 + * + * @param message 错误消息 + */ public SseException(String message) { this.message = message; } + /** + * 使用错误消息和错误码构造 SSE 异常。 + * + * @param message 错误消息 + * @param code 错误码 + */ public SseException(String message, Integer code) { this.message = message; this.code = code; @@ -50,11 +61,23 @@ public final class SseException extends RuntimeException { return message; } + /** + * 设置错误消息并返回当前异常对象。 + * + * @param message 错误消息 + * @return 当前异常对象 + */ public SseException setMessage(String message) { this.message = message; return this; } + /** + * 设置错误明细并返回当前异常对象。 + * + * @param detailMessage 错误明细 + * @return 当前异常对象 + */ public SseException setDetailMessage(String detailMessage) { this.detailMessage = detailMessage; return this; diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/exception/base/BaseException.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/exception/base/BaseException.java index 40ce01ba8..4f47a8acf 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/exception/base/BaseException.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/exception/base/BaseException.java @@ -10,7 +10,7 @@ import lombok.NoArgsConstructor; import java.io.Serial; /** - * 基础异常 + * 基础国际化异常,支持按错误码解析最终提示信息。 * * @author ruoyi */ @@ -43,18 +43,42 @@ public class BaseException extends RuntimeException { */ private String defaultMessage; + /** + * 使用模块、错误码和参数构造异常。 + * + * @param module 所属模块 + * @param code 错误码 + * @param args 参数 + */ public BaseException(String module, String code, Object[] args) { this(module, code, args, null); } + /** + * 使用模块和默认消息构造异常。 + * + * @param module 所属模块 + * @param defaultMessage 默认消息 + */ public BaseException(String module, String defaultMessage) { this(module, null, null, defaultMessage); } + /** + * 使用错误码和参数构造异常。 + * + * @param code 错误码 + * @param args 参数 + */ public BaseException(String code, Object[] args) { this(null, code, args, null); } + /** + * 使用默认消息构造异常。 + * + * @param defaultMessage 默认消息 + */ public BaseException(String defaultMessage) { this(null, null, null, defaultMessage); } diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/WorkflowService.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/WorkflowService.java index 262d3eaed..1f48841af 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/WorkflowService.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/WorkflowService.java @@ -50,6 +50,7 @@ public interface WorkflowService { * 获取流程变量 * * @param instanceId 流程实例id + * @return 流程变量详情 */ Map instanceVariable(Long instanceId); @@ -65,7 +66,7 @@ public interface WorkflowService { * 启动流程 * * @param startProcess 参数 - * @return 结果 + * @return 启动后的流程实例与首任务信息 */ StartProcessReturnDTO startWorkFlow(StartProcessDTO startProcess); @@ -75,7 +76,7 @@ public interface WorkflowService { * completeTask.getVariables().put("ignore", true); * * @param completeTask 参数 - * @return 结果 + * @return 办理成功返回 {@code true} */ boolean completeTask(CompleteTaskDTO completeTask); @@ -84,7 +85,7 @@ public interface WorkflowService { * * @param taskId 任务ID * @param message 办理意见 - * @return 结果 + * @return 办理成功返回 {@code true} */ boolean completeTask(Long taskId, String message); @@ -92,7 +93,7 @@ public interface WorkflowService { * 启动流程并办理第一个任务 * * @param startProcess 参数 - * @return 结果 + * @return 首节点办理成功返回 {@code true} */ boolean startCompleteTask(StartProcessDTO startProcess); } diff --git a/ruoyi-common/ruoyi-common-doc/src/main/java/org/dromara/common/doc/config/SpringDocConfig.java b/ruoyi-common/ruoyi-common-doc/src/main/java/org/dromara/common/doc/config/SpringDocConfig.java index 6af231ee7..74f9b73b0 100644 --- a/ruoyi-common/ruoyi-common-doc/src/main/java/org/dromara/common/doc/config/SpringDocConfig.java +++ b/ruoyi-common/ruoyi-common-doc/src/main/java/org/dromara/common/doc/config/SpringDocConfig.java @@ -44,6 +44,12 @@ public class SpringDocConfig { private final ServerProperties serverProperties; + /** + * 构建基础 OpenAPI 文档对象。 + * + * @param properties SpringDoc 配置 + * @return OpenAPI 对象 + */ @Bean @ConditionalOnMissingBean(OpenAPI.class) public OpenAPI openApi(SpringDocProperties properties) { @@ -68,6 +74,12 @@ public class SpringDocConfig { return openApi; } + /** + * 将自定义文档信息配置转换为 OpenAPI Info。 + * + * @param infoProperties 文档信息配置 + * @return Info 对象 + */ private Info convertInfo(SpringDocProperties.InfoProperties infoProperties) { Info info = new Info(); info.setTitle(infoProperties.getTitle()); diff --git a/ruoyi-common/ruoyi-common-doc/src/main/java/org/dromara/common/doc/core/model/SaTokenSecurityMetadata.java b/ruoyi-common/ruoyi-common-doc/src/main/java/org/dromara/common/doc/core/model/SaTokenSecurityMetadata.java index e0782a20c..2fbad8fda 100644 --- a/ruoyi-common/ruoyi-common-doc/src/main/java/org/dromara/common/doc/core/model/SaTokenSecurityMetadata.java +++ b/ruoyi-common/ruoyi-common-doc/src/main/java/org/dromara/common/doc/core/model/SaTokenSecurityMetadata.java @@ -162,6 +162,7 @@ public class SaTokenSecurityMetadata { /** * 重写mode的获取方法,返回符号而非文字 + * * @return AND→&,OR→|,默认→& */ public String getModeSymbol() { diff --git a/ruoyi-common/ruoyi-common-doc/src/main/java/org/dromara/common/doc/core/resolver/JavadocResolver.java b/ruoyi-common/ruoyi-common-doc/src/main/java/org/dromara/common/doc/core/resolver/JavadocResolver.java index 1e295b8a1..df23db3a0 100644 --- a/ruoyi-common/ruoyi-common-doc/src/main/java/org/dromara/common/doc/core/resolver/JavadocResolver.java +++ b/ruoyi-common/ruoyi-common-doc/src/main/java/org/dromara/common/doc/core/resolver/JavadocResolver.java @@ -15,6 +15,7 @@ public interface JavadocResolver extends Comparable, Ordered { /** * 检查解析器是否支持解析 HandlerMethod + * * @param handlerMethod 处理器方法 * @return 是否支持解析 */ @@ -22,6 +23,7 @@ public interface JavadocResolver extends Comparable, Ordered { /** * 执行解析并返回解析到的 Javadoc 内容 + * * @param handlerMethod 处理器方法 * @param operation Swagger Operation实例 * @return 解析到的 Javadoc 内容 @@ -29,7 +31,9 @@ public interface JavadocResolver extends Comparable, Ordered { String resolve(HandlerMethod handlerMethod, Operation operation); /** - * 获取解析器优先级 + * 获取解析器优先级。 + * + * @return 优先级 */ default int getOrder() { return Ordered.LOWEST_PRECEDENCE; @@ -44,6 +48,12 @@ public interface JavadocResolver extends Comparable, Ordered { return this.getClass().getSimpleName(); } + /** + * 比较解析器执行顺序。 + * + * @param o 其他解析器 + * @return 比较结果 + */ @Override default int compareTo(@NotNull JavadocResolver o) { return Integer.compare(getOrder(), o.getOrder()); diff --git a/ruoyi-common/ruoyi-common-doc/src/main/java/org/dromara/common/doc/core/resolver/SaTokenAnnotationMetadataJavadocResolver.java b/ruoyi-common/ruoyi-common-doc/src/main/java/org/dromara/common/doc/core/resolver/SaTokenAnnotationMetadataJavadocResolver.java index 9e09619de..5a81a08c5 100644 --- a/ruoyi-common/ruoyi-common-doc/src/main/java/org/dromara/common/doc/core/resolver/SaTokenAnnotationMetadataJavadocResolver.java +++ b/ruoyi-common/ruoyi-common-doc/src/main/java/org/dromara/common/doc/core/resolver/SaTokenAnnotationMetadataJavadocResolver.java @@ -54,23 +54,53 @@ public class SaTokenAnnotationMetadataJavadocResolver extends AbstractMetadataJa this(DEFAULT_METADATA_PROVIDER); } + /** + * 使用自定义元数据提供者创建解析器。 + * + * @param metadataProvider 元数据提供者 + */ public SaTokenAnnotationMetadataJavadocResolver(Supplier metadataProvider) { super(metadataProvider); } + /** + * 使用指定顺序创建解析器。 + * + * @param order 顺序值 + */ public SaTokenAnnotationMetadataJavadocResolver(int order) { this(DEFAULT_METADATA_PROVIDER,order); } + /** + * 使用自定义元数据提供者和顺序创建解析器。 + * + * @param metadataProvider 元数据提供者 + * @param order 顺序值 + */ public SaTokenAnnotationMetadataJavadocResolver(Supplier metadataProvider, int order) { super(metadataProvider,order); } + /** + * 判断当前方法是否需要由该解析器处理。 + * + * @param handlerMethod Handler 方法 + * @return 是否支持 + */ @Override public boolean supports(HandlerMethod handlerMethod) { return hasAnnotation(handlerMethod, SA_CHECK_ROLE_CLASS) || hasAnnotation(handlerMethod, SA_CHECK_PERMISSION_CLASS) || hasAnnotation(handlerMethod, SA_IGNORE_CLASS); } + /** + * 解析 Sa-Token 注解并转换为文档说明。 + * + * @param handlerMethod Handler 方法 + * @param operation OpenAPI 操作对象 + * @param metadata 权限元数据 + * @return Markdown 描述 + */ @Override public String resolve(HandlerMethod handlerMethod, Operation operation, SaTokenSecurityMetadata metadata) { // 检查是否忽略校验 diff --git a/ruoyi-common/ruoyi-common-doc/src/main/java/org/dromara/common/doc/handler/OpenApiHandler.java b/ruoyi-common/ruoyi-common-doc/src/main/java/org/dromara/common/doc/handler/OpenApiHandler.java index 32be73227..f26ce5b24 100644 --- a/ruoyi-common/ruoyi-common-doc/src/main/java/org/dromara/common/doc/handler/OpenApiHandler.java +++ b/ruoyi-common/ruoyi-common-doc/src/main/java/org/dromara/common/doc/handler/OpenApiHandler.java @@ -124,6 +124,7 @@ public class OpenApiHandler extends OpenAPIService { * @param openApiBuilderCustomizers the open api builder customisers * @param serverBaseUrlCustomizers the server base url customizers * @param javadocProvider the javadoc provider + * @param javadocResolvers Javadoc 解析器列表 */ public OpenApiHandler(Optional openAPI, SecurityService securityParser, SpringDocConfigProperties springDocConfigProperties, PropertyResolverUtils propertyResolverUtils, @@ -152,6 +153,15 @@ public class OpenApiHandler extends OpenAPIService { TypeNameResolver.std.setUseFqn(true); } + /** + * 构建接口标签、权限描述与方法摘要。 + * + * @param handlerMethod Handler 方法 + * @param operation OpenAPI 操作对象 + * @param openAPI OpenAPI 文档对象 + * @param locale 当前语言环境 + * @return 处理后的操作对象 + */ @Override public Operation buildTags(HandlerMethod handlerMethod, Operation operation, OpenAPI openAPI, Locale locale) { @@ -247,6 +257,14 @@ public class OpenApiHandler extends OpenAPIService { return operation; } + /** + * 从方法注解中提取标签信息。 + * + * @param method 方法对象 + * @param tags 标签集合 + * @param tagsStr 标签名称集合 + * @param locale 当前语言环境 + */ private void buildTagsFromMethod(Method method, Set tags, Set tagsStr, Locale locale) { // method tags Set tagsSet = AnnotatedElementUtils @@ -261,6 +279,13 @@ public class OpenApiHandler extends OpenAPIService { } } + /** + * 将注解标签转换并合并到 OpenAPI 标签集合。 + * + * @param sourceTags 注解标签列表 + * @param tags OpenAPI 标签集合 + * @param locale 当前语言环境 + */ private void addTags(List sourceTags, Set tags, Locale locale) { Optional> optionalTagSet = AnnotationsUtils .getTags(sourceTags.toArray(new io.swagger.v3.oas.annotations.tags.Tag[0]), true); diff --git a/ruoyi-common/ruoyi-common-json/src/main/java/org/dromara/common/json/config/JacksonConfig.java b/ruoyi-common/ruoyi-common-json/src/main/java/org/dromara/common/json/config/JacksonConfig.java index a64653615..a9e27877f 100644 --- a/ruoyi-common/ruoyi-common-json/src/main/java/org/dromara/common/json/config/JacksonConfig.java +++ b/ruoyi-common/ruoyi-common-json/src/main/java/org/dromara/common/json/config/JacksonConfig.java @@ -28,6 +28,11 @@ import java.util.TimeZone; @AutoConfiguration(before = JacksonAutoConfiguration.class) public class JacksonConfig { + /** + * 注册 Jackson 序列化与反序列化模块。 + * + * @return Jackson 模块 + */ @Bean public SimpleModule registerJavaTimeModule() { // 全局配置序列化返回 JSON 处理 @@ -43,6 +48,11 @@ public class JacksonConfig { return module; } + /** + * 初始化 Jackson 构建器默认配置。 + * + * @return Jackson 构建器自定义器 + */ @Bean public JsonMapperBuilderCustomizer jsonInitCustomizer() { return builder -> { diff --git a/ruoyi-common/ruoyi-common-json/src/main/java/org/dromara/common/json/utils/JsonUtils.java b/ruoyi-common/ruoyi-common-json/src/main/java/org/dromara/common/json/utils/JsonUtils.java index 9aa4d3e02..3ab1a3233 100644 --- a/ruoyi-common/ruoyi-common-json/src/main/java/org/dromara/common/json/utils/JsonUtils.java +++ b/ruoyi-common/ruoyi-common-json/src/main/java/org/dromara/common/json/utils/JsonUtils.java @@ -24,6 +24,11 @@ public class JsonUtils { private static final JsonMapper JSON_MAPPER = SpringUtils.getBean(JsonMapper.class); + /** + * 获取全局 JsonMapper 实例。 + * + * @return JsonMapper + */ public static JsonMapper getJsonMapper() { return JSON_MAPPER; } diff --git a/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/aspect/LogAspect.java b/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/aspect/LogAspect.java index a3cc90b60..171e97b0b 100644 --- a/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/aspect/LogAspect.java +++ b/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/aspect/LogAspect.java @@ -46,7 +46,10 @@ public class LogAspect { private static final ThreadLocal KEY_CACHE = new ThreadLocal<>(); /** - * 处理请求前执行 + * 在目标方法执行前启动耗时统计。 + * + * @param joinPoint 切点 + * @param controllerLog 日志注解 */ @Before(value = "@annotation(controllerLog)") public void doBefore(JoinPoint joinPoint, Log controllerLog) { @@ -56,9 +59,11 @@ public class LogAspect { } /** - * 处理完请求后执行 + * 在目标方法正常返回后记录操作日志。 * * @param joinPoint 切点 + * @param controllerLog 日志注解 + * @param jsonResult 返回结果 */ @AfterReturning(pointcut = "@annotation(controllerLog)", returning = "jsonResult") public void doAfterReturning(JoinPoint joinPoint, Log controllerLog, Object jsonResult) { @@ -66,9 +71,10 @@ public class LogAspect { } /** - * 拦截异常操作 + * 在目标方法抛出异常后记录操作日志。 * * @param joinPoint 切点 + * @param controllerLog 日志注解 * @param e 异常 */ @AfterThrowing(value = "@annotation(controllerLog)", throwing = "e") @@ -76,6 +82,14 @@ public class LogAspect { handleLog(joinPoint, controllerLog, e, null); } + /** + * 组装并发布操作日志事件。 + * + * @param joinPoint 切点 + * @param controllerLog 日志注解 + * @param e 异常信息 + * @param jsonResult 返回结果 + */ protected void handleLog(final JoinPoint joinPoint, Log controllerLog, final Exception e, Object jsonResult) { try { @@ -119,9 +133,11 @@ public class LogAspect { /** * 获取注解中对方法的描述信息 用于Controller层注解 * + * @param joinPoint 切点 * @param log 日志 * @param operLog 操作日志 - * @throws Exception + * @param jsonResult 返回结果 + * @throws Exception 异常 */ public void getControllerMethodDescription(JoinPoint joinPoint, Log log, OperLogEvent operLog, Object jsonResult) throws Exception { // 设置action动作 @@ -144,7 +160,9 @@ public class LogAspect { /** * 获取请求的参数,放到log中 * + * @param joinPoint 切点 * @param operLog 操作日志 + * @param excludeParamNames 排除参数名 * @throws Exception 异常 */ private void setRequestValue(JoinPoint joinPoint, OperLogEvent operLog, String[] excludeParamNames) throws Exception { @@ -161,7 +179,11 @@ public class LogAspect { } /** - * 参数拼装 + * 将方法参数序列化为日志字符串。 + * + * @param paramsArray 参数数组 + * @param excludeParamNames 排除字段名 + * @return 参数字符串 */ private String argsArrayToString(Object[] paramsArray, String[] excludeParamNames) { StringJoiner params = new StringJoiner(" "); diff --git a/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/MailUtils.java b/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/MailUtils.java index 793c0241c..06343bda0 100644 --- a/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/MailUtils.java +++ b/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/MailUtils.java @@ -31,7 +31,9 @@ public class MailUtils { private static final MailAccount ACCOUNT = SpringUtils.getBean(MailAccount.class); /** - * 获取邮件发送实例 + * 获取默认邮件账户配置。 + * + * @return 邮件账户配置 */ public static MailAccount getMailAccount() { return ACCOUNT; @@ -40,8 +42,10 @@ public class MailUtils { /** * 获取邮件发送实例 (自定义发送人以及授权码) * + * @param from 发送人 * @param user 发送人 * @param pass 授权码 + * @return 邮件账户配置 */ public static MailAccount getMailAccount(String from, String user, String pass) { ACCOUNT.setFrom(StringUtils.blankToDefault(from, ACCOUNT.getFrom())); diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/MybatisExceptionHandler.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/MybatisExceptionHandler.java index 094785bd7..5be5b8db6 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/MybatisExceptionHandler.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/MybatisExceptionHandler.java @@ -21,7 +21,11 @@ import org.springframework.web.bind.annotation.RestControllerAdvice; public class MybatisExceptionHandler { /** - * 主键或UNIQUE索引,数据重复异常 + * 处理主键或唯一索引冲突异常。 + * + * @param e 异常信息 + * @param request 当前请求 + * @return 统一失败响应 */ @ExceptionHandler(DuplicateKeyException.class) public R handleDuplicateKeyException(DuplicateKeyException e, HttpServletRequest request) { @@ -31,7 +35,11 @@ public class MybatisExceptionHandler { } /** - * Mybatis系统异常 通用处理 + * 处理 MyBatis 系统异常。 + * + * @param e 异常信息 + * @param request 当前请求 + * @return 统一失败响应 */ @ExceptionHandler(MyBatisSystemException.class) public R handleCannotFindDataSourceException(MyBatisSystemException e, HttpServletRequest request) { diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataBaseHelper.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataBaseHelper.java index 84a8a5c2a..1a923a30a 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataBaseHelper.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataBaseHelper.java @@ -74,7 +74,9 @@ public class DataBaseHelper { } /** - * 获取当前加载的数据库名 + * 获取当前注册的数据源名称列表。 + * + * @return 数据源名称列表 */ public static List getDataSourceNameList() { return new ArrayList<>(DS.getDataSources().keySet()); diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataPermissionHelper.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataPermissionHelper.java index 25cda5701..839abc27c 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataPermissionHelper.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataPermissionHelper.java @@ -46,7 +46,7 @@ public class DataPermissionHelper { /** * 设置当前执行mapper权限注解 * - * @param dataPermission 数据权限注解 + * @param dataPermission 数据权限注解 */ public static void setPermission(DataPermission dataPermission) { PERMISSION_CACHE.set(dataPermission); @@ -82,10 +82,20 @@ public class DataPermissionHelper { context.put(key, value); } + /** + * 获取当前数据权限访问控制对象。 + * + * @return 访问控制对象 + */ public static DataPermissionAccess getAccess() { return getVariable(ACCESS_KEY); } + /** + * 设置当前数据权限访问控制对象。 + * + * @param access 访问控制对象 + */ public static void setAccess(DataPermissionAccess access) { setVariable(ACCESS_KEY, access); } @@ -109,6 +119,11 @@ public class DataPermissionHelper { throw new NullPointerException("data permission context type exception"); } + /** + * 获取当前忽略策略。 + * + * @return 忽略策略 + */ private static IgnoreStrategy getIgnoreStrategy() { Object ignoreStrategyLocal = ReflectUtils.getStaticFieldValue(ReflectUtils.getField(InterceptorIgnoreHelper.class, "IGNORE_STRATEGY_LOCAL")); if (ignoreStrategyLocal instanceof ThreadLocal IGNORE_STRATEGY_LOCAL) { @@ -173,6 +188,7 @@ public class DataPermissionHelper { * 在忽略数据权限中执行 * * @param handle 处理执行方法 + * @return 执行结果 */ public static T ignore(Supplier handle) { enableIgnore(); diff --git a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java index 14fc4dcfe..4f8442a26 100644 --- a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java +++ b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java @@ -547,6 +547,9 @@ public class OssClient { /** * 检查配置是否相同 + * + * @param properties OSS 配置 + * @return 是否与当前客户端配置一致 */ public boolean checkPropertiesSame(OssProperties properties) { return this.properties.equals(properties); diff --git a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/WriteOutSubscriber.java b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/WriteOutSubscriber.java index d3a9841a1..3b1fa9ba0 100644 --- a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/WriteOutSubscriber.java +++ b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/WriteOutSubscriber.java @@ -10,6 +10,12 @@ import java.io.IOException; @FunctionalInterface public interface WriteOutSubscriber { + /** + * 将订阅到的数据写出到目标对象。 + * + * @param out 写出目标 + * @throws IOException 写出异常 + */ void writeTo(T out) throws IOException; } diff --git a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/exception/OssException.java b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/exception/OssException.java index 52e9623da..b8bfe7032 100644 --- a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/exception/OssException.java +++ b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/exception/OssException.java @@ -12,6 +12,11 @@ public class OssException extends RuntimeException { @Serial private static final long serialVersionUID = 1L; + /** + * 创建 OSS 业务异常。 + * + * @param msg 异常消息 + */ public OssException(String msg) { super(msg); } diff --git a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/factory/OssFactory.java b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/factory/OssFactory.java index 1d5ae66cb..e3acfc519 100644 --- a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/factory/OssFactory.java +++ b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/factory/OssFactory.java @@ -27,7 +27,9 @@ public class OssFactory { private static final ReentrantLock LOCK = new ReentrantLock(); /** - * 获取默认实例 + * 获取默认 OSS 客户端实例。 + * + * @return 默认 OSS 客户端 */ public static OssClient instance() { // 获取redis 默认类型 @@ -39,7 +41,10 @@ public class OssFactory { } /** - * 根据类型获取实例 + * 根据配置键获取 OSS 客户端实例。 + * + * @param configKey 配置键 + * @return OSS 客户端 */ public static OssClient instance(String configKey) { String json = CacheUtils.get(CacheNames.SYS_OSS_CONFIG, configKey); diff --git a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/handler/KeyPrefixHandler.java b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/handler/KeyPrefixHandler.java index f34ddc83a..5a01b7a8c 100644 --- a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/handler/KeyPrefixHandler.java +++ b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/handler/KeyPrefixHandler.java @@ -14,13 +14,21 @@ public class KeyPrefixHandler implements NameMapper { private final String keyPrefix; + /** + * 创建 Redis Key 前缀处理器。 + * + * @param keyPrefix Key 前缀 + */ public KeyPrefixHandler(String keyPrefix) { //前缀为空 则返回空前缀 this.keyPrefix = StringUtils.isBlank(keyPrefix) ? "" : keyPrefix + ":"; } /** - * 增加前缀 + * 为原始 Key 增加前缀。 + * + * @param name 原始 Key + * @return 带前缀的 Key */ @Override public String map(String name) { @@ -34,7 +42,10 @@ public class KeyPrefixHandler implements NameMapper { } /** - * 去除前缀 + * 去除 Key 前缀。 + * + * @param name 带前缀的 Key + * @return 原始 Key */ @Override public String unmap(String name) { diff --git a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/handler/RedisExceptionHandler.java b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/handler/RedisExceptionHandler.java index 5e904f37f..25049bb3d 100644 --- a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/handler/RedisExceptionHandler.java +++ b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/handler/RedisExceptionHandler.java @@ -18,7 +18,11 @@ import org.springframework.web.bind.annotation.RestControllerAdvice; public class RedisExceptionHandler { /** - * 分布式锁Lock4j异常 + * 处理 Lock4j 分布式锁获取失败异常。 + * + * @param e 异常信息 + * @param request 当前请求 + * @return 统一失败响应 */ @ExceptionHandler(LockFailureException.class) public R handleLockFailureException(LockFailureException e, HttpServletRequest request) { diff --git a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/CaffeineCacheDecorator.java b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/CaffeineCacheDecorator.java index 8662c537d..884a92ac4 100644 --- a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/CaffeineCacheDecorator.java +++ b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/CaffeineCacheDecorator.java @@ -18,31 +18,66 @@ public class CaffeineCacheDecorator implements Cache { private final String name; private final Cache cache; + /** + * 创建带 Caffeine 一级缓存的缓存装饰器。 + * + * @param name 缓存名称 + * @param cache 被装饰的缓存实例 + */ public CaffeineCacheDecorator(String name, Cache cache) { this.name = name; this.cache = cache; } + /** + * 获取缓存名称。 + * + * @return 缓存名称 + */ @Override public String getName() { return name; } + /** + * 获取底层原生缓存对象。 + * + * @return 原生缓存对象 + */ @Override public Object getNativeCache() { return cache.getNativeCache(); } + /** + * 构造 Caffeine 一级缓存使用的唯一键。 + * + * @param key 缓存键 + * @return 唯一键 + */ public String getUniqueKey(Object key) { return name + ":" + key; } + /** + * 获取缓存值。 + * + * @param key 缓存键 + * @return 缓存值包装对象 + */ @Override public ValueWrapper get(Object key) { Object o = CAFFEINE.get(getUniqueKey(key), k -> cache.get(key)); return (ValueWrapper) o; } + /** + * 按指定类型获取缓存值。 + * + * @param key 缓存键 + * @param type 值类型 + * @return 缓存值 + */ @SuppressWarnings("unchecked") @Override public T get(Object key, Class type) { @@ -50,23 +85,47 @@ public class CaffeineCacheDecorator implements Cache { return (T) o; } + /** + * 写入缓存值,并清理本地一级缓存。 + * + * @param key 缓存键 + * @param value 缓存值 + */ @Override public void put(Object key, Object value) { CAFFEINE.invalidate(getUniqueKey(key)); cache.put(key, value); } + /** + * 当键不存在时写入缓存值。 + * + * @param key 缓存键 + * @param value 缓存值 + * @return 原缓存值包装对象 + */ @Override public ValueWrapper putIfAbsent(Object key, Object value) { CAFFEINE.invalidate(getUniqueKey(key)); return cache.putIfAbsent(key, value); } + /** + * 删除缓存值。 + * + * @param key 缓存键 + */ @Override public void evict(Object key) { evictIfPresent(key); } + /** + * 删除缓存值并返回是否删除成功。 + * + * @param key 缓存键 + * @return 是否删除成功 + */ @Override public boolean evictIfPresent(Object key) { boolean b = cache.evictIfPresent(key); @@ -76,17 +135,32 @@ public class CaffeineCacheDecorator implements Cache { return b; } + /** + * 清空缓存。 + */ @Override public void clear() { CAFFEINE.invalidateAll(); cache.clear(); } + /** + * 使缓存整体失效。 + * + * @return 是否失效成功 + */ @Override public boolean invalidate() { return cache.invalidate(); } + /** + * 获取缓存值,不存在时通过回调加载。 + * + * @param key 缓存键 + * @param valueLoader 回调加载器 + * @return 缓存值 + */ @SuppressWarnings("unchecked") @Override public T get(Object key, Callable valueLoader) { diff --git a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/PlusSpringCacheManager.java b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/PlusSpringCacheManager.java index a1debec2c..1a3939d5a 100644 --- a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/PlusSpringCacheManager.java +++ b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/PlusSpringCacheManager.java @@ -56,7 +56,7 @@ public class PlusSpringCacheManager implements CacheManager { ConcurrentMap instanceMap = new ConcurrentHashMap<>(); /** - * Creates CacheManager supplied by Redisson instance + * 创建基于 Redisson 的缓存管理器。 */ public PlusSpringCacheManager() { } @@ -113,10 +113,21 @@ public class PlusSpringCacheManager implements CacheManager { this.configMap = (Map) config; } + /** + * 创建默认缓存配置。 + * + * @return 默认缓存配置 + */ protected CacheConfig createDefaultConfig() { return new CacheConfig(); } + /** + * 按缓存名称获取缓存实例,并支持通过扩展参数动态设置 TTL、最大空闲时间和容量。 + * + * @param name 缓存名称,支持 `cacheName#ttl#maxIdle#maxSize#local` 格式 + * @return 缓存实例 + */ @Override public Cache getCache(String name) { // 重写 cacheName 支持多参数 @@ -158,6 +169,14 @@ public class PlusSpringCacheManager implements CacheManager { return createMapCache(name, config, local); } + /** + * 创建普通 Map 类型缓存。 + * + * @param name 缓存名称 + * @param config 缓存配置 + * @param local 是否启用本地一级缓存 + * @return 缓存实例 + */ private Cache createMap(String name, CacheConfig config, int local) { RMap map = RedisUtils.getClient().getMap(name); @@ -175,6 +194,14 @@ public class PlusSpringCacheManager implements CacheManager { return cache; } + /** + * 创建带过期策略的 MapCache 类型缓存。 + * + * @param name 缓存名称 + * @param config 缓存配置 + * @param local 是否启用本地一级缓存 + * @return 缓存实例 + */ private Cache createMapCache(String name, CacheConfig config, int local) { RMapCache map = RedisUtils.getClient().getMapCache(name); @@ -197,6 +224,11 @@ public class PlusSpringCacheManager implements CacheManager { return cache; } + /** + * 获取当前缓存名称集合。 + * + * @return 缓存名称集合 + */ @Override public Collection getCacheNames() { return Collections.unmodifiableSet(configMap.keySet()); diff --git a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/CacheUtils.java b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/CacheUtils.java index 865ffa502..28e67d5df 100644 --- a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/CacheUtils.java +++ b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/CacheUtils.java @@ -22,6 +22,7 @@ public class CacheUtils { * * @param cacheNames 缓存组名称 * @param key 缓存key + * @return 缓存值 */ public static T get(String cacheNames, Object key) { Cache.ValueWrapper wrapper = CACHE_MANAGER.getCache(cacheNames).get(key); diff --git a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/QueueUtils.java b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/QueueUtils.java index 22c167135..1ee5ddb68 100644 --- a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/QueueUtils.java +++ b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/QueueUtils.java @@ -25,7 +25,9 @@ public class QueueUtils { /** - * 获取客户端实例 + * 获取 Redisson 客户端实例。 + * + * @return Redisson 客户端 */ public static RedissonClient getClient() { return CLIENT; @@ -36,6 +38,7 @@ public class QueueUtils { * * @param queueName 队列名 * @param data 数据 + * @return 是否添加成功 */ public static boolean addQueueObject(String queueName, T data) { RBlockingQueue queue = CLIENT.getBlockingQueue(queueName); @@ -46,6 +49,7 @@ public class QueueUtils { * 通用获取一个队列数据 没有数据返回 null(不支持延迟队列) * * @param queueName 队列名 + * @return 队列数据 */ public static T getQueueObject(String queueName) { RBlockingQueue queue = CLIENT.getBlockingQueue(queueName); @@ -53,7 +57,11 @@ public class QueueUtils { } /** - * 通用删除队列数据(不支持延迟队列) + * 删除普通队列中的指定数据。 + * + * @param queueName 队列名 + * @param data 数据 + * @return 是否删除成功 */ public static boolean removeQueueObject(String queueName, T data) { RBlockingQueue queue = CLIENT.getBlockingQueue(queueName); @@ -61,7 +69,10 @@ public class QueueUtils { } /** - * 通用销毁队列 所有阻塞监听 报错(不支持延迟队列) + * 销毁普通队列。 + * + * @param queueName 队列名 + * @return 是否销毁成功 */ public static boolean destroyQueue(String queueName) { RBlockingQueue queue = CLIENT.getBlockingQueue(queueName); @@ -73,6 +84,7 @@ public class QueueUtils { * * @param queueName 队列名 * @param data 数据 + * @return 是否添加成功 */ public static boolean addPriorityQueueObject(String queueName, T data) { RPriorityBlockingQueue priorityBlockingQueue = CLIENT.getPriorityBlockingQueue(queueName); @@ -83,6 +95,7 @@ public class QueueUtils { * 优先队列获取一个队列数据 没有数据返回 null(不支持延迟队列) * * @param queueName 队列名 + * @return 队列数据 */ public static T getPriorityQueueObject(String queueName) { RPriorityBlockingQueue queue = CLIENT.getPriorityBlockingQueue(queueName); @@ -90,7 +103,11 @@ public class QueueUtils { } /** - * 优先队列删除队列数据(不支持延迟队列) + * 删除优先队列中的指定数据。 + * + * @param queueName 队列名 + * @param data 数据 + * @return 是否删除成功 */ public static boolean removePriorityQueueObject(String queueName, T data) { RPriorityBlockingQueue queue = CLIENT.getPriorityBlockingQueue(queueName); @@ -98,7 +115,10 @@ public class QueueUtils { } /** - * 优先队列销毁队列 所有阻塞监听 报错(不支持延迟队列) + * 销毁优先队列。 + * + * @param queueName 队列名 + * @return 是否销毁成功 */ public static boolean destroyPriorityQueue(String queueName) { RPriorityBlockingQueue queue = CLIENT.getPriorityBlockingQueue(queueName); @@ -106,7 +126,10 @@ public class QueueUtils { } /** - * 订阅阻塞队列(可订阅所有实现类) + * 订阅阻塞队列元素。 + * + * @param queueName 队列名 + * @param consumer 消费逻辑 */ public static void subscribeBlockingQueue(String queueName, Function> consumer) { RBlockingQueue queue = CLIENT.getBlockingQueue(queueName); diff --git a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/RedisUtils.java b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/RedisUtils.java index c433bffad..b3fd462a2 100644 --- a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/RedisUtils.java +++ b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/utils/RedisUtils.java @@ -546,6 +546,7 @@ public class RedisUtils { /** * 通过扫描参数获取缓存的基本对象列表 + * * @param keysScanOptions 扫描参数 *

* limit-设置扫描的限制数量(默认为0,查询全部) @@ -554,6 +555,7 @@ public class RedisUtils { * type-设置键的类型(默认为null,查询全部类型) *

* @see KeysScanOptions + * @return 对象列表 */ public static Collection keys(final KeysScanOptions keysScanOptions) { Stream keysStream = CLIENT.getKeys().getKeysStream(keysScanOptions); @@ -573,6 +575,7 @@ public class RedisUtils { * 检查redis中是否存在key * * @param key 键 + * @return 是否存在 */ public static Boolean hasKey(String key) { RKeys rKeys = CLIENT.getKeys(); diff --git a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/core/service/SaPermissionImpl.java b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/core/service/SaPermissionImpl.java index c9f8c8c2c..cc9f0306a 100644 --- a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/core/service/SaPermissionImpl.java +++ b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/core/service/SaPermissionImpl.java @@ -22,7 +22,11 @@ import java.util.List; public class SaPermissionImpl implements StpInterface { /** - * 获取菜单权限列表 + * 获取指定登录对象的菜单权限列表。 + * + * @param loginId 登录ID + * @param loginType 登录类型 + * @return 菜单权限列表 */ @Override public List getPermissionList(Object loginId, String loginType) { @@ -49,7 +53,11 @@ public class SaPermissionImpl implements StpInterface { } /** - * 获取角色权限列表 + * 获取指定登录对象的角色权限列表。 + * + * @param loginId 登录ID + * @param loginType 登录类型 + * @return 角色权限列表 */ @Override public List getRoleList(Object loginId, String loginType) { @@ -75,6 +83,11 @@ public class SaPermissionImpl implements StpInterface { } } + /** + * 获取权限服务实现。 + * + * @return 权限服务 + */ private PermissionService getPermissionService() { try { return SpringUtils.getBean(PermissionService.class); diff --git a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/handler/SaTokenExceptionHandler.java b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/handler/SaTokenExceptionHandler.java index a45af89d3..7710f9457 100644 --- a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/handler/SaTokenExceptionHandler.java +++ b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/handler/SaTokenExceptionHandler.java @@ -20,7 +20,11 @@ import org.springframework.web.bind.annotation.RestControllerAdvice; public class SaTokenExceptionHandler { /** - * 权限码异常 + * 处理权限码校验失败异常。 + * + * @param e 异常信息 + * @param request 当前请求 + * @return 统一失败响应 */ @ExceptionHandler(NotPermissionException.class) public R handleNotPermissionException(NotPermissionException e, HttpServletRequest request) { @@ -30,7 +34,11 @@ public class SaTokenExceptionHandler { } /** - * 角色权限异常 + * 处理角色权限校验失败异常。 + * + * @param e 异常信息 + * @param request 当前请求 + * @return 统一失败响应 */ @ExceptionHandler(NotRoleException.class) public R handleNotRoleException(NotRoleException e, HttpServletRequest request) { @@ -40,7 +48,11 @@ public class SaTokenExceptionHandler { } /** - * 认证失败 + * 处理未登录或登录态失效异常。 + * + * @param e 异常信息 + * @param request 当前请求 + * @return 统一失败响应 */ @ExceptionHandler(NotLoginException.class) public R handleNotLoginException(NotLoginException e, HttpServletRequest request) { diff --git a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/utils/LoginHelper.java b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/utils/LoginHelper.java index 5af7d961d..37946ea06 100644 --- a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/utils/LoginHelper.java +++ b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/utils/LoginHelper.java @@ -55,7 +55,9 @@ public class LoginHelper { } /** - * 获取用户(多级缓存) + * 获取当前 Token 对应的登录用户信息。 + * + * @return 登录用户 */ @SuppressWarnings("unchecked") public static T getLoginUser() { @@ -67,7 +69,10 @@ public class LoginHelper { } /** - * 获取用户基于token + * 根据指定 Token 获取登录用户信息。 + * + * @param token Token + * @return 登录用户 */ @SuppressWarnings("unchecked") public static T getLoginUser(String token) { @@ -79,42 +84,54 @@ public class LoginHelper { } /** - * 获取用户id + * 获取当前登录用户 ID。 + * + * @return 用户 ID */ public static Long getUserId() { return Convert.toLong(getExtra(USER_KEY)); } /** - * 获取用户id + * 获取当前登录用户 ID 字符串。 + * + * @return 用户 ID 字符串 */ public static String getUserIdStr() { return Convert.toStr(getExtra(USER_KEY)); } /** - * 获取用户账户 + * 获取当前登录用户名。 + * + * @return 用户名 */ public static String getUsername() { return Convert.toStr(getExtra(USER_NAME_KEY)); } /** - * 获取部门ID + * 获取当前登录用户部门 ID。 + * + * @return 部门 ID */ public static Long getDeptId() { return Convert.toLong(getExtra(DEPT_KEY)); } /** - * 获取部门名 + * 获取当前登录用户部门名称。 + * + * @return 部门名称 */ public static String getDeptName() { return Convert.toStr(getExtra(DEPT_NAME_KEY)); } /** - * 获取部门类别编码 + * 获取当前登录用户部门类别编码。 + * + * @return 部门类别编码 */ public static String getDeptCategory() { return Convert.toStr(getExtra(DEPT_CATEGORY_KEY)); @@ -135,7 +152,9 @@ public class LoginHelper { } /** - * 获取用户类型 + * 获取当前登录用户类型。 + * + * @return 用户类型 */ public static UserType getUserType() { String loginType = StpUtil.getLoginIdAsString(); @@ -146,7 +165,7 @@ public class LoginHelper { * 是否为超级管理员 * * @param userId 用户ID - * @return 结果 + * @return 是否为超级管理员 */ public static boolean isSuperAdmin(Long userId) { return SystemConstants.SUPER_ADMIN_ID.equals(userId); @@ -155,7 +174,7 @@ public class LoginHelper { /** * 是否为超级管理员 * - * @return 结果 + * @return 是否为超级管理员 */ public static boolean isSuperAdmin() { return isSuperAdmin(getUserId()); @@ -164,7 +183,7 @@ public class LoginHelper { /** * 检查当前用户是否已登录 * - * @return 结果 + * @return 是否已登录 */ public static boolean isLogin() { try { diff --git a/ruoyi-common/ruoyi-common-security/src/main/java/org/dromara/common/security/config/SecurityConfig.java b/ruoyi-common/ruoyi-common-security/src/main/java/org/dromara/common/security/config/SecurityConfig.java index df53537db..e94f4dfc1 100644 --- a/ruoyi-common/ruoyi-common-security/src/main/java/org/dromara/common/security/config/SecurityConfig.java +++ b/ruoyi-common/ruoyi-common-security/src/main/java/org/dromara/common/security/config/SecurityConfig.java @@ -43,7 +43,9 @@ public class SecurityConfig implements WebMvcConfigurer { private String ssePath; /** - * 注册sa-token的拦截器 + * 注册 Sa-Token 路由拦截器并配置鉴权规则。 + * + * @param registry 拦截器注册器 */ @Override public void addInterceptors(InterceptorRegistry registry) { @@ -87,7 +89,9 @@ public class SecurityConfig implements WebMvcConfigurer { } /** - * 对 actuator 健康检查接口 做账号密码鉴权 + * 为 actuator 健康检查接口配置 Basic Auth 鉴权过滤器。 + * + * @return Sa-Token Servlet 过滤器 */ @Bean public SaServletFilter getSaServletFilter() { diff --git a/ruoyi-common/ruoyi-common-security/src/main/java/org/dromara/common/security/config/properties/SecurityProperties.java b/ruoyi-common/ruoyi-common-security/src/main/java/org/dromara/common/security/config/properties/SecurityProperties.java index be1cc6eb2..94e160784 100644 --- a/ruoyi-common/ruoyi-common-security/src/main/java/org/dromara/common/security/config/properties/SecurityProperties.java +++ b/ruoyi-common/ruoyi-common-security/src/main/java/org/dromara/common/security/config/properties/SecurityProperties.java @@ -16,6 +16,4 @@ public class SecurityProperties { * 排除路径 */ private String[] excludes; - - } diff --git a/ruoyi-common/ruoyi-common-security/src/main/java/org/dromara/common/security/handler/AllUrlHandler.java b/ruoyi-common/ruoyi-common-security/src/main/java/org/dromara/common/security/handler/AllUrlHandler.java index a0c6ada99..158738e4f 100644 --- a/ruoyi-common/ruoyi-common-security/src/main/java/org/dromara/common/security/handler/AllUrlHandler.java +++ b/ruoyi-common/ruoyi-common-security/src/main/java/org/dromara/common/security/handler/AllUrlHandler.java @@ -23,6 +23,9 @@ public class AllUrlHandler implements InitializingBean { private List urls = new ArrayList<>(); + /** + * 初始化并收集系统中的全部请求路径。 + */ @Override public void afterPropertiesSet() { Set set = new HashSet<>(); diff --git a/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/config/SocialAutoConfiguration.java b/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/config/SocialAutoConfiguration.java index 19b39d8fb..da16e9177 100644 --- a/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/config/SocialAutoConfiguration.java +++ b/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/config/SocialAutoConfiguration.java @@ -9,12 +9,18 @@ import org.springframework.context.annotation.Bean; /** * Social 配置属性 + * * @author thiszhc */ @AutoConfiguration @EnableConfigurationProperties(SocialProperties.class) public class SocialAutoConfiguration { + /** + * 注册第三方授权状态缓存实现。 + * + * @return 授权状态缓存 + */ @Bean public AuthStateCache authStateCache() { return new AuthRedisStateCache(); diff --git a/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/utils/SocialUtils.java b/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/utils/SocialUtils.java index df21aa8df..b9681494d 100644 --- a/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/utils/SocialUtils.java +++ b/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/utils/SocialUtils.java @@ -23,6 +23,16 @@ public class SocialUtils { private static final AuthRedisStateCache STATE_CACHE = SpringUtils.getBean(AuthRedisStateCache.class); + /** + * 执行第三方登录授权回调。 + * + * @param source 社交平台类型 + * @param code 授权码 + * @param state 状态值 + * @param socialProperties 社交平台配置 + * @return 授权响应 + * @throws AuthException 授权异常 + */ @SuppressWarnings("unchecked") public static AuthResponse loginAuth(String source, String code, String state, SocialProperties socialProperties) throws AuthException { AuthRequest authRequest = getAuthRequest(source, socialProperties); @@ -32,6 +42,14 @@ public class SocialUtils { return authRequest.login(callback); } + /** + * 根据平台类型构建授权请求实例。 + * + * @param source 社交平台类型 + * @param socialProperties 社交平台配置 + * @return 授权请求 + * @throws AuthException 授权异常 + */ public static AuthRequest getAuthRequest(String source, SocialProperties socialProperties) throws AuthException { SocialLoginConfigProperties obj = socialProperties.getType().get(source); if (ObjectUtil.isNull(obj)) { diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java index 9e092a6e2..2967d6736 100644 --- a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java @@ -26,7 +26,9 @@ public class SseController implements DisposableBean { private final SseEmitterManager sseEmitterManager; /** - * 建立 SSE 连接 + * 建立当前登录用户的 SSE 连接。 + * + * @return SSE 发射器 */ @GetMapping(value = "${sse.path}", produces = MediaType.TEXT_EVENT_STREAM_VALUE) public SseEmitter connect() { @@ -39,7 +41,9 @@ public class SseController implements DisposableBean { } /** - * 关闭 SSE 连接 + * 关闭当前登录用户的 SSE 连接。 + * + * @return 操作结果 */ @SaIgnore @GetMapping(value = "${sse.path}/close") @@ -78,7 +82,9 @@ public class SseController implements DisposableBean { // } /** - * 清理资源。此方法目前不执行任何操作,但避免因未实现而导致错误 + * 容器销毁时释放资源占位实现。 + * + * @throws Exception 销毁异常 */ @Override public void destroy() throws Exception { diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java index 372d3fefd..67af7b947 100644 --- a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/core/SseEmitterManager.java @@ -116,7 +116,7 @@ public class SseEmitterManager { } /** - * SSE 心跳检测,关闭无效连接 + * 执行 SSE 心跳检测并清理失效连接。 */ public void sseMonitor() { final SseEmitter.SseEventBuilder heartbeat = SseEmitter.event().comment("heartbeat"); @@ -154,7 +154,7 @@ public class SseEmitterManager { } /** - * 订阅SSE消息主题,并提供一个消费者函数来处理接收到的消息 + * 订阅 SSE 广播主题消息。 * * @param consumer 处理SSE消息的消费者函数 */ @@ -163,7 +163,7 @@ public class SseEmitterManager { } /** - * 向指定的用户会话发送消息 + * 向指定用户的全部本地 SSE 会话发送消息。 * * @param userId 要发送消息的用户id * @param message 要发送的消息内容 @@ -189,7 +189,7 @@ public class SseEmitterManager { } /** - * 本机全用户会话发送消息 + * 向当前节点所有 SSE 会话发送消息。 * * @param message 要发送的消息内容 */ @@ -200,7 +200,7 @@ public class SseEmitterManager { } /** - * 发布SSE订阅消息 + * 发布 SSE 订阅消息。 * * @param sseMessageDTO 要发布的SSE消息对象 */ @@ -215,7 +215,7 @@ public class SseEmitterManager { } /** - * 向所有的用户发布订阅的消息(群发) + * 发布 SSE 广播消息。 * * @param message 要发布的消息内容 */ diff --git a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/utils/SseMessageUtils.java b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/utils/SseMessageUtils.java index 51273c1b3..b145b70a7 100644 --- a/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/utils/SseMessageUtils.java +++ b/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/utils/SseMessageUtils.java @@ -26,7 +26,7 @@ public class SseMessageUtils { } /** - * 向指定的SSE会话发送消息 + * 向指定用户的 SSE 会话发送消息。 * * @param userId 要发送消息的用户id * @param message 要发送的消息内容 @@ -39,7 +39,7 @@ public class SseMessageUtils { } /** - * 本机全用户会话发送消息 + * 向当前节点上的所有 SSE 会话发送消息。 * * @param message 要发送的消息内容 */ @@ -51,7 +51,7 @@ public class SseMessageUtils { } /** - * 发布SSE订阅消息 + * 发布 SSE 订阅消息。 * * @param sseMessageDTO 要发布的SSE消息对象 */ @@ -63,7 +63,7 @@ public class SseMessageUtils { } /** - * 向所有的用户发布订阅的消息(群发) + * 向所有用户发布 SSE 广播消息。 * * @param message 要发布的消息内容 */ @@ -75,7 +75,9 @@ public class SseMessageUtils { } /** - * 是否开启 + * 判断 SSE 功能是否启用。 + * + * @return 是否启用 */ public static Boolean isEnable() { return SSE_ENABLE; diff --git a/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/TranslationInterface.java b/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/TranslationInterface.java index e4d6dd3b2..6ed223bb1 100644 --- a/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/TranslationInterface.java +++ b/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/TranslationInterface.java @@ -10,11 +10,11 @@ import org.dromara.common.translation.annotation.TranslationType; public interface TranslationInterface { /** - * 翻译 + * 按翻译键执行转换。 * * @param key 需要被翻译的键(不为空) * @param other 其他参数 - * @return 返回键对应的值 + * @return 返回键对应的翻译值 */ T translation(Object key, String other); } diff --git a/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/handler/TranslationBeanSerializerModifier.java b/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/handler/TranslationBeanSerializerModifier.java index c815d104d..c18fd1ee5 100644 --- a/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/handler/TranslationBeanSerializerModifier.java +++ b/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/handler/TranslationBeanSerializerModifier.java @@ -14,6 +14,14 @@ import java.util.List; */ public class TranslationBeanSerializerModifier extends ValueSerializerModifier { + /** + * 为翻译字段补充空值序列化器,确保字段值为 {@code null} 时仍能走翻译处理链。 + * + * @param config 当前序列化配置 + * @param beanDesc Bean 描述提供者 + * @param beanProperties 当前 Bean 的属性写入器列表 + * @return 调整后的属性写入器列表 + */ @Override public List changeProperties(SerializationConfig config, BeanDescription.Supplier beanDesc, List beanProperties) { diff --git a/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/handler/TranslationHandler.java b/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/handler/TranslationHandler.java index 3393d03ee..f840524f6 100644 --- a/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/handler/TranslationHandler.java +++ b/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/handler/TranslationHandler.java @@ -38,10 +38,23 @@ public class TranslationHandler extends ValueSerializer { this.translation = null; } + /** + * 创建绑定指定翻译注解的序列化处理器。 + * + * @param translation 当前字段上声明的翻译注解 + */ public TranslationHandler(Translation translation) { this.translation = translation; } + /** + * 将原始字段值翻译为展示值并写回序列化结果。 + * + * @param value 原始字段值 + * @param gen Json 输出器 + * @param ctxt 序列化上下文 + * @throws JacksonException Json 序列化异常 + */ @Override public void serialize(Object value, JsonGenerator gen, SerializationContext ctxt) throws JacksonException { TranslationInterface trans = TRANSLATION_MAPPER.get(translation.type()); @@ -68,6 +81,13 @@ public class TranslationHandler extends ValueSerializer { } } + /** + * 按字段上的 {@link Translation} 注解创建上下文相关的翻译序列化器。 + * + * @param ctxt 序列化上下文 + * @param property 当前序列化属性 + * @return 存在翻译注解时返回新的翻译处理器,否则沿用默认序列化器 + */ @Override public ValueSerializer createContextual(SerializationContext ctxt, BeanProperty property) { Translation translation = property.getAnnotation(Translation.class); diff --git a/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/impl/DeptNameTranslationImpl.java b/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/impl/DeptNameTranslationImpl.java index c391437fe..cc2ec7b05 100644 --- a/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/impl/DeptNameTranslationImpl.java +++ b/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/impl/DeptNameTranslationImpl.java @@ -17,6 +17,13 @@ public class DeptNameTranslationImpl implements TranslationInterface { private final DeptService deptService; + /** + * 将部门 ID 或 ID 集合翻译为部门名称。 + * + * @param key 部门 ID 或逗号分隔的 ID 字符串 + * @param other 额外参数 + * @return 部门名称 + */ @Override public String translation(Object key, String other) { if (key instanceof String ids) { diff --git a/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/impl/DictTypeTranslationImpl.java b/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/impl/DictTypeTranslationImpl.java index 859a93eae..95ff5ffa3 100644 --- a/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/impl/DictTypeTranslationImpl.java +++ b/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/impl/DictTypeTranslationImpl.java @@ -18,6 +18,13 @@ public class DictTypeTranslationImpl implements TranslationInterface { private final DictService dictService; + /** + * 根据字典类型和字典值翻译显示标签。 + * + * @param key 字典值 + * @param other 字典类型 + * @return 字典标签 + */ @Override public String translation(Object key, String other) { if (key instanceof String dictValue && StringUtils.isNotBlank(other)) { diff --git a/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/impl/NicknameTranslationImpl.java b/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/impl/NicknameTranslationImpl.java index 06be37fcc..1aef7e319 100644 --- a/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/impl/NicknameTranslationImpl.java +++ b/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/impl/NicknameTranslationImpl.java @@ -17,6 +17,13 @@ public class NicknameTranslationImpl implements TranslationInterface { private final UserService userService; + /** + * 将用户 ID 或 ID 集合翻译为用户昵称。 + * + * @param key 用户 ID 或逗号分隔的 ID 字符串 + * @param other 额外参数 + * @return 用户昵称 + */ @Override public String translation(Object key, String other) { if (key instanceof Long id) { diff --git a/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/impl/OssUrlTranslationImpl.java b/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/impl/OssUrlTranslationImpl.java index fc6f6dfae..a3b59aafb 100644 --- a/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/impl/OssUrlTranslationImpl.java +++ b/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/impl/OssUrlTranslationImpl.java @@ -17,6 +17,13 @@ public class OssUrlTranslationImpl implements TranslationInterface { private final OssService ossService; + /** + * 将 OSS ID 或 ID 集合翻译为访问地址。 + * + * @param key OSS ID 或逗号分隔的 ID 字符串 + * @param other 额外参数 + * @return 访问地址 + */ @Override public String translation(Object key, String other) { if (key instanceof String ids) { diff --git a/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/impl/UserNameTranslationImpl.java b/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/impl/UserNameTranslationImpl.java index 5fc7773d9..5a59511ad 100644 --- a/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/impl/UserNameTranslationImpl.java +++ b/ruoyi-common/ruoyi-common-translation/src/main/java/org/dromara/common/translation/core/impl/UserNameTranslationImpl.java @@ -18,6 +18,13 @@ public class UserNameTranslationImpl implements TranslationInterface { private final UserService userService; + /** + * 将用户 ID 翻译为用户名。 + * + * @param key 用户 ID + * @param other 额外参数 + * @return 用户名 + */ @Override public String translation(Object key, String other) { return userService.selectUserNameById(Convert.toLong(key)); diff --git a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/FilterConfig.java b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/FilterConfig.java index 155a8d071..b095851d3 100644 --- a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/FilterConfig.java +++ b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/FilterConfig.java @@ -20,6 +20,11 @@ import org.springframework.context.annotation.Bean; @EnableConfigurationProperties(XssProperties.class) public class FilterConfig { + /** + * 注册 XSS 过滤器。 + * + * @return XSS 请求过滤器实例 + */ @Bean @ConditionalOnProperty(value = "xss.enabled", havingValue = "true") @FilterRegistration( @@ -32,6 +37,11 @@ public class FilterConfig { return new XssFilter(); } + /** + * 注册可重复读取请求体过滤器。 + * + * @return 请求包装过滤器实例 + */ @Bean @FilterRegistration(name = "repeatableFilter", urlPatterns = "/*") public RepeatableFilter repeatableFilter() { diff --git a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/I18nConfig.java b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/I18nConfig.java index 317479aa7..b9566fa68 100644 --- a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/I18nConfig.java +++ b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/I18nConfig.java @@ -14,6 +14,11 @@ import org.springframework.web.servlet.LocaleResolver; @AutoConfiguration(before = WebMvcAutoConfiguration.class) public class I18nConfig { + /** + * 注册自定义国际化区域解析器。 + * + * @return Locale 解析器实例 + */ @Bean public LocaleResolver localeResolver() { return new I18nLocaleResolver(); diff --git a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/ResourcesConfig.java b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/ResourcesConfig.java index 81ec9050a..f5527d69b 100644 --- a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/ResourcesConfig.java +++ b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/ResourcesConfig.java @@ -25,12 +25,22 @@ import java.util.Date; @AutoConfiguration public class ResourcesConfig implements WebMvcConfigurer { + /** + * 注册全局拦截器。 + * + * @param registry 拦截器注册表 + */ @Override public void addInterceptors(InterceptorRegistry registry) { // 全局访问性能拦截 registry.addInterceptor(new PlusWebInvokeTimeInterceptor()); } + /** + * 注册全局格式转换器。 + * + * @param registry 格式化器注册表 + */ @Override public void addFormatters(FormatterRegistry registry) { // 全局日期格式转换配置 @@ -43,12 +53,19 @@ public class ResourcesConfig implements WebMvcConfigurer { }); } + /** + * 注册静态资源处理器。 + * + * @param registry 资源处理器注册表 + */ @Override public void addResourceHandlers(ResourceHandlerRegistry registry) { } /** * 跨域配置 + * + * @return 全局 Cors 过滤器 */ @Bean public CorsFilter corsFilter() { @@ -71,6 +88,8 @@ public class ResourcesConfig implements WebMvcConfigurer { /** * 全局异常处理器 + * + * @return 全局异常处理器实例 */ @Bean public GlobalExceptionHandler globalExceptionHandler() { diff --git a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/properties/CaptchaProperties.java b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/properties/CaptchaProperties.java index 6dcfe64bb..17f165549 100644 --- a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/properties/CaptchaProperties.java +++ b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/properties/CaptchaProperties.java @@ -12,6 +12,9 @@ import org.springframework.boot.context.properties.ConfigurationProperties; @ConfigurationProperties(prefix = "captcha") public class CaptchaProperties { + /** + * 是否启用验证码校验。 + */ private Boolean enable; /** diff --git a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/properties/XssProperties.java b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/properties/XssProperties.java index bd3e59b17..e549d3b5b 100644 --- a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/properties/XssProperties.java +++ b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/config/properties/XssProperties.java @@ -7,7 +7,7 @@ import java.util.ArrayList; import java.util.List; /** - * xss过滤 配置属性 + * XSS 过滤配置属性,用于控制过滤器开关及排除路径。 * * @author Lion Li */ @@ -16,12 +16,12 @@ import java.util.List; public class XssProperties { /** - * Xss开关 + * XSS 过滤总开关。 */ private Boolean enabled; /** - * 排除路径 + * 跳过 XSS 过滤的请求路径集合。 */ private List excludeUrls = new ArrayList<>(); diff --git a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/core/BaseController.java b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/core/BaseController.java index fd01dda5a..b743bbd84 100644 --- a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/core/BaseController.java +++ b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/core/BaseController.java @@ -32,6 +32,9 @@ public class BaseController { /** * 页面跳转 + * + * @param url 目标跳转地址 + * @return Spring MVC 重定向路径表达式 */ public String redirect(String url) { return StringUtils.format("redirect:{}", url); diff --git a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/core/I18nLocaleResolver.java b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/core/I18nLocaleResolver.java index d1ddaaeb4..6499abfcd 100644 --- a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/core/I18nLocaleResolver.java +++ b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/core/I18nLocaleResolver.java @@ -7,12 +7,18 @@ import jakarta.servlet.http.HttpServletResponse; import java.util.Locale; /** - * 获取请求头国际化信息 + * 基于请求头解析国际化区域信息的语言解析器。 * * @author Lion Li */ public class I18nLocaleResolver implements LocaleResolver { + /** + * 从请求头 {@code content-language} 中解析本次请求的区域信息,缺省时回退到系统默认区域。 + * + * @param httpServletRequest 当前请求 + * @return 当前请求对应的区域设置 + */ @Override public Locale resolveLocale(HttpServletRequest httpServletRequest) { String language = httpServletRequest.getHeader("content-language"); @@ -23,6 +29,13 @@ public class I18nLocaleResolver implements LocaleResolver { return locale; } + /** + * 当前项目不在服务端主动切换区域信息,因此保留空实现。 + * + * @param httpServletRequest 当前请求 + * @param httpServletResponse 当前响应 + * @param locale 目标区域 + */ @Override public void setLocale(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Locale locale) { diff --git a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/core/WaveAndCircleCaptcha.java b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/core/WaveAndCircleCaptcha.java index 8b37be471..b0207b885 100644 --- a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/core/WaveAndCircleCaptcha.java +++ b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/core/WaveAndCircleCaptcha.java @@ -14,7 +14,7 @@ import java.io.Serial; import java.util.concurrent.ThreadLocalRandom; /** - * 带干扰线、波浪、圆的验证码 + * 带干扰线、波浪和圆形干扰元素的验证码实现,用于增强验证码识别难度。 * * @author Lion Li */ @@ -23,27 +23,70 @@ public class WaveAndCircleCaptcha extends AbstractCaptcha { @Serial private static final long serialVersionUID = 1L; - // 构造方法(略,与之前一致) + /** + * 构造默认长度为 4 的验证码。 + * + * @param width 图片宽度 + * @param height 图片高度 + */ public WaveAndCircleCaptcha(int width, int height) { this(width, height, 4); } + /** + * 构造指定验证码长度的验证码对象。 + * + * @param width 图片宽度 + * @param height 图片高度 + * @param codeCount 验证码字符数 + */ public WaveAndCircleCaptcha(int width, int height, int codeCount) { this(width, height, codeCount, 6); } + /** + * 构造指定字符数与干扰数的验证码对象。 + * + * @param width 图片宽度 + * @param height 图片高度 + * @param codeCount 验证码字符数 + * @param interfereCount 干扰元素数量 + */ public WaveAndCircleCaptcha(int width, int height, int codeCount, int interfereCount) { this(width, height, new RandomGenerator(codeCount), interfereCount); } + /** + * 使用指定验证码生成器构造验证码对象。 + * + * @param width 图片宽度 + * @param height 图片高度 + * @param generator 验证码生成器 + * @param interfereCount 干扰元素数量 + */ public WaveAndCircleCaptcha(int width, int height, CodeGenerator generator, int interfereCount) { super(width, height, generator, interfereCount); } + /** + * 构造带字体缩放比例的验证码对象。 + * + * @param width 图片宽度 + * @param height 图片高度 + * @param codeCount 验证码字符数 + * @param interfereCount 干扰元素数量 + * @param size 字体相对尺寸 + */ public WaveAndCircleCaptcha(int width, int height, int codeCount, int interfereCount, float size) { super(width, height, new RandomGenerator(codeCount), interfereCount, size); } + /** + * 生成验证码图片并绘制文字、扭曲效果及干扰图形。 + * + * @param code 验证码文本 + * @return 生成后的验证码图片 + */ @Override public Image createImage(String code) { final BufferedImage image = new BufferedImage( @@ -65,6 +108,12 @@ public class WaveAndCircleCaptcha extends AbstractCaptcha { return image; } + /** + * 绘制验证码文本并开启文字抗锯齿。 + * + * @param g 图形上下文 + * @param code 验证码文本 + */ private void drawString(Graphics2D g, String code) { // 设置抗锯齿(让字体渲染更清晰) g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); @@ -77,6 +126,11 @@ public class WaveAndCircleCaptcha extends AbstractCaptcha { GraphicsUtil.drawStringColourful(g, code, this.font, this.width, this.height); } + /** + * 绘制圆形与波浪线干扰元素。 + * + * @param g 图形上下文 + */ protected void drawInterfere(Graphics2D g) { ThreadLocalRandom random = RandomUtil.getRandom(); int circleCount = Math.max(0, this.interfereCount - 1); @@ -98,6 +152,12 @@ public class WaveAndCircleCaptcha extends AbstractCaptcha { } } + /** + * 绘制平滑波浪线干扰轨迹。 + * + * @param g 图形上下文 + * @param random 随机数生成器 + */ private void drawSmoothWave(Graphics2D g, ThreadLocalRandom random) { int amplitude = random.nextInt(8) + 5; // 波动幅度 int wavelength = random.nextInt(40) + 30; // 波长 @@ -122,6 +182,14 @@ public class WaveAndCircleCaptcha extends AbstractCaptcha { g.drawPolyline(xPoints, yPoints, width); } + /** + * 生成指定 RGB 范围内的随机颜色。 + * + * @param min 最小颜色值 + * @param max 最大颜色值 + * @param random 随机数生成器 + * @return 随机颜色 + */ private Color getRandomColor(int min, int max, ThreadLocalRandom random) { int range = max - min; return new Color( diff --git a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/filter/RepeatableFilter.java b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/filter/RepeatableFilter.java index e0a3bf244..c51a6704d 100644 --- a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/filter/RepeatableFilter.java +++ b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/filter/RepeatableFilter.java @@ -8,16 +8,32 @@ import jakarta.servlet.http.HttpServletRequest; import java.io.IOException; /** - * Repeatable 过滤器 + * 可重复读取请求体的过滤器,仅对 JSON 请求包装可重复消费的请求对象。 * * @author ruoyi */ public class RepeatableFilter implements Filter { + + /** + * 过滤器初始化入口,当前无额外初始化逻辑。 + * + * @param filterConfig 过滤器配置 + * @throws ServletException 过滤器初始化异常 + */ @Override public void init(FilterConfig filterConfig) throws ServletException { } + /** + * 为 JSON 请求创建可重复读取的包装器,便于日志、验签等场景多次读取请求体。 + * + * @param request 原始请求 + * @param response 当前响应 + * @param chain 过滤器链 + * @throws IOException IO 异常 + * @throws ServletException Servlet 异常 + */ @Override public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { @@ -33,6 +49,9 @@ public class RepeatableFilter implements Filter { } } + /** + * 过滤器销毁入口,当前无额外资源需要释放。 + */ @Override public void destroy() { diff --git a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/filter/RepeatedlyRequestWrapper.java b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/filter/RepeatedlyRequestWrapper.java index 8933225f2..a282a9bfc 100644 --- a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/filter/RepeatedlyRequestWrapper.java +++ b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/filter/RepeatedlyRequestWrapper.java @@ -15,13 +15,20 @@ import java.io.IOException; import java.io.InputStreamReader; /** - * 构建可重复读取inputStream的request + * 构建可重复读取输入流的请求包装器,缓存请求体以支持多次读取。 * * @author ruoyi */ public class RepeatedlyRequestWrapper extends HttpServletRequestWrapper { private final byte[] body; + /** + * 读取原始请求体并缓存到内存,统一设置请求与响应编码。 + * + * @param request 原始请求 + * @param response 当前响应 + * @throws IOException 读取请求体异常 + */ public RepeatedlyRequestWrapper(HttpServletRequest request, ServletResponse response) throws IOException { super(request); request.setCharacterEncoding(Constants.UTF8); @@ -30,11 +37,23 @@ public class RepeatedlyRequestWrapper extends HttpServletRequestWrapper { body = IoUtil.readBytes(request.getInputStream(), false); } + /** + * 基于缓存的请求体构造字符读取器。 + * + * @return 可重复读取的字符流 + * @throws IOException IO 异常 + */ @Override public BufferedReader getReader() throws IOException { return new BufferedReader(new InputStreamReader(getInputStream())); } + /** + * 返回基于缓存请求体重新生成的输入流。 + * + * @return 可重复读取的输入流 + * @throws IOException IO 异常 + */ @Override public ServletInputStream getInputStream() throws IOException { final ByteArrayInputStream bais = new ByteArrayInputStream(body); diff --git a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/filter/XssFilter.java b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/filter/XssFilter.java index 95bcdd99a..b63af29d7 100644 --- a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/filter/XssFilter.java +++ b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/filter/XssFilter.java @@ -13,22 +13,37 @@ import java.util.ArrayList; import java.util.List; /** - * 防止XSS攻击的过滤器 + * 防止 XSS 攻击的过滤器,对非排除请求执行参数与请求体清洗。 * * @author ruoyi */ public class XssFilter implements Filter { /** - * 排除链接 + * 跳过 XSS 过滤的请求路径集合。 */ public List excludes = new ArrayList<>(); + /** + * 初始化过滤器并加载配置中的排除路径。 + * + * @param filterConfig 过滤器配置 + * @throws ServletException 过滤器初始化异常 + */ @Override public void init(FilterConfig filterConfig) throws ServletException { XssProperties properties = SpringUtils.getBean(XssProperties.class); excludes.addAll(properties.getExcludeUrls()); } + /** + * 对请求执行 XSS 包装处理,命中排除规则时直接放行。 + * + * @param request 原始请求 + * @param response 当前响应 + * @param chain 过滤器链 + * @throws IOException IO 异常 + * @throws ServletException Servlet 异常 + */ @Override public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { @@ -42,6 +57,13 @@ public class XssFilter implements Filter { chain.doFilter(xssRequest, response); } + /** + * 判断当前请求是否需要跳过 XSS 过滤。 + * + * @param request 当前请求 + * @param response 当前响应 + * @return true 表示跳过过滤 + */ private boolean handleExcludeURL(HttpServletRequest request, HttpServletResponse response) { String url = request.getServletPath(); String method = request.getMethod(); @@ -52,6 +74,9 @@ public class XssFilter implements Filter { return StringUtils.matches(url, excludes); } + /** + * 过滤器销毁入口,当前无额外资源需要释放。 + */ @Override public void destroy() { diff --git a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/filter/XssHttpServletRequestWrapper.java b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/filter/XssHttpServletRequestWrapper.java index 914e54995..247c7564e 100644 --- a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/filter/XssHttpServletRequestWrapper.java +++ b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/filter/XssHttpServletRequestWrapper.java @@ -20,18 +20,27 @@ import java.util.HashMap; import java.util.Map; /** - * XSS过滤处理 + * XSS 请求包装器,统一清洗参数与 JSON 请求体中的 HTML 标签内容。 * * @author ruoyi */ public class XssHttpServletRequestWrapper extends HttpServletRequestWrapper { + /** - * @param request + * 使用原始请求构造 XSS 包装器。 + * + * @param request 原始请求 */ public XssHttpServletRequestWrapper(HttpServletRequest request) { super(request); } + /** + * 获取并清洗单个请求参数。 + * + * @param name 参数名 + * @return 清洗后的参数值 + */ @Override public String getParameter(String name) { String value = super.getParameter(name); @@ -41,6 +50,11 @@ public class XssHttpServletRequestWrapper extends HttpServletRequestWrapper { return HtmlUtil.cleanHtmlTag(value).trim(); } + /** + * 获取并清洗整组请求参数。 + * + * @return 清洗后的参数映射 + */ @Override public Map getParameterMap() { Map valueMap = super.getParameterMap(); @@ -65,6 +79,12 @@ public class XssHttpServletRequestWrapper extends HttpServletRequestWrapper { return map; } + /** + * 获取并清洗指定参数的多值数组。 + * + * @param name 参数名 + * @return 清洗后的参数值数组 + */ @Override public String[] getParameterValues(String name) { String[] values = super.getParameterValues(name); @@ -80,6 +100,12 @@ public class XssHttpServletRequestWrapper extends HttpServletRequestWrapper { return escapseValues; } + /** + * 获取输入流并在 JSON 场景下对请求体执行清洗。 + * + * @return 清洗后的输入流 + * @throws IOException 读取请求体异常 + */ @Override public ServletInputStream getInputStream() throws IOException { // 非json类型,直接返回 @@ -125,7 +151,9 @@ public class XssHttpServletRequestWrapper extends HttpServletRequestWrapper { } /** - * 是否是Json请求 + * 判断当前请求是否为 JSON 请求。 + * + * @return true 表示 JSON 请求 */ public boolean isJsonRequest() { String header = super.getHeader(HttpHeaders.CONTENT_TYPE); diff --git a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/interceptor/PlusWebInvokeTimeInterceptor.java b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/interceptor/PlusWebInvokeTimeInterceptor.java index e3f26c8fb..6e96d5296 100644 --- a/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/interceptor/PlusWebInvokeTimeInterceptor.java +++ b/ruoyi-common/ruoyi-common-web/src/main/java/org/dromara/common/web/interceptor/PlusWebInvokeTimeInterceptor.java @@ -26,7 +26,7 @@ import java.util.Map; import java.util.Set; /** - * web的调用时间统计拦截器 + * Web 调用时间统计拦截器,同时记录请求参数并对敏感字段做脱敏处理。 * * @author Lion Li * @since 3.3.0 @@ -36,6 +36,15 @@ public class PlusWebInvokeTimeInterceptor implements HandlerInterceptor { private final static ThreadLocal KEY_CACHE = new ThreadLocal<>(); + /** + * 请求进入控制器前记录入参并启动耗时统计。 + * + * @param request 当前请求 + * @param response 当前响应 + * @param handler 目标处理器 + * @return 始终返回 true,继续后续处理流程 + * @throws Exception 读取请求体或解析 JSON 失败时抛出 + */ @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { String url = request.getMethod() + " " + request.getRequestURI(); @@ -71,6 +80,12 @@ public class PlusWebInvokeTimeInterceptor implements HandlerInterceptor { return true; } + /** + * 递归移除 JSON 节点中的敏感字段,避免在日志中输出密码等敏感信息。 + * + * @param node 当前 JSON 节点 + * @param excludeProperties 需要排除的字段名集合 + */ private void removeSensitiveFields(JsonNode node, String[] excludeProperties) { if (node == null) { return; @@ -100,6 +115,15 @@ public class PlusWebInvokeTimeInterceptor implements HandlerInterceptor { } + /** + * 请求完成后输出最终耗时,并清理线程内缓存的计时器。 + * + * @param request 当前请求 + * @param response 当前响应 + * @param handler 目标处理器 + * @param ex 请求处理过程中的异常 + * @throws Exception 拦截器链路抛出的异常 + */ @Override public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception { StopWatch stopWatch = KEY_CACHE.get(); diff --git a/ruoyi-common/ruoyi-common-websocket/src/main/java/org/dromara/common/websocket/utils/WebSocketUtils.java b/ruoyi-common/ruoyi-common-websocket/src/main/java/org/dromara/common/websocket/utils/WebSocketUtils.java index 802fdbcee..900076a6c 100644 --- a/ruoyi-common/ruoyi-common-websocket/src/main/java/org/dromara/common/websocket/utils/WebSocketUtils.java +++ b/ruoyi-common/ruoyi-common-websocket/src/main/java/org/dromara/common/websocket/utils/WebSocketUtils.java @@ -29,7 +29,7 @@ import static org.dromara.common.websocket.constant.WebSocketConstants.WEB_SOCKE public class WebSocketUtils { /** - * 向指定的WebSocket会话发送消息 + * 向指定会话标识发送文本消息。 * * @param sessionKey 要发送消息的用户id * @param message 要发送的消息内容 @@ -40,7 +40,7 @@ public class WebSocketUtils { } /** - * 订阅WebSocket消息主题,并提供一个消费者函数来处理接收到的消息 + * 订阅 WebSocket 广播主题消息。 * * @param consumer 处理WebSocket消息的消费者函数 */ @@ -49,7 +49,7 @@ public class WebSocketUtils { } /** - * 发布WebSocket订阅消息 + * 按会话标识发布 WebSocket 消息。 * * @param webSocketMessage 要发布的WebSocket消息对象 */ @@ -76,7 +76,7 @@ public class WebSocketUtils { } /** - * 向所有的WebSocket会话发布订阅的消息(群发) + * 向所有 WebSocket 会话发布广播消息。 * * @param message 要发布的消息内容 */ @@ -89,7 +89,7 @@ public class WebSocketUtils { } /** - * 向指定的WebSocket会话发送Pong消息 + * 向指定会话发送 Pong 心跳消息。 * * @param session 要发送Pong消息的WebSocket会话 */ @@ -98,7 +98,7 @@ public class WebSocketUtils { } /** - * 向指定的WebSocket会话发送文本消息 + * 向指定 WebSocket 会话发送文本消息。 * * @param session WebSocket会话 * @param message 要发送的文本消息内容 @@ -108,7 +108,7 @@ public class WebSocketUtils { } /** - * 向指定的WebSocket会话发送WebSocket消息对象 + * 向指定 WebSocket 会话发送原始消息对象。 * * @param session WebSocket会话 * @param message 要发送的WebSocket消息对象 diff --git a/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/config/SecurityConfig.java b/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/config/SecurityConfig.java index 41372f258..102424549 100644 --- a/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/config/SecurityConfig.java +++ b/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/config/SecurityConfig.java @@ -27,6 +27,13 @@ public class SecurityConfig { this.adminContextPath = adminServerProperties.getContextPath(); } + /** + * 配置监控后台的安全过滤链。 + * + * @param httpSecurity Spring Security 配置对象 + * @return 安全过滤链 + * @throws Exception 构建过滤链异常 + */ @Bean public SecurityFilterChain filterChain(HttpSecurity httpSecurity) throws Exception { SavedRequestAwareAuthenticationSuccessHandler successHandler = new SavedRequestAwareAuthenticationSuccessHandler(); diff --git a/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/CustomNotifier.java b/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/CustomNotifier.java index 838eefc47..45d279cef 100644 --- a/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/CustomNotifier.java +++ b/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/CustomNotifier.java @@ -24,6 +24,13 @@ public class CustomNotifier extends AbstractEventNotifier { super(repository); } + /** + * 处理实例事件并记录状态变化日志。 + * + * @param event 实例事件 + * @param instance 当前实例 + * @return Reactor 执行结果 + */ @Override @SuppressWarnings("all") protected Mono doNotify(InstanceEvent event, Instance instance) { diff --git a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/ITestDemoService.java b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/ITestDemoService.java index bca419204..0b3160ebf 100644 --- a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/ITestDemoService.java +++ b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/ITestDemoService.java @@ -20,22 +20,34 @@ public interface ITestDemoService { /** * 查询单个 * - * @return + * @param id 主键 + * @return 测试单表视图对象 */ TestDemoVo queryById(Long id); /** - * 查询列表 + * 分页查询测试单表列表。 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 分页结果 */ TableDataInfo queryPageList(TestDemoBo bo, PageQuery pageQuery); /** - * 自定义分页查询 + * 按自定义 SQL 分页查询测试单表列表。 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 分页结果 */ TableDataInfo customPageList(TestDemoBo bo, PageQuery pageQuery); /** - * 查询列表 + * 查询符合条件的测试单表列表。 + * + * @param bo 查询条件 + * @return 结果列表 */ List queryList(TestDemoBo bo); @@ -43,7 +55,7 @@ public interface ITestDemoService { * 根据新增业务对象插入测试单表 * * @param bo 测试单表新增业务对象 - * @return + * @return 是否新增成功 */ Boolean insertByBo(TestDemoBo bo); @@ -51,7 +63,7 @@ public interface ITestDemoService { * 根据编辑业务对象修改测试单表 * * @param bo 测试单表编辑业务对象 - * @return + * @return 是否修改成功 */ Boolean updateByBo(TestDemoBo bo); @@ -60,12 +72,15 @@ public interface ITestDemoService { * * @param ids 主键集合 * @param isValid 是否校验,true-删除前校验,false-不校验 - * @return + * @return 是否删除成功 */ Boolean deleteWithValidByIds(Collection ids, Boolean isValid); /** - * 批量保存 + * 批量保存测试单表数据。 + * + * @param list 待保存数据 + * @return 是否保存成功 */ Boolean saveBatch(List list); } diff --git a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/ITestTreeService.java b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/ITestTreeService.java index 915520194..55239e600 100644 --- a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/ITestTreeService.java +++ b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/ITestTreeService.java @@ -16,12 +16,16 @@ public interface ITestTreeService { /** * 查询单个 * - * @return + * @param id 主键 + * @return 测试树表视图对象 */ TestTreeVo queryById(Long id); /** - * 查询列表 + * 查询符合条件的测试树表列表。 + * + * @param bo 查询条件 + * @return 结果列表 */ List queryList(TestTreeBo bo); @@ -29,7 +33,7 @@ public interface ITestTreeService { * 根据新增业务对象插入测试树表 * * @param bo 测试树表新增业务对象 - * @return + * @return 是否新增成功 */ Boolean insertByBo(TestTreeBo bo); @@ -37,7 +41,7 @@ public interface ITestTreeService { * 根据编辑业务对象修改测试树表 * * @param bo 测试树表编辑业务对象 - * @return + * @return 是否修改成功 */ Boolean updateByBo(TestTreeBo bo); @@ -46,7 +50,7 @@ public interface ITestTreeService { * * @param ids 主键集合 * @param isValid 是否校验,true-删除前校验,false-不校验 - * @return + * @return 是否删除成功 */ Boolean deleteWithValidByIds(Collection ids, Boolean isValid); } diff --git a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/TestDemoServiceImpl.java b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/TestDemoServiceImpl.java index 415e440e0..e3404f2a6 100644 --- a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/TestDemoServiceImpl.java +++ b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/TestDemoServiceImpl.java @@ -32,11 +32,24 @@ public class TestDemoServiceImpl implements ITestDemoService { private final TestDemoMapper baseMapper; + /** + * 根据主键查询测试单表详情。 + * + * @param id 主键 + * @return 测试单表视图对象 + */ @Override public TestDemoVo queryById(Long id) { return baseMapper.selectVoById(id); } + /** + * 分页查询测试单表列表。 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 分页结果 + */ @Override public TableDataInfo queryPageList(TestDemoBo bo, PageQuery pageQuery) { LambdaQueryWrapper lqw = buildQueryWrapper(bo); @@ -45,7 +58,11 @@ public class TestDemoServiceImpl implements ITestDemoService { } /** - * 自定义分页查询 + * 通过自定义 SQL 分页查询测试单表列表。 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 分页结果 */ @Override public TableDataInfo customPageList(TestDemoBo bo, PageQuery pageQuery) { @@ -54,11 +71,23 @@ public class TestDemoServiceImpl implements ITestDemoService { return TableDataInfo.build(result); } + /** + * 查询符合条件的测试单表列表。 + * + * @param bo 查询条件 + * @return 结果列表 + */ @Override public List queryList(TestDemoBo bo) { return baseMapper.selectVoList(buildQueryWrapper(bo)); } + /** + * 构建测试单表动态查询条件。 + * + * @param bo 查询条件 + * @return 查询条件包装器 + */ private LambdaQueryWrapper buildQueryWrapper(TestDemoBo bo) { Map params = bo.getParams(); LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); @@ -72,6 +101,12 @@ public class TestDemoServiceImpl implements ITestDemoService { return lqw; } + /** + * 新增测试单表数据。 + * + * @param bo 新增业务对象 + * @return 是否新增成功 + */ @Override public Boolean insertByBo(TestDemoBo bo) { TestDemo add = MapstructUtils.convert(bo, TestDemo.class); @@ -83,6 +118,12 @@ public class TestDemoServiceImpl implements ITestDemoService { return flag; } + /** + * 更新测试单表数据。 + * + * @param bo 编辑业务对象 + * @return 是否更新成功 + */ @Override public Boolean updateByBo(TestDemoBo bo) { TestDemo update = MapstructUtils.convert(bo, TestDemo.class); @@ -99,6 +140,13 @@ public class TestDemoServiceImpl implements ITestDemoService { //TODO 做一些数据校验,如唯一约束 } + /** + * 按主键集合删除测试单表数据,并按需执行删除前校验。 + * + * @param ids 主键集合 + * @param isValid 是否执行删除校验 + * @return 是否删除成功 + */ @Override public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { if (isValid) { @@ -111,6 +159,12 @@ public class TestDemoServiceImpl implements ITestDemoService { return baseMapper.deleteByIds(ids) > 0; } + /** + * 批量保存测试单表数据。 + * + * @param list 待保存实体列表 + * @return 是否保存成功 + */ @Override public Boolean saveBatch(List list) { return baseMapper.insertBatch(list); diff --git a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/TestTreeServiceImpl.java b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/TestTreeServiceImpl.java index 836a0909b..9499339cc 100644 --- a/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/TestTreeServiceImpl.java +++ b/ruoyi-modules/ruoyi-demo/src/main/java/org/dromara/demo/service/impl/TestTreeServiceImpl.java @@ -29,18 +29,36 @@ public class TestTreeServiceImpl implements ITestTreeService { private final TestTreeMapper baseMapper; + /** + * 根据主键查询测试树表详情。 + * + * @param id 主键 + * @return 测试树表视图对象 + */ @Override public TestTreeVo queryById(Long id) { return baseMapper.selectVoById(id); } // @DS("slave") // 切换从库查询 + /** + * 查询符合条件的测试树表列表。 + * + * @param bo 查询条件 + * @return 结果列表 + */ @Override public List queryList(TestTreeBo bo) { LambdaQueryWrapper lqw = buildQueryWrapper(bo); return baseMapper.selectVoList(lqw); } + /** + * 构建测试树表动态查询条件。 + * + * @param bo 查询条件 + * @return 查询条件包装器 + */ private LambdaQueryWrapper buildQueryWrapper(TestTreeBo bo) { Map params = bo.getParams(); LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); @@ -53,6 +71,12 @@ public class TestTreeServiceImpl implements ITestTreeService { return lqw; } + /** + * 新增测试树表数据。 + * + * @param bo 新增业务对象 + * @return 是否新增成功 + */ @Override public Boolean insertByBo(TestTreeBo bo) { TestTree add = MapstructUtils.convert(bo, TestTree.class); @@ -64,6 +88,12 @@ public class TestTreeServiceImpl implements ITestTreeService { return flag; } + /** + * 更新测试树表数据。 + * + * @param bo 编辑业务对象 + * @return 是否更新成功 + */ @Override public Boolean updateByBo(TestTreeBo bo) { TestTree update = MapstructUtils.convert(bo, TestTree.class); @@ -80,6 +110,13 @@ public class TestTreeServiceImpl implements ITestTreeService { //TODO 做一些数据校验,如唯一约束 } + /** + * 按主键集合删除测试树表数据,并按需执行删除前校验。 + * + * @param ids 主键集合 + * @param isValid 是否执行删除校验 + * @return 是否删除成功 + */ @Override public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { if (isValid) { diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/config/GenConfig.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/config/GenConfig.java index b29f8c9ee..f020772c7 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/config/GenConfig.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/config/GenConfig.java @@ -39,6 +39,11 @@ public class GenConfig { return author; } + /** + * 注入代码生成作者配置。 + * + * @param author 作者名称 + */ @Value("${author}") public void setAuthor(String author) { GenConfig.author = author; @@ -48,6 +53,11 @@ public class GenConfig { return packageName; } + /** + * 注入代码生成基础包名配置。 + * + * @param packageName 基础包名 + */ @Value("${packageName}") public void setPackageName(String packageName) { GenConfig.packageName = packageName; @@ -57,6 +67,11 @@ public class GenConfig { return autoRemovePre; } + /** + * 注入是否自动移除表前缀配置。 + * + * @param autoRemovePre 是否自动移除表前缀 + */ @Value("${autoRemovePre}") public void setAutoRemovePre(boolean autoRemovePre) { GenConfig.autoRemovePre = autoRemovePre; @@ -66,6 +81,11 @@ public class GenConfig { return tablePrefix; } + /** + * 注入代码生成表前缀配置。 + * + * @param tablePrefix 表前缀字符串 + */ @Value("${tablePrefix}") public void setTablePrefix(String tablePrefix) { GenConfig.tablePrefix = tablePrefix; diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/config/MyBatisDataSourceMonitor.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/config/MyBatisDataSourceMonitor.java index 8c0f352fa..3e35bdc6b 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/config/MyBatisDataSourceMonitor.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/config/MyBatisDataSourceMonitor.java @@ -25,6 +25,9 @@ import java.util.Map; @Component public class MyBatisDataSourceMonitor implements DataSourceMonitor { + /** + * 初始化 anyline 与动态数据源联动所需的元数据解析策略。 + */ public MyBatisDataSourceMonitor() { // 调整执行模式为自定义 ConfigTable.KEEP_ADAPTER = 2; @@ -72,6 +75,8 @@ public class MyBatisDataSourceMonitor implements DataSourceMonitor { /** * 数据源唯一标识 如果不实现则默认feature + * + * @param runtime 数据运行时上下文 * @param datasource 数据源 * @return String 返回null由上层自动提取 */ @@ -90,6 +95,7 @@ public class MyBatisDataSourceMonitor implements DataSourceMonitor { * ConfigTable.KEEP_ADAPTER=2 : 根据当前接口判断是否保持同一个数据源绑定同一个adapter
* DynamicRoutingDataSource类型的返回false,因为同一个DynamicRoutingDataSource可能对应多类数据库, 如果项目中只有一种数据库 应该直接返回true * + * @param runtime 数据运行时上下文 * @param datasource 数据源 * @return boolean */ diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/constant/GenConstants.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/constant/GenConstants.java index b9888fb63..f8b963341 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/constant/GenConstants.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/constant/GenConstants.java @@ -180,7 +180,7 @@ public interface GenConstants { String QUERY_EQ = "EQ"; /** - * 需要 + * 必填标识,对应前端表单规则中的必填字段配置。 */ String REQUIRE = "1"; } diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/controller/GenController.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/controller/GenController.java index ef1054b31..1bb8f949c 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/controller/GenController.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/controller/GenController.java @@ -39,7 +39,11 @@ public class GenController extends BaseController { private final IGenTableService genTableService; /** - * 查询代码生成列表 + * 分页查询代码生成业务列表。 + * + * @param genTable 查询条件 + * @param pageQuery 分页参数 + * @return 代码生成列表 */ @SaCheckPermission("tool:gen:list") @GetMapping("/list") @@ -51,6 +55,7 @@ public class GenController extends BaseController { * 修改代码生成业务 * * @param tableId 表ID + * @return 表、字段与可选业务表信息 */ @RepeatSubmit() @SaCheckPermission("tool:gen:query") @@ -67,7 +72,11 @@ public class GenController extends BaseController { } /** - * 查询数据库列表 + * 分页查询数据库表列表。 + * + * @param genTable 查询条件 + * @param pageQuery 分页参数 + * @return 数据库表列表 */ @SaCheckPermission("tool:gen:list") @GetMapping("/db/list") @@ -79,6 +88,7 @@ public class GenController extends BaseController { * 查询数据表字段列表 * * @param tableId 表ID + * @return 字段列表 */ @SaCheckPermission("tool:gen:list") @GetMapping(value = "/column/{tableId}") @@ -92,6 +102,7 @@ public class GenController extends BaseController { * * @param tables 表名串 * @param dataName 数据源名称 + * @return 操作结果 */ @SaCheckPermission("tool:gen:import") @Log(title = "代码生成", businessType = BusinessType.IMPORT) @@ -107,7 +118,10 @@ public class GenController extends BaseController { } /** - * 修改保存代码生成业务 + * 保存代码生成业务配置。 + * + * @param genTable 业务配置 + * @return 操作结果 */ @SaCheckPermission("tool:gen:edit") @Log(title = "代码生成", businessType = BusinessType.UPDATE) @@ -123,6 +137,7 @@ public class GenController extends BaseController { * 删除代码生成 * * @param tableIds 表ID串 + * @return 操作结果 */ @SaCheckPermission("tool:gen:remove") @Log(title = "代码生成", businessType = BusinessType.DELETE) @@ -136,6 +151,7 @@ public class GenController extends BaseController { * 预览代码 * * @param tableId 表ID + * @return 模板路径与生成代码内容映射 */ @SaCheckPermission("tool:gen:preview") @GetMapping("/preview/{tableId}") @@ -147,6 +163,7 @@ public class GenController extends BaseController { /** * 生成代码(下载方式) * + * @param response HTTP 响应 * @param tableId 表ID */ @SaCheckPermission("tool:gen:code") @@ -161,6 +178,7 @@ public class GenController extends BaseController { * 生成代码(自定义路径) * * @param tableId 表ID + * @return 操作结果 */ @SaCheckPermission("tool:gen:code") @Log(title = "代码生成", businessType = BusinessType.GENCODE) @@ -174,6 +192,7 @@ public class GenController extends BaseController { * 同步数据库 * * @param tableId 表ID + * @return 操作结果 */ @SaCheckPermission("tool:gen:edit") @Log(title = "代码生成", businessType = BusinessType.UPDATE) @@ -187,6 +206,7 @@ public class GenController extends BaseController { /** * 批量生成代码 * + * @param response HTTP 响应 * @param tableIdStr 表ID串 */ @SaCheckPermission("tool:gen:code") @@ -199,7 +219,10 @@ public class GenController extends BaseController { } /** - * 生成zip文件 + * 将生成结果写出为 zip 文件流。 + * + * @param response HTTP 响应 + * @param data zip 二进制数据 */ private void genCode(HttpServletResponse response, byte[] data) throws IOException { response.reset(); @@ -212,7 +235,9 @@ public class GenController extends BaseController { } /** - * 查询数据源名称列表 + * 查询当前可用数据源名称列表。 + * + * @return 数据源名称集合 */ @SaCheckPermission("tool:gen:list") @GetMapping(value = "/getDataNames") diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/domain/GenTable.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/domain/GenTable.java index f2d725709..729eb51ed 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/domain/GenTable.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/domain/GenTable.java @@ -152,7 +152,7 @@ public class GenTable extends BaseEntity { @TableField(exist = false) private String treeName; - /* + /** * 菜单id列表 */ @TableField(exist = false) @@ -170,26 +170,61 @@ public class GenTable extends BaseEntity { @TableField(exist = false) private String parentMenuName; + /** + * 判断当前业务表是否采用树表模板。 + * + * @return 树表模板返回 {@code true} + */ public boolean isTree() { return isTree(this.tplCategory); } + /** + * 根据模板分类判断是否为树表模板。 + * + * @param tplCategory 模板分类 + * @return 树表模板返回 {@code true} + */ public static boolean isTree(String tplCategory) { return tplCategory != null && StringUtils.equals(GenConstants.TPL_TREE, tplCategory); } + /** + * 判断当前业务表是否采用普通 CRUD 模板。 + * + * @return 普通 CRUD 模板返回 {@code true} + */ public boolean isCrud() { return isCrud(this.tplCategory); } + /** + * 根据模板分类判断是否为普通 CRUD 模板。 + * + * @param tplCategory 模板分类 + * @return 普通 CRUD 模板返回 {@code true} + */ public static boolean isCrud(String tplCategory) { return tplCategory != null && StringUtils.equals(GenConstants.TPL_CRUD, tplCategory); } + /** + * 判断指定 Java 字段是否属于基类公共字段。 + * + * @param javaField Java 字段名 + * @return 基类公共字段返回 {@code true} + */ public boolean isSuperColumn(String javaField) { return isSuperColumn(this.tplCategory, javaField); } + /** + * 根据模板分类与字段名判断是否属于基类公共字段。 + * + * @param tplCategory 模板分类 + * @param javaField Java 字段名 + * @return 基类公共字段返回 {@code true} + */ public static boolean isSuperColumn(String tplCategory, String javaField) { return StringUtils.equalsAnyIgnoreCase(javaField, GenConstants.BASE_ENTITY); } diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/domain/GenTableColumn.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/domain/GenTableColumn.java index 63fd1f5b7..f0caa5b21 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/domain/GenTableColumn.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/domain/GenTableColumn.java @@ -122,70 +122,163 @@ public class GenTableColumn extends BaseEntity { */ private Integer sort; + /** + * 获取首字母大写后的 Java 字段名。 + * + * @return 首字母大写的 Java 字段名 + */ public String getCapJavaField() { return StringUtils.capitalize(javaField); } + /** + * 判断当前列是否为主键列。 + * + * @return 主键列返回 {@code true} + */ public boolean isPk() { return isPk(this.isPk); } + /** + * 根据标识判断是否为主键列。 + * + * @param isPk 主键标识 + * @return 主键列返回 {@code true} + */ public boolean isPk(String isPk) { return isPk != null && StringUtils.equals("1", isPk); } + /** + * 判断当前列是否为自增列。 + * + * @return 自增列返回 {@code true} + */ public boolean isIncrement() { return isIncrement(this.isIncrement); } + /** + * 根据标识判断是否为自增列。 + * + * @param isIncrement 自增标识 + * @return 自增列返回 {@code true} + */ public boolean isIncrement(String isIncrement) { return isIncrement != null && StringUtils.equals("1", isIncrement); } + /** + * 判断当前列是否必填。 + * + * @return 必填返回 {@code true} + */ public boolean isRequired() { return isRequired(this.isRequired); } + /** + * 根据标识判断当前列是否必填。 + * + * @param isRequired 必填标识 + * @return 必填返回 {@code true} + */ public boolean isRequired(String isRequired) { return isRequired != null && StringUtils.equals("1", isRequired); } + /** + * 判断当前列是否参与新增。 + * + * @return 参与新增返回 {@code true} + */ public boolean isInsert() { return isInsert(this.isInsert); } + /** + * 根据标识判断当前列是否参与新增。 + * + * @param isInsert 新增标识 + * @return 参与新增返回 {@code true} + */ public boolean isInsert(String isInsert) { return isInsert != null && StringUtils.equals("1", isInsert); } + /** + * 判断当前列是否参与编辑。 + * + * @return 参与编辑返回 {@code true} + */ public boolean isEdit() { return isEdit(this.isEdit); } + /** + * 根据标识判断当前列是否参与编辑。 + * + * @param isEdit 编辑标识 + * @return 参与编辑返回 {@code true} + */ public boolean isEdit(String isEdit) { return isEdit != null && StringUtils.equals("1", isEdit); } + /** + * 判断当前列是否参与列表展示。 + * + * @return 参与列表展示返回 {@code true} + */ public boolean isList() { return isList(this.isList); } + /** + * 根据标识判断当前列是否参与列表展示。 + * + * @param isList 列表展示标识 + * @return 参与列表展示返回 {@code true} + */ public boolean isList(String isList) { return isList != null && StringUtils.equals("1", isList); } + /** + * 判断当前列是否参与查询条件。 + * + * @return 参与查询返回 {@code true} + */ public boolean isQuery() { return isQuery(this.isQuery); } + /** + * 根据标识判断当前列是否参与查询条件。 + * + * @param isQuery 查询标识 + * @return 参与查询返回 {@code true} + */ public boolean isQuery(String isQuery) { return isQuery != null && StringUtils.equals("1", isQuery); } + /** + * 判断当前列是否为基类公共字段。 + * + * @return 基类公共字段返回 {@code true} + */ public boolean isSuperColumn() { return isSuperColumn(this.javaField); } + /** + * 根据字段名判断是否为基类公共字段。 + * + * @param javaField Java 字段名 + * @return 基类公共字段返回 {@code true} + */ public static boolean isSuperColumn(String javaField) { return StringUtils.equalsAnyIgnoreCase(javaField, // BaseEntity @@ -194,15 +287,31 @@ public class GenTableColumn extends BaseEntity { "parentName", "parentId"); } + /** + * 判断当前列是否属于生成页面需要保留的白名单字段。 + * + * @return 白名单字段返回 {@code true} + */ public boolean isUsableColumn() { return isUsableColumn(javaField); } + /** + * 根据字段名判断是否属于生成页面需要保留的白名单字段。 + * + * @param javaField Java 字段名 + * @return 白名单字段返回 {@code true} + */ public static boolean isUsableColumn(String javaField) { // isSuperColumn()中的名单用于避免生成多余Domain属性,若某些属性在生成页面时需要用到不能忽略,则放在此处白名单 return StringUtils.equalsAnyIgnoreCase(javaField, "parentId", "orderNum", "remark"); } + /** + * 从字段注释中解析字典读转换表达式。 + * + * @return 形如 `0=男,1=女` 的转换表达式,无法解析时返回原始注释 + */ public String readConverterExp() { String remarks = StringUtils.substringBetween(this.columnComment, "(", ")"); StringBuffer sb = new StringBuffer(); diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java index b13472a8d..422034d37 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java @@ -89,12 +89,25 @@ public class GenTableServiceImpl implements IGenTableService { return genTable; } + /** + * 分页查询已导入的代码生成业务表。 + * + * @param genTable 业务表筛选条件 + * @param pageQuery 分页参数 + * @return 业务表分页结果 + */ @Override public TableDataInfo selectPageGenTableList(GenTable genTable, PageQuery pageQuery) { Page page = baseMapper.selectPage(pageQuery.build(), this.buildGenTableQueryWrapper(genTable)); return TableDataInfo.build(page); } + /** + * 构造代码生成业务表查询条件。 + * + * @param genTable 业务表筛选条件 + * @return 包含数据源、表名、表注释和时间区间的查询包装器 + */ private QueryWrapper buildGenTableQueryWrapper(GenTable genTable) { Map params = genTable.getParams(); QueryWrapper wrapper = Wrappers.query(); @@ -462,6 +475,9 @@ public class GenTableServiceImpl implements IGenTableService { /** * 查询表信息并生成代码 + * + * @param tableId 业务表主键 + * @param zip 代码压缩输出流 */ private void generatorCode(Long tableId, ZipOutputStream zip) { // 查询表信息 @@ -518,6 +534,12 @@ public class GenTableServiceImpl implements IGenTableService { } } + /** + * 查询业务表并补齐其列信息。 + * + * @param tableId 业务表主键 + * @return 包含字段集合的业务表实体 + */ private GenTable getGenTable(Long tableId) { GenTable table = baseMapper.selectById(tableId); if (ObjectUtil.isNull(table)) { @@ -527,6 +549,12 @@ public class GenTableServiceImpl implements IGenTableService { return table; } + /** + * 批量填充业务表对应的字段列表。 + * + * @param tables 业务表集合 + * @return 已填充字段信息的业务表集合 + */ private List fillTableColumns(List tables) { if (CollUtil.isEmpty(tables)) { return tables; diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/IGenTableService.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/IGenTableService.java index b2c20c57d..c336e05bb 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/IGenTableService.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/IGenTableService.java @@ -26,16 +26,18 @@ public interface IGenTableService { /** * 查询业务列表 * - * @param genTable 业务信息 - * @return 业务集合 + * @param genTable 业务信息 + * @param pageQuery 分页参数 + * @return 业务分页集合 */ TableDataInfo selectPageGenTableList(GenTable genTable, PageQuery pageQuery); /** * 查询据库列表 * - * @param genTable 业务信息 - * @return 数据库表集合 + * @param genTable 业务信息 + * @param pageQuery 分页参数 + * @return 数据库表分页集合 */ TableDataInfo selectPageDbTableList(GenTable genTable, PageQuery pageQuery); diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/GenUtils.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/GenUtils.java index 996cf9b71..d24dfc0f5 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/GenUtils.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/GenUtils.java @@ -21,6 +21,8 @@ public class GenUtils { /** * 初始化表信息 + * + * @param genTable 待初始化的业务表对象 */ public static void initTable(GenTable genTable) { genTable.setClassName(convertClassName(genTable.getTableName())); @@ -35,6 +37,9 @@ public class GenUtils { /** * 初始化列属性字段 + * + * @param column 待初始化的列对象 + * @param table 所属业务表对象 */ public static void initColumnField(GenTableColumn column, GenTable table) { String dataType = getDbType(column.getColumnType()); @@ -166,6 +171,7 @@ public class GenUtils { * * @param replacementm 替换值 * @param searchList 替换列表 + * @return 去除命中前缀后的字符串 */ public static String replaceFirst(String replacementm, String[] searchList) { String text = replacementm; @@ -206,7 +212,7 @@ public class GenUtils { * 获取字段长度 * * @param columnType 列类型 - * @return 截取后的列类型 + * @return 字段长度,未声明长度时返回 0 */ public static Integer getColumnLength(String columnType) { if (StringUtils.indexOf(columnType, "(") > 0) { diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/VelocityInitializer.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/VelocityInitializer.java index 09e012198..842c7f79f 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/VelocityInitializer.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/VelocityInitializer.java @@ -17,6 +17,8 @@ public class VelocityInitializer { /** * 初始化vm方法 + * + * @throws RuntimeException 初始化 Velocity 引擎失败时抛出 */ public static void initVelocity() { Properties p = new Properties(); diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/VelocityUtils.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/VelocityUtils.java index 44c5979ee..4b89f8427 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/VelocityUtils.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/util/VelocityUtils.java @@ -43,7 +43,8 @@ public class VelocityUtils { /** * 设置模板变量信息 * - * @return 模板列表 + * @param genTable 代码生成业务表对象 + * @return 初始化后的 Velocity 上下文 */ public static VelocityContext prepareContext(GenTable genTable) { String moduleName = genTable.getModuleName(); @@ -78,6 +79,12 @@ public class VelocityUtils { return velocityContext; } + /** + * 向模板上下文写入菜单相关变量。 + * + * @param context 模板上下文 + * @param genTable 代码生成业务表对象 + */ public static void setMenuVelocityContext(VelocityContext context, GenTable genTable) { String options = genTable.getOptions(); Dict paramsObj = JsonUtils.parseMap(options); @@ -85,6 +92,12 @@ public class VelocityUtils { context.put("parentMenuId", parentMenuId); } + /** + * 向树形模板上下文写入树字段相关变量。 + * + * @param context 模板上下文 + * @param genTable 代码生成业务表对象 + */ public static void setTreeVelocityContext(VelocityContext context, GenTable genTable) { String options = genTable.getOptions(); Dict paramsObj = JsonUtils.parseMap(options); @@ -141,6 +154,10 @@ public class VelocityUtils { /** * 获取文件名 + * + * @param template 模板路径 + * @param genTable 代码生成业务表对象 + * @return 模板对应的目标文件相对路径 */ public static String getFileName(String template, GenTable genTable) { // 文件名称 diff --git a/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/TestAnnoJobExecutor.java b/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/TestAnnoJobExecutor.java index aa3d99e4c..44d2ad84f 100644 --- a/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/TestAnnoJobExecutor.java +++ b/ruoyi-modules/ruoyi-job/src/main/java/org/dromara/job/snailjob/TestAnnoJobExecutor.java @@ -17,6 +17,12 @@ import org.springframework.stereotype.Component; @JobExecutor(name = "testJobExecutor") public class TestAnnoJobExecutor { + /** + * 执行示例注解任务。 + * + * @param jobArgs 任务参数 + * @return 执行结果 + */ public ExecuteResult jobExecute(JobArgs jobArgs) { SnailJobLog.LOCAL.info("testJobExecutor. jobArgs:{}", JsonUtil.toJsonString(jobArgs)); SnailJobLog.REMOTE.info("testJobExecutor. jobArgs:{}", JsonUtil.toJsonString(jobArgs)); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/CacheController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/CacheController.java index 4a82536f1..976d6ceef 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/CacheController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/CacheController.java @@ -26,7 +26,9 @@ public class CacheController { private final RedissonConnectionFactory connectionFactory; /** - * 获取缓存监控列表 + * 获取 Redis 缓存监控信息。 + * + * @return Redis 信息、库大小与命令统计 */ @SaCheckPermission("monitor:cache:list") @GetMapping() diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/SysLoginInfoController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/SysLoginInfoController.java index b033b0f89..6d9e4a60a 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/SysLoginInfoController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/SysLoginInfoController.java @@ -36,7 +36,11 @@ public class SysLoginInfoController extends BaseController { private final ISysLoginInfoService loginInfoService; /** - * 获取系统访问记录列表 + * 分页查询系统访问记录。 + * + * @param loginInfo 查询条件 + * @param pageQuery 分页参数 + * @return 登录日志分页结果 */ @SaCheckPermission("monitor:logininfo:list") @GetMapping("/list") @@ -45,7 +49,10 @@ public class SysLoginInfoController extends BaseController { } /** - * 导出系统访问记录列表 + * 导出系统访问记录列表。 + * + * @param loginInfo 查询条件 + * @param response HTTP 响应 */ @Log(title = "登录日志", businessType = BusinessType.EXPORT) @SaCheckPermission("monitor:logininfo:export") @@ -57,7 +64,9 @@ public class SysLoginInfoController extends BaseController { /** * 批量删除登录日志 + * * @param infoIds 日志ids + * @return 操作结果 */ @SaCheckPermission("monitor:logininfo:remove") @Log(title = "登录日志", businessType = BusinessType.DELETE) @@ -67,7 +76,9 @@ public class SysLoginInfoController extends BaseController { } /** - * 清理系统访问记录 + * 清空系统访问记录。 + * + * @return 操作结果 */ @SaCheckPermission("monitor:logininfo:remove") @Log(title = "登录日志", businessType = BusinessType.CLEAN) @@ -78,6 +89,12 @@ public class SysLoginInfoController extends BaseController { return R.ok(); } + /** + * 清除指定用户的登录失败锁定状态。 + * + * @param userName 用户名 + * @return 操作结果 + */ @SaCheckPermission("monitor:logininfo:unlock") @Log(title = "账户解锁", businessType = BusinessType.OTHER) @RepeatSubmit() diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/SysOperlogController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/SysOperlogController.java index d2e4c9e6c..2bc6ff27b 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/SysOperlogController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/SysOperlogController.java @@ -33,7 +33,11 @@ public class SysOperlogController extends BaseController { private final ISysOperLogService operLogService; /** - * 获取操作日志记录列表 + * 分页查询操作日志记录。 + * + * @param operLog 查询条件 + * @param pageQuery 分页参数 + * @return 操作日志分页结果 */ @SaCheckPermission("monitor:operlog:list") @GetMapping("/list") @@ -42,7 +46,10 @@ public class SysOperlogController extends BaseController { } /** - * 导出操作日志记录列表 + * 导出操作日志记录列表。 + * + * @param operLog 查询条件 + * @param response HTTP 响应 */ @Log(title = "操作日志", businessType = BusinessType.EXPORT) @SaCheckPermission("monitor:operlog:export") @@ -54,7 +61,9 @@ public class SysOperlogController extends BaseController { /** * 批量删除操作日志记录 + * * @param operIds 日志ids + * @return 操作结果 */ @Log(title = "操作日志", businessType = BusinessType.DELETE) @SaCheckPermission("monitor:operlog:remove") @@ -64,7 +73,9 @@ public class SysOperlogController extends BaseController { } /** - * 清理操作日志记录 + * 清空操作日志记录。 + * + * @return 操作结果 */ @Log(title = "操作日志", businessType = BusinessType.CLEAN) @SaCheckPermission("monitor:operlog:remove") diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/SysUserOnlineController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/SysUserOnlineController.java index 42c00ee4a..898bc2ca9 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/SysUserOnlineController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/SysUserOnlineController.java @@ -36,10 +36,11 @@ import java.util.stream.Collectors; public class SysUserOnlineController extends BaseController { /** - * 获取在线用户监控列表 + * 获取在线用户监控列表,并按 IP 或用户名条件过滤当前有效会话。 * * @param ipaddr IP地址 * @param userName 用户名 + * @return 在线用户分页数据 */ @SaCheckPermission("monitor:online:list") @GetMapping("/list") @@ -76,9 +77,10 @@ public class SysUserOnlineController extends BaseController { } /** - * 强退用户 + * 按 token 强制用户下线,适用于管理员踢除异常会话。 * * @param tokenId token值 + * @return 操作结果 */ @SaCheckPermission("monitor:online:forceLogout") @Log(title = "在线用户", businessType = BusinessType.FORCE) @@ -93,7 +95,9 @@ public class SysUserOnlineController extends BaseController { } /** - * 获取当前用户登录在线设备 + * 获取当前登录用户的在线设备列表,仅返回当前账号仍有效的 token 会话。 + * + * @return 当前用户在线设备列表 */ @GetMapping() public TableDataInfo getInfo() { @@ -111,9 +115,10 @@ public class SysUserOnlineController extends BaseController { } /** - * 强退当前在线设备 + * 强退当前账号下指定在线设备,避免误踢其他账号的会话。 * * @param tokenId token值 + * @return 操作结果 */ @Log(title = "在线设备", businessType = BusinessType.FORCE) @RepeatSubmit() diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysClientController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysClientController.java index 2cfedd2aa..c59504f57 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysClientController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysClientController.java @@ -38,7 +38,11 @@ public class SysClientController extends BaseController { private final ISysClientService sysClientService; /** - * 查询客户端管理列表 + * 分页查询客户端管理列表。 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 客户端分页数据 */ @SaCheckPermission("system:client:list") @GetMapping("/list") @@ -47,7 +51,10 @@ public class SysClientController extends BaseController { } /** - * 导出客户端管理列表 + * 导出客户端管理列表,便于离线审计与配置核查。 + * + * @param bo 查询条件 + * @param response 响应流 */ @SaCheckPermission("system:client:export") @Log(title = "客户端管理", businessType = BusinessType.EXPORT) @@ -58,9 +65,10 @@ public class SysClientController extends BaseController { } /** - * 获取客户端管理详细信息 + * 获取单个客户端的详细配置信息。 * * @param id 主键 + * @return 客户端详情 */ @SaCheckPermission("system:client:query") @GetMapping("/{id}") @@ -70,7 +78,10 @@ public class SysClientController extends BaseController { } /** - * 新增客户端管理 + * 新增客户端配置,入库前先校验客户端 key 是否唯一。 + * + * @param bo 客户端信息 + * @return 操作结果 */ @SaCheckPermission("system:client:add") @Log(title = "客户端管理", businessType = BusinessType.INSERT) @@ -84,7 +95,10 @@ public class SysClientController extends BaseController { } /** - * 修改客户端管理 + * 修改客户端配置,避免重复占用同一个客户端 key。 + * + * @param bo 客户端信息 + * @return 操作结果 */ @SaCheckPermission("system:client:edit") @Log(title = "客户端管理", businessType = BusinessType.UPDATE) @@ -98,7 +112,10 @@ public class SysClientController extends BaseController { } /** - * 状态修改 + * 修改客户端启停状态。 + * + * @param bo 客户端状态信息 + * @return 操作结果 */ @SaCheckPermission("system:client:edit") @Log(title = "客户端管理", businessType = BusinessType.UPDATE) @@ -108,9 +125,10 @@ public class SysClientController extends BaseController { } /** - * 删除客户端管理 + * 批量删除客户端配置。 * * @param ids 主键串 + * @return 操作结果 */ @SaCheckPermission("system:client:remove") @Log(title = "客户端管理", businessType = BusinessType.DELETE) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysConfigController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysConfigController.java index d2bc4f738..57e549c2f 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysConfigController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysConfigController.java @@ -34,7 +34,11 @@ public class SysConfigController extends BaseController { private final ISysConfigService configService; /** - * 获取参数配置列表 + * 分页查询参数配置列表。 + * + * @param config 查询条件 + * @param pageQuery 分页参数 + * @return 参数配置分页结果 */ @SaCheckPermission("system:config:list") @GetMapping("/list") @@ -43,7 +47,10 @@ public class SysConfigController extends BaseController { } /** - * 导出参数配置列表 + * 导出参数配置列表。 + * + * @param config 查询条件 + * @param response HTTP 响应 */ @Log(title = "参数管理", businessType = BusinessType.EXPORT) @SaCheckPermission("system:config:export") @@ -57,6 +64,7 @@ public class SysConfigController extends BaseController { * 根据参数编号获取详细信息 * * @param configId 参数ID + * @return 参数配置详情 */ @SaCheckPermission("system:config:query") @GetMapping(value = "/{configId}") @@ -68,6 +76,7 @@ public class SysConfigController extends BaseController { * 根据参数键名查询参数值 * * @param configKey 参数Key + * @return 参数值 */ @GetMapping(value = "/configKey/{configKey}") public R getConfigKey(@PathVariable String configKey) { @@ -75,7 +84,10 @@ public class SysConfigController extends BaseController { } /** - * 新增参数配置 + * 新增参数配置。 + * + * @param config 参数配置 + * @return 操作结果 */ @SaCheckPermission("system:config:add") @Log(title = "参数管理", businessType = BusinessType.INSERT) @@ -90,7 +102,10 @@ public class SysConfigController extends BaseController { } /** - * 修改参数配置 + * 修改参数配置。 + * + * @param config 参数配置 + * @return 操作结果 */ @SaCheckPermission("system:config:edit") @Log(title = "参数管理", businessType = BusinessType.UPDATE) @@ -105,7 +120,10 @@ public class SysConfigController extends BaseController { } /** - * 根据参数键名修改参数配置 + * 根据参数键名修改参数配置。 + * + * @param config 参数配置 + * @return 操作结果 */ @SaCheckPermission("system:config:edit") @Log(title = "参数管理", businessType = BusinessType.UPDATE) @@ -120,6 +138,7 @@ public class SysConfigController extends BaseController { * 删除参数配置 * * @param configIds 参数ID串 + * @return 操作结果 */ @SaCheckPermission("system:config:remove") @Log(title = "参数管理", businessType = BusinessType.DELETE) @@ -130,7 +149,9 @@ public class SysConfigController extends BaseController { } /** - * 刷新参数缓存 + * 刷新参数缓存。 + * + * @return 操作结果 */ @SaCheckPermission("system:config:remove") @Log(title = "参数管理", businessType = BusinessType.CLEAN) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysDeptController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysDeptController.java index abec15143..5b75482f3 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysDeptController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysDeptController.java @@ -34,7 +34,10 @@ public class SysDeptController extends BaseController { private final ISysPostService postService; /** - * 获取部门列表 + * 查询部门列表。 + * + * @param dept 查询条件 + * @return 部门列表 */ @SaCheckPermission("system:dept:list") @GetMapping("/list") @@ -47,6 +50,7 @@ public class SysDeptController extends BaseController { * 查询部门列表(排除节点) * * @param deptId 部门ID + * @return 过滤后的部门列表 */ @SaCheckPermission("system:dept:list") @GetMapping("/list/exclude/{deptId}") @@ -61,6 +65,7 @@ public class SysDeptController extends BaseController { * 根据部门编号获取详细信息 * * @param deptId 部门ID + * @return 部门详情 */ @SaCheckPermission("system:dept:query") @GetMapping(value = "/{deptId}") @@ -70,7 +75,10 @@ public class SysDeptController extends BaseController { } /** - * 新增部门 + * 新增部门。 + * + * @param dept 部门参数 + * @return 操作结果 */ @SaCheckPermission("system:dept:add") @Log(title = "部门管理", businessType = BusinessType.INSERT) @@ -84,7 +92,10 @@ public class SysDeptController extends BaseController { } /** - * 修改部门 + * 修改部门。 + * + * @param dept 部门参数 + * @return 操作结果 */ @SaCheckPermission("system:dept:edit") @Log(title = "部门管理", businessType = BusinessType.UPDATE) @@ -111,6 +122,7 @@ public class SysDeptController extends BaseController { * 删除部门 * * @param deptId 部门ID + * @return 操作结果 */ @SaCheckPermission("system:dept:remove") @Log(title = "部门管理", businessType = BusinessType.DELETE) @@ -136,6 +148,7 @@ public class SysDeptController extends BaseController { * 获取部门选择框列表 * * @param deptIds 部门ID串 + * @return 部门列表 */ @SaCheckPermission("system:dept:query") @GetMapping("/optionselect") diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysDictDataController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysDictDataController.java index 337f8da9f..d92c40a89 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysDictDataController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysDictDataController.java @@ -38,7 +38,11 @@ public class SysDictDataController extends BaseController { private final ISysDictTypeService dictTypeService; /** - * 查询字典数据列表 + * 分页查询字典数据列表。 + * + * @param dictData 查询条件 + * @param pageQuery 分页参数 + * @return 字典数据分页结果 */ @SaCheckPermission("system:dict:list") @GetMapping("/list") @@ -47,7 +51,10 @@ public class SysDictDataController extends BaseController { } /** - * 导出字典数据列表 + * 导出字典数据列表。 + * + * @param dictData 查询条件 + * @param response HTTP 响应 */ @Log(title = "字典数据", businessType = BusinessType.EXPORT) @SaCheckPermission("system:dict:export") @@ -61,6 +68,7 @@ public class SysDictDataController extends BaseController { * 查询字典数据详细 * * @param dictCode 字典code + * @return 字典数据详情 */ @SaCheckPermission("system:dict:query") @GetMapping(value = "/{dictCode}") @@ -72,6 +80,7 @@ public class SysDictDataController extends BaseController { * 根据字典类型查询字典数据信息 * * @param dictType 字典类型 + * @return 字典数据列表 */ @GetMapping(value = "/type/{dictType}") public R> dictType(@PathVariable String dictType) { @@ -83,7 +92,10 @@ public class SysDictDataController extends BaseController { } /** - * 新增字典数据 + * 新增字典数据。 + * + * @param dict 字典数据参数 + * @return 操作结果 */ @SaCheckPermission("system:dict:add") @Log(title = "字典数据", businessType = BusinessType.INSERT) @@ -98,7 +110,10 @@ public class SysDictDataController extends BaseController { } /** - * 修改保存字典数据 + * 修改字典数据。 + * + * @param dict 字典数据参数 + * @return 操作结果 */ @SaCheckPermission("system:dict:edit") @Log(title = "字典数据", businessType = BusinessType.UPDATE) @@ -116,6 +131,7 @@ public class SysDictDataController extends BaseController { * 删除字典数据 * * @param dictCodes 字典code串 + * @return 操作结果 */ @SaCheckPermission("system:dict:remove") @Log(title = "字典数据", businessType = BusinessType.DELETE) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysDictTypeController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysDictTypeController.java index 90c554fa5..4f91f5211 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysDictTypeController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysDictTypeController.java @@ -35,7 +35,11 @@ public class SysDictTypeController extends BaseController { private final ISysDictTypeService dictTypeService; /** - * 查询字典类型列表 + * 分页查询字典类型列表。 + * + * @param dictType 查询条件 + * @param pageQuery 分页参数 + * @return 字典类型分页结果 */ @SaCheckPermission("system:dict:list") @GetMapping("/list") @@ -44,7 +48,10 @@ public class SysDictTypeController extends BaseController { } /** - * 导出字典类型列表 + * 导出字典类型列表。 + * + * @param dictType 查询条件 + * @param response HTTP 响应 */ @Log(title = "字典类型", businessType = BusinessType.EXPORT) @SaCheckPermission("system:dict:export") @@ -58,6 +65,7 @@ public class SysDictTypeController extends BaseController { * 查询字典类型详细 * * @param dictId 字典ID + * @return 字典类型详情 */ @SaCheckPermission("system:dict:query") @GetMapping(value = "/{dictId}") @@ -66,7 +74,10 @@ public class SysDictTypeController extends BaseController { } /** - * 新增字典类型 + * 新增字典类型。 + * + * @param dict 字典类型参数 + * @return 操作结果 */ @SaCheckPermission("system:dict:add") @Log(title = "字典类型", businessType = BusinessType.INSERT) @@ -81,7 +92,10 @@ public class SysDictTypeController extends BaseController { } /** - * 修改字典类型 + * 修改字典类型。 + * + * @param dict 字典类型参数 + * @return 操作结果 */ @SaCheckPermission("system:dict:edit") @Log(title = "字典类型", businessType = BusinessType.UPDATE) @@ -99,6 +113,7 @@ public class SysDictTypeController extends BaseController { * 删除字典类型 * * @param dictIds 字典ID串 + * @return 操作结果 */ @SaCheckPermission("system:dict:remove") @Log(title = "字典类型", businessType = BusinessType.DELETE) @@ -109,7 +124,9 @@ public class SysDictTypeController extends BaseController { } /** - * 刷新字典缓存 + * 刷新字典缓存。 + * + * @return 操作结果 */ @SaCheckPermission("system:dict:remove") @Log(title = "字典类型", businessType = BusinessType.CLEAN) @@ -121,7 +138,9 @@ public class SysDictTypeController extends BaseController { } /** - * 获取字典选择框列表 + * 获取字典类型下拉选择列表。 + * + * @return 字典类型列表 */ @GetMapping("/optionselect") public R> optionselect() { diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysMenuController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysMenuController.java index 46eed9030..c7180c66b 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysMenuController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysMenuController.java @@ -39,7 +39,7 @@ public class SysMenuController extends BaseController { /** * 获取路由信息 * - * @return 路由信息 + * @return 当前用户可访问的路由信息 */ @GetMapping("/getRouters") public R> getRouters() { @@ -48,7 +48,10 @@ public class SysMenuController extends BaseController { } /** - * 获取菜单列表 + * 查询菜单列表。 + * + * @param menu 查询条件 + * @return 菜单列表 */ @SaCheckRole(value = { SystemConstants.SUPER_ADMIN_ROLE_KEY, @@ -64,6 +67,7 @@ public class SysMenuController extends BaseController { * 根据菜单编号获取详细信息 * * @param menuId 菜单ID + * @return 菜单详情 */ @SaCheckRole(value = { SystemConstants.SUPER_ADMIN_ROLE_KEY, @@ -75,7 +79,10 @@ public class SysMenuController extends BaseController { } /** - * 获取菜单下拉树列表 + * 获取菜单下拉树列表。 + * + * @param menu 查询条件 + * @return 菜单树 */ @SaCheckPermission("system:menu:query") @GetMapping("/treeselect") @@ -88,6 +95,7 @@ public class SysMenuController extends BaseController { * 加载对应角色菜单列表树 * * @param roleId 角色ID + * @return 角色菜单树及选中节点 */ @SaCheckPermission("system:menu:query") @GetMapping(value = "/roleMenuTreeselect/{roleId}") @@ -100,7 +108,10 @@ public class SysMenuController extends BaseController { } /** - * 新增菜单 + * 新增菜单。 + * + * @param menu 菜单参数 + * @return 操作结果 */ @SaCheckRole(SystemConstants.SUPER_ADMIN_ROLE_KEY) @SaCheckPermission("system:menu:add") @@ -119,7 +130,10 @@ public class SysMenuController extends BaseController { } /** - * 修改菜单 + * 修改菜单。 + * + * @param menu 菜单参数 + * @return 操作结果 */ @SaCheckRole(SystemConstants.SUPER_ADMIN_ROLE_KEY) @SaCheckPermission("system:menu:edit") @@ -143,6 +157,7 @@ public class SysMenuController extends BaseController { * 删除菜单 * * @param menuId 菜单ID + * @return 操作结果 */ @SaCheckRole(SystemConstants.SUPER_ADMIN_ROLE_KEY) @SaCheckPermission("system:menu:remove") @@ -171,6 +186,7 @@ public class SysMenuController extends BaseController { * 批量级联删除菜单 * * @param menuIds 菜单ID串 + * @return 操作结果 */ @SaCheckRole(SystemConstants.SUPER_ADMIN_ROLE_KEY) @SaCheckPermission("system:menu:remove") diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysNoticeController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysNoticeController.java index 0c1f72b9d..8a655e561 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysNoticeController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysNoticeController.java @@ -32,7 +32,11 @@ public class SysNoticeController extends BaseController { private final DictService dictService; /** - * 获取通知公告列表 + * 分页查询通知公告列表。 + * + * @param notice 查询条件 + * @param pageQuery 分页参数 + * @return 公告分页结果 */ @SaCheckPermission("system:notice:list") @GetMapping("/list") @@ -44,6 +48,7 @@ public class SysNoticeController extends BaseController { * 根据通知公告编号获取详细信息 * * @param noticeId 公告ID + * @return 公告详情 */ @SaCheckPermission("system:notice:query") @GetMapping(value = "/{noticeId}") @@ -52,7 +57,10 @@ public class SysNoticeController extends BaseController { } /** - * 新增通知公告 + * 新增通知公告,并向在线用户广播公告摘要。 + * + * @param notice 公告参数 + * @return 操作结果 */ @SaCheckPermission("system:notice:add") @Log(title = "通知公告", businessType = BusinessType.INSERT) @@ -69,7 +77,10 @@ public class SysNoticeController extends BaseController { } /** - * 修改通知公告 + * 修改通知公告。 + * + * @param notice 公告参数 + * @return 操作结果 */ @SaCheckPermission("system:notice:edit") @Log(title = "通知公告", businessType = BusinessType.UPDATE) @@ -83,6 +94,7 @@ public class SysNoticeController extends BaseController { * 删除通知公告 * * @param noticeIds 公告ID串 + * @return 操作结果 */ @SaCheckPermission("system:notice:remove") @Log(title = "通知公告", businessType = BusinessType.DELETE) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysOssConfigController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysOssConfigController.java index 5feaf2654..6cba16386 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysOssConfigController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysOssConfigController.java @@ -38,7 +38,11 @@ public class SysOssConfigController extends BaseController { private final ISysOssConfigService ossConfigService; /** - * 查询对象存储配置列表 + * 分页查询对象存储配置列表。 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 配置分页数据 */ @SaCheckPermission("system:ossConfig:list") @GetMapping("/list") @@ -47,9 +51,10 @@ public class SysOssConfigController extends BaseController { } /** - * 获取对象存储配置详细信息 + * 获取单个对象存储配置详情。 * * @param ossConfigId OSS配置ID + * @return 配置详情 */ @SaCheckPermission("system:ossConfig:list") @GetMapping("/{ossConfigId}") @@ -59,7 +64,10 @@ public class SysOssConfigController extends BaseController { } /** - * 新增对象存储配置 + * 新增对象存储配置。 + * + * @param bo 配置信息 + * @return 操作结果 */ @SaCheckPermission("system:ossConfig:add") @Log(title = "对象存储配置", businessType = BusinessType.INSERT) @@ -70,7 +78,10 @@ public class SysOssConfigController extends BaseController { } /** - * 修改对象存储配置 + * 修改对象存储配置。 + * + * @param bo 配置信息 + * @return 操作结果 */ @SaCheckPermission("system:ossConfig:edit") @Log(title = "对象存储配置", businessType = BusinessType.UPDATE) @@ -81,9 +92,10 @@ public class SysOssConfigController extends BaseController { } /** - * 删除对象存储配置 + * 批量删除对象存储配置。 * * @param ossConfigIds OSS配置ID串 + * @return 操作结果 */ @SaCheckPermission("system:ossConfig:remove") @Log(title = "对象存储配置", businessType = BusinessType.DELETE) @@ -94,7 +106,10 @@ public class SysOssConfigController extends BaseController { } /** - * 状态修改 + * 切换对象存储配置启用状态,并同步更新当前生效配置。 + * + * @param bo 状态变更信息 + * @return 操作结果 */ @SaCheckPermission("system:ossConfig:edit") @Log(title = "对象存储状态修改", businessType = BusinessType.UPDATE) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysOssController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysOssController.java index 35c1a8996..82d8397a4 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysOssController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysOssController.java @@ -39,7 +39,11 @@ public class SysOssController extends BaseController { private final ISysOssService ossService; /** - * 查询OSS对象存储列表 + * 分页查询 OSS 对象存储列表。 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return OSS 分页结果 */ @SaCheckPermission("system:oss:list") @GetMapping("/list") @@ -51,6 +55,7 @@ public class SysOssController extends BaseController { * 查询OSS对象基于id串 * * @param ossIds OSS对象ID串 + * @return OSS 对象列表 */ @SaCheckPermission("system:oss:query") @GetMapping("/listByIds/{ossIds}") @@ -64,6 +69,7 @@ public class SysOssController extends BaseController { * 上传OSS对象存储 * * @param file 文件 + * @return 上传结果 */ @SaCheckPermission("system:oss:upload") @Log(title = "OSS对象存储", businessType = BusinessType.INSERT) @@ -81,6 +87,8 @@ public class SysOssController extends BaseController { * 下载OSS对象 * * @param ossId OSS对象ID + * @param response HTTP 响应 + * @throws IOException IO 异常 */ @SaCheckPermission("system:oss:download") @GetMapping("/download/{ossId}") @@ -92,6 +100,7 @@ public class SysOssController extends BaseController { * 删除OSS对象存储 * * @param ossIds OSS对象ID串 + * @return 操作结果 */ @SaCheckPermission("system:oss:remove") @Log(title = "OSS对象存储", businessType = BusinessType.DELETE) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysPostController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysPostController.java index 7b36781e5..43bd55389 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysPostController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysPostController.java @@ -41,7 +41,11 @@ public class SysPostController extends BaseController { private final ISysDeptService deptService; /** - * 获取岗位列表 + * 分页查询岗位列表。 + * + * @param post 查询条件 + * @param pageQuery 分页参数 + * @return 岗位分页结果 */ @SaCheckPermission("system:post:list") @GetMapping("/list") @@ -50,7 +54,10 @@ public class SysPostController extends BaseController { } /** - * 导出岗位列表 + * 导出岗位列表。 + * + * @param post 查询条件 + * @param response HTTP 响应 */ @Log(title = "岗位管理", businessType = BusinessType.EXPORT) @SaCheckPermission("system:post:export") @@ -64,6 +71,7 @@ public class SysPostController extends BaseController { * 根据岗位编号获取详细信息 * * @param postId 岗位ID + * @return 岗位详情 */ @SaCheckPermission("system:post:query") @GetMapping(value = "/{postId}") @@ -72,7 +80,10 @@ public class SysPostController extends BaseController { } /** - * 新增岗位 + * 新增岗位。 + * + * @param post 岗位参数 + * @return 操作结果 */ @SaCheckPermission("system:post:add") @Log(title = "岗位管理", businessType = BusinessType.INSERT) @@ -88,7 +99,10 @@ public class SysPostController extends BaseController { } /** - * 修改岗位 + * 修改岗位。 + * + * @param post 岗位参数 + * @return 操作结果 */ @SaCheckPermission("system:post:edit") @Log(title = "岗位管理", businessType = BusinessType.UPDATE) @@ -110,6 +124,7 @@ public class SysPostController extends BaseController { * 删除岗位 * * @param postIds 岗位ID串 + * @return 操作结果 */ @SaCheckPermission("system:post:remove") @Log(title = "岗位管理", businessType = BusinessType.DELETE) @@ -123,6 +138,7 @@ public class SysPostController extends BaseController { * * @param postIds 岗位ID串 * @param deptId 部门id + * @return 岗位列表 */ @SaCheckPermission("system:post:query") @GetMapping("/optionselect") @@ -139,7 +155,10 @@ public class SysPostController extends BaseController { } /** - * 获取部门树列表 + * 获取岗位筛选用的部门树。 + * + * @param dept 部门查询条件 + * @return 部门树列表 */ @SaCheckPermission("system:post:list") @GetMapping("/deptTree") diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysProfileController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysProfileController.java index 3ba1627e0..1929bbf2d 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysProfileController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysProfileController.java @@ -45,7 +45,9 @@ public class SysProfileController extends BaseController { private final ISysOssService ossService; /** - * 个人信息 + * 获取当前登录用户的个人中心信息。 + * + * @return 用户信息、角色组和岗位组 */ @GetMapping public R profile() { @@ -59,7 +61,10 @@ public class SysProfileController extends BaseController { } /** - * 修改用户信息 + * 修改当前登录用户的个人资料。 + * + * @param profile 个人资料参数 + * @return 操作结果 */ @RepeatSubmit @Log(title = "个人信息", businessType = BusinessType.UPDATE) @@ -85,6 +90,7 @@ public class SysProfileController extends BaseController { * 重置密码 * * @param bo 新旧密码 + * @return 操作结果 */ @RepeatSubmit @ApiEncrypt @@ -110,6 +116,7 @@ public class SysProfileController extends BaseController { * 头像上传 * * @param avatarfile 用户头像 + * @return 头像上传结果 */ @RepeatSubmit @Log(title = "用户头像", businessType = BusinessType.UPDATE) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysRoleController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysRoleController.java index 3926d926e..17700be01 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysRoleController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysRoleController.java @@ -42,7 +42,11 @@ public class SysRoleController extends BaseController { private final ISysDeptService deptService; /** - * 获取角色信息列表 + * 分页查询角色列表。 + * + * @param role 查询条件 + * @param pageQuery 分页参数 + * @return 角色分页结果 */ @SaCheckPermission("system:role:list") @GetMapping("/list") @@ -51,7 +55,10 @@ public class SysRoleController extends BaseController { } /** - * 导出角色信息列表 + * 导出角色信息列表。 + * + * @param role 查询条件 + * @param response HTTP 响应 */ @Log(title = "角色管理", businessType = BusinessType.EXPORT) @SaCheckPermission("system:role:export") @@ -65,6 +72,7 @@ public class SysRoleController extends BaseController { * 根据角色编号获取详细信息 * * @param roleId 角色ID + * @return 角色详情 */ @SaCheckPermission("system:role:query") @GetMapping(value = "/{roleId}") @@ -74,7 +82,10 @@ public class SysRoleController extends BaseController { } /** - * 新增角色 + * 新增角色。 + * + * @param role 角色参数 + * @return 操作结果 */ @SaCheckPermission("system:role:add") @Log(title = "角色管理", businessType = BusinessType.INSERT) @@ -92,7 +103,10 @@ public class SysRoleController extends BaseController { } /** - * 修改保存角色 + * 修改角色。 + * + * @param role 角色参数 + * @return 操作结果 */ @SaCheckPermission("system:role:edit") @Log(title = "角色管理", businessType = BusinessType.UPDATE) @@ -115,7 +129,10 @@ public class SysRoleController extends BaseController { } /** - * 修改保存数据权限 + * 修改角色数据权限。 + * + * @param role 角色参数 + * @return 操作结果 */ @SaCheckPermission("system:role:edit") @Log(title = "角色管理", businessType = BusinessType.UPDATE) @@ -132,7 +149,10 @@ public class SysRoleController extends BaseController { } /** - * 状态修改 + * 修改角色状态。 + * + * @param role 角色参数 + * @return 操作结果 */ @SaCheckPermission("system:role:edit") @Log(title = "角色管理", businessType = BusinessType.UPDATE) @@ -152,6 +172,7 @@ public class SysRoleController extends BaseController { * 删除角色 * * @param roleIds 角色ID串 + * @return 操作结果 */ @SaCheckPermission("system:role:remove") @Log(title = "角色管理", businessType = BusinessType.DELETE) @@ -164,6 +185,7 @@ public class SysRoleController extends BaseController { * 获取角色选择框列表 * * @param roleIds 角色ID串 + * @return 角色列表 */ @SaCheckPermission("system:role:query") @GetMapping("/optionselect") @@ -172,7 +194,11 @@ public class SysRoleController extends BaseController { } /** - * 查询已分配用户角色列表 + * 查询已分配用户角色列表。 + * + * @param user 查询条件 + * @param pageQuery 分页参数 + * @return 用户分页结果 */ @SaCheckPermission("system:role:list") @GetMapping("/authUser/allocatedList") @@ -181,7 +207,11 @@ public class SysRoleController extends BaseController { } /** - * 查询未分配用户角色列表 + * 查询未分配用户角色列表。 + * + * @param user 查询条件 + * @param pageQuery 分页参数 + * @return 用户分页结果 */ @SaCheckPermission("system:role:list") @GetMapping("/authUser/unallocatedList") @@ -190,7 +220,10 @@ public class SysRoleController extends BaseController { } /** - * 取消授权用户 + * 取消授权用户。 + * + * @param userRole 用户角色关系 + * @return 操作结果 */ @SaCheckPermission("system:role:edit") @Log(title = "角色管理", businessType = BusinessType.GRANT) @@ -205,6 +238,7 @@ public class SysRoleController extends BaseController { * * @param roleId 角色ID * @param userIds 用户ID串 + * @return 操作结果 */ @SaCheckPermission("system:role:edit") @Log(title = "角色管理", businessType = BusinessType.GRANT) @@ -219,6 +253,7 @@ public class SysRoleController extends BaseController { * * @param roleId 角色ID * @param userIds 用户ID串 + * @return 操作结果 */ @SaCheckPermission("system:role:edit") @Log(title = "角色管理", businessType = BusinessType.GRANT) @@ -233,6 +268,7 @@ public class SysRoleController extends BaseController { * 获取对应角色部门树列表 * * @param roleId 角色ID + * @return 角色部门树信息 */ @SaCheckPermission("system:role:list") @GetMapping(value = "/deptTree/{roleId}") diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysSocialController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysSocialController.java index b0281cf6b..c07f90982 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysSocialController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysSocialController.java @@ -28,7 +28,9 @@ public class SysSocialController extends BaseController { private final ISysSocialService socialUserService; /** - * 查询社会化关系列表 + * 查询当前登录用户的社会化账号绑定列表。 + * + * @return 绑定关系列表 */ @GetMapping("/list") public R> list() { diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysUserController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysUserController.java index 016a02345..466a4aec6 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysUserController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysUserController.java @@ -59,7 +59,11 @@ public class SysUserController extends BaseController { private final ISysDeptService deptService; /** - * 获取用户列表 + * 分页查询用户列表。 + * + * @param user 用户查询条件 + * @param pageQuery 分页参数 + * @return 用户分页列表 */ @SaCheckPermission("system:user:list") @GetMapping("/list") @@ -68,7 +72,10 @@ public class SysUserController extends BaseController { } /** - * 导出用户列表 + * 导出符合条件的用户列表。 + * + * @param user 用户查询条件 + * @param response HTTP 响应 */ @Log(title = "用户管理", businessType = BusinessType.EXPORT) @SaCheckPermission("system:user:export") @@ -93,7 +100,9 @@ public class SysUserController extends BaseController { } /** - * 获取导入模板 + * 导出用户导入模板。 + * + * @param response HTTP 响应 */ @PostMapping("/importTemplate") public void importTemplate(HttpServletResponse response) { @@ -103,7 +112,7 @@ public class SysUserController extends BaseController { /** * 获取用户信息 * - * @return 用户信息 + * @return 当前登录用户信息、角色与权限集合 */ @GetMapping("/getInfo") public R getInfo() { @@ -124,6 +133,7 @@ public class SysUserController extends BaseController { * 根据用户编号获取详细信息 * * @param userId 用户ID + * @return 用户详情、角色与岗位信息 */ @SaCheckPermission("system:user:query") @GetMapping(value = {"/", "/{userId}"}) @@ -150,7 +160,10 @@ public class SysUserController extends BaseController { } /** - * 新增用户 + * 新增用户。 + * + * @param user 用户新增参数 + * @return 操作结果 */ @SaCheckPermission("system:user:add") @Log(title = "用户管理", businessType = BusinessType.INSERT) @@ -170,7 +183,10 @@ public class SysUserController extends BaseController { } /** - * 修改用户 + * 修改用户。 + * + * @param user 用户编辑参数 + * @return 操作结果 */ @SaCheckPermission("system:user:edit") @Log(title = "用户管理", businessType = BusinessType.UPDATE) @@ -193,7 +209,8 @@ public class SysUserController extends BaseController { /** * 删除用户 * - * @param userIds 角色ID串 + * @param userIds 用户ID数组 + * @return 操作结果 */ @SaCheckPermission("system:user:remove") @Log(title = "用户管理", businessType = BusinessType.DELETE) @@ -210,6 +227,7 @@ public class SysUserController extends BaseController { * * @param userIds 用户ID串 * @param deptId 部门ID + * @return 用户基础信息列表 */ @SaCheckPermission("system:user:query") @GetMapping("/optionselect") @@ -219,7 +237,10 @@ public class SysUserController extends BaseController { } /** - * 重置密码 + * 重置指定用户密码。 + * + * @param user 用户参数 + * @return 操作结果 */ @ApiEncrypt @SaCheckPermission("system:user:resetPwd") @@ -234,7 +255,10 @@ public class SysUserController extends BaseController { } /** - * 状态修改 + * 修改用户状态。 + * + * @param user 用户参数 + * @return 操作结果 */ @SaCheckPermission("system:user:edit") @Log(title = "用户管理", businessType = BusinessType.UPDATE) @@ -250,6 +274,7 @@ public class SysUserController extends BaseController { * 根据用户编号获取授权角色 * * @param userId 用户ID + * @return 用户及其可授权角色信息 */ @SaCheckPermission("system:user:query") @GetMapping("/authRole/{userId}") @@ -268,6 +293,7 @@ public class SysUserController extends BaseController { * * @param userId 用户Id * @param roleIds 角色ID串 + * @return 操作结果 */ @SaCheckPermission("system:user:edit") @Log(title = "用户管理", businessType = BusinessType.GRANT) @@ -280,7 +306,10 @@ public class SysUserController extends BaseController { } /** - * 获取部门树列表 + * 获取用户筛选用的部门树。 + * + * @param dept 部门查询条件 + * @return 部门树列表 */ @SaCheckPermission("system:user:list") @GetMapping("/deptTree") @@ -289,7 +318,10 @@ public class SysUserController extends BaseController { } /** - * 获取部门下的所有用户信息 + * 获取指定部门下的全部用户信息。 + * + * @param deptId 部门ID + * @return 用户列表 */ @SaCheckPermission("system:user:list") @GetMapping("/list/dept/{deptId}") diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysPostService.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysPostService.java index 1caaab282..742e2d946 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysPostService.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysPostService.java @@ -35,7 +35,7 @@ public interface ISysPostService { * 查询用户所属岗位组 * * @param userId 用户ID - * @return 岗位ID + * @return 岗位列表 */ List selectPostsByUserId(Long userId); @@ -50,7 +50,7 @@ public interface ISysPostService { * 通过岗位ID查询岗位信息 * * @param postId 岗位ID - * @return 角色对象信息 + * @return 岗位信息 */ SysPostVo selectPostById(Long postId); @@ -74,7 +74,7 @@ public interface ISysPostService { * 校验岗位名称 * * @param post 岗位信息 - * @return 结果 + * @return 是否唯一 */ boolean checkPostNameUnique(SysPostBo post); @@ -82,7 +82,7 @@ public interface ISysPostService { * 校验岗位编码 * * @param post 岗位信息 - * @return 结果 + * @return 是否唯一 */ boolean checkPostCodeUnique(SysPostBo post); @@ -90,7 +90,7 @@ public interface ISysPostService { * 通过岗位ID查询岗位使用数量 * * @param postId 岗位ID - * @return 结果 + * @return 绑定用户数量 */ long countUserPostById(Long postId); @@ -98,7 +98,7 @@ public interface ISysPostService { * 通过部门ID查询岗位使用数量 * * @param deptId 部门id - * @return 结果 + * @return 岗位数量 */ long countPostByDeptId(Long deptId); @@ -106,7 +106,7 @@ public interface ISysPostService { * 删除岗位信息 * * @param postId 岗位ID - * @return 结果 + * @return 影响行数 */ int deletePostById(Long postId); @@ -114,7 +114,7 @@ public interface ISysPostService { * 批量删除岗位信息 * * @param postIds 需要删除的岗位ID - * @return 结果 + * @return 影响行数 */ int deletePostByIds(List postIds); @@ -122,7 +122,7 @@ public interface ISysPostService { * 新增保存岗位信息 * * @param bo 岗位信息 - * @return 结果 + * @return 影响行数 */ int insertPost(SysPostBo bo); @@ -130,7 +130,7 @@ public interface ISysPostService { * 修改保存岗位信息 * * @param bo 岗位信息 - * @return 结果 + * @return 影响行数 */ int updatePost(SysPostBo bo); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysRoleService.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysRoleService.java index abbfc798a..310d55f09 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysRoleService.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysRoleService.java @@ -29,7 +29,7 @@ public interface ISysRoleService { * 根据条件查询角色数据 * * @param role 角色信息 - * @return 角色数据集合信息 + * @return 角色列表 */ List selectRoleList(SysRoleBo role); @@ -92,7 +92,7 @@ public interface ISysRoleService { * 校验角色名称是否唯一 * * @param role 角色信息 - * @return 结果 + * @return 是否唯一 */ boolean checkRoleNameUnique(SysRoleBo role); @@ -100,7 +100,7 @@ public interface ISysRoleService { * 校验角色权限是否唯一 * * @param role 角色信息 - * @return 结果 + * @return 是否唯一 */ boolean checkRoleKeyUnique(SysRoleBo role); @@ -129,7 +129,7 @@ public interface ISysRoleService { * 通过角色ID查询角色使用数量 * * @param roleId 角色ID - * @return 结果 + * @return 绑定用户数量 */ long countUserRoleByRoleId(Long roleId); @@ -137,7 +137,7 @@ public interface ISysRoleService { * 新增保存角色信息 * * @param bo 角色信息 - * @return 结果 + * @return 影响行数 */ int insertRole(SysRoleBo bo); @@ -145,7 +145,7 @@ public interface ISysRoleService { * 修改保存角色信息 * * @param bo 角色信息 - * @return 结果 + * @return 影响行数 */ int updateRole(SysRoleBo bo); @@ -154,7 +154,7 @@ public interface ISysRoleService { * * @param roleId 角色ID * @param status 角色状态 - * @return 结果 + * @return 影响行数 */ int updateRoleStatus(Long roleId, String status); @@ -162,7 +162,7 @@ public interface ISysRoleService { * 修改数据权限信息 * * @param bo 角色信息 - * @return 结果 + * @return 影响行数 */ int authDataScope(SysRoleBo bo); @@ -170,7 +170,7 @@ public interface ISysRoleService { * 通过角色ID删除角色 * * @param roleId 角色ID - * @return 结果 + * @return 影响行数 */ int deleteRoleById(Long roleId); @@ -178,7 +178,7 @@ public interface ISysRoleService { * 批量删除角色信息 * * @param roleIds 需要删除的角色ID - * @return 结果 + * @return 影响行数 */ int deleteRoleByIds(List roleIds); @@ -186,7 +186,7 @@ public interface ISysRoleService { * 取消授权用户角色 * * @param userRole 用户和角色关联信息 - * @return 结果 + * @return 影响行数 */ int deleteAuthUser(SysUserRole userRole); @@ -195,7 +195,7 @@ public interface ISysRoleService { * * @param roleId 角色ID * @param userIds 需要取消授权的用户数据ID - * @return 结果 + * @return 影响行数 */ int deleteAuthUsers(Long roleId, Long[] userIds); @@ -204,7 +204,7 @@ public interface ISysRoleService { * * @param roleId 角色ID * @param userIds 需要删除的用户数据ID - * @return 结果 + * @return 影响行数 */ int insertAuthUsers(Long roleId, Long[] userIds); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysUserService.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysUserService.java index dce1ed3e0..31ad9bc85 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysUserService.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysUserService.java @@ -20,8 +20,8 @@ public interface ISysUserService { * 根据条件分页查询用户列表 * * @param user 用户信息 - * @param pageQuery 发呢也 - * @return 用户信息 + * @param pageQuery 分页参数 + * @return 用户分页信息 */ TableDataInfo selectPageUserList(SysUserBo user, PageQuery pageQuery); @@ -29,7 +29,7 @@ public interface ISysUserService { * 导出用户列表 * * @param user 用户信息 - * @return 用户信息集合信息 + * @return 用户导出列表 */ List selectUserExportList(SysUserBo user); @@ -37,8 +37,8 @@ public interface ISysUserService { * 根据条件分页查询已分配用户角色列表 * * @param user 用户信息 - * @param pageQuery 分页 - * @return 用户信息集合信息 + * @param pageQuery 分页 + * @return 已分配角色的用户分页信息 */ TableDataInfo selectAllocatedList(SysUserBo user, PageQuery pageQuery); @@ -47,7 +47,7 @@ public interface ISysUserService { * * @param user 用户信息 * @param pageQuery 分页 - * @return 用户信息集合信息 + * @return 未分配角色的用户分页信息 */ TableDataInfo selectUnallocatedList(SysUserBo user, PageQuery pageQuery); @@ -150,7 +150,7 @@ public interface ISysUserService { * 注册用户信息 * * @param user 用户信息 - * @return 结果 + * @return 是否注册成功 */ boolean registerUser(SysUserBo user); @@ -192,7 +192,7 @@ public interface ISysUserService { * * @param userId 用户ID * @param avatar 头像地址 - * @return 结果 + * @return 是否修改成功 */ boolean updateUserAvatar(Long userId, Long avatar); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysClientServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysClientServiceImpl.java index fc469adb7..f9fd48dff 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysClientServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysClientServiceImpl.java @@ -41,6 +41,9 @@ public class SysClientServiceImpl implements ISysClientService { /** * 查询客户端管理 + * + * @param id 主键 + * @return 客户端详情 */ @Override public SysClientVo queryById(Long id) { @@ -51,6 +54,9 @@ public class SysClientServiceImpl implements ISysClientService { /** * 查询客户端管理 + * + * @param clientId 客户端标识 + * @return 客户端详情 */ @Cacheable(cacheNames = CacheNames.SYS_CLIENT, key = "#clientId") @Override @@ -60,6 +66,10 @@ public class SysClientServiceImpl implements ISysClientService { /** * 查询客户端管理列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 客户端分页列表 */ @Override public TableDataInfo queryPageList(SysClientBo bo, PageQuery pageQuery) { @@ -71,6 +81,9 @@ public class SysClientServiceImpl implements ISysClientService { /** * 查询客户端管理列表 + * + * @param bo 查询条件 + * @return 客户端列表 */ @Override public List queryList(SysClientBo bo) { @@ -78,6 +91,12 @@ public class SysClientServiceImpl implements ISysClientService { return baseMapper.selectVoList(lqw); } + /** + * 构造客户端列表查询条件。 + * + * @param bo 客户端筛选条件 + * @return 包含 clientId、clientKey、状态等条件的查询包装器 + */ private LambdaQueryWrapper buildQueryWrapper(SysClientBo bo) { LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); lqw.eq(StringUtils.isNotBlank(bo.getClientId()), SysClient::getClientId, bo.getClientId()); @@ -90,6 +109,9 @@ public class SysClientServiceImpl implements ISysClientService { /** * 新增客户端管理 + * + * @param bo 客户端业务对象 + * @return 新增成功返回 {@code true} */ @Override public Boolean insertByBo(SysClientBo bo) { @@ -108,6 +130,9 @@ public class SysClientServiceImpl implements ISysClientService { /** * 修改客户端管理 + * + * @param bo 客户端业务对象 + * @return 修改成功返回 {@code true} */ @CacheEvict(cacheNames = CacheNames.SYS_CLIENT, key = "#bo.clientId") @Override @@ -119,6 +144,10 @@ public class SysClientServiceImpl implements ISysClientService { /** * 修改状态 + * + * @param clientId 客户端标识 + * @param status 状态值 + * @return 更新条数 */ @CacheEvict(cacheNames = CacheNames.SYS_CLIENT, key = "#clientId") @Override @@ -131,6 +160,10 @@ public class SysClientServiceImpl implements ISysClientService { /** * 批量删除客户端管理 + * + * @param ids 主键集合 + * @param isValid 是否执行业务校验 + * @return 删除成功返回 {@code true} */ @CacheEvict(cacheNames = CacheNames.SYS_CLIENT, allEntries = true) @Override diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysConfigServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysConfigServiceImpl.java index 8ff90d51d..f0e006bd5 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysConfigServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysConfigServiceImpl.java @@ -103,6 +103,12 @@ public class SysConfigServiceImpl implements ISysConfigService, ConfigService { return baseMapper.selectVoList(lqw); } + /** + * 构造参数配置列表查询条件。 + * + * @param bo 参数配置筛选条件 + * @return 包含名称、键名、类型与时间区间的查询包装器 + */ private LambdaQueryWrapper buildQueryWrapper(SysConfigBo bo) { Map params = bo.getParams(); LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); @@ -214,7 +220,7 @@ public class SysConfigServiceImpl implements ISysConfigService, ConfigService { * 根据参数 key 获取 Map 类型的配置 * * @param configKey 参数 key - * @return Dict 对象,如果配置为空或无法解析,返回空 Dict + * @return Dict 对象,如果配置为空或无法解析则返回空 Dict */ @Override public Dict getConfigMap(String configKey) { @@ -226,7 +232,7 @@ public class SysConfigServiceImpl implements ISysConfigService, ConfigService { * 根据参数 key 获取 Map 类型的配置列表 * * @param configKey 参数 key - * @return Dict 列表,如果配置为空或无法解析,返回空列表 + * @return Dict 列表,如果配置为空或无法解析则返回空列表 */ @Override public List getConfigArrayMap(String configKey) { diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDataScopeServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDataScopeServiceImpl.java index e30080212..8f6cecc98 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDataScopeServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDataScopeServiceImpl.java @@ -21,6 +21,7 @@ import java.util.List; *

* 注意: 此Service内不允许调用标注`数据权限`注解的方法 * 例如: deptMapper.selectList 此 selectList 方法标注了`数据权限`注解 会出现循环解析的问题 + * 当前实现仅负责返回角色自定义部门范围以及部门树展开后的 id 串,供数据权限插件拼装 SQL 时使用。 * * @author Lion Li */ @@ -35,7 +36,7 @@ public class SysDataScopeServiceImpl implements ISysDataScopeService { * 获取角色自定义权限 * * @param roleId 角色Id - * @return 部门Id组 + * @return 逗号分隔的部门 id 字符串,未配置时返回 `-1` */ @Cacheable(cacheNames = CacheNames.SYS_ROLE_CUSTOM, key = "#roleId", condition = "#roleId != null") @Override @@ -57,7 +58,7 @@ public class SysDataScopeServiceImpl implements ISysDataScopeService { * 获取部门及以下权限 * * @param deptId 部门Id - * @return 部门Id组 + * @return 当前部门及其子部门的逗号分隔 id 字符串,未查询到时返回 `-1` */ @Cacheable(cacheNames = CacheNames.SYS_DEPT_AND_CHILD, key = "#deptId", condition = "#deptId != null") @Override diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java index 4e6db154c..2db1e9543 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java @@ -89,6 +89,12 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { return buildDeptTreeSelect(depts); } + /** + * 构造部门列表查询条件。 + * + * @param bo 部门筛选条件 + * @return 包含树级过滤、状态、分类和时间区间的查询包装器 + */ private LambdaQueryWrapper buildQueryWrapper(SysDeptBo bo) { Map params = bo.getParams(); LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); @@ -169,6 +175,12 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { return dept; } + /** + * 按部门主键集合查询部门基础信息。 + * + * @param deptIds 部门主键集合 + * @return 部门基础信息列表 + */ @Override public List selectDeptByIds(List deptIds) { return baseMapper.selectDeptList(new LambdaQueryWrapper() diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictDataServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictDataServiceImpl.java index 018f04338..de03bcd92 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictDataServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictDataServiceImpl.java @@ -59,6 +59,12 @@ public class SysDictDataServiceImpl implements ISysDictDataService { return baseMapper.selectVoList(lqw); } + /** + * 构造字典数据列表查询条件。 + * + * @param bo 字典数据筛选条件 + * @return 包含排序号、标签和字典类型条件的查询包装器 + */ private LambdaQueryWrapper buildQueryWrapper(SysDictDataBo bo) { LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); lqw.eq(bo.getDictSort() != null, SysDictData::getDictSort, bo.getDictSort()); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java index a7bc06949..3f349695c 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java @@ -74,6 +74,12 @@ public class SysDictTypeServiceImpl implements ISysDictTypeService, DictService return baseMapper.selectVoList(lqw); } + /** + * 构造字典类型列表查询条件。 + * + * @param bo 字典类型筛选条件 + * @return 包含名称、类型与创建时间区间的查询包装器 + */ private LambdaQueryWrapper buildQueryWrapper(SysDictTypeBo bo) { Map params = bo.getParams(); LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); @@ -224,7 +230,7 @@ public class SysDictTypeServiceImpl implements ISysDictTypeService, DictService * @param dictType 字典类型 * @param dictValue 字典值 * @param separator 分隔符 - * @return 字典标签 + * @return 转换后的字典标签,支持按分隔符批量转换 */ @Override public String getDictLabel(String dictType, String dictValue, String separator) { @@ -248,7 +254,7 @@ public class SysDictTypeServiceImpl implements ISysDictTypeService, DictService * @param dictType 字典类型 * @param dictLabel 字典标签 * @param separator 分隔符 - * @return 字典值 + * @return 转换后的字典值,支持按分隔符批量转换 */ @Override public String getDictValue(String dictType, String dictLabel, String separator) { diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysLoginInfoServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysLoginInfoServiceImpl.java index 4dd7b4b01..fc55f04b9 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysLoginInfoServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysLoginInfoServiceImpl.java @@ -100,6 +100,12 @@ public class SysLoginInfoServiceImpl implements ISysLoginInfoService { insertLoginInfo(loginInfo); } + /** + * 将日志片段包装为统一的方括号格式。 + * + * @param msg 日志片段内容 + * @return 包装后的日志片段字符串 + */ private String getBlock(Object msg) { if (msg == null) { msg = ""; 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 7a25bfdab..d8e044b37 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 @@ -56,7 +56,8 @@ public class SysMenuServiceImpl implements ISysMenuService { /** * 查询系统菜单列表 * - * @param menu 菜单信息 + * @param menu 菜单筛选条件 + * @param userId 当前查询的用户主键 * @return 菜单列表 */ @Override @@ -113,7 +114,7 @@ public class SysMenuServiceImpl implements ISysMenuService { * 根据用户ID查询菜单 * * @param userId 用户ID - * @return 菜单列表 + * @return 按树结构组织的菜单列表 */ @Override public List selectMenuTreeByUserId(Long userId) { @@ -309,7 +310,6 @@ public class SysMenuServiceImpl implements ISysMenuService { * 批量删除菜单管理信息 * * @param menuIds 菜单ID串 - * @return 结果 */ @Override @Transactional(rollbackFor = Exception.class) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysNoticeServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysNoticeServiceImpl.java index aa4135f1e..4f0a5c5c4 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysNoticeServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysNoticeServiceImpl.java @@ -71,6 +71,12 @@ public class SysNoticeServiceImpl implements ISysNoticeService { return baseMapper.selectVoList(lqw); } + /** + * 构造公告列表查询条件。 + * + * @param bo 公告筛选条件 + * @return 包含标题、类型、创建人和排序条件的查询包装器 + */ private LambdaQueryWrapper buildQueryWrapper(SysNoticeBo bo) { LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); lqw.like(StringUtils.isNotBlank(bo.getNoticeTitle()), SysNotice::getNoticeTitle, bo.getNoticeTitle()); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOperLogServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOperLogServiceImpl.java index 9399c901d..86fd42a24 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOperLogServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOperLogServiceImpl.java @@ -66,6 +66,12 @@ public class SysOperLogServiceImpl implements ISysOperLogService { return TableDataInfo.build(page); } + /** + * 构造操作日志查询条件。 + * + * @param operLog 操作日志筛选条件 + * @return 包含业务类型、状态、操作人和时间区间的查询包装器 + */ private LambdaQueryWrapper buildQueryWrapper(SysOperLogBo operLog) { Map params = operLog.getParams(); return new LambdaQueryWrapper() diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssConfigServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssConfigServiceImpl.java index 539c1fc62..dd034b857 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssConfigServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssConfigServiceImpl.java @@ -60,11 +60,24 @@ public class SysOssConfigServiceImpl implements ISysOssConfigService { } } + /** + * 查询对象存储配置详情。 + * + * @param ossConfigId 配置主键 + * @return 对象存储配置详情 + */ @Override public SysOssConfigVo queryById(Long ossConfigId) { return baseMapper.selectVoById(ossConfigId); } + /** + * 分页查询对象存储配置列表。 + * + * @param bo 配置筛选条件 + * @param pageQuery 分页参数 + * @return 配置分页结果 + */ @Override public TableDataInfo queryPageList(SysOssConfigBo bo, PageQuery pageQuery) { LambdaQueryWrapper lqw = buildQueryWrapper(bo); @@ -73,6 +86,12 @@ public class SysOssConfigServiceImpl implements ISysOssConfigService { } + /** + * 构造对象存储配置列表查询条件。 + * + * @param bo 配置筛选条件 + * @return 包含配置标识、桶名称和状态条件的查询包装器 + */ private LambdaQueryWrapper buildQueryWrapper(SysOssConfigBo bo) { LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); lqw.eq(StringUtils.isNotBlank(bo.getConfigKey()), SysOssConfig::getConfigKey, bo.getConfigKey()); @@ -82,6 +101,12 @@ public class SysOssConfigServiceImpl implements ISysOssConfigService { return lqw; } + /** + * 新增对象存储配置并刷新缓存。 + * + * @param bo 配置业务对象 + * @return 新增成功返回 {@code true} + */ @Override public Boolean insertByBo(SysOssConfigBo bo) { SysOssConfig config = MapstructUtils.convert(bo, SysOssConfig.class); @@ -95,6 +120,12 @@ public class SysOssConfigServiceImpl implements ISysOssConfigService { return flag; } + /** + * 更新对象存储配置并刷新缓存。 + * + * @param bo 配置业务对象 + * @return 更新成功返回 {@code true} + */ @Override public Boolean updateByBo(SysOssConfigBo bo) { SysOssConfig config = MapstructUtils.convert(bo, SysOssConfig.class); @@ -116,6 +147,8 @@ public class SysOssConfigServiceImpl implements ISysOssConfigService { /** * 保存前的数据校验 + * + * @param entity 待保存的对象存储配置实体 */ private void validEntityBeforeSave(SysOssConfig entity) { if (StringUtils.isNotEmpty(entity.getConfigKey()) @@ -124,6 +157,13 @@ public class SysOssConfigServiceImpl implements ISysOssConfigService { } } + /** + * 删除对象存储配置并同步清理缓存。 + * + * @param ids 主键集合 + * @param isValid 是否执行业务校验 + * @return 删除成功返回 {@code true} + */ @Override public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { if (isValid) { @@ -146,6 +186,9 @@ public class SysOssConfigServiceImpl implements ISysOssConfigService { /** * 判断configKey是否唯一 + * + * @param sysOssConfig 对象存储配置实体 + * @return 唯一返回 {@code true} */ private boolean checkConfigKeyUnique(SysOssConfig sysOssConfig) { long ossConfigId = ObjectUtils.notNull(sysOssConfig.getOssConfigId(), -1L); @@ -160,6 +203,9 @@ public class SysOssConfigServiceImpl implements ISysOssConfigService { /** * 启用禁用状态 + * + * @param bo 配置业务对象 + * @return 更新条数 */ @Override @Transactional(rollbackFor = Exception.class) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java index d920ddbde..2bcb45614 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java @@ -119,6 +119,12 @@ public class SysOssServiceImpl implements ISysOssService, OssService { return StringUtils.joinComma(list); } + /** + * 根据逗号分隔的文件主键列表查询文件传输对象集合。 + * + * @param ossIds 逗号分隔的文件主键字符串 + * @return 文件传输对象列表 + */ @Override public List selectByIds(String ossIds) { List list = new ArrayList<>(); @@ -137,6 +143,12 @@ public class SysOssServiceImpl implements ISysOssService, OssService { return list; } + /** + * 构造 OSS 文件列表查询条件。 + * + * @param bo 文件筛选条件 + * @return 包含文件名、后缀、归属服务和创建时间区间的查询包装器 + */ private LambdaQueryWrapper buildQueryWrapper(SysOssBo bo) { Map params = bo.getParams(); LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); @@ -233,6 +245,16 @@ public class SysOssServiceImpl implements ISysOssService, OssService { return buildResultEntity(originalfileName, suffix, storage.getConfigKey(), uploadResult, ext1); } + /** + * 组装上传结果并持久化文件元数据。 + * + * @param originalfileName 原始文件名 + * @param suffix 文件后缀 + * @param configKey 存储配置标识 + * @param uploadResult 上传结果 + * @param ext1 扩展属性对象 + * @return 持久化后的文件信息视图 + */ @NotNull private SysOssVo buildResultEntity(String originalfileName, String suffix, String configKey, UploadResult uploadResult, SysOssExt ext1) { SysOss oss = new SysOss(); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPermissionServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPermissionServiceImpl.java index 4a0992da5..ceea3ed60 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPermissionServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPermissionServiceImpl.java @@ -62,6 +62,12 @@ public class SysPermissionServiceImpl implements ISysPermissionService, Permissi return perms; } + /** + * 按权限标识汇总具备数据权限的角色集合。 + * + * @param roles 角色传输对象列表 + * @return key 为权限标识、value 为拥有该权限的角色主键列表 + */ @Override public Map> getDataScopeRoleMap(List roles) { if (CollUtil.isEmpty(roles)) { diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java index 18d82fb71..01b1a3284 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java @@ -77,6 +77,12 @@ public class SysRoleServiceImpl implements ISysRoleService, RoleService { return baseMapper.selectRoleList(this.buildQueryWrapper(role)); } + /** + * 构造角色列表查询条件。 + * + * @param bo 角色筛选条件 + * @return 包含名称、权限字符、状态和创建时间区间的查询包装器 + */ private Wrapper buildQueryWrapper(SysRoleBo bo) { Map params = bo.getParams(); LambdaQueryWrapper wrapper = Wrappers.lambdaQuery(); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysSensitiveServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysSensitiveServiceImpl.java index 77f05e28a..869bb9d71 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysSensitiveServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysSensitiveServiceImpl.java @@ -19,6 +19,10 @@ public class SysSensitiveServiceImpl implements SensitiveService { /** * 是否脱敏 + * + * @param roleKey 允许查看原文的角色标识列表 + * @param perms 允许查看原文的权限标识列表 + * @return 需要脱敏返回 {@code true} */ @Override public boolean isSensitive(String[] roleKey, String[] perms) { diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysSocialServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysSocialServiceImpl.java index 9c54cbc81..d3441b67e 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysSocialServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysSocialServiceImpl.java @@ -29,6 +29,9 @@ public class SysSocialServiceImpl implements ISysSocialService { /** * 查询社会化关系 + * + * @param id 主键 + * @return 社会化绑定详情 */ @Override public SysSocialVo queryById(String id) { @@ -37,6 +40,9 @@ public class SysSocialServiceImpl implements ISysSocialService { /** * 授权列表 + * + * @param bo 查询条件 + * @return 社会化授权关系列表 */ @Override public List queryList(SysSocialBo bo) { @@ -47,6 +53,12 @@ public class SysSocialServiceImpl implements ISysSocialService { return baseMapper.selectVoList(lqw); } + /** + * 按用户主键查询其绑定的社会化授权列表。 + * + * @param userId 用户主键 + * @return 用户已绑定的社会化授权列表 + */ @Override public List queryListByUserId(Long userId) { return baseMapper.selectVoList(new LambdaQueryWrapper().eq(SysSocial::getUserId, userId)); @@ -55,6 +67,9 @@ public class SysSocialServiceImpl implements ISysSocialService { /** * 新增社会化关系 + * + * @param bo 业务对象 + * @return 新增成功返回 {@code true} */ @Override public Boolean insertByBo(SysSocialBo bo) { @@ -73,6 +88,9 @@ public class SysSocialServiceImpl implements ISysSocialService { /** * 更新社会化关系 + * + * @param bo 业务对象 + * @return 更新成功返回 {@code true} */ @Override public Boolean updateByBo(SysSocialBo bo) { @@ -83,6 +101,8 @@ public class SysSocialServiceImpl implements ISysSocialService { /** * 保存前的数据校验 + * + * @param entity 待保存的社会化关系实体 */ private void validEntityBeforeSave(SysSocial entity) { //TODO 做一些数据校验,如唯一约束 @@ -91,6 +111,9 @@ public class SysSocialServiceImpl implements ISysSocialService { /** * 删除社会化关系 + * + * @param id 主键 + * @return 删除成功返回 {@code true} */ @Override public Boolean deleteWithValidById(Long id) { diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java index 579b7f1fa..5eeeb3781 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java @@ -56,6 +56,13 @@ public class SysUserServiceImpl implements ISysUserService, UserService { private final SysUserRoleMapper userRoleMapper; private final SysUserPostMapper userPostMapper; + /** + * 分页查询用户列表。 + * + * @param user 用户筛选条件 + * @param pageQuery 分页参数 + * @return 用户分页结果 + */ @Override public TableDataInfo selectPageUserList(SysUserBo user, PageQuery pageQuery) { Page page = baseMapper.selectPageUserList(pageQuery.build(), this.buildQueryWrapper(user)); @@ -74,6 +81,12 @@ public class SysUserServiceImpl implements ISysUserService, UserService { return baseMapper.selectUserExportList(user, deptIds); } + /** + * 构造用户列表查询条件。 + * + * @param user 用户筛选条件 + * @return 叠加部门、状态、时间区间等条件的查询包装器 + */ private Wrapper buildQueryWrapper(SysUserBo user) { Map params = user.getParams(); LambdaQueryWrapper wrapper = Wrappers.lambdaQuery(); diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/constant/FlowConstant.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/constant/FlowConstant.java index 203f3f667..850caf062 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/constant/FlowConstant.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/constant/FlowConstant.java @@ -24,52 +24,52 @@ public interface FlowConstant { String INITIATOR_DEPT_ID = "initiatorDeptId"; /** - * 流程分类Id转名称 + * 流程分类 ID 转名称的翻译标识。 */ String CATEGORY_ID_TO_NAME = "category_id_to_name"; /** - * 流程分类名称 + * 流程分类名称缓存键。 */ String FLOW_CATEGORY_NAME = "flow_category_name#30d"; /** - * 默认租户OA申请分类id + * 默认租户 OA 申请分类 ID。 */ Long FLOW_CATEGORY_ID = 100L; /** - * 是否为申请人提交常量 + * 申请人提交动作标识。 */ String SUBMIT = "submit"; /** - * 抄送常量 + * 抄送列表流程变量名。 */ String FLOW_COPY_LIST = "flowCopyList"; /** - * 消息类型常量 + * 消息类型流程变量名。 */ String MESSAGE_TYPE = "messageType"; /** - * 消息通知常量 + * 消息通知内容流程变量名。 */ String MESSAGE_NOTICE = "messageNotice"; /** - * 任务状态 + * 任务状态字典类型编码。 */ String WF_TASK_STATUS = "wf_task_status"; /** - * 自动通过 + * 自动通过变量标识。 */ String AUTO_PASS = "autoPass"; /** - * 业务编码 + * 业务编码流程变量名。 */ String BUSINESS_CODE = "businessCode"; diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/ButtonPermissionEnum.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/ButtonPermissionEnum.java index 3ad9cf9ee..32e668bc2 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/ButtonPermissionEnum.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/ButtonPermissionEnum.java @@ -57,8 +57,19 @@ public enum ButtonPermissionEnum implements NodeExtEnum { */ FILE("是否能上传附件", "file", true); + /** + * 按钮展示名称。 + */ private final String label; + + /** + * 按钮权限值。 + */ private final String value; + + /** + * 是否默认开启。 + */ private final boolean selected; } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/CopySettingEnum.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/CopySettingEnum.java index a74af3b2d..5512eb9ec 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/CopySettingEnum.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/CopySettingEnum.java @@ -12,8 +12,20 @@ import lombok.Getter; @AllArgsConstructor public enum CopySettingEnum implements NodeExtEnum { ; + + /** + * 展示名称。 + */ private final String label; + + /** + * 配置值。 + */ private final String value; + + /** + * 是否默认选中。 + */ private final boolean selected; } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/MessageTypeEnum.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/MessageTypeEnum.java index 0fe5cfe90..0138040f3 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/MessageTypeEnum.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/MessageTypeEnum.java @@ -9,7 +9,7 @@ import java.util.function.Function; import java.util.stream.Collectors; /** - * 消息类型枚举 + * 消息类型枚举,定义流程通知支持的消息通道。 * * @author may */ @@ -32,15 +32,21 @@ public enum MessageTypeEnum { */ SMS_MESSAGE("3", "短信"); + /** + * 消息类型编码。 + */ private final String code; + /** + * 消息类型描述。 + */ private final String desc; private static final Map MESSAGE_TYPE_ENUM_MAP = Arrays.stream(values()) .collect(Collectors.toConcurrentMap(MessageTypeEnum::getCode, Function.identity())); /** - * 根据消息类型 code 获取 MessageTypeEnum + * 根据消息类型编码获取枚举实例。 * * @param code 消息类型code * @return MessageTypeEnum diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/NodeExtEnum.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/NodeExtEnum.java index 9926a8eb9..3501f1dfa 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/NodeExtEnum.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/NodeExtEnum.java @@ -1,28 +1,28 @@ package org.dromara.workflow.common.enums; /** - * 节点扩展属性枚举 + * 节点扩展属性枚举通用接口,约束扩展选项的展示名、值和默认勾选状态。 * * @author AprilWind */ public interface NodeExtEnum { /** - * 选项label + * 获取选项展示名称。 * * @return 选项label */ String getLabel(); /** - * 选项值 + * 获取选项值。 * * @return 选项值 */ String getValue(); /** - * 是否默认选中 + * 是否默认选中。 * * @return 是否默认选中 */ diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/TaskAssigneeEnum.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/TaskAssigneeEnum.java index fff268837..e435c3060 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/TaskAssigneeEnum.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/TaskAssigneeEnum.java @@ -43,7 +43,14 @@ public enum TaskAssigneeEnum { */ SPEL("SpEL表达式", ""); + /** + * 类型描述。 + */ private final String desc; + + /** + * 类型编码前缀。 + */ private final String code; /** @@ -85,10 +92,7 @@ public enum TaskAssigneeEnum { } /** - * 获取所有办理人类型的描述列表 - *

- * 获取当前枚举类所有项的描述字段列表,通常用于展示选择项。 - *

+ * 获取所有办理人类型的描述列表,通常用于前端展示选择项。 * * @return List 返回所有办理人类型的描述列表 */ @@ -99,10 +103,8 @@ public enum TaskAssigneeEnum { } /** - * 获取所有办理人类型的代码列表 - *

- * 获取当前枚举类所有项的代码字段列表,通常用于程序内部逻辑的判断。 - *

+ /** + * 获取所有办理人类型的代码列表,通常用于程序内部逻辑判断。 * * @return List 返回所有办理人类型的代码列表 */ @@ -113,7 +115,7 @@ public enum TaskAssigneeEnum { } /** - * 判断当前办理人类型是否需要调用部门服务(deptService) + * 判断当前办理人类型是否需要调用部门服务。 * * @return 如果类型是 USER、DEPT 或 POST,则返回 true;否则返回 false */ diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/TaskOperationEnum.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/TaskOperationEnum.java index 8c050a28f..d1019f90e 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/TaskOperationEnum.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/TaskOperationEnum.java @@ -9,7 +9,7 @@ import java.util.function.Function; import java.util.stream.Collectors; /** - * 任务操作类型枚举 + * 任务操作类型枚举,定义流程任务支持的运行时操作。 * * @author may */ @@ -37,14 +37,24 @@ public enum TaskOperationEnum { */ REDUCTION_SIGNATURE("reductionSignature", "减签"); + /** + * 操作编码,供接口与前端交互使用。 + */ private final String code; + + /** + * 操作描述。 + */ private final String desc; private static final Map CODE_MAP = Arrays.stream(values()) .collect(Collectors.toConcurrentMap(TaskOperationEnum::getCode, Function.identity())); /** - * 根据 code 获取枚举 + * 根据 code 获取枚举实例。 + * + * @param code 操作编码 + * @return 对应的枚举实例 */ public static TaskOperationEnum getByCode(String code) { return CODE_MAP.get(code); diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/TaskStatusEnum.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/TaskStatusEnum.java index c7bced890..29c4f2d89 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/TaskStatusEnum.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/TaskStatusEnum.java @@ -83,7 +83,7 @@ public enum TaskStatusEnum { private final String status; /** - * 描述 + * 状态描述。 */ private final String desc; @@ -91,9 +91,10 @@ public enum TaskStatusEnum { .collect(Collectors.toConcurrentMap(TaskStatusEnum::getStatus, TaskStatusEnum::getDesc)); /** - * 任务业务状态 + * 根据状态编码获取任务业务状态描述。 * * @param status 状态 + * @return 状态描述 */ public static String findByStatus(String status) { // 从缓存中直接获取描述 diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/VariablesEnum.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/VariablesEnum.java index dbd54ed54..cadc15287 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/VariablesEnum.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/VariablesEnum.java @@ -4,7 +4,7 @@ import lombok.AllArgsConstructor; import lombok.Getter; /** - * 变量枚举 + * 节点扩展变量枚举,占位用于后续补充可配置变量定义。 * * @author AprilWind */ @@ -12,8 +12,20 @@ import lombok.Getter; @AllArgsConstructor public enum VariablesEnum implements NodeExtEnum { ; + + /** + * 展示名称。 + */ private final String label; + + /** + * 变量值。 + */ private final String value; + + /** + * 是否选中。 + */ private final boolean selected; } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/config/WarmFlowConfig.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/config/WarmFlowConfig.java index 08f1808d1..46dc97124 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/config/WarmFlowConfig.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/config/WarmFlowConfig.java @@ -4,7 +4,7 @@ import org.dromara.workflow.common.ConditionalOnEnable; import org.springframework.context.annotation.Configuration; /** - * warmFlow配置 + * WarmFlow 工作流配置入口,在工作流开关开启时注册相关组件。 * * @author may */ diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwCategoryController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwCategoryController.java index f6d52047a..73cf20f85 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwCategoryController.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwCategoryController.java @@ -38,7 +38,10 @@ public class FlwCategoryController extends BaseController { private final IFlwCategoryService flwCategoryService; /** - * 查询流程分类列表 + * 查询流程分类列表。 + * + * @param bo 查询条件 + * @return 流程分类列表 */ @SaCheckPermission("workflow:category:list") @GetMapping("/list") @@ -48,7 +51,10 @@ public class FlwCategoryController extends BaseController { } /** - * 导出流程分类列表 + * 导出流程分类列表。 + * + * @param bo 查询条件 + * @param response 响应流 */ @SaCheckPermission("workflow:category:export") @Log(title = "流程分类", businessType = BusinessType.EXPORT) @@ -59,9 +65,10 @@ public class FlwCategoryController extends BaseController { } /** - * 获取流程分类详细信息 + * 获取单个流程分类详情。 * * @param categoryId 主键 + * @return 流程分类详情 */ @SaCheckPermission("workflow:category:query") @GetMapping("/{categoryId}") @@ -70,7 +77,10 @@ public class FlwCategoryController extends BaseController { } /** - * 新增流程分类 + * 新增流程分类,并校验分类名称唯一性。 + * + * @param category 分类信息 + * @return 操作结果 */ @SaCheckPermission("workflow:category:add") @Log(title = "流程分类", businessType = BusinessType.INSERT) @@ -84,7 +94,10 @@ public class FlwCategoryController extends BaseController { } /** - * 修改流程分类 + * 修改流程分类,并校验名称唯一及父子关系合法性。 + * + * @param category 分类信息 + * @return 操作结果 */ @SaCheckPermission("workflow:category:edit") @Log(title = "流程分类", businessType = BusinessType.UPDATE) @@ -101,9 +114,10 @@ public class FlwCategoryController extends BaseController { } /** - * 删除流程分类 + * 删除流程分类,删除前校验默认分类、子节点和绑定流程定义。 * * @param categoryId 主键 + * @return 操作结果 */ @SaCheckPermission("workflow:category:remove") @Log(title = "流程分类", businessType = BusinessType.DELETE) @@ -122,9 +136,10 @@ public class FlwCategoryController extends BaseController { } /** - * 获取流程分类树列表 + * 获取流程分类树列表,用于流程定义选择分类节点。 * * @param categoryBo 流程分类 + * @return 流程分类树 */ @GetMapping("/categoryTree") public R>> categoryTree(FlowCategoryBo categoryBo) { diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwDefinitionController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwDefinitionController.java index e7aa31885..aaf4fb56f 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwDefinitionController.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwDefinitionController.java @@ -39,10 +39,11 @@ public class FlwDefinitionController extends BaseController { private final IFlwDefinitionService flwDefinitionService; /** - * 查询流程定义列表 + * 分页查询流程定义列表。 * - * @param flowDefinition 参数 - * @param pageQuery 分页 + * @param flowDefinition 查询条件 + * @param pageQuery 分页参数 + * @return 流程定义分页数据 */ @GetMapping("/list") public TableDataInfo list(FlowDefinition flowDefinition, PageQuery pageQuery) { @@ -50,10 +51,11 @@ public class FlwDefinitionController extends BaseController { } /** - * 查询未发布的流程定义列表 + * 分页查询未发布的流程定义列表。 * - * @param flowDefinition 参数 - * @param pageQuery 分页 + * @param flowDefinition 查询条件 + * @param pageQuery 分页参数 + * @return 未发布流程定义分页数据 */ @GetMapping("/unPublishList") public TableDataInfo unPublishList(FlowDefinition flowDefinition, PageQuery pageQuery) { @@ -61,9 +63,10 @@ public class FlwDefinitionController extends BaseController { } /** - * 获取流程定义详细信息 + * 获取流程定义详细信息。 * * @param id 流程定义id + * @return 流程定义详情 */ @GetMapping(value = "/{id}") public R getInfo(@PathVariable Long id) { @@ -71,9 +74,10 @@ public class FlwDefinitionController extends BaseController { } /** - * 新增流程定义 + * 新增流程定义并执行格式校验。 * - * @param flowDefinition 参数 + * @param flowDefinition 流程定义信息 + * @return 操作结果 */ @Log(title = "流程定义", businessType = BusinessType.INSERT) @PostMapping @@ -84,9 +88,10 @@ public class FlwDefinitionController extends BaseController { } /** - * 修改流程定义 + * 修改流程定义。 * - * @param flowDefinition 参数 + * @param flowDefinition 流程定义信息 + * @return 操作结果 */ @Log(title = "流程定义", businessType = BusinessType.UPDATE) @PutMapping @@ -97,9 +102,10 @@ public class FlwDefinitionController extends BaseController { } /** - * 发布流程定义 + * 发布流程定义,使其进入可用状态。 * * @param id 流程定义id + * @return 发布结果 */ @Log(title = "流程定义", businessType = BusinessType.INSERT) @PutMapping("/publish/{id}") @@ -109,9 +115,10 @@ public class FlwDefinitionController extends BaseController { } /** - * 取消发布流程定义 + * 取消发布流程定义。 * * @param id 流程定义id + * @return 操作结果 */ @Log(title = "流程定义", businessType = BusinessType.INSERT) @PutMapping("/unPublish/{id}") @@ -122,7 +129,10 @@ public class FlwDefinitionController extends BaseController { } /** - * 删除流程定义 + * 批量删除流程定义。 + * + * @param ids 流程定义ID集合 + * @return 操作结果 */ @Log(title = "流程定义", businessType = BusinessType.DELETE) @DeleteMapping("/{ids}") @@ -131,9 +141,10 @@ public class FlwDefinitionController extends BaseController { } /** - * 复制流程定义 + * 复制一份流程定义,便于快速创建相似流程。 * * @param id 流程定义id + * @return 复制结果 */ @Log(title = "流程定义", businessType = BusinessType.INSERT) @PostMapping("/copy/{id}") @@ -144,10 +155,11 @@ public class FlwDefinitionController extends BaseController { } /** - * 导入流程定义 + * 通过文件导入流程定义。 * * @param file 文件 * @param category 分类 + * @return 导入结果 */ @Log(title = "流程定义", businessType = BusinessType.IMPORT) @PostMapping("/importDef") @@ -156,7 +168,7 @@ public class FlwDefinitionController extends BaseController { } /** - * 导出流程定义 + * 导出流程定义文件。 * * @param id 流程定义id * @param response 响应 @@ -169,9 +181,10 @@ public class FlwDefinitionController extends BaseController { } /** - * 获取流程定义JSON字符串 + * 获取流程定义 JSON 字符串。 * * @param id 流程定义id + * @return 流程定义 JSON */ @GetMapping("/xmlString/{id}") public R xmlString(@PathVariable Long id) { @@ -179,10 +192,12 @@ public class FlwDefinitionController extends BaseController { } /** - * 激活/挂起流程定义 + /** + * 激活或挂起流程定义。 * * @param id 流程定义id * @param active 激活/挂起 + * @return 处理结果 */ @RepeatSubmit() @PutMapping("/active/{id}") diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwInstanceController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwInstanceController.java index 2c091a492..66137eb7c 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwInstanceController.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwInstanceController.java @@ -40,10 +40,11 @@ public class FlwInstanceController extends BaseController { private final IFlwInstanceService flwInstanceService; /** - * 查询正在运行的流程实例列表 + * 分页查询正在运行的流程实例。 * * @param flowInstanceBo 流程实例 * @param pageQuery 分页 + * @return 正在运行的流程实例分页数据 */ @GetMapping("/pageByRunning") public TableDataInfo selectRunningInstanceList(FlowInstanceBo flowInstanceBo, PageQuery pageQuery) { @@ -51,10 +52,11 @@ public class FlwInstanceController extends BaseController { } /** - * 查询已结束的流程实例列表 + * 分页查询已结束的流程实例。 * * @param flowInstanceBo 流程实例 * @param pageQuery 分页 + * @return 已结束的流程实例分页数据 */ @GetMapping("/pageByFinish") public TableDataInfo selectFinishInstanceList(FlowInstanceBo flowInstanceBo, PageQuery pageQuery) { @@ -62,9 +64,10 @@ public class FlwInstanceController extends BaseController { } /** - * 根据业务id查询流程实例详细信息 + * 根据业务 id 查询流程实例详细信息。 * * @param businessId 业务id + * @return 流程实例详情 */ @GetMapping("/getInfo/{businessId}") public R getInfo(@PathVariable Long businessId) { @@ -72,9 +75,10 @@ public class FlwInstanceController extends BaseController { } /** - * 按照业务id删除流程实例 + * 按业务 id 批量删除流程实例。 * * @param businessIds 业务id + * @return 操作结果 */ @DeleteMapping("/deleteByBusinessIds/{businessIds}") @Log(title = "流程实例管理", businessType = BusinessType.DELETE) @@ -83,9 +87,10 @@ public class FlwInstanceController extends BaseController { } /** - * 按照实例id删除流程实例 + * 按实例 id 批量删除流程实例。 * * @param instanceIds 实例id + * @return 操作结果 */ @DeleteMapping("/deleteByInstanceIds/{instanceIds}") @Log(title = "流程实例管理", businessType = BusinessType.DELETE) @@ -94,9 +99,10 @@ public class FlwInstanceController extends BaseController { } /** - * 按照实例id删除已完成得流程实例 + * 按实例 id 批量删除已完成的流程实例。 * * @param instanceIds 实例id + * @return 操作结果 */ @DeleteMapping("/deleteHisByInstanceIds/{instanceIds}") @Log(title = "流程实例管理", businessType = BusinessType.DELETE) @@ -105,9 +111,10 @@ public class FlwInstanceController extends BaseController { } /** - * 撤销流程 + * 撤销当前申请人发起的流程。 * * @param bo 参数 + * @return 操作结果 */ @RepeatSubmit() @PutMapping("/cancelProcessApply") @@ -117,10 +124,11 @@ public class FlwInstanceController extends BaseController { } /** - * 激活/挂起流程实例 + * 激活或挂起流程实例。 * * @param id 流程实例id * @param active 激活/挂起 + * @return 处理结果 */ @RepeatSubmit() @PutMapping("/active/{id}") @@ -130,10 +138,11 @@ public class FlwInstanceController extends BaseController { } /** - * 获取当前登陆人发起的流程实例 + * 获取当前登录人发起的流程实例列表。 * * @param flowInstanceBo 参数 * @param pageQuery 分页 + * @return 当前用户发起的流程实例分页数据 */ @GetMapping("/pageByCurrent") public TableDataInfo selectCurrentInstanceList(FlowInstanceBo flowInstanceBo, PageQuery pageQuery) { @@ -141,9 +150,10 @@ public class FlwInstanceController extends BaseController { } /** - * 获取流程图,流程记录 + * 获取流程图和流程记录,用于展示实例流转轨迹。 * * @param businessId 业务id + * @return 流程图与历史节点信息 */ @GetMapping("/flowHisTaskList/{businessId}") public R> flowHisTaskList(@PathVariable String businessId) { @@ -151,9 +161,10 @@ public class FlwInstanceController extends BaseController { } /** - * 获取流程变量 + * 获取流程变量。 * * @param instanceId 流程实例id + * @return 流程变量 */ @GetMapping("/instanceVariable/{instanceId}") public R> instanceVariable(@PathVariable Long instanceId) { @@ -161,9 +172,10 @@ public class FlwInstanceController extends BaseController { } /** - * 修改流程变量 + * 修改流程变量。 * * @param bo 参数 + * @return 操作结果 */ @RepeatSubmit() @PutMapping("/updateVariable") @@ -173,9 +185,10 @@ public class FlwInstanceController extends BaseController { } /** - * 作废流程 + * 作废流程实例。 * * @param bo 参数 + * @return 处理结果 */ @Log(title = "流程实例管理", businessType = BusinessType.INSERT) @RepeatSubmit() diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwSpelController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwSpelController.java index ffbd407fe..3f8aad044 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwSpelController.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwSpelController.java @@ -23,7 +23,7 @@ import org.springframework.web.bind.annotation.*; import java.util.List; /** - * 流程spel表达式定义 + * 流程 SpEL 表达式定义控制器,负责表达式规则的增删改查。 * * @author Michelle.Chung * @date 2025-07-04 @@ -38,7 +38,11 @@ public class FlwSpelController extends BaseController { private final IFlwSpelService flwSpelService; /** - * 查询流程spel表达式定义列表 + * 分页查询流程 SpEL 表达式定义列表。 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 表达式分页数据 */ @SaCheckPermission("workflow:spel:list") @GetMapping("/list") @@ -47,9 +51,10 @@ public class FlwSpelController extends BaseController { } /** - * 获取流程spel表达式定义详细信息 + * 获取流程 SpEL 表达式定义详情。 * * @param id 主键 + * @return 表达式详情 */ @SaCheckPermission("workflow:spel:query") @GetMapping("/{id}") @@ -58,7 +63,11 @@ public class FlwSpelController extends BaseController { } /** - * 新增流程spel表达式定义 + /** + * 新增流程 SpEL 表达式定义。 + * + * @param bo 表达式信息 + * @return 操作结果 */ @SaCheckPermission("workflow:spel:add") @Log(title = "流程spel表达式定义", businessType = BusinessType.INSERT) @@ -69,7 +78,10 @@ public class FlwSpelController extends BaseController { } /** - * 修改流程spel表达式定义 + * 修改流程 SpEL 表达式定义。 + * + * @param bo 表达式信息 + * @return 操作结果 */ @SaCheckPermission("workflow:spel:edit") @Log(title = "流程spel表达式定义", businessType = BusinessType.UPDATE) @@ -80,9 +92,10 @@ public class FlwSpelController extends BaseController { } /** - * 删除流程spel表达式定义 + * 批量删除流程 SpEL 表达式定义。 * * @param ids 主键串 + * @return 操作结果 */ @SaCheckPermission("workflow:spel:remove") @Log(title = "流程spel表达式定义", businessType = BusinessType.DELETE) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwTaskController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwTaskController.java index 39775e8f7..f9f3a182c 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwTaskController.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwTaskController.java @@ -38,9 +38,10 @@ public class FlwTaskController extends BaseController { private final IFlwTaskService flwTaskService; /** - * 启动任务 + * 启动流程任务。 * * @param startProcessBo 启动流程参数 + * @return 启动结果及后续流程信息 */ @Log(title = "任务管理", businessType = BusinessType.INSERT) @RepeatSubmit() @@ -51,9 +52,10 @@ public class FlwTaskController extends BaseController { } /** - * 办理任务 + * 办理当前任务节点。 * * @param completeTaskBo 办理任务参数 + * @return 操作结果 */ @Log(title = "任务管理", businessType = BusinessType.INSERT) @RepeatSubmit() @@ -63,10 +65,11 @@ public class FlwTaskController extends BaseController { } /** - * 查询当前用户的待办任务 + * 查询当前用户的待办任务。 * * @param flowTaskBo 参数 * @param pageQuery 分页 + * @return 待办任务分页数据 */ @GetMapping("/pageByTaskWait") public TableDataInfo pageByTaskWait(FlowTaskBo flowTaskBo, PageQuery pageQuery) { @@ -74,22 +77,24 @@ public class FlwTaskController extends BaseController { } /** - * 查询当前用户的已办任务 + * 查询当前用户的已办任务。 * * @param flowTaskBo 参数 * @param pageQuery 分页 + * @return 已办任务分页数据 */ - @GetMapping("/pageByTaskFinish") public TableDataInfo pageByTaskFinish(FlowTaskBo flowTaskBo, PageQuery pageQuery) { return flwTaskService.pageByTaskFinish(flowTaskBo, pageQuery); } /** - * 查询待办任务 + /** + * 查询全部待办任务。 * * @param flowTaskBo 参数 * @param pageQuery 分页 + * @return 待办任务分页数据 */ @GetMapping("/pageByAllTaskWait") public TableDataInfo pageByAllTaskWait(FlowTaskBo flowTaskBo, PageQuery pageQuery) { @@ -97,10 +102,11 @@ public class FlwTaskController extends BaseController { } /** - * 查询已办任务 + * 查询全部已办任务。 * * @param flowTaskBo 参数 * @param pageQuery 分页 + * @return 已办任务分页数据 */ @GetMapping("/pageByAllTaskFinish") public TableDataInfo pageByAllTaskFinish(FlowTaskBo flowTaskBo, PageQuery pageQuery) { @@ -108,10 +114,11 @@ public class FlwTaskController extends BaseController { } /** - * 查询当前用户的抄送 + * 查询当前用户收到的抄送任务。 * * @param flowTaskBo 参数 * @param pageQuery 分页 + * @return 抄送任务分页数据 */ @GetMapping("/pageByTaskCopy") public TableDataInfo pageByTaskCopy(FlowTaskBo flowTaskBo, PageQuery pageQuery) { @@ -119,9 +126,11 @@ public class FlwTaskController extends BaseController { } /** - * 根据taskId查询代表任务 + /** + * 根据任务 id 查询任务详情。 * * @param taskId 任务id + * @return 任务详情 */ @GetMapping("/getTask/{taskId}") public R getTask(@PathVariable Long taskId) { @@ -129,9 +138,11 @@ public class FlwTaskController extends BaseController { } /** - * 获取下一节点信息 + /** + * 获取流程下一节点信息。 * * @param bo 参数 + * @return 下一节点列表 */ @PostMapping("/getNextNodeList") public R> getNextNodeList(@RequestBody FlowNextNodeBo bo) { @@ -139,9 +150,11 @@ public class FlwTaskController extends BaseController { } /** - * 终止任务 + /** + * 终止流程任务。 * * @param bo 参数 + * @return 处理结果 */ @Log(title = "任务管理", businessType = BusinessType.INSERT) @RepeatSubmit() @@ -151,10 +164,11 @@ public class FlwTaskController extends BaseController { } /** - * 任务操作 + * 执行任务操作,例如委派、转办、加签或减签。 * * @param bo 参数 * @param taskOperation 操作类型,委派 delegateTask、转办 transferTask、加签 addSignature、减签 reductionSignature + * @return 操作结果 */ @Log(title = "任务管理", businessType = BusinessType.UPDATE) @RepeatSubmit @@ -164,10 +178,11 @@ public class FlwTaskController extends BaseController { } /** - * 修改任务办理人 + * 批量修改任务办理人。 * * @param taskIdList 任务id * @param userId 办理人id + * @return 操作结果 */ @Log(title = "任务管理", businessType = BusinessType.UPDATE) @RepeatSubmit() @@ -177,9 +192,10 @@ public class FlwTaskController extends BaseController { } /** - * 驳回审批 + * 驳回审批到前置节点。 * * @param bo 参数 + * @return 操作结果 */ @Log(title = "任务管理", businessType = BusinessType.INSERT) @RepeatSubmit() @@ -189,10 +205,11 @@ public class FlwTaskController extends BaseController { } /** - * 获取可驳回的前置节点 + * 获取当前任务可驳回的前置节点。 * * @param taskId 任务id * @param nowNodeCode 当前节点 + * @return 可驳回节点列表 */ @GetMapping("/getBackTaskNode/{taskId}/{nowNodeCode}") public R> getBackTaskNode(@PathVariable Long taskId, @PathVariable String nowNodeCode) { @@ -200,9 +217,11 @@ public class FlwTaskController extends BaseController { } /** - * 获取当前任务的所有办理人 + /** + * 获取当前任务的所有办理人。 * * @param taskId 任务id + * @return 办理人列表 */ @GetMapping("/currentTaskAllUser/{taskId}") public R> currentTaskAllUser(@PathVariable Long taskId) { @@ -210,7 +229,7 @@ public class FlwTaskController extends BaseController { } /** - * 催办任务 + * 催办任务。 * * @param bo 参数 * @return 结果 @@ -220,6 +239,4 @@ public class FlwTaskController extends BaseController { public R urgeTask(@RequestBody FlowUrgeTaskBo bo) { return toAjax(flwTaskService.urgeTask(bo)); } - - } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/TestLeaveController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/TestLeaveController.java index 5377b412d..10e6c21c6 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/TestLeaveController.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/TestLeaveController.java @@ -25,7 +25,7 @@ import org.springframework.web.bind.annotation.*; import java.util.List; /** - * 请假 + * 请假示例控制器,演示业务单据与流程引擎联动的典型用法。 * * @author may * @date 2023-07-21 @@ -40,7 +40,11 @@ public class TestLeaveController extends BaseController { private final ITestLeaveService testLeaveService; /** - * 查询请假列表 + * 分页查询请假列表。 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 请假分页数据 */ @SaCheckPermission("workflow:leave:list") @GetMapping("/list") @@ -49,7 +53,11 @@ public class TestLeaveController extends BaseController { } /** - * 导出请假列表 + /** + * 导出请假列表。 + * + * @param bo 查询条件 + * @param response 响应流 */ @SaCheckPermission("workflow:leave:export") @Log(title = "请假", businessType = BusinessType.EXPORT) @@ -60,9 +68,10 @@ public class TestLeaveController extends BaseController { } /** - * 获取请假详细信息 + * 获取请假单详情。 * * @param id 主键 + * @return 请假详情 */ @SaCheckPermission("workflow:leave:query") @GetMapping("/{id}") @@ -72,7 +81,10 @@ public class TestLeaveController extends BaseController { } /** - * 新增请假 + * 新增请假单。 + * + * @param bo 请假信息 + * @return 新增后的请假单 */ @SaCheckPermission("workflow:leave:add") @Log(title = "请假", businessType = BusinessType.INSERT) @@ -83,7 +95,10 @@ public class TestLeaveController extends BaseController { } /** - * 提交请假并提交流程 + * 提交请假单并同步发起流程。 + * + * @param bo 请假信息 + * @return 提交后的请假单 */ @SaCheckPermission("workflow:leave:add") @Log(title = "请假", businessType = BusinessType.INSERT) @@ -94,7 +109,10 @@ public class TestLeaveController extends BaseController { } /** - * 修改请假 + * 修改请假单。 + * + * @param bo 请假信息 + * @return 修改后的请假单 */ @SaCheckPermission("workflow:leave:edit") @Log(title = "请假", businessType = BusinessType.UPDATE) @@ -105,9 +123,10 @@ public class TestLeaveController extends BaseController { } /** - * 删除请假 + * 批量删除请假单。 * * @param ids 主键串 + * @return 操作结果 */ @SaCheckPermission("workflow:leave:remove") @Log(title = "请假", businessType = BusinessType.DELETE) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowCancelBo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowCancelBo.java index 31742ea79..60a4a6c59 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowCancelBo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowCancelBo.java @@ -8,7 +8,7 @@ import java.io.Serial; import java.io.Serializable; /** - * 撤销任务请求对象 + * 撤销流程请求对象。 * * @author may */ diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowCopyBo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowCopyBo.java index 894174929..e3267f8ab 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowCopyBo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowCopyBo.java @@ -7,7 +7,7 @@ import java.io.Serializable; /** - * 抄送 + * 流程抄送请求对象。 * * @author may */ diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowInstanceBo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowInstanceBo.java index bb1621f91..b997631a7 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowInstanceBo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowInstanceBo.java @@ -7,7 +7,7 @@ import java.io.Serializable; import java.util.List; /** - * 流程实例请求对象 + * 流程实例查询条件对象。 * * @author may */ diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowInvalidBo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowInvalidBo.java index 297bd00d9..e47e55821 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowInvalidBo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowInvalidBo.java @@ -8,7 +8,7 @@ import java.io.Serial; import java.io.Serializable; /** - * 作废请求对象 + * 作废流程请求对象。 * * @author may */ diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowNextNodeBo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowNextNodeBo.java index de75ba621..4d2ac5557 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowNextNodeBo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/bo/FlowNextNodeBo.java @@ -9,7 +9,7 @@ import java.util.Map; import java.util.Objects; /** - * 下一节点信息 + * 查询下一节点信息的请求对象。 * * @author may */ @@ -28,6 +28,11 @@ public class FlowNextNodeBo implements Serializable { */ private Map variables; + /** + * 获取流程变量并自动剔除空值。 + * + * @return 流程变量 + */ public Map getVariables() { if (variables == null) { variables = new HashMap<>(16); diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ButtonPermissionVo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ButtonPermissionVo.java index 7175e5e09..37cee08da 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ButtonPermissionVo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/ButtonPermissionVo.java @@ -6,7 +6,7 @@ import java.io.Serial; import java.io.Serializable; /** - * 按钮权限 + * 按钮权限视图对象。 * * @author may * @date 2025-02-28 @@ -32,9 +32,18 @@ public class ButtonPermissionVo implements Serializable { */ private Boolean show; + /** + * 无参构造方法。 + */ public ButtonPermissionVo() { } + /** + * 使用按钮编码和显示状态构造按钮权限对象。 + * + * @param code 按钮编码 + * @param show 是否显示 + */ public ButtonPermissionVo(String code, Boolean show) { this.code = code; this.show = show; diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowCopyVo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowCopyVo.java index c58071570..db21858be 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowCopyVo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowCopyVo.java @@ -8,7 +8,7 @@ import java.io.Serial; import java.io.Serializable; /** - * 抄送对象 + * 流程抄送视图对象。 * * @author AprilWind */ @@ -29,6 +29,11 @@ public class FlowCopyVo implements Serializable { @Translation(type = TransConstant.USER_ID_TO_NICKNAME, mapper = "userId") private String nickName; + /** + * 使用用户 ID 构造抄送对象。 + * + * @param userId 用户ID + */ public FlowCopyVo(Long userId) { this.userId = userId; } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowInstanceVo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowInstanceVo.java index 7a7a3e346..a49c09061 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowInstanceVo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowInstanceVo.java @@ -8,13 +8,16 @@ import org.dromara.workflow.common.constant.FlowConstant; import java.util.Date; /** - * 流程实例视图 + * 流程实例视图对象。 * * @author may */ @Data public class FlowInstanceVo { + /** + * 流程实例ID。 + */ private Long id; /** diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowTaskVo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowTaskVo.java index e26a63c1b..d5399e13c 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowTaskVo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/FlowTaskVo.java @@ -14,7 +14,7 @@ import java.util.List; import java.util.Map; /** - * 任务视图 + * 流程任务视图对象。 * * @author may */ @@ -24,6 +24,9 @@ public class FlowTaskVo implements Serializable { @Serial private static final long serialVersionUID = 1L; + /** + * 任务ID。 + */ private Long id; /** @@ -207,6 +210,11 @@ public class FlowTaskVo implements Serializable { private String businessTitle; //业务扩展信息结束 + /** + * 获取友好格式的创建时间。 + * + * @return 格式化后的创建时间 + */ public String getCreateTime() { return DateUtils.formatFriendlyTime(createTime); } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/WorkflowPermissionHandler.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/WorkflowPermissionHandler.java index e908a2085..21a6b6037 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/WorkflowPermissionHandler.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/WorkflowPermissionHandler.java @@ -34,6 +34,8 @@ public class WorkflowPermissionHandler implements PermissionHandler { * 办理人权限标识,比如用户,角色,部门等,用于校验是否有权限办理任务 * 后续在{@link FlowParams#getPermissionFlag} 中获取 * 返回当前用户权限集合 + * + * @return 当前用户权限集合 */ @Override public List permissions() { @@ -51,7 +53,10 @@ public class WorkflowPermissionHandler implements PermissionHandler { } /** - * 转换办理人,比如设计器中预设了能办理的人,如果其中包含角色或者部门id等,可以通过此接口进行转换成用户id + * 将预设办理人转换为实际用户 ID 列表。 + * + * @param permissions 预设权限标识列表 + * @return 用户 ID 列表 */ @Override public List convertPermissions(List permissions) { diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java index d8ba911f2..642744fb6 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/listener/WorkflowGlobalListener.java @@ -37,7 +37,7 @@ import java.util.Map; import java.util.Set; /** - * 全局任务办理监听 + * 工作流全局监听器,处理任务流转中的扩展变量、消息和事件发布。 * * @author may */ @@ -55,7 +55,7 @@ public class WorkflowGlobalListener implements GlobalListener { private final UserService userService; /** - * 创建监听器,任务创建时执行 + * 任务创建回调,当前预留扩展。 * * @param listenerVariable 监听器变量 */ @@ -65,7 +65,7 @@ public class WorkflowGlobalListener implements GlobalListener { } /** - * 开始监听器,任务开始办理时执行 + * 任务开始办理时解析节点扩展配置。 * * @param listenerVariable 监听器变量 */ @@ -98,7 +98,7 @@ public class WorkflowGlobalListener implements GlobalListener { } /** - * 分派监听器,动态修改代办任务信息 + * 任务分派时动态调整办理权限。 * * @param listenerVariable 监听器变量 */ @@ -166,7 +166,7 @@ public class WorkflowGlobalListener implements GlobalListener { } /** - * 完成监听器,当前任务完成后执行 + * 任务完成后发布流程事件并处理抄送和通知。 * * @param listenerVariable 监听器变量 */ diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/rule/SpelRuleComponent.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/rule/SpelRuleComponent.java index 7498db56c..87e2a6efe 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/rule/SpelRuleComponent.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/rule/SpelRuleComponent.java @@ -25,7 +25,10 @@ public class SpelRuleComponent { private final DeptService deptService; /** - * 通过发起人部门id获取部门负责人 + * 通过发起人部门 ID 获取部门负责人。 + * + * @param initiatorDeptId 发起人部门 ID + * @return 部门负责人用户 ID */ public Long selectDeptLeaderById(Long initiatorDeptId) { Long leaderId = deptService.selectDeptLeaderById(initiatorDeptId); diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwDefinitionService.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwDefinitionService.java index a2d611099..7641761a1 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwDefinitionService.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwDefinitionService.java @@ -39,7 +39,7 @@ public interface IFlwDefinitionService { * 发布流程定义 * * @param id 流程定义id - * @return 结果 + * @return 是否发布成功 */ boolean publish(Long id); @@ -57,7 +57,7 @@ public interface IFlwDefinitionService { * * @param file 文件 * @param category 分类 - * @return 结果 + * @return 是否导入成功 */ boolean importJson(MultipartFile file, String category); @@ -65,7 +65,7 @@ public interface IFlwDefinitionService { * 删除流程定义 * * @param ids 流程定义id - * @return 结果 + * @return 是否删除成功 */ boolean removeDef(List ids); diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwInstanceService.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwInstanceService.java index 814b89d0f..462af319d 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwInstanceService.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwInstanceService.java @@ -38,7 +38,7 @@ public interface IFlwInstanceService { TableDataInfo selectFinishInstanceList(FlowInstanceBo flowInstanceBo, PageQuery pageQuery); /** - * 根据业务id查询流程实例详细信息 + * 根据业务 id 查询流程实例详情,返回业务侧展示所需信息。 * * @param businessId 业务id * @return 结果 @@ -46,7 +46,7 @@ public interface IFlwInstanceService { FlowInstanceVo queryByBusinessId(Long businessId); /** - * 按照业务id查询流程实例 + * 按业务 id 查询底层流程实例实体。 * * @param businessId 业务id * @return 结果 @@ -54,7 +54,7 @@ public interface IFlwInstanceService { FlowInstance selectInstByBusinessId(String businessId); /** - * 按照实例id查询流程实例 + * 按实例 id 查询单个流程实例实体。 * * @param instanceId 实例id * @return 结果 @@ -62,7 +62,7 @@ public interface IFlwInstanceService { FlowInstance selectInstById(Long instanceId); /** - * 按照实例id查询流程实例 + * 按实例 id 集合批量查询流程实例。 * * @param instanceIds 实例id * @return 结果 @@ -111,7 +111,7 @@ public interface IFlwInstanceService { TableDataInfo selectCurrentInstanceList(FlowInstanceBo instanceBo, PageQuery pageQuery); /** - * 获取流程图,流程记录 + * 获取流程图及历史办理记录,供前端展示流转轨迹。 * * @param businessId 业务id * @return 结果 @@ -127,7 +127,7 @@ public interface IFlwInstanceService { void updateStatus(Long instanceId, String status); /** - * 获取流程变量 + * 获取指定实例当前持有的流程变量。 * * @param instanceId 实例id * @return 结果 @@ -135,7 +135,7 @@ public interface IFlwInstanceService { Map instanceVariable(Long instanceId); /** - * 更新流程变量 + * 更新流程变量,支持在运行中修正流程上下文数据。 * * @param bo 参数 * @return 结果 @@ -143,7 +143,7 @@ public interface IFlwInstanceService { boolean updateVariable(FlowVariableBo bo); /** - * 设置流程变量 + * 为指定流程实例设置变量集合。 * * @param instanceId 实例id * @param variable 流程变量 @@ -151,7 +151,7 @@ public interface IFlwInstanceService { void setVariable(Long instanceId, Map variable); /** - * 按任务id查询实例 + * 按任务 id 反查所属流程实例。 * * @param taskId 任务id * @return 结果 diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwSpelService.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwSpelService.java index 7c4453433..e9605c936 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwSpelService.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwSpelService.java @@ -12,7 +12,7 @@ import java.util.List; import java.util.Map; /** - * 流程spel表达式定义Service接口 + * 流程 SpEL 表达式定义服务接口,负责表达式规则管理与动态指派解析。 * * @author Michelle.Chung * @date 2025-07-04 @@ -20,7 +20,7 @@ import java.util.Map; public interface IFlwSpelService { /** - * 查询流程spel表达式定义 + * 根据主键查询流程 SpEL 表达式定义。 * * @param id 主键 * @return 流程spel表达式定义 @@ -37,7 +37,7 @@ public interface IFlwSpelService { TableDataInfo queryPageList(FlowSpelBo bo, PageQuery pageQuery); /** - * 查询符合条件的流程spel表达式定义列表 + * 查询符合条件的流程 SpEL 表达式定义列表。 * * @param bo 查询条件 * @return 流程spel表达式定义列表 @@ -45,7 +45,7 @@ public interface IFlwSpelService { List queryList(FlowSpelBo bo); /** - * 新增流程spel表达式定义 + * 新增流程 SpEL 表达式定义。 * * @param bo 流程spel表达式定义 * @return 是否新增成功 @@ -53,7 +53,7 @@ public interface IFlwSpelService { Boolean insertByBo(FlowSpelBo bo); /** - * 修改流程spel表达式定义 + * 修改流程 SpEL 表达式定义。 * * @param bo 流程spel表达式定义 * @return 是否修改成功 @@ -70,7 +70,7 @@ public interface IFlwSpelService { Boolean deleteWithValidByIds(Collection ids, Boolean isValid); /** - * 查询spel并返回任务指派的列表,支持分页 + * 按任务指派条件解析 SpEL,并返回可用办理人列表。 * * @param taskQuery 查询条件 * @return 办理人 diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwTaskService.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwTaskService.java index f9dc45e1d..2646f3291 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwTaskService.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwTaskService.java @@ -51,7 +51,7 @@ public interface IFlwTaskService { * * @param flowTaskBo 参数 * @param pageQuery 分页 - * @return 结果 + * @return 当前用户待办任务分页结果 */ TableDataInfo pageByTaskWait(FlowTaskBo flowTaskBo, PageQuery pageQuery); @@ -60,7 +60,7 @@ public interface IFlwTaskService { * * @param flowTaskBo 参数 * @param pageQuery 分页 - * @return 结果 + * @return 当前用户已办任务分页结果 */ TableDataInfo pageByTaskFinish(FlowTaskBo flowTaskBo, PageQuery pageQuery); @@ -69,7 +69,7 @@ public interface IFlwTaskService { * * @param flowTaskBo 参数 * @param pageQuery 分页 - * @return 结果 + * @return 当前租户待办任务分页结果 */ TableDataInfo pageByAllTaskWait(FlowTaskBo flowTaskBo, PageQuery pageQuery); @@ -78,7 +78,7 @@ public interface IFlwTaskService { * * @param flowTaskBo 参数 * @param pageQuery 分页 - * @return 结果 + * @return 当前租户已办任务分页结果 */ TableDataInfo pageByAllTaskFinish(FlowTaskBo flowTaskBo, PageQuery pageQuery); @@ -87,7 +87,7 @@ public interface IFlwTaskService { * * @param flowTaskBo 参数 * @param pageQuery 分页 - * @return 结果 + * @return 当前用户抄送分页结果 */ TableDataInfo pageByTaskCopy(FlowTaskBo flowTaskBo, PageQuery pageQuery); @@ -129,7 +129,7 @@ public interface IFlwTaskService { * 按照任务id查询任务 * * @param taskIdList 任务id - * @return 结果 + * @return 任务列表 */ List selectByIdList(List taskIdList); @@ -137,7 +137,7 @@ public interface IFlwTaskService { * 按照任务id查询任务 * * @param taskId 任务id - * @return 结果 + * @return 任务详情 */ FlowTaskVo selectById(Long taskId); @@ -145,7 +145,7 @@ public interface IFlwTaskService { * 获取下一节点信息 * * @param bo 参数 - * @return 结果 + * @return 下一节点列表 */ List getNextNodeList(FlowNextNodeBo bo); @@ -153,7 +153,7 @@ public interface IFlwTaskService { * 按照任务id查询任务 * * @param taskId 任务id - * @return 结果 + * @return 历史任务详情 */ FlowHisTask selectHisTaskById(Long taskId); @@ -161,7 +161,7 @@ public interface IFlwTaskService { * 按照实例id查询任务 * * @param instanceId 流程实例id - * @return 结果 + * @return 任务列表 */ List selectByInstId(Long instanceId); @@ -169,7 +169,7 @@ public interface IFlwTaskService { * 按照实例id查询任务 * * @param instanceIds 列表 - * @return 结果 + * @return 任务列表 */ List selectByInstIds(List instanceIds); @@ -194,7 +194,7 @@ public interface IFlwTaskService { * 获取当前任务的所有办理人 * * @param taskIds 任务id - * @return 结果 + * @return 办理人列表 */ List currentTaskAllUser(List taskIds); @@ -211,7 +211,7 @@ public interface IFlwTaskService { * 催办任务 * * @param bo 参数 - * @return 结果 + * @return 是否催办成功 */ boolean urgeTask(FlowUrgeTaskBo bo); } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/ITestLeaveService.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/ITestLeaveService.java index 748a2b174..a2f4ad831 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/ITestLeaveService.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/ITestLeaveService.java @@ -8,7 +8,7 @@ import org.dromara.workflow.domain.vo.TestLeaveVo; import java.util.List; /** - * 请假Service接口 + * 请假示例服务接口,定义请假单查询、维护与流程发起能力。 * * @author may * @date 2023-07-21 @@ -16,37 +16,59 @@ import java.util.List; public interface ITestLeaveService { /** - * 查询请假 + * 根据主键查询请假单。 + * + * @param id 主键 + * @return 请假详情 */ TestLeaveVo queryById(Long id); /** - * 查询请假列表 + * 分页查询请假列表。 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 请假分页数据 */ TableDataInfo queryPageList(TestLeaveBo bo, PageQuery pageQuery); /** - * 查询请假列表 + * 查询符合条件的请假列表。 + * + * @param bo 查询条件 + * @return 请假列表 */ List queryList(TestLeaveBo bo); /** - * 新增请假 + * 新增请假单。 + * + * @param bo 请假信息 + * @return 新增结果 */ TestLeaveVo insertByBo(TestLeaveBo bo); /** - * 提交请假并发起流程 + * 提交请假单并发起审批流程。 + * + * @param bo 请假信息 + * @return 提交结果 */ TestLeaveVo submitAndFlowStart(TestLeaveBo bo); /** - * 修改请假 + * 修改请假单。 + * + * @param bo 请假信息 + * @return 修改结果 */ TestLeaveVo updateByBo(TestLeaveBo bo); /** - * 校验并批量删除请假信息 + * 校验并批量删除请假信息。 + * + * @param ids 主键集合 + * @return 删除结果 */ Boolean deleteWithValidByIds(List ids); } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/CategoryNameTranslationImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/CategoryNameTranslationImpl.java index 883a967aa..27f265fce 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/CategoryNameTranslationImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/CategoryNameTranslationImpl.java @@ -24,6 +24,13 @@ public class CategoryNameTranslationImpl implements TranslationInterface private final IFlwCategoryService flwCategoryService; + /** + * 将流程分类 ID 翻译为分类名称。 + * + * @param key 分类 ID + * @param other 额外参数 + * @return 分类名称 + */ @Override public String translation(Object key, String other) { return flwCategoryService.selectCategoryNameById(Convert.toLong(key)); diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCategoryServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCategoryServiceImpl.java index 3515ebb03..8d066ccaa 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCategoryServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCategoryServiceImpl.java @@ -161,6 +161,12 @@ public class FlwCategoryServiceImpl implements IFlwCategoryService, CategoryServ .eq(FlowCategory::getParentId, categoryId)); } + /** + * 构建流程分类查询条件。 + * + * @param bo 查询条件 + * @return 查询条件包装器 + */ private LambdaQueryWrapper buildQueryWrapper(FlowCategoryBo bo) { LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); lqw.eq(FlowCategory::getDelFlag, SystemConstants.NORMAL); diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwChartExtServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwChartExtServiceImpl.java index cb82cbedf..d52923bc9 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwChartExtServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwChartExtServiceImpl.java @@ -260,7 +260,7 @@ public class FlwChartExtServiceImpl implements ChartExtService { * 根据流程实例ID获取历史任务列表 * * @param instanceId 流程实例ID - * @return 历史任务列表 + * @return 按更新时间倒序排列的审批历史任务列表 */ public List getHisTaskGroupedByNode(Long instanceId) { LambdaQueryWrapper wrapper = Wrappers.lambdaQuery(); diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java index 995eea42c..8984a752a 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwDefinitionServiceImpl.java @@ -93,6 +93,12 @@ public class FlwDefinitionServiceImpl implements IFlwDefinitionService { return new TableDataInfo<>(list, page.getTotal()); } + /** + * 构造流程定义分页查询条件。 + * + * @param flowDefinition 页面传入的流程定义筛选条件 + * @return 叠加流程编码、名称、分类以及排序条件后的查询包装器 + */ private LambdaQueryWrapper buildQueryWrapper(FlowDefinition flowDefinition) { LambdaQueryWrapper wrapper = Wrappers.lambdaQuery(); wrapper.like(StringUtils.isNotBlank(flowDefinition.getFlowCode()), FlowDefinition::getFlowCode, flowDefinition.getFlowCode()); @@ -109,6 +115,7 @@ public class FlwDefinitionServiceImpl implements IFlwDefinitionService { * 发布流程定义 * * @param id 流程定义id + * @return 发布成功返回 {@code true} */ @Override @Transactional(rollbackFor = Exception.class) @@ -132,7 +139,9 @@ public class FlwDefinitionServiceImpl implements IFlwDefinitionService { /** * 导入流程定义 * - * @param file 文件 + * @param file 流程定义 Json 文件 + * @param category 导入后绑定的流程分类 + * @return 导入成功返回 {@code true} */ @Override @Transactional(rollbackFor = Exception.class) @@ -152,7 +161,7 @@ public class FlwDefinitionServiceImpl implements IFlwDefinitionService { * 导出流程定义 * * @param id 流程定义id - * @param response 响应 + * @param response HTTP 响应对象,用于输出定义 Json 内容 * @throws IOException 异常 */ @Override @@ -171,6 +180,7 @@ public class FlwDefinitionServiceImpl implements IFlwDefinitionService { * 删除流程定义 * * @param ids 流程定义id + * @return 删除成功返回 {@code true} */ @Override @Transactional(rollbackFor = Exception.class) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java index 9ad81aba5..57cdf4b75 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java @@ -80,6 +80,7 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService { * * @param flowInstanceBo 流程实例 * @param pageQuery 分页 + * @return 当前符合条件的运行中流程实例分页结果 */ @Override public TableDataInfo selectRunningInstanceList(FlowInstanceBo flowInstanceBo, PageQuery pageQuery) { @@ -94,6 +95,7 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService { * * @param flowInstanceBo 流程实例 * @param pageQuery 分页 + * @return 当前符合条件的已结束流程实例分页结果 */ @Override public TableDataInfo selectFinishInstanceList(FlowInstanceBo flowInstanceBo, PageQuery pageQuery) { @@ -179,6 +181,7 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService { * 根据业务id查询流程实例 * * @param businessId 业务id + * @return 对应的流程实例,不存在时返回 {@code null} */ @Override public FlowInstance selectInstByBusinessId(String businessId) { @@ -189,6 +192,7 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService { * 按照实例id查询流程实例 * * @param instanceId 实例id + * @return 实例详情,不存在时返回 {@code null} */ @Override public FlowInstance selectInstById(Long instanceId) { @@ -199,6 +203,7 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService { * 按照实例id查询流程实例 * * @param instanceIds 实例id + * @return 实例列表 */ @Override public List selectInstListByIdList(List instanceIds) { @@ -209,6 +214,7 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService { * 按照业务id删除流程实例 * * @param businessIds 业务id + * @return 删除成功返回 {@code true},未找到实例时返回 {@code false} */ @Override @Transactional(rollbackFor = Exception.class) @@ -225,6 +231,7 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService { * 按照实例id删除流程实例 * * @param instanceIds 实例id + * @return 删除成功返回 {@code true},未找到实例时返回 {@code false} */ @Override @Transactional(rollbackFor = Exception.class) @@ -259,6 +266,7 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService { * 按照实例id删除已完成的流程实例 * * @param instanceIds 实例id + * @return 删除成功返回 {@code true},未找到实例时返回 {@code false} */ @Override @Transactional(rollbackFor = Exception.class) @@ -298,6 +306,7 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService { * 撤销流程 * * @param bo 参数 + * @return 撤销成功返回 {@code true} */ @Override @Transactional(rollbackFor = Exception.class) @@ -328,6 +337,7 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService { * * @param instanceBo 流程实例 * @param pageQuery 分页 + * @return 当前登录人发起的流程实例分页结果 */ @Override public TableDataInfo selectCurrentInstanceList(FlowInstanceBo instanceBo, PageQuery pageQuery) { @@ -341,6 +351,7 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService { * 获取流程图,流程记录 * * @param businessId 业务id + * @return 包含流程记录列表和实例 id 的结果集 */ @Override public Map flowHisTaskList(String businessId) { @@ -410,6 +421,7 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService { * 获取流程变量 * * @param instanceId 实例id + * @return 变量明细列表及原始变量字符串 */ @Override public Map instanceVariable(Long instanceId) { @@ -428,6 +440,7 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService { * 设置流程变量 * * @param bo 参数 + * @return 更新成功返回 {@code true} */ @Override @Transactional(rollbackFor = Exception.class) @@ -465,6 +478,7 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService { * 按任务id查询实例 * * @param taskId 任务id + * @return 任务关联的流程实例,运行中任务不存在时回退查询历史任务 */ @Override public FlowInstance selectByTaskId(Long taskId) { @@ -484,6 +498,7 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService { * 作废流程 * * @param bo 参数 + * @return 作废成功返回 {@code true} */ @Override @Transactional(rollbackFor = Exception.class) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java index 8e398692c..5f84b1b57 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwNodeExtServiceImpl.java @@ -275,6 +275,9 @@ public class FlwNodeExtServiceImpl implements NodeExtService, IFlwNodeExtService /** * 按逗号分割字符串,但保留 #{...} 表达式和字符串常量中的逗号 + * + * @param str 原始配置字符串 + * @return 智能分割后的片段列表 */ private static List spelSmartSplit(String str) { List result = new ArrayList<>(); @@ -347,6 +350,14 @@ public class FlwNodeExtServiceImpl implements NodeExtService, IFlwNodeExtService return result; } + /** + * 判断指定位置的下一个字符是否匹配预期字符。 + * + * @param str 原始字符串 + * @param index 当前索引 + * @param expected 期望匹配的字符 + * @return 匹配成功返回 {@code true} + */ private static boolean checkNext(String str, int index, char expected) { return index + 1 < str.length() && str.charAt(index + 1) == expected; } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwSpelServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwSpelServiceImpl.java index 090ac81db..2cfec7891 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwSpelServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwSpelServiceImpl.java @@ -80,6 +80,12 @@ public class FlwSpelServiceImpl implements IFlwSpelService { return baseMapper.selectVoList(lqw); } + /** + * 组装 SpEL 表达式列表查询条件。 + * + * @param bo 页面筛选参数 + * @return 包含排序和筛选条件的查询包装器 + */ private LambdaQueryWrapper buildQueryWrapper(FlowSpelBo bo) { Map params = bo.getParams(); LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); @@ -125,6 +131,8 @@ public class FlwSpelServiceImpl implements IFlwSpelService { /** * 保存前的数据校验 + * + * @param entity 待保存的 SpEL 表达式实体 */ private void validEntityBeforeSave(FlowSpel entity){ if (StringUtils.isNotBlank(entity.getViewSpel())) { diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskAssigneeServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskAssigneeServiceImpl.java index 8edccd03e..7d01bc403 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskAssigneeServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskAssigneeServiceImpl.java @@ -119,7 +119,11 @@ public class FlwTaskAssigneeServiceImpl implements IFlwTaskAssigneeService, Hand } /** - * 根据任务办理类型查询对应的数据 + * 根据办理人类型查询右侧候选数据。 + * + * @param type 办理人类型 + * @param taskQuery 查询条件 + * @return 办理人数据 */ private TaskAssigneeDTO fetchTaskAssigneeData(TaskAssigneeEnum type, TaskAssigneeBody taskQuery) { return switch (type) { @@ -132,7 +136,10 @@ public class FlwTaskAssigneeServiceImpl implements IFlwTaskAssigneeService, Hand } /** - * 根据任务办理类型获取部门数据 + * 根据办理人类型获取部门树数据源。 + * + * @param type 办理人类型 + * @return 部门列表 */ private List fetchDeptData(TaskAssigneeEnum type) { if (type.needsDeptService()) { @@ -159,7 +166,10 @@ public class FlwTaskAssigneeServiceImpl implements IFlwTaskAssigneeService, Hand } /** - * 构建部门树状结构 + * 构建设计器左侧部门树。 + * + * @param depts 部门列表 + * @return 部门树构建器 */ private TreeFunDto buildDeptTree(List depts) { return new TreeFunDto<>(depts) @@ -169,7 +179,11 @@ public class FlwTaskAssigneeServiceImpl implements IFlwTaskAssigneeService, Hand } /** - * 构建任务办理人数据 + * 构建设计器右侧办理人列表数据。 + * + * @param dto 办理人数据 + * @param type 办理人类型 + * @return 办理人列表构建器 */ private HandlerFunDto buildHandlerData(TaskAssigneeDTO dto, TaskAssigneeEnum type) { return new HandlerFunDto<>(dto.getList(), dto.getTotal()) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java index c7d3086d1..be53761fa 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java @@ -97,6 +97,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService { * 启动任务 * * @param startProcessBo 启动流程参数 + * @return 启动后的流程实例标识与首个任务标识 */ @Override @Transactional(rollbackFor = Exception.class) @@ -171,6 +172,9 @@ public class FlwTaskServiceImpl implements IFlwTaskService { /** * 生成业务编号,如果已有则直接返回已有值 + * + * @param bizExt 流程业务扩展信息 + * @return 可用于流程实例展示的业务编号 */ private String generateBusinessCode(FlowInstanceBizExt bizExt) { if (StringUtils.isBlank(bizExt.getBusinessCode())) { @@ -198,6 +202,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService { * 办理任务 * * @param completeTaskBo 办理任务参数 + * @return 办理成功返回 {@code true} */ @Override @Transactional(rollbackFor = Exception.class) @@ -294,6 +299,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService { * * @param assigneeMap 处理人 * @param variablesMap 变量 + * @return 追加流程状态前缀后的处理人变量映射 */ private Map setPopAssigneeMap(Map assigneeMap, Map variablesMap) { Map map = new HashMap<>(); @@ -367,6 +373,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService { * * @param flowTaskBo 参数 * @param pageQuery 分页 + * @return 当前登录人的待办任务分页结果 */ @Override public TableDataInfo pageByTaskWait(FlowTaskBo flowTaskBo, PageQuery pageQuery) { @@ -380,6 +387,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService { * * @param flowTaskBo 参数 * @param pageQuery 分页 + * @return 当前登录人的已办任务分页结果 */ @Override public TableDataInfo pageByTaskFinish(FlowTaskBo flowTaskBo, PageQuery pageQuery) { @@ -392,6 +400,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService { * * @param flowTaskBo 参数 * @param pageQuery 分页 + * @return 全部待办任务分页结果 */ @Override public TableDataInfo pageByAllTaskWait(FlowTaskBo flowTaskBo, PageQuery pageQuery) { @@ -423,6 +432,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService { * * @param flowTaskBo 参数 * @param pageQuery 分页 + * @return 全部已办任务分页结果 */ @Override public TableDataInfo pageByAllTaskFinish(FlowTaskBo flowTaskBo, PageQuery pageQuery) { @@ -435,6 +445,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService { * * @param flowTaskBo 参数 * @param pageQuery 分页 + * @return 当前登录人收到的抄送分页结果 */ @Override public TableDataInfo pageByTaskCopy(FlowTaskBo flowTaskBo, PageQuery pageQuery) { @@ -442,6 +453,12 @@ public class FlwTaskServiceImpl implements IFlwTaskService { return TableDataInfo.build(page); } + /** + * 解析查询条件中的分类及其子分类编码集合。 + * + * @param flowTaskBo 任务筛选条件 + * @return 分类 id 字符串集合,未指定分类时返回 {@code null} + */ private List categoryIds(FlowTaskBo flowTaskBo) { if (StringUtils.isNotBlank(flowTaskBo.getCategory())) { List categoryIds = flwCategoryMapper.selectCategoryIdsByParentId(Convert.toLong(flowTaskBo.getCategory())); @@ -454,6 +471,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService { * 驳回任务 * * @param bo 参数 + * @return 驳回成功返回 {@code true} */ @Override @Transactional(rollbackFor = Exception.class) @@ -497,6 +515,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService { * * @param taskId 任务id * @param nowNodeCode 当前节点 + * @return 当前任务允许驳回的节点列表 */ @Override public List getBackTaskNode(Long taskId, String nowNodeCode) { @@ -544,6 +563,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService { * 终止任务 * * @param bo 参数 + * @return 终止成功返回 {@code true} */ @Override @Transactional(rollbackFor = Exception.class) @@ -569,6 +589,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService { * 按照任务id查询任务 * * @param taskIdList 任务id + * @return 任务列表 */ @Override public List selectByIdList(List taskIdList) { @@ -579,6 +600,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService { * 按照任务id查询任务 * * @param taskId 任务id + * @return 任务详情视图,不存在时返回 {@code null} */ @Override public FlowTaskVo selectById(Long taskId) { @@ -631,6 +653,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService { * 获取下一节点信息 * * @param bo 参数 + * @return 当前任务在给定变量下可流转到的下一审批节点列表 */ @Override public List getNextNodeList(FlowNextNodeBo bo) { @@ -691,6 +714,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService { * 按照实例id查询任务 * * @param instanceId 流程实例id + * @return 运行中的任务列表 */ @Override public List selectByInstId(Long instanceId) { @@ -701,6 +725,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService { * 按照实例id查询任务 * * @param instanceIds 流程实例id + * @return 运行中的任务列表 */ @Override public List selectByInstIds(List instanceIds) { @@ -724,6 +749,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService { * * @param bo 参数 * @param taskOperation 操作类型,委派 delegateTask、转办 transferTask、加签 addSignature、减签 reductionSignature + * @return 操作成功返回 {@code true} */ @Override @Transactional(rollbackFor = Exception.class) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java index ec0be3ce4..54f5d4788 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java @@ -67,6 +67,9 @@ public class TestLeaveServiceImpl implements ITestLeaveService { /** * 查询请假 + * + * @param id 主键 + * @return 请假详情 */ @Override public TestLeaveVo queryById(Long id) { @@ -75,6 +78,10 @@ public class TestLeaveServiceImpl implements ITestLeaveService { /** * 查询请假列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 请假分页列表 */ @Override public TableDataInfo queryPageList(TestLeaveBo bo, PageQuery pageQuery) { @@ -85,6 +92,9 @@ public class TestLeaveServiceImpl implements ITestLeaveService { /** * 查询请假列表 + * + * @param bo 查询条件 + * @return 请假列表 */ @Override public List queryList(TestLeaveBo bo) { @@ -92,6 +102,12 @@ public class TestLeaveServiceImpl implements ITestLeaveService { return baseMapper.selectVoList(lqw); } + /** + * 构造请假列表查询条件。 + * + * @param bo 查询参数 + * @return 包含请假类型、天数区间和排序条件的查询包装器 + */ private LambdaQueryWrapper buildQueryWrapper(TestLeaveBo bo) { LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); lqw.eq(StringUtils.isNotBlank(bo.getLeaveType()), TestLeave::getLeaveType, bo.getLeaveType()); @@ -103,6 +119,9 @@ public class TestLeaveServiceImpl implements ITestLeaveService { /** * 新增请假 + * + * @param bo 请假业务对象 + * @return 新增后的请假详情 */ @Override public TestLeaveVo insertByBo(TestLeaveBo bo) { @@ -121,6 +140,12 @@ public class TestLeaveServiceImpl implements ITestLeaveService { return MapstructUtils.convert(add, TestLeaveVo.class); } + /** + * 提交请假并同步发起审批流程。 + * + * @param bo 请假业务对象 + * @return 已落库并完成流程提交的请假详情 + */ @Transactional(rollbackFor = Exception.class) @Override public TestLeaveVo submitAndFlowStart(TestLeaveBo bo) { @@ -154,6 +179,9 @@ public class TestLeaveServiceImpl implements ITestLeaveService { /** * 修改请假 + * + * @param bo 请假业务对象 + * @return 更新后的请假详情 */ @Override public TestLeaveVo updateByBo(TestLeaveBo bo) { @@ -164,6 +192,9 @@ public class TestLeaveServiceImpl implements ITestLeaveService { /** * 批量删除请假 + * + * @param ids 主键集合 + * @return 删除成功返回 {@code true} */ @Override @Transactional(rollbackFor = Exception.class) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java index c64e878a6..c6901a403 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java @@ -53,6 +53,7 @@ public class WorkflowServiceImpl implements WorkflowService { * 获取当前流程状态 * * @param taskId 任务id + * @return 任务关联流程实例的业务状态,未查询到时返回空字符串 */ @Override public String getBusinessStatusByTaskId(Long taskId) { @@ -64,6 +65,7 @@ public class WorkflowServiceImpl implements WorkflowService { * 获取当前流程状态 * * @param businessId 业务id + * @return 业务单据对应的流程状态,未查询到时返回空字符串 */ @Override public String getBusinessStatus(String businessId) { @@ -86,6 +88,7 @@ public class WorkflowServiceImpl implements WorkflowService { * 获取流程变量 * * @param instanceId 流程实例id + * @return 实例变量信息 */ @Override public Map instanceVariable(Long instanceId) { @@ -108,6 +111,7 @@ public class WorkflowServiceImpl implements WorkflowService { * 启动流程 * * @param startProcess 参数 + * @return 启动后的流程实例和首个任务信息 */ @Override public StartProcessReturnDTO startWorkFlow(StartProcessDTO startProcess) { @@ -120,6 +124,7 @@ public class WorkflowServiceImpl implements WorkflowService { * completeTask.getVariables().put("ignore", true); * * @param completeTask 参数 + * @return 办理成功返回 {@code true} */ @Override public boolean completeTask(CompleteTaskDTO completeTask) { @@ -131,6 +136,7 @@ public class WorkflowServiceImpl implements WorkflowService { * * @param taskId 任务ID * @param message 办理意见 + * @return 办理成功返回 {@code true} */ @Override public boolean completeTask(Long taskId, String message) { @@ -146,6 +152,7 @@ public class WorkflowServiceImpl implements WorkflowService { * 启动流程并办理第一个任务 * * @param startProcess 参数 + * @return 首节点办理成功返回 {@code true} */ @Override @Transactional(rollbackFor = Exception.class)