From 7d56f2a7c8b3907ecf7ff74a1f9a20b977c3adf8 Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期二, 08 七月 2025 20:21:10 +0800
Subject: [PATCH] 调整审批记录的保存方式
---
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/DncSendBackService.java | 164 ++++--------------------------------------------------
1 files changed, 12 insertions(+), 152 deletions(-)
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/DncSendBackService.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/DncSendBackService.java
index e722731..8a9381d 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/DncSendBackService.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/DncSendBackService.java
@@ -1,175 +1,35 @@
-/**
- * BladeX Commercial License Agreement
- * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
- * <p>
- * Use of this software is governed by the Commercial License Agreement
- * obtained after purchasing a license from BladeX.
- * <p>
- * 1. This software is for development use only under a valid license
- * from BladeX.
- * <p>
- * 2. Redistribution of this software's source code to any third party
- * without a commercial license is strictly prohibited.
- * <p>
- * 3. Licensees may copyright their own code but cannot use segments
- * from this software for such purposes. Copyright of this software
- * remains with BladeX.
- * <p>
- * Using this software signifies agreement to this License, and the software
- * must not be used for illegal purposes.
- * <p>
- * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
- * not liable for any claims arising from secondary or illegal development.
- * <p>
- * Author: Chill Zhuang (bladejava@qq.com)
- */
+
package org.springblade.mdm.program.service;
-import com.fasterxml.jackson.databind.ObjectMapper;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.compress.archivers.zip.ZipArchiveEntry;
-import org.apache.commons.compress.archivers.zip.ZipArchiveInputStream;
-import org.apache.commons.compress.archivers.zip.ZipFile;
-import org.apache.commons.compress.utils.IOUtils;
-import org.apache.commons.compress.utils.SeekableInMemoryByteChannel;
-import org.flowable.engine.*;
-import org.springblade.core.tool.utils.FileUtil;
-import org.springblade.mdm.program.vo.DncSendBackData;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.mdm.flow.service.CureFlowService;
+import org.springblade.mdm.program.entity.NcNode;
+import org.springblade.mdm.program.entity.NcProgramExchange;
+import org.springblade.mdm.program.mapper.NcProgramExchangeMapper;
import org.springframework.stereotype.Service;
-import org.springframework.web.multipart.MultipartFile;
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.Enumeration;
import java.util.List;
/**
- * 宸ヤ綔娴佹湇鍔″疄鐜扮被
+ * DNC鍥炰紶
*
- * @author Chill
+ * @author yangys
*/
@Slf4j
@Service
@AllArgsConstructor
public class DncSendBackService {
-
- private final RepositoryService repositoryService;
- private final RuntimeService runtimeService;
- private final HistoryService historyService;
- private final ProcessEngine processEngine;
-
- /**
- * dnc鍥炰紶鏂囦欢涓婁紶
- * @param file
- * @return
- */
- public List<DncSendBackData> dncSendBackUpload(MultipartFile file) {
- List<DncSendBackData> list=new ArrayList<>();
- try {
- String fileName = file.getOriginalFilename();
- InputStream fileInputStream = file.getInputStream();
-
- byte[] bytes = FileUtil.copyToByteArray(fileInputStream);
- list = parseDncZipFromByteArray(bytes);
- //TODO 瑙f瀽涓哄垪琛ㄦ枃浠�
-
- DncSendBackData dt = new DncSendBackData();
- dt.setId(1L);
- dt.setProgramName("test.nc");
- dt.setProgramNo("001");
-
- list.add(dt);
-
- } catch (IOException e) {
- log.error("涓婁紶dnc鏂囦欢澶辫触",e);
- }
-
- return list;
- }
-
- public static List<DncSendBackData> parseDncZipFromByteArray(byte[] zipData) throws IOException {
- //List<DncSendBackData> datas = new ArrayList<>();
- List<DncSendBackData> datas = ZipFileDirectoryScanner.getFilesInDirectoryRecursive(zipData, "");
+ private final NcNodeService ncNodeService;
+ private final NcProgramService ncProgramService;
+ private final CureFlowService cureFlowService;
+ private final NcProgramExchangeMapper ncProgramExchangeMapper;
- /*
- try (ByteArrayInputStream bis = new ByteArrayInputStream(zipData);
- ZipArchiveInputStream zis = new ZipArchiveInputStream(bis)) {
- ZipArchiveEntry entry;
- while ((entry = zis.getNextZipEntry()) != null) {
- DncSendBackData prog = new DncSendBackData();
- prog.setProgramName(entry.getName());
- if (!entry.isDirectory()) {
- System.out.println("鏂囦欢鍚�: " + entry.getName());
- System.out.println("澶у皬: " + entry.getSize());
- // 璇诲彇鏂囦欢鍐呭鍒板瓧鑺傛暟缁�
- ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
- IOUtils.copy(zis, outputStream);
- byte[] fileContent = outputStream.toByteArray();
-
- // 澶勭悊鏂囦欢鍐呭...
- System.out.println("鍐呭闀垮害: " + fileContent.length);
- }else{
- //鏂囦欢澶癸紝璇诲唴閮ㄦ枃浠讹紝鑾峰彇鏂囦欢鍒楄〃
-
- System.out.println("鏂囦欢澶圭▼搴忥細"+entry.getName());
- List<String> children = new ArrayList<>();
- prog.setChildren(children);
- }
-
- datas.add(prog);
- }
-
-
- }*/
- return datas;
- }
- /**
- * 鍏ュ簱鍥炰紶鏂囦欢
- * @param ids
- * @return
- */
- public void dncFileAccept(String ids) {
-
- }
}
-class ZipFileDirectoryScanner {
-
- public static List<DncSendBackData> getFilesInDirectoryRecursive(byte[] zipData, String dirPath) throws IOException {
- List<DncSendBackData> list = new ArrayList<>();
-
- if (!dirPath.endsWith("/")) {
- dirPath += "/";
- }
-
- try (SeekableInMemoryByteChannel channel = new SeekableInMemoryByteChannel(zipData);
- ZipFile zipFile = new ZipFile(channel)) {
-
- Enumeration<ZipArchiveEntry> entries = zipFile.getEntries();
- while (entries.hasMoreElements()) {
- ZipArchiveEntry entry = entries.nextElement();
- String entryName = entry.getName();
- DncSendBackData d = new DncSendBackData();
- d.setProgramName(entryName);
- if(entry.isDirectory()){
- d.setHasChildren(true);
- }
- list.add(d);
-
- //if (entryName.startsWith(dirPath) && !entry.isDirectory()) {
- // fileList.add(entryName);
- //}
- }
- }
- return list;
- }
-}
--
Gitblit v1.9.3