From 203aa55d3bd0316967c217bd4bd475d6b170550c Mon Sep 17 00:00:00 2001
From: maven <2163098428@qq.com>
Date: 星期五, 23 一月 2026 11:31:33 +0800
Subject: [PATCH] yys 金鹰黄金修改巡检管理
---
src/main/java/com/ruoyi/inspectiontask/service/impl/InspectionTaskServiceImpl.java | 106 ++++++++++++++---------------------
src/main/java/com/ruoyi/common/enums/FileNameType.java | 6 +
src/main/java/com/ruoyi/sales/service/impl/CommonFileServiceImpl.java | 11 +++
src/main/java/com/ruoyi/inspectiontask/service/InspectionTaskService.java | 4 +
src/main/java/com/ruoyi/inspectiontask/controller/InspectionTaskController.java | 3
src/main/java/com/ruoyi/inspectiontask/dto/InspectionTaskDto.java | 19 ++++-
src/main/java/com/ruoyi/project/common/CommonController.java | 1
7 files changed, 78 insertions(+), 72 deletions(-)
diff --git a/src/main/java/com/ruoyi/common/enums/FileNameType.java b/src/main/java/com/ruoyi/common/enums/FileNameType.java
index 16d51f6..1014c22 100644
--- a/src/main/java/com/ruoyi/common/enums/FileNameType.java
+++ b/src/main/java/com/ruoyi/common/enums/FileNameType.java
@@ -11,7 +11,11 @@
MEASURING(5), //璁¢噺鍣ㄥ叿鍙拌处
MEASURINGRecord(6),//璁¢噺鍣ㄥ叿鍙拌处璁板綍
ApproveNode(7), //鍗忓悓瀹℃壒鑺傜偣瀹℃牳
- ApproveProcess(8); //鍗忓悓瀹℃壒涓绘暟鎹�
+ ApproveProcess(8),//鍗忓悓瀹℃壒涓绘暟鎹�
+ SHIP(9),//鍙戣揣鍙拌处
+ INSPECTION_PRODUCTION_BEFORE(10),
+ INSPECTION_PRODUCTION_AFTER(11),
+ INSPECTION(12);//宸℃ 鐢熶骇鍓�
private final int value;
diff --git a/src/main/java/com/ruoyi/inspectiontask/controller/InspectionTaskController.java b/src/main/java/com/ruoyi/inspectiontask/controller/InspectionTaskController.java
index ce8e057..8e7066d 100644
--- a/src/main/java/com/ruoyi/inspectiontask/controller/InspectionTaskController.java
+++ b/src/main/java/com/ruoyi/inspectiontask/controller/InspectionTaskController.java
@@ -17,6 +17,7 @@
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
/**
* @author :yys
@@ -60,7 +61,7 @@
@PostMapping("/addOrEditInspectionTask")
@ApiOperation("宸℃浠诲姟琛ㄦ柊澧炰慨鏀�")
@Transactional(rollbackFor = Exception.class)
- public R addOrEditInspectionTask(@RequestBody InspectionTaskDto inspectionTaskDto) {
+ public R addOrEditInspectionTask(@RequestBody InspectionTaskDto inspectionTaskDto) throws IOException {
return R.ok(inspectionTaskService.addOrEditInspectionTask(inspectionTaskDto));
}
diff --git a/src/main/java/com/ruoyi/inspectiontask/dto/InspectionTaskDto.java b/src/main/java/com/ruoyi/inspectiontask/dto/InspectionTaskDto.java
index f92bde5..c6c60ab 100644
--- a/src/main/java/com/ruoyi/inspectiontask/dto/InspectionTaskDto.java
+++ b/src/main/java/com/ruoyi/inspectiontask/dto/InspectionTaskDto.java
@@ -1,8 +1,10 @@
package com.ruoyi.inspectiontask.dto;
+import com.baomidou.mybatisplus.annotation.TableField;
import com.ruoyi.basic.dto.StorageBlobDTO;
import com.ruoyi.basic.pojo.StorageAttachment;
import com.ruoyi.inspectiontask.pojo.InspectionTask;
+import com.ruoyi.sales.pojo.CommonFile;
import lombok.Data;
import java.util.List;
@@ -10,11 +12,18 @@
@Data
public class InspectionTaskDto extends InspectionTask {
- private List<StorageBlobDTO> storageBlobDTO;
- private List<StorageBlobDTO> beforeProduction;
- private List<StorageBlobDTO> afterProduction;
- private List<StorageBlobDTO> productionIssues;
+// private List<StorageBlobDTO> storageBlobDTO;
+// private List<StorageBlobDTO> beforeProduction;
+// private List<StorageBlobDTO> afterProduction;
+// private List<StorageBlobDTO> productionIssues;
- private List<StorageAttachment> attachments;
+ private List<String> tempFileIds;
+ private List<CommonFile> commonFileList; //鐢熶骇涓�
+ private List<CommonFile> commonFileListAfter; //鐢熶骇鍚�
+ private List<CommonFile> commonFileListBefore; //鐢熶骇鍓�
+
+ private String dateStr;
+
+// private List<StorageAttachment> attachments;
}
diff --git a/src/main/java/com/ruoyi/inspectiontask/service/InspectionTaskService.java b/src/main/java/com/ruoyi/inspectiontask/service/InspectionTaskService.java
index de175f2..72ca5e4 100644
--- a/src/main/java/com/ruoyi/inspectiontask/service/InspectionTaskService.java
+++ b/src/main/java/com/ruoyi/inspectiontask/service/InspectionTaskService.java
@@ -6,6 +6,8 @@
import com.ruoyi.inspectiontask.dto.InspectionTaskDto;
import com.ruoyi.inspectiontask.pojo.InspectionTask;
+import java.io.IOException;
+
/**
* @author :yys
* @date : 2025/9/19 10:49
@@ -14,7 +16,7 @@
IPage<InspectionTaskDto> selectInspectionTaskList(Page<InspectionTask> page, InspectionTaskDto inspectionTaskDto);
- int addOrEditInspectionTask(InspectionTaskDto inspectionTaskDto);
+ int addOrEditInspectionTask(InspectionTaskDto inspectionTaskDto) throws IOException;
int delByIds(Long[] ids);
}
diff --git a/src/main/java/com/ruoyi/inspectiontask/service/impl/InspectionTaskServiceImpl.java b/src/main/java/com/ruoyi/inspectiontask/service/impl/InspectionTaskServiceImpl.java
index 6439f69..a1ac3b2 100644
--- a/src/main/java/com/ruoyi/inspectiontask/service/impl/InspectionTaskServiceImpl.java
+++ b/src/main/java/com/ruoyi/inspectiontask/service/impl/InspectionTaskServiceImpl.java
@@ -11,6 +11,7 @@
import com.ruoyi.basic.pojo.StorageAttachment;
import com.ruoyi.basic.pojo.StorageBlob;
import com.ruoyi.basic.service.StorageAttachmentService;
+import com.ruoyi.common.enums.FileNameType;
import com.ruoyi.common.utils.MinioUtils;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.StringUtils;
@@ -21,10 +22,15 @@
import com.ruoyi.inspectiontask.service.InspectionTaskService;
import com.ruoyi.project.system.domain.SysUser;
import com.ruoyi.project.system.mapper.SysUserMapper;
+import com.ruoyi.sales.mapper.CommonFileMapper;
+import com.ruoyi.sales.pojo.CommonFile;
+import com.ruoyi.sales.service.impl.CommonFileServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import java.io.IOException;
+import java.time.format.DateTimeFormatter;
import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;
@@ -59,6 +65,12 @@
@Autowired
private SysUserMapper sysUserMapper;
+ @Autowired
+ private CommonFileServiceImpl commonFileService;
+
+ @Autowired
+ private CommonFileMapper commonFileMapper;
+
@Override
public IPage<InspectionTaskDto> selectInspectionTaskList(Page<InspectionTask> page, InspectionTaskDto inspectionTaskDto) {
LambdaQueryWrapper<InspectionTask> queryWrapper = new LambdaQueryWrapper<>();
@@ -81,9 +93,6 @@
} else {
sysUserMap = new HashMap<>();
}
- //宸℃浜篿ds
- List<String> inspectorIds = entityPage.getRecords().stream().map(InspectionTask::getInspectorId).collect(Collectors.toList());
-
//鑾峰彇鎵�鏈変笉閲嶅鐨勭敤鎴稩D
Set<Long> allUserIds = entityPage.getRecords().stream()
.map(InspectionTask::getInspectorId) // 鑾峰彇"2,3"杩欐牱鐨勫瓧绗︿覆
@@ -110,22 +119,13 @@
(existing, replacement) -> existing));
//澶勭悊闄勪欢
- Map<Long, List<StorageAttachment>> attachmentsMap = storageAttachmentMapper.selectList(new LambdaQueryWrapper<StorageAttachment>().in(StorageAttachment::getRecordId, ids)
- .eq(StorageAttachment::getRecordType, InspectionTasks.ordinal()))
- .stream()
- .collect(Collectors.groupingBy(StorageAttachment::getRecordId));
- // 鎵归噺鏌ヨ鎵�鏈夐渶瑕佺殑鏂囦欢鏁版嵁
- Set<Long> blobIds = attachmentsMap.values()
- .stream()
- .flatMap(List::stream)
- .map(StorageAttachment::getStorageBlobId)
- .collect(Collectors.toSet());
- Map<Long, StorageBlob> blobMap = blobIds.isEmpty()
- ? Collections.emptyMap()
- : storageBlobMapper.selectList(new LambdaQueryWrapper<StorageBlob>().in(StorageBlob::getId, blobIds))
- .stream()
- .collect(Collectors.toMap(StorageBlob::getId, Function.identity()));
-
+ List<CommonFile> commonFiles = commonFileMapper.selectList(new LambdaQueryWrapper<CommonFile>()
+ .in(CommonFile::getCommonId, ids)
+ .in(CommonFile::getType, Arrays.asList(FileNameType.INSPECTION.getValue(), FileNameType.INSPECTION_PRODUCTION_BEFORE.getValue(), FileNameType.INSPECTION_PRODUCTION_AFTER.getValue())));
+ if(commonFiles == null){
+ commonFiles = new ArrayList<>();
+ }
+ List<CommonFile> finalCommonFiles = commonFiles;
List<InspectionTaskDto> dtoList = entityPage.getRecords().stream().map(inspectionTask -> {
InspectionTaskDto dto = new InspectionTaskDto();
BeanUtils.copyProperties(inspectionTask, dto); // 澶嶅埗涓诲璞″睘鎬�
@@ -151,37 +151,11 @@
dto.setInspector(inspectorNames);
}
- // 鍒濆鍖栦笁涓檮浠跺垪琛�
- dto.setBeforeProduction(new ArrayList<>());
- dto.setAfterProduction(new ArrayList<>());
- dto.setProductionIssues(new ArrayList<>());
+ dto.setDateStr(inspectionTask.getCreateTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")));
- // 澶勭悊闄勪欢鍒嗙被
- Optional.ofNullable(attachmentsMap.get(inspectionTask.getId()))
- .orElse(Collections.emptyList())
- .forEach(attachment -> {
- StorageBlob blob = blobMap.get(attachment.getStorageBlobId());
- if (blob != null) {
- // 鍒涘缓闄勪欢DTO
- StorageBlobDTO blobDto = createBlobDto(blob);
-
- // 鏍规嵁type鍒嗙被
- switch ((int) blob.getType().longValue()) {
- case 0:
- dto.getBeforeProduction().add(blobDto);
- break;
- case 1:
- dto.getAfterProduction().add(blobDto);
- break;
- case 2:
- dto.getProductionIssues().add(blobDto);
- break;
- default:
- // 鍙�夛細璁板綍鏈垎绫荤被鍨�
- break;
- }
- }
- });
+ dto.setCommonFileList(finalCommonFiles.stream().filter(commonFile -> commonFile.getType().equals(FileNameType.INSPECTION.getValue())).collect(Collectors.toList()));
+ dto.setCommonFileListAfter(finalCommonFiles.stream().filter(commonFile -> commonFile.getType().equals(FileNameType.INSPECTION_PRODUCTION_AFTER.getValue())).collect(Collectors.toList()));
+ dto.setCommonFileListBefore(finalCommonFiles.stream().filter(commonFile -> commonFile.getType().equals(FileNameType.INSPECTION_PRODUCTION_BEFORE.getValue())).collect(Collectors.toList()));
return dto;
}).collect(Collectors.toList());
@@ -216,7 +190,7 @@
}
@Override
- public int addOrEditInspectionTask(InspectionTaskDto inspectionTaskDto) {
+ public int addOrEditInspectionTask(InspectionTaskDto inspectionTaskDto) throws IOException {
InspectionTask inspectionTask = new InspectionTask();
BeanUtils.copyProperties(inspectionTaskDto, inspectionTask);
inspectionTask.setRegistrantId(SecurityUtils.getLoginUser().getUserId());
@@ -228,20 +202,21 @@
i = inspectionTaskMapper.updateById(inspectionTask);
}
- if (inspectionTaskDto.getStorageBlobDTO() != null && !inspectionTaskDto.getStorageBlobDTO().isEmpty()) {
- List<StorageAttachment> attachments = new ArrayList<>();
-
- for (StorageBlobDTO storageBlobDTO : inspectionTaskDto.getStorageBlobDTO()) {
- StorageAttachment storageAttachment = new StorageAttachment(
- StorageAttachmentFile,
- (long) InspectionTasks.ordinal(),
- inspectionTask.getId()
- );
- storageAttachment.setStorageBlobDTO(storageBlobDTO);
- attachments.add(storageAttachment);
- }
- storageAttachmentService.saveStorageAttachment(attachments, inspectionTask.getId(), InspectionTasks, StorageAttachmentFile);
- }
+// if (inspectionTaskDto.getStorageBlobDTO() != null && !inspectionTaskDto.getStorageBlobDTO().isEmpty()) {
+// List<StorageAttachment> attachments = new ArrayList<>();
+//
+// for (StorageBlobDTO storageBlobDTO : inspectionTaskDto.getStorageBlobDTO()) {
+// StorageAttachment storageAttachment = new StorageAttachment(
+// StorageAttachmentFile,
+// (long) InspectionTasks.ordinal(),
+// inspectionTask.getId()
+// );
+// storageAttachment.setStorageBlobDTO(storageBlobDTO);
+// attachments.add(storageAttachment);
+// }
+// storageAttachmentService.saveStorageAttachment(attachments, inspectionTask.getId(), InspectionTasks, StorageAttachmentFile);
+// }
+ commonFileService.migrateTempFilesToFormal(inspectionTask.getId(),inspectionTaskDto.getTempFileIds());
return i;
}
@@ -251,6 +226,9 @@
if (ids == null || ids.length == 0) {
return 0;
}
+ commonFileService.deleteByBusinessIds(Arrays.asList(ids),FileNameType.INSPECTION.getValue());
+ commonFileService.deleteByBusinessIds(Arrays.asList(ids),FileNameType.INSPECTION_PRODUCTION_BEFORE.getValue());
+ commonFileService.deleteByBusinessIds(Arrays.asList(ids),FileNameType.INSPECTION_PRODUCTION_AFTER.getValue());
return inspectionTaskMapper.deleteBatchIds(Arrays.asList(ids));
}
diff --git a/src/main/java/com/ruoyi/project/common/CommonController.java b/src/main/java/com/ruoyi/project/common/CommonController.java
index 21fa5ec..947cf19 100644
--- a/src/main/java/com/ruoyi/project/common/CommonController.java
+++ b/src/main/java/com/ruoyi/project/common/CommonController.java
@@ -7,6 +7,7 @@
import javax.servlet.http.HttpServletResponse;
import com.ruoyi.basic.service.StorageBlobService;
+import com.ruoyi.common.enums.FileNameType;
import com.ruoyi.framework.web.domain.R;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
diff --git a/src/main/java/com/ruoyi/sales/service/impl/CommonFileServiceImpl.java b/src/main/java/com/ruoyi/sales/service/impl/CommonFileServiceImpl.java
index 06bd40e..b82a4b3 100644
--- a/src/main/java/com/ruoyi/sales/service/impl/CommonFileServiceImpl.java
+++ b/src/main/java/com/ruoyi/sales/service/impl/CommonFileServiceImpl.java
@@ -1,5 +1,6 @@
package com.ruoyi.sales.service.impl;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.other.mapper.TempFileMapper;
@@ -151,4 +152,14 @@
}
}
}
+
+ public void deleteByBusinessId(Long businessId,Integer type) {
+ commonFileMapper.delete(new LambdaQueryWrapper<CommonFile>().eq(CommonFile::getCommonId, businessId)
+ .eq(CommonFile::getType, type));
+ }
+
+ public void deleteByBusinessIds(List<Long> businessId,Integer type) {
+ commonFileMapper.delete(new LambdaQueryWrapper<CommonFile>().in(CommonFile::getCommonId, businessId)
+ .eq(CommonFile::getType, type));
+ }
}
--
Gitblit v1.9.3