mirror of
				https://github.com/dromara/RuoYi-Vue-Plus.git
				synced 2025-11-04 08:13:44 +08:00 
			
		
		
		
	update 全局替换为 Convert.toStr,优化 null 字符串处理
This commit is contained in:
		@@ -1,5 +1,6 @@
 | 
			
		||||
package org.dromara.common.core.domain.dto;
 | 
			
		||||
 | 
			
		||||
import cn.hutool.core.convert.Convert;
 | 
			
		||||
import lombok.AllArgsConstructor;
 | 
			
		||||
import lombok.Data;
 | 
			
		||||
import lombok.NoArgsConstructor;
 | 
			
		||||
@@ -62,7 +63,7 @@ public class TaskAssigneeDTO implements Serializable {
 | 
			
		||||
                storageId.apply(item),
 | 
			
		||||
                handlerCode.apply(item),
 | 
			
		||||
                handlerName.apply(item),
 | 
			
		||||
                groupName != null ? String.valueOf(groupName.apply(item)) : null,
 | 
			
		||||
                groupName != null ? Convert.toStr(groupName.apply(item)) : null,
 | 
			
		||||
                createTimeMapper.apply(item)
 | 
			
		||||
            )).collect(Collectors.toList());
 | 
			
		||||
    }
 | 
			
		||||
 
 | 
			
		||||
@@ -260,13 +260,13 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils {
 | 
			
		||||
        if (s != null) {
 | 
			
		||||
            final int len = s.length();
 | 
			
		||||
            if (s.length() <= size) {
 | 
			
		||||
                sb.append(String.valueOf(c).repeat(size - len));
 | 
			
		||||
                sb.append(Convert.toStr(c).repeat(size - len));
 | 
			
		||||
                sb.append(s);
 | 
			
		||||
            } else {
 | 
			
		||||
                return s.substring(len - size, len);
 | 
			
		||||
            }
 | 
			
		||||
        } else {
 | 
			
		||||
            sb.append(String.valueOf(c).repeat(Math.max(0, size)));
 | 
			
		||||
            sb.append(Convert.toStr(c).repeat(Math.max(0, size)));
 | 
			
		||||
        }
 | 
			
		||||
        return sb.toString();
 | 
			
		||||
    }
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,6 @@
 | 
			
		||||
package org.dromara.common.excel.core;
 | 
			
		||||
 | 
			
		||||
import cn.hutool.core.convert.Convert;
 | 
			
		||||
import cn.hutool.core.util.StrUtil;
 | 
			
		||||
import lombok.AllArgsConstructor;
 | 
			
		||||
import lombok.Data;
 | 
			
		||||
