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/NcProgramService.java | 107 +++++++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 94 insertions(+), 13 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 0429718..dfe7c10 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
@@ -25,6 +25,8 @@
*/
package org.springblade.mdm.program.service;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.fasterxml.jackson.databind.ObjectMapper;
import lombok.AllArgsConstructor;
@@ -32,6 +34,7 @@
import org.apache.commons.io.IOUtils;
import org.flowable.engine.*;
import org.springblade.core.mp.base.BizServiceImpl;
+import org.springblade.core.mp.support.Condition;
import org.springblade.core.oss.OssTemplate;
import org.springblade.core.oss.model.BladeFile;
import org.springblade.mdm.basesetting.machine.MachineService;
@@ -42,6 +45,7 @@
import org.springblade.mdm.program.entity.NcProgram;
import org.springblade.mdm.program.mapper.ProgramSeqMapper;
import org.springblade.mdm.program.vo.DncSendBackData;
+import org.springblade.mdm.program.vo.NcNodeProgramQueryVO;
import org.springblade.mdm.program.vo.NcProgramUploadVO;
import org.springblade.mdm.program.vo.NcProgramVO;
import org.springblade.mdm.utils.FileContentUtil;
@@ -67,20 +71,18 @@
public class NcProgramService extends BizServiceImpl<NcProgramMapper, NcProgram> {
private final MachineService machineService;
-
private final OssTemplate ossTemplate;
private final NcNodeService nodeService;
-
private final ProgramSeqMapper seqMapper;
/**
* 鏌ヨ鐜版湁鍥哄寲鐨勭▼搴忥紝鏆傚畾鏉′欢锛氶浂缁勪欢鍙风浉鍚岋紝涓旀槸鍚屼竴鏈哄簥缁�
- * @param partNo
+ * @param drwaingNo
* @param machineCode
* @return
*/
- public List<NcProgram> getCuredNcProgram(String partNo,String machineCode) {
+ public List<NcProgram> getCuredNcProgram(String drwaingNo,String machineCode) {
Machine machine = machineService.getByCode(machineCode);
- return this.getBaseMapper().getCuredNcProgram(partNo,machine.getMachineGroupCode());
+ return this.getBaseMapper().getCuredNcProgram(drwaingNo,machine.getMachineGroupCode());
}
@@ -89,7 +91,6 @@
* @param uploadVO 涓婁紶鏂囦欢琛ㄥ崟鏁版嵁
*/
public void uploadProgramFile(NcProgramUploadVO uploadVO) {
-
MultipartFile file = uploadVO.getFile();
BladeFile bfile = ossTemplate.putFile(uploadVO.getFile());
@@ -100,7 +101,7 @@
prog.setName(file.getOriginalFilename());
prog.setNcNodeId(uploadVO.getNodeId());
prog.setOssName(bfile.getName());
- prog.setPartNo(uploadVO.getPartNo());
+ prog.setDrawingNo(uploadVO.getDrawingNo());
prog.setProcessEdition(uploadVO.getProcessEdition());
prog.setIsLastEdition(1);
boolean isTextFile = false;
@@ -116,6 +117,49 @@
this.save(prog);
}
+ /**
+ * 涓婁紶绋嬪簭鏂囦欢鍒版寚瀹氳妭鐐�
+ * @param uploadVO 涓婁紶鏂囦欢琛ㄥ崟鏁版嵁
+ */
+ public void uploadProgramFileNew(NcProgramUploadVO uploadVO) {
+
+ MultipartFile file = uploadVO.getFile();
+ BladeFile bfile = ossTemplate.putFile(uploadVO.getFile());
+ String link = bfile.getLink();
+ //淇濆瓨profame
+ NcProgram prog = new NcProgram();
+ prog.setCode(generageCode());
+ prog.setName(file.getOriginalFilename());
+ prog.setNcNodeId(uploadVO.getNodeId());
+ prog.setOssName(bfile.getName());
+ prog.setDrawingNo(uploadVO.getDrawingNo());
+ prog.setProcessEdition(uploadVO.getProcessEdition());
+ prog.setIsLastEdition(1);
+ prog.setMachineCode(uploadVO.getMachineCode());
+ boolean isTextFile = false;
+ try {
+ isTextFile = FileContentUtil.isTextFile(file.getInputStream());
+ } catch (IOException e) {
+ log.warn("鍒ゆ柇鏄惁鏂囨湰鏂囦欢寮傚父",e);
+ }
+ prog.setIsTextFile(isTextFile);
+ prog.setUrl(link);
+ prog.setCategory(uploadVO.getCategory());
+
+ NcNode node = new NcNode();
+ node.setNodeType("70");//鏂囦欢鑺傜偣
+ node.setName(prog.getName());
+ node.setMachineCode(uploadVO.getMachineCode());
+ node.setParentId(uploadVO.getNodeId());
+ node.setDrawingNo(uploadVO.getDrawingNo());
+ node.setProcessName(uploadVO.getProcessName());
+
+ nodeService.save(node);
+
+ prog.setBindNcNodeId(node.getId());
+ this.save(prog);
+ }
+
String generageCode(){
ProgramSeq program = new ProgramSeq();
seqMapper.insert(program);
@@ -125,17 +169,45 @@
}
/**
* 鍒犻櫎涓�涓▼搴�
- * @param id
+ * @param id 绋嬪簭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);
+ if(prog.getIsTextFile()!=null && prog.getIsTextFile()){
+ String fileName = prog.getOssName();
+ try (InputStream inputStream = ossTemplate.statFileStream(fileName)) {
+ result = IOUtils.toString(inputStream, StandardCharsets.UTF_8);
+ } catch (IOException e) {
+ throw new RuntimeException(e);
+ }
+ }else{
+ result = "闈炴枃鏈牸寮忔枃浠�";
+ }
+ return result;
+ }
+
+ /**
+ * 鑾峰彇鏂囦欢鍐呴タ鍝﹂偅涓�
+ * @param ncNodeId 鑺傜偣id
+ */
+ public String getFileContentByNodeId(Long ncNodeId) {
+ String result ="";
+ NcNode node = this.nodeService.getById(ncNodeId);
+ LambdaQueryWrapper<NcProgram> wrapper = new LambdaQueryWrapper<>();
+ wrapper.eq(NcProgram::getBindNcNodeId, ncNodeId);
+ wrapper.eq(NcProgram::getIsLastEdition,1);
+ NcProgram prog = this.getOne(wrapper);
+ if(prog.getIsTextFile()!=null && prog.getIsTextFile()){
+ String fileName = prog.getOssName();
+ try (InputStream inputStream = ossTemplate.statFileStream(fileName)) {
+ result = IOUtils.toString(inputStream, StandardCharsets.UTF_8);
+ } catch (IOException e) {
+ throw new RuntimeException(e);
+ }
+ }else{
+ result = "闈炴枃鏈牸寮忔枃浠�";
}
return result;
}
@@ -183,4 +255,13 @@
this.save(newVerProg);
}
+
+ /**
+ * 鍒嗛〉鏌ヨ锛岀敤浜庡鎵规椂閫夋嫨绋嬪簭
+ * @param query
+ * @return
+ */
+ public IPage<NcProgramVO> pageQuery(NcNodeProgramQueryVO query) {
+ return this.getBaseMapper().pageQuery(Condition.getPage(query),query);
+ }
}
--
Gitblit v1.9.3