diff --git a/ebike-user/src/main/java/com/cdzy/user/service/impl/EbikeFaultFileServiceImpl.java b/ebike-user/src/main/java/com/cdzy/user/service/impl/EbikeFaultFileServiceImpl.java index 2a1a6eb..dc104cd 100644 --- a/ebike-user/src/main/java/com/cdzy/user/service/impl/EbikeFaultFileServiceImpl.java +++ b/ebike-user/src/main/java/com/cdzy/user/service/impl/EbikeFaultFileServiceImpl.java @@ -10,7 +10,8 @@ import org.springframework.stereotype.Service; import java.util.Collections; import java.util.List; -import static com.cdzy.user.model.entity.table.EbikeAttachmentFileTableDef.EBIKE_ATTACHMENT_FILE; +import static com.cdzy.user.model.entity.table.EbikeFaultFileTableDef.EBIKE_FAULT_FILE; + /** * 用车相关附件文件记录 服务实现类 @@ -24,16 +25,16 @@ public class EbikeFaultFileServiceImpl extends ServiceImpl queryFiles(Long reportId) { QueryWrapper query = QueryWrapper.create() - .select(EBIKE_ATTACHMENT_FILE.ALL_COLUMNS) - .where(EBIKE_ATTACHMENT_FILE.REPORT_ID.eq(reportId)); + .select(EBIKE_FAULT_FILE.ALL_COLUMNS) + .where(EBIKE_FAULT_FILE.REPORT_ID.eq(reportId)); return this.mapper.selectListByQuery(query); } @Override public void deleteFileByReportId(Long reportId) { QueryWrapper query = QueryWrapper.create() - .select(EBIKE_ATTACHMENT_FILE.ALL_COLUMNS) - .where(EBIKE_ATTACHMENT_FILE.REPORT_ID.eq(reportId)); + .select(EBIKE_FAULT_FILE.ALL_COLUMNS) + .where(EBIKE_FAULT_FILE.REPORT_ID.eq(reportId)); this.mapper.deleteByQuery(query); } @@ -43,7 +44,7 @@ public class EbikeFaultFileServiceImpl extends ServiceImpl faultPart = ebikeFaultReportDto.getFaultPart(); - List fileEntities = faultPart.stream().map(e -> EbikeFaultPart.builder() - .reportId(reportId) - .faultPart(e) - .createBy(ebikeFaultReportDto.getUserId()) - .build()) - .toList(); - ebikeFaultPartService.saveBatch(fileEntities); - // 根据bikeCode生成巡检工单 - List fileUrls = null; - if (Objects.nonNull(attachmentFiles)) { - fileUrls = attachmentFiles.stream() - .map(EbikeFaultFileDto::getFileUrl) - .filter(Objects::nonNull) + + List faultPart = Optional.ofNullable(ebikeFaultReportDto.getFaultPart()) + .orElse(Collections.emptyList()); + + if (!faultPart.isEmpty()) { + List partEntities = faultPart.stream() + .map(part -> EbikeFaultPart.builder() + .reportId(reportId) + .faultPart(part) + .createBy(ebikeFaultReportDto.getUserId()) + .build()) .toList(); + ebikeFaultPartService.saveBatch(partEntities); } + // 获取附件 URL 列表 + List fileUrls = Optional.ofNullable(ebikeFaultReportDto.getAttachmentFiles()) + .orElse(Collections.emptyList()) + .stream() + .map(EbikeFaultFileDto::getFileUrl) + .filter(Objects::nonNull) + .toList(); + // 生成巡检工单 FeignInspectionSwapOrderVo feignInspectionSwapOrderVo = FeignInspectionSwapOrderVo.builder() .bikeCode(ebikeFaultReportDto.getBikeCode()) .parts(faultPart) @@ -122,6 +127,7 @@ public class EbikeFaultReportServiceImpl extends ServiceImpl allAttachments = ebikeAttachmentFileService.list(attachmentQuery); Map> attachmentsByReportId = allAttachments.stream() .collect(Collectors.groupingBy(EbikeFaultFile::getReportId));