mirror of
https://github.com/dromara/RuoYi-Vue-Plus.git
synced 2025-10-14 22:13:43 +08:00
Compare commits
3 Commits
9256432532
...
bd88e27c82
Author | SHA1 | Date | |
---|---|---|---|
|
bd88e27c82 | ||
|
83b6addbba | ||
|
d51f3b9f4e |
@@ -5,6 +5,7 @@ import cn.hutool.core.convert.Convert;
|
|||||||
import cn.hutool.core.util.ObjectUtil;
|
import cn.hutool.core.util.ObjectUtil;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.ibatis.executor.parameter.ParameterHandler;
|
||||||
import org.apache.ibatis.executor.resultset.ResultSetHandler;
|
import org.apache.ibatis.executor.resultset.ResultSetHandler;
|
||||||
import org.apache.ibatis.plugin.*;
|
import org.apache.ibatis.plugin.*;
|
||||||
import org.dromara.common.core.utils.StringUtils;
|
import org.dromara.common.core.utils.StringUtils;
|
||||||
@@ -39,12 +40,23 @@ public class MybatisDecryptInterceptor implements Interceptor {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Object intercept(Invocation invocation) throws Throwable {
|
public Object intercept(Invocation invocation) throws Throwable {
|
||||||
|
// 开始进行参数解密
|
||||||
|
ResultSetHandler resultSetHandler = (ResultSetHandler) invocation.getTarget();
|
||||||
|
Field parameterHandlerField = resultSetHandler.getClass().getDeclaredField("parameterHandler");
|
||||||
|
parameterHandlerField.setAccessible(true);
|
||||||
|
Object target = parameterHandlerField.get(resultSetHandler);
|
||||||
|
if (target instanceof ParameterHandler parameterHandler) {
|
||||||
|
Object parameterObject = parameterHandler.getParameterObject();
|
||||||
|
if (ObjectUtil.isNotNull(parameterObject) && !(parameterObject instanceof String)) {
|
||||||
|
this.decryptHandler(parameterObject);
|
||||||
|
}
|
||||||
|
}
|
||||||
// 获取执行mysql执行结果
|
// 获取执行mysql执行结果
|
||||||
Object result = invocation.proceed();
|
Object result = invocation.proceed();
|
||||||
if (result == null) {
|
if (result == null) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
decryptHandler(result);
|
this.decryptHandler(result);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -2,6 +2,7 @@ package org.dromara.system.service.impl;
|
|||||||
|
|
||||||
import cn.hutool.core.convert.Convert;
|
import cn.hutool.core.convert.Convert;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import org.dromara.common.core.constant.SystemConstants;
|
||||||
import org.dromara.common.core.domain.dto.TaskAssigneeDTO;
|
import org.dromara.common.core.domain.dto.TaskAssigneeDTO;
|
||||||
import org.dromara.common.core.domain.model.TaskAssigneeBody;
|
import org.dromara.common.core.domain.model.TaskAssigneeBody;
|
||||||
import org.dromara.common.core.service.TaskAssigneeService;
|
import org.dromara.common.core.service.TaskAssigneeService;
|
||||||
@@ -51,6 +52,7 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService {
|
|||||||
SysRoleBo bo = new SysRoleBo();
|
SysRoleBo bo = new SysRoleBo();
|
||||||
bo.setRoleKey(taskQuery.getHandlerCode());
|
bo.setRoleKey(taskQuery.getHandlerCode());
|
||||||
bo.setRoleName(taskQuery.getHandlerName());
|
bo.setRoleName(taskQuery.getHandlerName());
|
||||||
|
bo.setStatus(SystemConstants.NORMAL);
|
||||||
Map<String, Object> params = bo.getParams();
|
Map<String, Object> params = bo.getParams();
|
||||||
params.put("beginTime", taskQuery.getBeginTime());
|
params.put("beginTime", taskQuery.getBeginTime());
|
||||||
params.put("endTime", taskQuery.getEndTime());
|
params.put("endTime", taskQuery.getEndTime());
|
||||||
@@ -73,6 +75,7 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService {
|
|||||||
SysPostBo bo = new SysPostBo();
|
SysPostBo bo = new SysPostBo();
|
||||||
bo.setPostCategory(taskQuery.getHandlerCode());
|
bo.setPostCategory(taskQuery.getHandlerCode());
|
||||||
bo.setPostName(taskQuery.getHandlerName());
|
bo.setPostName(taskQuery.getHandlerName());
|
||||||
|
bo.setStatus(SystemConstants.NORMAL);
|
||||||
Map<String, Object> params = bo.getParams();
|
Map<String, Object> params = bo.getParams();
|
||||||
params.put("beginTime", taskQuery.getBeginTime());
|
params.put("beginTime", taskQuery.getBeginTime());
|
||||||
params.put("endTime", taskQuery.getEndTime());
|
params.put("endTime", taskQuery.getEndTime());
|
||||||
@@ -96,6 +99,7 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService {
|
|||||||
SysDeptBo bo = new SysDeptBo();
|
SysDeptBo bo = new SysDeptBo();
|
||||||
bo.setDeptCategory(taskQuery.getHandlerCode());
|
bo.setDeptCategory(taskQuery.getHandlerCode());
|
||||||
bo.setDeptName(taskQuery.getHandlerName());
|
bo.setDeptName(taskQuery.getHandlerName());
|
||||||
|
bo.setStatus(SystemConstants.NORMAL);
|
||||||
Map<String, Object> params = bo.getParams();
|
Map<String, Object> params = bo.getParams();
|
||||||
params.put("beginTime", taskQuery.getBeginTime());
|
params.put("beginTime", taskQuery.getBeginTime());
|
||||||
params.put("endTime", taskQuery.getEndTime());
|
params.put("endTime", taskQuery.getEndTime());
|
||||||
@@ -107,7 +111,6 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService {
|
|||||||
return new TaskAssigneeDTO(page.getTotal(), handlers);
|
return new TaskAssigneeDTO(page.getTotal(), handlers);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询用户并返回任务指派的列表,支持分页
|
* 查询用户并返回任务指派的列表,支持分页
|
||||||
*
|
*
|
||||||
@@ -120,6 +123,7 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService {
|
|||||||
SysUserBo bo = new SysUserBo();
|
SysUserBo bo = new SysUserBo();
|
||||||
bo.setUserName(taskQuery.getHandlerCode());
|
bo.setUserName(taskQuery.getHandlerCode());
|
||||||
bo.setNickName(taskQuery.getHandlerName());
|
bo.setNickName(taskQuery.getHandlerName());
|
||||||
|
bo.setStatus(SystemConstants.NORMAL);
|
||||||
Map<String, Object> params = bo.getParams();
|
Map<String, Object> params = bo.getParams();
|
||||||
params.put("beginTime", taskQuery.getBeginTime());
|
params.put("beginTime", taskQuery.getBeginTime());
|
||||||
params.put("endTime", taskQuery.getEndTime());
|
params.put("endTime", taskQuery.getEndTime());
|
||||||
|
@@ -233,7 +233,7 @@ public class FlwTaskAssigneeServiceImpl implements IFlwTaskAssigneeService, Hand
|
|||||||
}
|
}
|
||||||
// 跳过以 $ 或 # 开头的字符串
|
// 跳过以 $ 或 # 开头的字符串
|
||||||
if (StringUtils.startsWith(storageId, "$") || StringUtils.startsWith(storageId, "#")) {
|
if (StringUtils.startsWith(storageId, "$") || StringUtils.startsWith(storageId, "#")) {
|
||||||
log.info("跳过 storageId 解析,检测到内置变量表达式:{}", storageId);
|
log.debug("跳过 storageId 解析,检测到内置变量表达式:{}", storageId);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
|
Reference in New Issue
Block a user