diff --git a/dk-api/api-resource/src/main/java/org/dromara/resource/api/domain/RemoteFile.java b/dk-api/api-resource/src/main/java/org/dromara/resource/api/domain/RemoteFile.java index 7140fe6..6c4360e 100644 --- a/dk-api/api-resource/src/main/java/org/dromara/resource/api/domain/RemoteFile.java +++ b/dk-api/api-resource/src/main/java/org/dromara/resource/api/domain/RemoteFile.java @@ -41,4 +41,9 @@ public class RemoteFile implements Serializable { */ private String fileSuffix; + /** + * 文件名称 + */ + private String fileName; + } diff --git a/dk-modules/workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java b/dk-modules/workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java index 16d1831..f9fa99c 100644 --- a/dk-modules/workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java +++ b/dk-modules/workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceServiceImpl.java @@ -11,6 +11,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.apache.dubbo.config.annotation.DubboReference; import org.dromara.common.core.enums.BusinessStatusEnum; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.utils.StreamUtils; @@ -18,6 +19,8 @@ import org.dromara.common.core.utils.StringUtils; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.satoken.utils.LoginHelper; +import org.dromara.resource.api.RemoteFileService; +import org.dromara.resource.api.domain.RemoteFile; import org.dromara.system.api.domain.vo.RemoteUserVo; import org.dromara.warm.flow.core.FlowEngine; import org.dromara.warm.flow.core.constant.ExceptionCons; @@ -78,6 +81,8 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService { private final IFlwTaskService flwTaskService; private final FlwInstanceMapper flwInstanceMapper; private final FlwCategoryMapper flwCategoryMapper; + @DubboReference + private RemoteFileService remoteFileService; /** * 分页查询正在运行的流程实例 @@ -326,12 +331,18 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService { String flowChart = chartService.chartIns(instanceId); list.forEach(flowHisTaskVo -> { if (ObjectUtil.isNotNull(flowHisTaskVo.getExt())) { - String[] extArr = flowHisTaskVo.getExt().split(","); - StringBuilder sb = new StringBuilder(); - Arrays.asList(extArr).forEach(ext->{ - sb.append(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_MINIO, ext, 3600).toString()).append(","); - }); - flowHisTaskVo.setExt(sb.toString()); + try { + String[] extArr = flowHisTaskVo.getExt().split(","); + StringBuilder sb = new StringBuilder(); + + Arrays.asList(extArr).forEach(ext->{ + List remoteFiles = remoteFileService.selectByIds(ext); + sb.append(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_MINIO, remoteFiles.get(0).getFileName(), 3600).toString()).append(","); + }); + flowHisTaskVo.setExt(sb.toString()); + } catch (Exception e) { + log.error("获取: {}", e.getMessage(), e); + } } });