From 26f07223e1b33a8eb5ee184041575e9b204cfebe Mon Sep 17 00:00:00 2001 From: yangys <y_ys79@sina.com> Date: 星期五, 27 六月 2025 23:26:44 +0800 Subject: [PATCH] 上传程序文件 --- blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramService.java | 69 ++++++++++++++++++++++++++-------- 1 files changed, 53 insertions(+), 16 deletions(-) diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramService.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramService.java index c089431..b8a8a03 100644 --- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramService.java +++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramService.java @@ -28,18 +28,23 @@ import com.fasterxml.jackson.databind.ObjectMapper; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.io.IOUtils; import org.flowable.engine.*; import org.springblade.core.mp.base.BizServiceImpl; +import org.springblade.core.oss.OssTemplate; +import org.springblade.core.oss.model.BladeFile; import org.springblade.mdm.basesetting.machine.MachineService; import org.springblade.mdm.basesetting.machine.entity.Machine; import org.springblade.mdm.program.mapper.NcProgramMapper; import org.springblade.mdm.program.entity.NcProgram; import org.springblade.mdm.program.vo.DncSendBackData; +import org.springblade.mdm.utils.FileContentUtil; import org.springframework.stereotype.Service; import org.springframework.web.multipart.MultipartFile; import java.io.IOException; import java.io.InputStream; +import java.nio.charset.StandardCharsets; import java.util.ArrayList; import java.util.List; @@ -53,13 +58,9 @@ @AllArgsConstructor public class NcProgramService extends BizServiceImpl<NcProgramMapper, NcProgram> { - private final ObjectMapper objectMapper; - private final RepositoryService repositoryService; - private final RuntimeService runtimeService; - private final HistoryService historyService; - private final TaskService taskService; - private final ProcessEngine processEngine; private final MachineService machineService; + + private final OssTemplate ossTemplate; /** * 鏌ヨ鐜版湁鍥哄寲鐨勭▼搴忥紝鏆傚畾鏉′欢锛氶浂缁勪欢鍙风浉鍚岋紝涓旀槸鍚屼竴鏈哄簥缁� * @param partNo @@ -71,21 +72,57 @@ return this.getBaseMapper().getCuredNcProgram(partNo,machine.getMachineGroupCode()); } - /** - * 鏌ヨ鐜版湁鍥哄寲鐨勭▼搴忥紝鏆傚畾鏉′欢锛氶浂缁勪欢鍙风浉鍚岋紝涓旀槸鍚屼竴鏈哄簥缁� - * @param name 绋嬪簭鍚嶇О - * @return - */ - public NcProgram getLastNcProgram(String name) { - return this.getBaseMapper().getLastNcProgram(name); - } /** * 涓婁紶绋嬪簭鏂囦欢鍒版寚瀹氳妭鐐� * @param file * @param nodeId - * @param category + * @param category 鏂囦欢鍒嗙被锛堢▼搴忔枃浠�/鍏朵粬鏂囦欢锛� */ - public void uploadNcFile(MultipartFile file, Long nodeId, String category) { + public void uploadProgramFile(MultipartFile file, Long nodeId, String category) { + BladeFile bfile = ossTemplate.putFile(file); + String link = bfile.getLink(); + //淇濆瓨profame + NcProgram prog = new NcProgram(); + prog.setName(file.getOriginalFilename()); + prog.setNcNodeId(nodeId); + prog.setOssName(bfile.getName()); + boolean isTextFile = false; + try { + isTextFile = FileContentUtil.isTextFile(file.getInputStream()); + } catch (IOException e) { + log.warn("鍒ゆ柇鏄惁鏂囨湰鏂囦欢寮傚父",e); + } + prog.setIsTextFile(isTextFile); + prog.setUrl(link); + prog.setCategory(category); + + this.save(prog); + } + + /** + * 鍒犻櫎涓�涓▼搴� + * @param id + */ + public String getFileContent(Long id) { + String result =""; + + NcProgram prog = this.getById(id); + String fileName = prog.getOssName(); + try (InputStream inputStream = ossTemplate.statFileStream(fileName)) { + result = IOUtils.toString(inputStream, StandardCharsets.UTF_8); + } catch (IOException e) { + throw new RuntimeException(e); + } + return result; + } + /** + * 鍒犻櫎涓�涓▼搴� + * @param id + */ + public void removeProgram(Long id) { + NcProgram prog = this.getById(id); + ossTemplate.removeFile(prog.getOssName()); + this.getBaseMapper().deleteById(id); } } -- Gitblit v1.9.3