From 76c5b07b6f1dd66e1eaf777bf3f6770b6ac85925 Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期日, 31 八月 2025 17:16:40 +0800
Subject: [PATCH] 修复工控网导出涉密网功能
---
blade-service/blade-mdm/src/main/java/org/springblade/mdm/machinefile/service/NcProgramExportInnerService.java | 40 +++++++++++++++++++---------------------
1 files changed, 19 insertions(+), 21 deletions(-)
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/machinefile/service/NcProgramExportInnerService.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/machinefile/service/NcProgramExportInnerService.java
index 25aa000..e59e601 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/machinefile/service/NcProgramExportInnerService.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/machinefile/service/NcProgramExportInnerService.java
@@ -6,13 +6,13 @@
import lombok.extern.slf4j.Slf4j;
import org.springblade.core.mp.base.BizServiceImpl;
import org.springblade.core.oss.OssTemplate;
-import org.springblade.mdm.machinefile.entity.MachineFile;
+import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.mdm.machinefile.entity.MachineAcceptedFile;
import org.springblade.mdm.program.entity.NcProgramExchange;
import org.springblade.mdm.program.mapper.NcProgramExchangeMapper;
-import org.springblade.mdm.program.service.NcNodeService;
-import org.springblade.mdm.program.service.NcProgramService;
import org.springblade.mdm.utils.ProgramFileNameParser;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
import java.io.IOException;
import java.io.InputStream;
@@ -30,41 +30,39 @@
@Service
@AllArgsConstructor
public class NcProgramExportInnerService extends BizServiceImpl<NcProgramExchangeMapper, NcProgramExchange> {
- private final MachineAcceptedFileService machineBackFileService;
- private final NcProgramService progService;
- private final MachineFileService machineFileService;
- private final NcNodeService ncNodeService;
+ private final MachineAcceptedFileService machineAcceptedService;
private final OssTemplate ossTemplate;
-
- public static final String PROGRAM_JSON_FILE = "exp_mdm_nc_program.json";
- public static final String NODE_JSON_FILE = "exp_mdm_nc_node.json";
- public static final String APPROVE_RECORD_JSON_FILE = "exp_mdm_approve_record.json";
/**
* 瀵煎嚭鍒版秹瀵嗙綉
- * @param machineFileIds
+ * @param acceptedFileIds
* @param os
* @throws IOException
*/
- public void exportToInner(List<Long> machineFileIds, ServletOutputStream os) throws IOException {
- //FileOutputStream fos = new FileOutputStream("d:/exportDnc.zip");
+ @Transactional
+ public void exportToInner(List<Long> acceptedFileIds, ServletOutputStream os) throws IOException {
+
try (ZipOutputStream zipOut = new ZipOutputStream(os);) {//os
- List<MachineFile> machineFiles = machineFileService.lambdaQuery().in(MachineFile::getId,machineFileIds).list();
- Map<String,List<MachineFile>> map = machineFiles.stream()
+ List<MachineAcceptedFile> acceptedFiles = machineAcceptedService.lambdaQuery().in(MachineAcceptedFile::getId,acceptedFileIds).list();
+ Map<String,List<MachineAcceptedFile>> map = acceptedFiles.stream()
.collect(Collectors.groupingBy(s -> ProgramFileNameParser.parseProgramName(s.getName()).logicProgramName()));
- for (Map.Entry<String, List<MachineFile>> entry : map.entrySet()) {
+ List<MachineAcceptedFile> exportedFiles = new ArrayList<>();
+ for (Map.Entry<String, List<MachineAcceptedFile>> entry : map.entrySet()) {
String programName = entry.getKey();
- List<MachineFile> progMachineFiles = entry.getValue();
- for (MachineFile mf : progMachineFiles) {
- try(InputStream ins = machineFileService.getInputStream(mf)) {
- addInputStreamToZip(zipOut,ins , programName + "/" + mf.getName());
+ List<MachineAcceptedFile> acceptedFileList = entry.getValue();
+ for (MachineAcceptedFile acceptedFile : acceptedFileList) {
+ try(InputStream ins = ossTemplate.statFileStream(acceptedFile.getOssName()) ) {
+ addInputStreamToZip(zipOut,ins , programName + "/" + acceptedFile.getName());
}
+ acceptedFile.setExportTime(DateUtil.now());
}
}
+
+ machineAcceptedService.updateBatchById(acceptedFiles);
}
os.close();
--
Gitblit v1.9.3