From ad935c07a6cabf05fed9c615c7bd4f67f6d65293 Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Thu, 04 Jun 2026 23:37:33 +0800
Subject: [PATCH] feat(common): 添加通用列表类型处理器支持数据库存储
---
drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/wrapper/GdTaskResultWrapper.java | 49 +++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 47 insertions(+), 2 deletions(-)
diff --git a/drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/wrapper/GdTaskResultWrapper.java b/drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/wrapper/GdTaskResultWrapper.java
index 32b7fb1..ab5e42b 100644
--- a/drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/wrapper/GdTaskResultWrapper.java
+++ b/drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/wrapper/GdTaskResultWrapper.java
@@ -24,6 +24,7 @@
import java.util.List;
import java.util.Objects;
+import java.util.stream.Collectors;
/**
* 成果表 包装类,返回视图层所需的字段
@@ -39,12 +40,56 @@
@Override
public GdTaskResultVO entityVO(GdTaskResultEntity gdTaskResult) {
-
return Objects.requireNonNull(BeanUtil.copy(gdTaskResult, GdTaskResultVO.class));
}
+ /**
+ * 将DTO列表转换为Entity列表
+ *
+ * @param gdTaskResultDTOList DTO列表
+ * @return Entity列表
+ */
public List<GdTaskResultEntity> listEntity(List<GdTaskResultDTO> gdTaskResultDTOList) {
- return BeanUtil.copyWithConvert(gdTaskResultDTOList, GdTaskResultEntity.class);
+ return gdTaskResultDTOList.stream()
+ .map(this::convertDtoToEntity)
+ .collect(Collectors.toList());
+ }
+
+ /**
+ * 将单个DTO转换为Entity
+ *
+ * @param dto DTO对象
+ * @return Entity对象
+ */
+ private GdTaskResultEntity convertDtoToEntity(GdTaskResultDTO dto) {
+ GdTaskResultEntity entity = BeanUtil.copy(dto, GdTaskResultEntity.class);
+
+ if (dto.getFileType() != null) {
+ entity.setAttachmentType(dto.getDateType());
+ }
+
+ return entity;
+ }
+
+ /**
+ * 将文件类型字符串转换为附件类型编码
+ *
+ * @param fileType 文件类型字符串(图片/视频/照片)
+ * @return 附件类型编码:0-图片,1-视频,2-其他
+ */
+ private Integer convertFileTypeToAttachmentType(String fileType) {
+ if (fileType == null) {
+ return 2;
+ }
+ switch (fileType.trim()) {
+ case "图片":
+ case "照片":
+ return 0;
+ case "视频":
+ return 1;
+ default:
+ return 2;
+ }
}
}
--
Gitblit v1.9.3