chore(bpm): 更新门户待办模块作者信息并优化HTTP响应处理

- 将多个类中的@author标记从shelly更新为yangchenjj
- 在PortalRequest类中引入HttpResponse并使用try-with-resources优化HTTP请求执行
- 确保所有HTTP请求的响应体正确解析并返回PortalTodoResponseDTO对象
- 修复潜在的资源泄漏问题,提升代码健壮性
This commit is contained in:
2025-12-09 09:32:13 +08:00
parent 21debd7f40
commit d85c2ce315
17 changed files with 45 additions and 26 deletions

View File

@@ -16,7 +16,7 @@ import java.util.stream.Collectors;
/** /**
* 描述生成最后执行SQL * 描述生成最后执行SQL
* *
* @author shelly * @author yangchenjj
*/ */
public class SqlUtilsTest extends BaseMockitoUnitTest { public class SqlUtilsTest extends BaseMockitoUnitTest {

View File

@@ -41,7 +41,7 @@ import static com.jeelowcode.tool.framework.common.util.json.JsonUtils.toJsonStr
/** /**
* 监听一些事件推送到门户待办模块 * 监听一些事件推送到门户待办模块
* *
* @author shelly * @author yangchenjj
*/ */
@Slf4j @Slf4j
@Component @Component

View File

@@ -10,7 +10,7 @@ import javax.annotation.Resource;
/** /**
* 门户待办配置 * 门户待办配置
* *
* @author shelly * @author yangchenjj
*/ */
@Configuration(proxyBeanMethods = false) @Configuration(proxyBeanMethods = false)
@EnableConfigurationProperties(PortalTodoProperties.class) @EnableConfigurationProperties(PortalTodoProperties.class)

View File

@@ -6,7 +6,7 @@ import org.springframework.boot.context.properties.ConfigurationProperties;
/** /**
* 门户待办配置 * 门户待办配置
* *
* @author shelly * @author yangchenjj
*/ */
@Data @Data
@ConfigurationProperties(prefix = "jeelowcode.portal.todo") @ConfigurationProperties(prefix = "jeelowcode.portal.todo")

View File

@@ -2,6 +2,7 @@ package com.jeelowcode.service.bpm.config.framework.portal.core;
import cn.hutool.http.Header; import cn.hutool.http.Header;
import cn.hutool.http.HttpRequest; import cn.hutool.http.HttpRequest;
import cn.hutool.http.HttpResponse;
import com.jeelowcode.framework.plus.core.toolkit.StringUtils; import com.jeelowcode.framework.plus.core.toolkit.StringUtils;
import com.jeelowcode.service.bpm.config.framework.portal.core.dto.*; import com.jeelowcode.service.bpm.config.framework.portal.core.dto.*;
import com.jeelowcode.tool.framework.common.util.json.JsonUtils; import com.jeelowcode.tool.framework.common.util.json.JsonUtils;
@@ -14,7 +15,7 @@ import static com.jeelowcode.service.bpm.config.framework.portal.core.PortalRequ
/** /**
* 描述:请求门户信息 * 描述:请求门户信息
* *
* @author shelly * @author yangchenjj
*/ */
@Slf4j @Slf4j
public class PortalRequest { public class PortalRequest {
@@ -85,7 +86,9 @@ public class PortalRequest {
public PortalTodoResponseDTO receiveTodoRequest(ReceiveTodoRequestDTO requestDTO) { public PortalTodoResponseDTO receiveTodoRequest(ReceiveTodoRequestDTO requestDTO) {
requestDTO.setSysCode(this.sysCode); requestDTO.setSysCode(this.sysCode);
HttpRequest httpRequest = initHttpRequest(getRequestUrl(PATH_RECEIVE_TODO_REQUEST_BY_JSON), requestDTO); HttpRequest httpRequest = initHttpRequest(getRequestUrl(PATH_RECEIVE_TODO_REQUEST_BY_JSON), requestDTO);
return JsonUtils.parseObject(httpRequest.execute().body(), PortalTodoResponseDTO.class); try (HttpResponse httpResponse = httpRequest.execute()) {
return JsonUtils.parseObject(httpResponse.body(), PortalTodoResponseDTO.class);
}
} }
/** /**
@@ -94,7 +97,9 @@ public class PortalRequest {
public PortalTodoResponseDTO receiveCCRequest(ReceiveCCRequestDTO requestDTO) { public PortalTodoResponseDTO receiveCCRequest(ReceiveCCRequestDTO requestDTO) {
requestDTO.setSysCode(this.sysCode); requestDTO.setSysCode(this.sysCode);
HttpRequest httpRequest = initHttpRequest(getRequestUrl(PATH_RECEIVE_CC_REQUEST_BY_JSON), requestDTO); HttpRequest httpRequest = initHttpRequest(getRequestUrl(PATH_RECEIVE_CC_REQUEST_BY_JSON), requestDTO);
return JsonUtils.parseObject(httpRequest.execute().body(), PortalTodoResponseDTO.class); try (HttpResponse httpResponse = httpRequest.execute()) {
return JsonUtils.parseObject(httpResponse.body(), PortalTodoResponseDTO.class);
}
} }
/** /**
@@ -103,7 +108,9 @@ public class PortalRequest {
public PortalTodoResponseDTO processDoneRequest(ProcessDoneRequestDTO requestDTO) { public PortalTodoResponseDTO processDoneRequest(ProcessDoneRequestDTO requestDTO) {
requestDTO.setSysCode(this.sysCode); requestDTO.setSysCode(this.sysCode);
HttpRequest httpRequest = initHttpRequest(getRequestUrl(PATH_PROCESS_DONE_REQUEST_BY_JSON), requestDTO); HttpRequest httpRequest = initHttpRequest(getRequestUrl(PATH_PROCESS_DONE_REQUEST_BY_JSON), requestDTO);
return JsonUtils.parseObject(httpRequest.execute().body(), PortalTodoResponseDTO.class); try (HttpResponse httpResponse = httpRequest.execute()) {
return JsonUtils.parseObject(httpResponse.body(), PortalTodoResponseDTO.class);
}
} }
/** /**
@@ -112,7 +119,9 @@ public class PortalRequest {
public PortalTodoResponseDTO processOverRequest(ProcessOverRequestDTO requestDTO) { public PortalTodoResponseDTO processOverRequest(ProcessOverRequestDTO requestDTO) {
requestDTO.setSysCode(this.sysCode); requestDTO.setSysCode(this.sysCode);
HttpRequest httpRequest = initHttpRequest(getRequestUrl(PATH_PROCESS_OVER_REQUEST_BY_JSON), requestDTO); HttpRequest httpRequest = initHttpRequest(getRequestUrl(PATH_PROCESS_OVER_REQUEST_BY_JSON), requestDTO);
return JsonUtils.parseObject(httpRequest.execute().body(), PortalTodoResponseDTO.class); try (HttpResponse httpResponse = httpRequest.execute()) {
return JsonUtils.parseObject(httpResponse.body(), PortalTodoResponseDTO.class);
}
} }
/** /**
@@ -121,7 +130,9 @@ public class PortalRequest {
public PortalTodoResponseDTO receiveRequestInfo(ReceiveRequestInfoDTO requestDTO) { public PortalTodoResponseDTO receiveRequestInfo(ReceiveRequestInfoDTO requestDTO) {
requestDTO.setSysCode(this.sysCode); requestDTO.setSysCode(this.sysCode);
HttpRequest httpRequest = initHttpRequest(getRequestUrl(PATH_RECEIVE_REQUEST_INFO_BY_JSON), requestDTO); HttpRequest httpRequest = initHttpRequest(getRequestUrl(PATH_RECEIVE_REQUEST_INFO_BY_JSON), requestDTO);
return JsonUtils.parseObject(httpRequest.execute().body(), PortalTodoResponseDTO.class); try (HttpResponse httpResponse = httpRequest.execute()) {
return JsonUtils.parseObject(httpResponse.body(), PortalTodoResponseDTO.class);
}
} }
/** /**
@@ -130,7 +141,9 @@ public class PortalRequest {
public PortalTodoResponseDTO deleteRequestInfo(DeleteRequestInfoDTO requestDTO) { public PortalTodoResponseDTO deleteRequestInfo(DeleteRequestInfoDTO requestDTO) {
requestDTO.setSysCode(this.sysCode); requestDTO.setSysCode(this.sysCode);
HttpRequest httpRequest = initHttpRequest(getRequestUrl(PATH_DELETE_REQUEST_INFO_BY_JSON), requestDTO); HttpRequest httpRequest = initHttpRequest(getRequestUrl(PATH_DELETE_REQUEST_INFO_BY_JSON), requestDTO);
return JsonUtils.parseObject(httpRequest.execute().body(), PortalTodoResponseDTO.class); try (HttpResponse httpResponse = httpRequest.execute()) {
return JsonUtils.parseObject(httpResponse.body(), PortalTodoResponseDTO.class);
}
} }
/** /**
@@ -139,7 +152,9 @@ public class PortalRequest {
public PortalTodoResponseDTO deleteUserRequestInfo(DeleteUserRequestInfoDTO requestDTO) { public PortalTodoResponseDTO deleteUserRequestInfo(DeleteUserRequestInfoDTO requestDTO) {
requestDTO.setSysCode(this.sysCode); requestDTO.setSysCode(this.sysCode);
HttpRequest httpRequest = initHttpRequest(getRequestUrl(PATH_DELETE_USER_REQUEST_INFO_BY_JSON), requestDTO); HttpRequest httpRequest = initHttpRequest(getRequestUrl(PATH_DELETE_USER_REQUEST_INFO_BY_JSON), requestDTO);
return JsonUtils.parseObject(httpRequest.execute().body(), PortalTodoResponseDTO.class); try (HttpResponse httpResponse = httpRequest.execute()) {
return JsonUtils.parseObject(httpResponse.body(), PortalTodoResponseDTO.class);
}
} }
/** /**
@@ -148,7 +163,9 @@ public class PortalRequest {
public PortalTodoResponseDTO batchDeleteUserRequestInfo(List<DeleteUserRequestInfoDTO> requestDTO) { public PortalTodoResponseDTO batchDeleteUserRequestInfo(List<DeleteUserRequestInfoDTO> requestDTO) {
requestDTO.forEach(request -> request.setSysCode(this.sysCode)); requestDTO.forEach(request -> request.setSysCode(this.sysCode));
HttpRequest httpRequest = initHttpRequest(getRequestUrl(PATH_BATCH_DELETE_USER_REQUEST_INFO_BY_JSON), requestDTO); HttpRequest httpRequest = initHttpRequest(getRequestUrl(PATH_BATCH_DELETE_USER_REQUEST_INFO_BY_JSON), requestDTO);
return JsonUtils.parseObject(httpRequest.execute().body(), PortalTodoResponseDTO.class); try (HttpResponse httpResponse = httpRequest.execute()) {
return JsonUtils.parseObject(httpResponse.body(), PortalTodoResponseDTO.class);
}
} }
/** /**
@@ -157,7 +174,9 @@ public class PortalRequest {
public PortalTodoResponseDTO batchReceiveRequestInfo(List<ReceiveRequestInfoDTO> requestDTO) { public PortalTodoResponseDTO batchReceiveRequestInfo(List<ReceiveRequestInfoDTO> requestDTO) {
requestDTO.forEach(request -> request.setSysCode(this.sysCode)); requestDTO.forEach(request -> request.setSysCode(this.sysCode));
HttpRequest httpRequest = initHttpRequest(getRequestUrl(PATH_BATCH_RECEIVE_REQUEST_INFO_BY_JSON), requestDTO); HttpRequest httpRequest = initHttpRequest(getRequestUrl(PATH_BATCH_RECEIVE_REQUEST_INFO_BY_JSON), requestDTO);
return JsonUtils.parseObject(httpRequest.execute().body(), PortalTodoResponseDTO.class); try (HttpResponse httpResponse = httpRequest.execute()) {
return JsonUtils.parseObject(httpResponse.body(), PortalTodoResponseDTO.class);
}
} }
/** /**

View File

@@ -3,7 +3,7 @@ package com.jeelowcode.service.bpm.config.framework.portal.core;
/** /**
* 门户请求常量 * 门户请求常量
* *
* @author shelly * @author yangchenjj
*/ */
public interface PortalRequestConstant { public interface PortalRequestConstant {

View File

@@ -6,7 +6,7 @@ import lombok.Data;
/** /**
* 描述:删除异构系统所有待办流程请求参数 * 描述:删除异构系统所有待办流程请求参数
* *
* @author shelly * @author yangchenjj
*/ */
@Data @Data
public class DeleteRequestInfoDTO { public class DeleteRequestInfoDTO {

View File

@@ -6,7 +6,7 @@ import lombok.Data;
/** /**
* 描述:删除用户待办流程请求参数 * 描述:删除用户待办流程请求参数
* *
* @author shelly * @author yangchenjj
*/ */
@Data @Data
public class DeleteUserRequestInfoDTO { public class DeleteUserRequestInfoDTO {

View File

@@ -7,7 +7,7 @@ import lombok.Data;
/** /**
* 描述:门户待办响应信息 * 描述:门户待办响应信息
* *
* @author shelly * @author yangchenjj
*/ */
@Data @Data
@JsonInclude(JsonInclude.Include.NON_NULL) @JsonInclude(JsonInclude.Include.NON_NULL)

View File

@@ -8,7 +8,7 @@ import java.time.LocalDateTime;
/** /**
* 描述:流程处理完成请求参数 * 描述:流程处理完成请求参数
* *
* @author shelly * @author yangchenjj
*/ */
@Data @Data
public class ProcessDoneRequestDTO { public class ProcessDoneRequestDTO {

View File

@@ -6,7 +6,7 @@ import lombok.Data;
/** /**
* 描述:处理办结流程请求参数 * 描述:处理办结流程请求参数
* *
* @author shelly * @author yangchenjj
*/ */
@Data @Data
public class ProcessOverRequestDTO { public class ProcessOverRequestDTO {

View File

@@ -13,7 +13,7 @@ import static com.jeelowcode.tool.framework.common.util.date.DateUtils.TIME_ZONE
/** /**
* 描述:接收异构系统流程请求参数 * 描述:接收异构系统流程请求参数
* *
* @author shelly * @author yangchenjj
*/ */
@Data @Data
@JsonInclude(JsonInclude.Include.NON_NULL) @JsonInclude(JsonInclude.Include.NON_NULL)

View File

@@ -8,7 +8,7 @@ import java.time.LocalDateTime;
/** /**
* 描述:接收待办流程请求参数 * 描述:接收待办流程请求参数
* *
* @author shelly * @author yangchenjj
*/ */
@Data @Data
public class ReceiveTodoRequestDTO { public class ReceiveTodoRequestDTO {

View File

@@ -33,7 +33,7 @@ public class SocialUserRespDTO {
private Long userId; private Long userId;
/** /**
* 原始用户数据,一般是 JSON 格式 add by shelly at 2025/09/23 * 原始用户数据,一般是 JSON 格式 add by yangchenjj at 2025/09/23
*/ */
private String rawUserInfo; private String rawUserInfo;

View File

@@ -7,7 +7,7 @@ import com.xingyuv.jushauth.request.AuthDefaultRequest;
/** /**
* 中国星网办公网认证源 * 中国星网办公网认证源
* <p> * <p>
* author: shelly chan * author: yangchenjj
* date: 2025/09/19 * date: 2025/09/19
*/ */
public enum ChinaSatelliteAuthSource implements AuthSource { public enum ChinaSatelliteAuthSource implements AuthSource {

View File

@@ -393,7 +393,7 @@ public class AdminUserServiceImpl implements IAdminUserService {
List<Long> userIds = userDeptMapper.selectList(depWrapper).stream().map(t -> t.getUserId()).collect(Collectors.toList()); List<Long> userIds = userDeptMapper.selectList(depWrapper).stream().map(t -> t.getUserId()).collect(Collectors.toList());
if (CollectionUtil.isEmpty(userIds)) { if (CollectionUtil.isEmpty(userIds)) {
// 如果查不到数据返回一个空结果集避免NPE // 如果查不到数据返回一个空结果集避免NPE
// modify by shelly on 2025-10-16 // modify by yangchenjj on 2025-10-16
return new PageResult<>(Collections.emptyList(), 0L); return new PageResult<>(Collections.emptyList(), 0L);
} }

View File

@@ -8,7 +8,7 @@ import java.security.cert.X509Certificate;
/** /**
* Description: SSH工具类 * Description: SSH工具类
* Author: Shelly Chan * Author: yangchenjj
* Date: 2023/1/31 10:05 * Date: 2023/1/31 10:05
*/ */
public class SshUtils { public class SshUtils {