From c7a252cc254f7f4fe998cd3a4764e14d52552958 Mon Sep 17 00:00:00 2001
From: huminmin <mac@MacBook-Pro.local>
Date: 星期六, 25 四月 2026 16:50:56 +0800
Subject: [PATCH] 添加相关接口附件信息
---
src/main/java/com/ruoyi/projectManagement/service/impl/handle/InfoStageHandleService.java | 6 +++++-
src/main/java/com/ruoyi/projectManagement/vo/PlanVo.java | 4 +++-
src/main/java/com/ruoyi/projectManagement/vo/SearchPlanVo.java | 3 +++
src/main/java/com/ruoyi/projectManagement/vo/InfoStageVo.java | 2 ++
src/main/java/com/ruoyi/projectManagement/service/impl/PlanServiceImpl.java | 15 ++++++++++-----
src/main/java/com/ruoyi/projectManagement/vo/SavePlanVo.java | 3 ++-
6 files changed, 25 insertions(+), 8 deletions(-)
diff --git a/src/main/java/com/ruoyi/projectManagement/service/impl/PlanServiceImpl.java b/src/main/java/com/ruoyi/projectManagement/service/impl/PlanServiceImpl.java
index 5c8b7c6..e05ce2e 100644
--- a/src/main/java/com/ruoyi/projectManagement/service/impl/PlanServiceImpl.java
+++ b/src/main/java/com/ruoyi/projectManagement/service/impl/PlanServiceImpl.java
@@ -6,7 +6,10 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.ruoyi.basic.dto.StorageBlobVO;
+import com.ruoyi.basic.enums.RecordTypeEnum;
import com.ruoyi.basic.service.CustomerFollowUpFileService;
+import com.ruoyi.basic.utils.FileUtil;
import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.projectManagement.mapper.PlanMapper;
import com.ruoyi.projectManagement.mapper.PlanNodeMapper;
@@ -40,6 +43,7 @@
private final CustomerFollowUpFileService customerFollowUpFileService;
private final PlanNodeMapper planNodeMapper;
+ private final FileUtil fileUtil;
@Lazy
@Autowired
@@ -49,9 +53,8 @@
@Transactional(rollbackFor = Exception.class)
public void savePlan(SavePlanVo savePlanVo) {
Plan plan = BeanUtil.copyProperties(savePlanVo, Plan.class);
- // 闄勪欢澶勭悊 , 鎷兼帴
- String attachments = String.join(",", Optional.ofNullable(savePlanVo.getAttachmentIds()).orElse(Collections.emptyList()));
- plan.setAttachment(attachments);
+ // 闄勪欢澶勭悊
+ fileUtil.saveStorageAttachmentByRecordTypeAndRecordId("", RecordTypeEnum.PLAN, savePlanVo.getId(), savePlanVo.getStorageBlobDTOs());
if (savePlanVo.getId() == null) {
planMapper.insert(plan);
} else {
@@ -136,12 +139,14 @@
IPage<Plan> planIPage = planMapper.selectPlanPage(searchPlanVo);
IPage<PlanVo> resultPage = planIPage.convert(plan -> BeanUtil.copyProperties(plan, PlanVo.class));
// 鏂囦欢鑾峰彇
- customerFollowUpFileService.fillAttachment(resultPage.getRecords(), PlanVo::getAttachment, PlanVo::setAttachmentList);
Map<Long, List<PlanNodeVo>> collect = getPlanNodeByPlanIds(resultPage.getRecords().stream().map(PlanVo::getId).collect(Collectors.toList()))
.stream()
.map(it -> BeanUtil.copyProperties(it, PlanNodeVo.class))
.collect(Collectors.groupingBy(PlanNodeVo::getProjectManagementPlanId, Collectors.toList()));
- resultPage.getRecords().forEach(planVo -> planVo.setPlanNodeList(collect.getOrDefault(planVo.getId(), Collections.emptyList())));
+ resultPage.getRecords().forEach(planVo -> {
+ planVo.setPlanNodeList(collect.getOrDefault(planVo.getId(), Collections.emptyList()));
+ planVo.setStorageBlobVOs(fileUtil.getStorageBlobVOsByRecordTypeAndRecordId(RecordTypeEnum.PLAN, planVo.getId()));
+ });
return resultPage;
}
diff --git a/src/main/java/com/ruoyi/projectManagement/service/impl/handle/InfoStageHandleService.java b/src/main/java/com/ruoyi/projectManagement/service/impl/handle/InfoStageHandleService.java
index ed20a61..2025777 100644
--- a/src/main/java/com/ruoyi/projectManagement/service/impl/handle/InfoStageHandleService.java
+++ b/src/main/java/com/ruoyi/projectManagement/service/impl/handle/InfoStageHandleService.java
@@ -4,6 +4,7 @@
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
+import com.ruoyi.basic.dto.StorageBlobVO;
import com.ruoyi.basic.enums.RecordTypeEnum;
import com.ruoyi.basic.service.CustomerFollowUpFileService;
import com.ruoyi.basic.utils.FileUtil;
@@ -158,7 +159,10 @@
List<InfoStageDto> listByInfoId = getListDtoByInfoId(infoId);
List<InfoStageVo> infoStageVos = BeanUtil.copyToList(listByInfoId, InfoStageVo.class);
// 澶勭悊闄勪欢
- customerFollowUpFileService.fillAttachment(infoStageVos, InfoStageVo::getAttachment, InfoStageVo::setAttachmentList);
+ for (InfoStageVo infoStageVo : infoStageVos) {
+ List<StorageBlobVO> storageBlobVOs = fileUtil.getStorageBlobVOsByRecordTypeAndRecordId(RecordTypeEnum.INFO_STAGE, infoStageVo.getId());
+ infoStageVo.setStorageBlobVOs(storageBlobVOs != null ? storageBlobVOs : new ArrayList<>());
+ }
return infoStageVos;
}
diff --git a/src/main/java/com/ruoyi/projectManagement/vo/InfoStageVo.java b/src/main/java/com/ruoyi/projectManagement/vo/InfoStageVo.java
index 8be6a2d..71d7ee5 100644
--- a/src/main/java/com/ruoyi/projectManagement/vo/InfoStageVo.java
+++ b/src/main/java/com/ruoyi/projectManagement/vo/InfoStageVo.java
@@ -1,5 +1,6 @@
package com.ruoyi.projectManagement.vo;
+import com.ruoyi.basic.dto.StorageBlobVO;
import com.ruoyi.common.vo.SimpleFileVo;
import com.ruoyi.projectManagement.dto.InfoStageDto;
import lombok.AllArgsConstructor;
@@ -21,4 +22,5 @@
public class InfoStageVo extends InfoStageDto implements java.io.Serializable {
private List<SimpleFileVo> attachmentList; // 闄勪欢鍒楄〃
+ private List<StorageBlobVO> storageBlobVOs;
}
diff --git a/src/main/java/com/ruoyi/projectManagement/vo/PlanVo.java b/src/main/java/com/ruoyi/projectManagement/vo/PlanVo.java
index 492435e..6cba06b 100644
--- a/src/main/java/com/ruoyi/projectManagement/vo/PlanVo.java
+++ b/src/main/java/com/ruoyi/projectManagement/vo/PlanVo.java
@@ -2,6 +2,8 @@
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.ruoyi.basic.dto.StorageBlobDTO;
+import com.ruoyi.basic.dto.StorageBlobVO;
import com.ruoyi.common.vo.SimpleFileVo;
import lombok.AllArgsConstructor;
import lombok.Data;
@@ -44,5 +46,5 @@
private LocalDateTime updateTime;
private List<PlanNodeVo> planNodeList;
-
+ private List<StorageBlobVO> storageBlobVOs;
}
diff --git a/src/main/java/com/ruoyi/projectManagement/vo/SavePlanVo.java b/src/main/java/com/ruoyi/projectManagement/vo/SavePlanVo.java
index f3ce9df..e1042b2 100644
--- a/src/main/java/com/ruoyi/projectManagement/vo/SavePlanVo.java
+++ b/src/main/java/com/ruoyi/projectManagement/vo/SavePlanVo.java
@@ -1,6 +1,7 @@
package com.ruoyi.projectManagement.vo;
+import com.ruoyi.basic.dto.StorageBlobDTO;
import com.ruoyi.sales.pojo.SalesLedgerProduct;
import lombok.AllArgsConstructor;
import lombok.Data;
@@ -32,5 +33,5 @@
@Valid
private List<SavePlanNodeVo> savePlanNodeList;
-
+ private List<StorageBlobDTO> storageBlobDTOs;
}
diff --git a/src/main/java/com/ruoyi/projectManagement/vo/SearchPlanVo.java b/src/main/java/com/ruoyi/projectManagement/vo/SearchPlanVo.java
index 3a29444..efe2bc5 100644
--- a/src/main/java/com/ruoyi/projectManagement/vo/SearchPlanVo.java
+++ b/src/main/java/com/ruoyi/projectManagement/vo/SearchPlanVo.java
@@ -1,12 +1,15 @@
package com.ruoyi.projectManagement.vo;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.basic.dto.StorageBlobDTO;
+import com.ruoyi.basic.dto.StorageBlobVO;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import java.io.Serializable;
+import java.util.List;
/**
* @author buhuazhen
--
Gitblit v1.9.3