From 87895ab581b2f44e3492e4395dce5fc7e8341363 Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期六, 16 八月 2025 17:00:48 +0800
Subject: [PATCH] 替换注化
---
blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/ReplaceFlowService.java | 54 ++++++++++++++++++++++++++++++++----------------------
1 files changed, 32 insertions(+), 22 deletions(-)
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/ReplaceFlowService.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/ReplaceFlowService.java
index aff5e3c..e3c53f1 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/ReplaceFlowService.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/ReplaceFlowService.java
@@ -23,6 +23,7 @@
import org.springblade.mdm.program.entity.NcNode;
import org.springblade.mdm.program.service.NcNodeService;
import org.springblade.mdm.program.service.NodeDeptQueryService;
+import org.springblade.mdm.program.service.ProgramFlowStatusQueryService;
import org.springblade.mdm.program.vo.NcNodeVO;
import org.springblade.mdm.utils.EntityUtil;
import org.springblade.mdm.utils.ProgramFileNameCheckUtil;
@@ -43,9 +44,11 @@
public class ReplaceFlowService {
private final NcNodeService nodeService;
private final RuntimeService runtimeService;
+ private final TaskService taskService;
private final IdentityService identityService;
private final FlowProgramFileService flowProgramFileService;
private final ReplaceProgramFileService replaceProgramFileService;
+ private final ProgramFlowStatusQueryService flowStatusQueryService;
private final NodeDeptQueryService nodeDeptQueryService;
private OssTemplate ossTemplate;
public static final String NODE_ID = "nodeId";
@@ -78,8 +81,15 @@
*/
+ /**
+ * 鍑嗗鏇挎崲娴佺▼闇�瑕佺殑鏁版嵁
+ * @param nodeId 瑕佹浛鎹㈢殑绋嬪簭鍖呭悕鑺傜偣id
+ * @param tempInstanceId 涓存椂娴佺▼瀹炰緥id锛岀敤浜庢柊鐨勬枃浠�
+ * @return 鍚姩鏁版嵁
+ */
@Transactional
public NcNodeVO pre(long nodeId, String tempInstanceId) {
+ checkFlowStatus(nodeId);
List<NcNode> fileNodes = nodeService.lambdaQuery()
.eq(NcNode::getParentId, nodeId)
@@ -112,6 +122,14 @@
return vo;
}
+ void checkFlowStatus(long nodeId) {
+ NcNode packageNode = nodeService.getById(nodeId);
+ int status = flowStatusQueryService.queryFlowStatus(packageNode.getProcessInstanceId());
+ if (status == 1) {
+ throw new ServiceException("绋嬪簭鐨勬祦绋嬫鍦ㄨ繘琛屼腑锛屼笉鑳借繘琛屾浛鎹�");
+ }
+ }
+
/**
* 鍚姩鏇挎崲娴佺▼
*/
@@ -142,34 +160,24 @@
vars.put(FlowContants.PRODUCT_MODEL,programPackage.getProductModel());
vars.put(NODE_ID, startVO.getNodeId());
+
+ vars.put("comment", startVO.getComment());
identityService.setAuthenticatedUserId(String.valueOf(AuthUtil.getUserId()));//璁剧疆娴佺▼鍙戣捣浜�
ProcessInstance inst = runtimeService.startProcessInstanceByKey(FlowContants.REPLACE_PROCESS_KEY,startVO.getNodeId()+"",vars);
//replaceProgramFileService.lambdaUpdate().eq(ReplaceProgramFile::getTempId,startVO.getTempId()).set(ReplaceProgramFile::getProcessInstanceId,inst.getProcessInstanceId());
+ /*
+ Task startTask = taskService.createTaskQuery()
+ .processInstanceId(inst.getId())
+ .singleResult();
+
+ // 娣诲姞璇勮
+ taskService.addComment(startTask.getId(), inst.getProcessInstanceId(),startVO.getComment());
+ */
flowProgramFileService.lambdaUpdate()
.eq(FlowProgramFile::getProcessInstanceId,startVO.getTempInstanceId())
.set(FlowProgramFile::getProcessInstanceId,inst.getProcessInstanceId()).update();
- /*
- List<ReplaceProgramFile> repFiles = replaceProgramFileService.lambdaQuery().eq(ReplaceProgramFile::getTempId,startVO.getTempId()).list();
-
- for(ReplaceProgramFile repFile : repFiles) {
- FlowProgramFile flowProgramFile = new FlowProgramFile();
- BeanUtils.copyProperties(repFile, flowProgramFile);
- flowProgramFile.setProgramName(programPackge.getName());
-
- EntityUtil.clearBaseProperties(flowProgramFile);
- flowProgramFile.setProcessInstanceId(inst.getId());
- flowProgramFile.setIsCured(0);
-
- flowProgramFileService.save(flowProgramFile);
- }
-
- //鏆傛椂娉ㄩ噴锛屾祴璇曟柟渚�
- replaceProgramFileService.deleteByTempId(startVO.getTempId());
-
- */
- //return inst.getProcessInstanceId();
}
@@ -185,7 +193,10 @@
throw new ServiceException("绋嬪簭鏂囦欢涓嶅彲涓虹┖鏂囦欢");
}
FlowProgramProperties progProps = new FlowProgramProperties();
- //set
+ progProps.setDrawingNo(uploadVO.getDrawingNo());
+ progProps.setProcessNo(uploadVO.getProcessNo());
+ progProps.setProcessEdition(uploadVO.getProcessEdition());
+
ProgramFileNameCheckUtil.checkFilename(file.getOriginalFilename(),progProps);
String programName = NcNodeService.genProgramName(progProps.getDrawingNo(),progProps.getProcessNo());
@@ -196,7 +207,6 @@
progFile.setName(file.getOriginalFilename());
progFile.setOssName(bfile.getName());
progFile.setProcessInstanceId(uploadVO.getProcessInstanceId());
- progFile.setIsCured(0);
progFile.setProgramName(programName);
flowProgramFileService.save(progFile);
--
Gitblit v1.9.3