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 f9fa99c..96c5710 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 @@ -2,8 +2,10 @@ package org.dromara.workflow.service.impl; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.collection.ListUtil; import cn.hutool.core.convert.Convert; import cn.hutool.core.util.ObjectUtil; +import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; @@ -54,6 +56,7 @@ import org.dromara.workflow.service.IFlwInstanceService; import org.dromara.workflow.service.IFlwTaskService; import org.dromara.workflow.utils.MinioUntil; import org.dromara.workflow.utils.WorkflowUtils; +import org.json.JSONObject; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -333,15 +336,21 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService { if (ObjectUtil.isNotNull(flowHisTaskVo.getExt())) { try { String[] extArr = flowHisTaskVo.getExt().split(","); - StringBuilder sb = new StringBuilder(); + List> fileList = new ArrayList<>(); Arrays.asList(extArr).forEach(ext->{ + Map map = new HashMap<>(); List remoteFiles = remoteFileService.selectByIds(ext); - sb.append(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_MINIO, remoteFiles.get(0).getFileName(), 3600).toString()).append(","); + if (ObjectUtil.isNotEmpty(remoteFiles)) { + map.put("imageUrl",MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_MINIO, remoteFiles.get(0).getFileName(), 3600).toString()); + map.put("fileName",remoteFiles.get(0).getOriginalName()); + fileList.add(map); + } }); - flowHisTaskVo.setExt(sb.toString()); + flowHisTaskVo.setExt(JSON.toJSONString(fileList)); } catch (Exception e) { log.error("获取: {}", e.getMessage(), e); + flowHisTaskVo.setExt(JSON.toJSONString(ListUtil.empty())); } } });