@@ -65,7 +66,7 @@ public class DropDownOptions {
 | 
			
		||||
        StringBuilder stringBuffer = new StringBuilder();
 | 
			
		||||
        String regex = "^[\\S\\d\\u4e00-\\u9fa5]+$";
 | 
			
		||||
        for (int i = 0; i < vars.length; i++) {
 | 
			
		||||
            String var = StrUtil.trimToEmpty(String.valueOf(vars[i]));
 | 
			
		||||
            String var = StrUtil.trimToEmpty(Convert.toStr(vars[i]));
 | 
			
		||||
            if (!var.matches(regex)) {
 | 
			
		||||
                throw new ServiceException("选项数据不符合规则,仅允许使用中英文字符以及数字");
 | 
			
		||||
            }
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,6 @@
 | 
			
		||||
package org.dromara.common.redis.utils;
 | 
			
		||||
 | 
			
		||||
import cn.hutool.core.convert.Convert;
 | 
			
		||||
import cn.hutool.core.date.DatePattern;
 | 
			
		||||
import lombok.AccessLevel;
 | 
			
		||||
import lombok.NoArgsConstructor;
 | 
			
		||||
@@ -119,7 +120,7 @@ public class SequenceUtils {
 | 
			
		||||
     * @return 唯一id
 | 
			
		||||
     */
 | 
			
		||||
    public static String getNextIdString(String key, Duration expireTime, long initValue, long stepValue) {
 | 
			
		||||
        return String.valueOf(getNextId(key, expireTime, initValue, stepValue));
 | 
			
		||||
        return Convert.toStr(getNextId(key, expireTime, initValue, stepValue));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
@@ -130,7 +131,7 @@ public class SequenceUtils {
 | 
			
		||||
     * @return 唯一id
 | 
			
		||||
     */
 | 
			
		||||
    public static String getNextIdString(String key, Duration expireTime) {
 | 
			
		||||
        return String.valueOf(getNextId(key, expireTime));
 | 
			
		||||
        return Convert.toStr(getNextId(key, expireTime));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,6 @@
 | 
			
		||||
package org.dromara.common.sensitive.core;
 | 
			
		||||
 | 
			
		||||
import cn.hutool.core.convert.Convert;
 | 
			
		||||
import cn.hutool.core.util.DesensitizedUtil;
 | 
			
		||||
import lombok.AllArgsConstructor;
 | 
			
		||||
 | 
			
		||||
@@ -52,7 +53,7 @@ public enum SensitiveStrategy {
 | 
			
		||||
    /**
 | 
			
		||||
     * 用户ID
 | 
			
		||||
     */
 | 
			
		||||
    USER_ID(s -> String.valueOf(DesensitizedUtil.userId())),
 | 
			
		||||
    USER_ID(s -> Convert.toStr(DesensitizedUtil.userId())),
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 密码
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,6 @@
 | 
			
		||||
package org.dromara.job.snailjob;
 | 
			
		||||
 | 
			
		||||
import cn.hutool.core.convert.Convert;
 | 
			
		||||
import com.aizuda.snailjob.client.job.core.annotation.JobExecutor;
 | 
			
		||||
import com.aizuda.snailjob.client.job.core.dto.JobArgs;
 | 
			
		||||
import com.aizuda.snailjob.client.model.ExecuteResult;
 | 
			
		||||
@@ -17,7 +18,7 @@ import org.springframework.stereotype.Component;
 | 
			
		||||
public class TestStaticShardingJob {
 | 
			
		||||
 | 
			
		||||
    public ExecuteResult jobExecute(JobArgs jobArgs) {
 | 
			
		||||
        String jobParams = String.valueOf(jobArgs.getJobParams());
 | 
			
		||||
        String jobParams = Convert.toStr(jobArgs.getJobParams());
 | 
			
		||||
        SnailJobLog.LOCAL.info("开始执行分片任务,参数:{}", jobParams);
 | 
			
		||||
        // 获得jobArgs 中传入的开始id和结束id
 | 
			
		||||
        String[] split = jobParams.split(",");
 | 
			
		||||
 
 | 
			
		||||
@@ -59,7 +59,7 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService {
 | 
			
		||||
        TableDataInfo<SysRoleVo> page = roleService.selectPageRoleList(bo, pageQuery);
 | 
			
		||||
        // 使用封装的字段映射方法进行转换
 | 
			
		||||
        List<TaskAssigneeDTO.TaskHandler> handlers = TaskAssigneeDTO.convertToHandlerList(page.getRows(),
 | 
			
		||||
            item -> String.valueOf(item.getRoleId()), SysRoleVo::getRoleKey, SysRoleVo::getRoleName, null, SysRoleVo::getCreateTime);
 | 
			
		||||
            item -> Convert.toStr(item.getRoleId()), SysRoleVo::getRoleKey, SysRoleVo::getRoleName, null, SysRoleVo::getCreateTime);
 | 
			
		||||
        return new TaskAssigneeDTO(page.getTotal(), handlers);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
@@ -83,7 +83,7 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService {
 | 
			
		||||
        TableDataInfo<SysPostVo> page = postService.selectPagePostList(bo, pageQuery);
 | 
			
		||||
        // 使用封装的字段映射方法进行转换
 | 
			
		||||
        List<TaskAssigneeDTO.TaskHandler> handlers = TaskAssigneeDTO.convertToHandlerList(page.getRows(),
 | 
			
		||||
            p -> String.valueOf(p.getPostId()), SysPostVo::getPostCategory, SysPostVo::getPostName, SysPostVo::getDeptId, SysPostVo::getCreateTime);
 | 
			
		||||
            p -> Convert.toStr(p.getPostId()), SysPostVo::getPostCategory, SysPostVo::getPostName, SysPostVo::getDeptId, SysPostVo::getCreateTime);
 | 
			
		||||
        return new TaskAssigneeDTO(page.getTotal(), handlers);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
@@ -107,7 +107,7 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService {
 | 
			
		||||
        TableDataInfo<SysDeptVo> page = deptService.selectPageDeptList(bo, pageQuery);
 | 
			
		||||
        // 使用封装的字段映射方法进行转换
 | 
			
		||||
        List<TaskAssigneeDTO.TaskHandler> handlers = TaskAssigneeDTO.convertToHandlerList(page.getRows(),
 | 
			
		||||
            d -> String.valueOf(d.getDeptId()), SysDeptVo::getDeptCategory, SysDeptVo::getDeptName, SysDeptVo::getParentId, SysDeptVo::getCreateTime);
 | 
			
		||||
            d -> Convert.toStr(d.getDeptId()), SysDeptVo::getDeptCategory, SysDeptVo::getDeptName, SysDeptVo::getParentId, SysDeptVo::getCreateTime);
 | 
			
		||||
        return new TaskAssigneeDTO(page.getTotal(), handlers);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
@@ -131,7 +131,7 @@ public class SysTaskAssigneeServiceImpl implements TaskAssigneeService {
 | 
			
		||||
        TableDataInfo<SysUserVo> page = userService.selectPageUserList(bo, pageQuery);
 | 
			
		||||
        // 使用封装的字段映射方法进行转换
 | 
			
		||||
        List<TaskAssigneeDTO.TaskHandler> handlers = TaskAssigneeDTO.convertToHandlerList(page.getRows(),
 | 
			
		||||
            u -> String.valueOf(u.getUserId()), SysUserVo::getUserName, SysUserVo::getNickName, SysUserVo::getDeptId, SysUserVo::getCreateTime);
 | 
			
		||||
            u -> Convert.toStr(u.getUserId()), SysUserVo::getUserName, SysUserVo::getNickName, SysUserVo::getDeptId, SysUserVo::getCreateTime);
 | 
			
		||||
        return new TaskAssigneeDTO(page.getTotal(), handlers);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,6 +1,7 @@
 | 
			
		||||
package org.dromara.workflow.handler;
 | 
			
		||||
 | 
			
		||||
import cn.hutool.core.collection.CollUtil;
 | 
			
		||||
import cn.hutool.core.convert.Convert;
 | 
			
		||||
import lombok.RequiredArgsConstructor;
 | 
			
		||||
import lombok.extern.slf4j.Slf4j;
 | 
			
		||||
import org.dromara.common.core.domain.dto.UserDTO;
 | 
			
		||||
@@ -59,6 +60,6 @@ public class WorkflowPermissionHandler implements PermissionHandler {
 | 
			
		||||
        }
 | 
			
		||||
        String storageIds = CollUtil.join(permissions, StringUtils.SEPARATOR);
 | 
			
		||||
        List<UserDTO> users = flwTaskAssigneeService.fetchUsersByStorageIds(storageIds);
 | 
			
		||||
        return StreamUtils.toList(users, userDTO -> String.valueOf(userDTO.getUserId()));
 | 
			
		||||
        return StreamUtils.toList(users, userDTO -> Convert.toStr(userDTO.getUserId()));
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -1,6 +1,7 @@
 | 
			
		||||
package org.dromara.workflow.service.impl;
 | 
			
		||||
 | 
			
		||||
import cn.hutool.core.collection.CollUtil;
 | 
			
		||||
import cn.hutool.core.convert.Convert;
 | 
			
		||||
import cn.hutool.core.lang.tree.Tree;
 | 
			
		||||
import cn.hutool.core.util.ObjectUtil;
 | 
			
		||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 | 
			
		||||
@@ -97,11 +98,11 @@ public class FlwCategoryServiceImpl implements IFlwCategoryService {
 | 
			
		||||
        }
 | 
			
		||||
        return TreeBuildUtils.buildMultiRoot(
 | 
			
		||||
            categoryList,
 | 
			
		||||
            node -> String.valueOf(node.getCategoryId()),
 | 
			
		||||
            node -> String.valueOf(node.getParentId()),
 | 
			
		||||
            node -> Convert.toStr(node.getCategoryId()),
 | 
			
		||||
            node -> Convert.toStr(node.getParentId()),
 | 
			
		||||
            (node, treeNode) -> treeNode
 | 
			
		||||
                .setId(String.valueOf(node.getCategoryId()))
 | 
			
		||||
                .setParentId(String.valueOf(node.getParentId()))
 | 
			
		||||
                .setId(Convert.toStr(node.getCategoryId()))
 | 
			
		||||
                .setParentId(Convert.toStr(node.getParentId()))
 | 
			
		||||
                .setName(node.getCategoryName())
 | 
			
		||||
                .setWeight(node.getOrderNum())
 | 
			
		||||
        );
 | 
			
		||||
 
 | 
			
		||||
@@ -231,7 +231,7 @@ public class FlwDefinitionServiceImpl implements IFlwDefinitionService {
 | 
			
		||||
            flowDefinition.setId(null);
 | 
			
		||||
            flowDefinition.setTenantId(tenantId);
 | 
			
		||||
            flowDefinition.setIsPublish(0);
 | 
			
		||||
            flowDefinition.setCategory(String.valueOf(flowCategory.getCategoryId()));
 | 
			
		||||
            flowDefinition.setCategory(Convert.toStr(flowCategory.getCategoryId()));
 | 
			
		||||
            int insert = flowDefinitionMapper.insert(flowDefinition);
 | 
			
		||||
            if (insert <= 0) {
 | 
			
		||||
                log.info("同步流程定义【{}】失败!", definition.getFlowCode());
 | 
			
		||||
 
 | 
			
		||||
@@ -110,7 +110,7 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService {
 | 
			
		||||
     */
 | 
			
		||||
    @Override
 | 
			
		||||
    public FlowInstanceVo queryByBusinessId(Long businessId) {
 | 
			
		||||
        FlowInstance instance = this.selectInstByBusinessId(String.valueOf(businessId));
 | 
			
		||||
        FlowInstance instance = this.selectInstByBusinessId(Convert.toStr(businessId));
 | 
			
		||||
        FlowInstanceVo instanceVo = BeanUtil.toBean(instance, FlowInstanceVo.class);
 | 
			
		||||
        Definition definition = defService.getById(instanceVo.getDefinitionId());
 | 
			
		||||
        instanceVo.setFlowName(definition.getFlowName());
 | 
			
		||||
 
 | 
			
		||||
@@ -149,9 +149,9 @@ public class FlwTaskAssigneeServiceImpl implements IFlwTaskAssigneeService, Hand
 | 
			
		||||
     */
 | 
			
		||||
    private TreeFunDto<DeptDTO> buildDeptTree(List<DeptDTO> depts) {
 | 
			
		||||
        return new TreeFunDto<>(depts)
 | 
			
		||||
            .setId(dept -> String.valueOf(dept.getDeptId()))
 | 
			
		||||
            .setId(dept -> Convert.toStr(dept.getDeptId()))
 | 
			
		||||
            .setName(DeptDTO::getDeptName)
 | 
			
		||||
            .setParentId(dept -> String.valueOf(dept.getParentId()));
 | 
			
		||||
            .setParentId(dept -> Convert.toStr(dept.getParentId()));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
 
 | 
			
		||||
@@ -303,7 +303,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService {
 | 
			
		||||
        List<User> userList = StreamUtils.toList(flowCopyList, x ->
 | 
			
		||||
            new FlowUser()
 | 
			
		||||
                .setType(TaskAssigneeType.COPY.getCode())
 | 
			
		||||
                .setProcessedBy(String.valueOf(x.getUserId()))
 | 
			
		||||
                .setProcessedBy(Convert.toStr(x.getUserId()))
 | 
			
		||||
                .setAssociated(taskId));
 | 
			
		||||
        // 批量保存抄送人员
 | 
			
		||||
        FlowEngine.userService().saveBatch(userList);
 | 
			
		||||
@@ -589,7 +589,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService {
 | 
			
		||||
                if (ObjectUtil.isNotNull(first) && CollUtil.isNotEmpty(first.getPermissionList())) {
 | 
			
		||||
                    List<UserDTO> users = flwTaskAssigneeService.fetchUsersByStorageIds(String.join(StringUtils.SEPARATOR, first.getPermissionList()));
 | 
			
		||||
                    if (CollUtil.isNotEmpty(users)) {
 | 
			
		||||
                        flowNode.setPermissionFlag(StreamUtils.join(users, e -> String.valueOf(e.getUserId())));
 | 
			
		||||
                        flowNode.setPermissionFlag(StreamUtils.join(users, e -> Convert.toStr(e.getUserId())));
 | 
			
		||||
                    }
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user