From 862ce715220e822a883468b36cfdd040af71d03d Mon Sep 17 00:00:00 2001 From: lyh <925863403@qq.com> Date: 星期二, 05 八月 2025 23:37:17 +0800 Subject: [PATCH] 修改文件检验与启动指派流程 --- lxzn-module-dnc/src/main/java/org/jeecg/modules/dncFlow/service/impl/AssignFileStreamServiceImpl.java | 30 +++++++++++++++++++----------- 1 files changed, 19 insertions(+), 11 deletions(-) diff --git a/lxzn-module-dnc/src/main/java/org/jeecg/modules/dncFlow/service/impl/AssignFileStreamServiceImpl.java b/lxzn-module-dnc/src/main/java/org/jeecg/modules/dncFlow/service/impl/AssignFileStreamServiceImpl.java index 036ac42..0f183e4 100644 --- a/lxzn-module-dnc/src/main/java/org/jeecg/modules/dncFlow/service/impl/AssignFileStreamServiceImpl.java +++ b/lxzn-module-dnc/src/main/java/org/jeecg/modules/dncFlow/service/impl/AssignFileStreamServiceImpl.java @@ -98,15 +98,23 @@ private String secretFolder; //娑夊瘑缃戜紶杈搉c鏂囦欢澶� @Autowired private FileFerryService ferryService; + @Autowired + private IDocClassificationService iDocClassificationService; @Override @Transactional(rollbackFor = {Exception.class}) - public Result applyAssignFile(AssignFileStream stream) { + public Result<?> applyAssignFile(AssignFileStream stream) { synchronized (this){ //鍒ゆ柇璁惧鐗规畩瀛楃 String specialChar = getDeviceSpecialChar(stream.getDeviceId(),stream.getFileId()); if (StrUtil.isNotEmpty(specialChar)){ //鎶涘嚭鐗规畩瀛楃寮傚父 return Result.error("鏂囦欢鍚嶇О瀛樺湪璁惧鐗规畩瀛楃"); + } + //鏌ヨ鏂囨。鐨勭姸鎬侊紝鎵瑰噯鐘舵�佹墠鍙互鎸囨淳 + DocInfo docInfo=getDocInfo(stream); + DocClassification docClassification=iDocClassificationService.getById(docInfo.getClassificationId()); + if (docInfo.getDocDispatchStatus()!=null&&docInfo.getDocDispatchStatus()!=3&&docInfo.getDocDispatchStatus()!=5&&docClassification.getClassificationCode().equals("nc")){ + return Result.error("璇ユ枃浠剁姸鎬佷笉鍏佽鎸囨淳,璇峰厛瀹屾垚瀹$娴佺▼"); } if(flowableEnable) { return applyAssignFileActive(stream); @@ -177,11 +185,11 @@ DocFile docFile = docFileService.getById(stream.getFileId()); DocInfo deviceDoc = docInfoService.getByDocAttrAndDocId(stream.getDocId(), 7, stream.getDeviceId()); if (deviceDoc != null) { - handleExistingDeviceDoc(docFile, mdcEquipment, stream.getDeviceId()); + handleExistingDeviceDoc(docInfo,docFile, mdcEquipment, stream.getDeviceId()); } deviceDoc = docInfoService.findByAttrAndDocName(docInfo.getDocName(), 7, stream.getDeviceId()); if (deviceDoc != null) { - handleExistingDeviceDoc(docFile, mdcEquipment, stream.getDeviceId()); + handleExistingDeviceDoc(docInfo,docFile, mdcEquipment, stream.getDeviceId()); } PermissionStreamNew permissionStreams = getPermissionStreams(stream); if (permissionStreams==null){ @@ -191,7 +199,7 @@ String userId = user.getId(); saveBusinessObject(stream, userId); System.out.println("鎸囨淳NC鏂囨。鍒拌澶囨祦绋嬶細" + stream.getDocId()); - flowCommonService.initActBusiness("鎸囨淳NC鏂囨。鍒拌澶囨祦绋嬶細" +docInfo.getDocName()+"."+docInfo.getDocSuffix()+"鍒拌澶�->"+mdcEquipment.getEquipmentName() , + flowCommonService.initActBusiness("鎸囨淳NC鏂囨。鍒拌澶囨祦绋嬶細" +docInfo.getDocName()+"."+docInfo.getDocSuffix()+"鍒拌澶�->"+mdcEquipment.getEquipmentId() , stream.getStreamId(), "IAssignFileStreamService", "assign_nc_to_device", null); Map<String, Object> variables = new HashMap<>(); variables.put("dataId", stream.getStreamId()); @@ -258,9 +266,9 @@ } handleFileTransfer(mdcEquipment, docFile); //NC鏂囦欢鐨勬嫹璐� - handleFileProcessing(docFile, mdcEquipment, secretFolder); +// handleFileProcessing(docFile, mdcEquipment, secretFolder); //瀵瑰簲浜у搧缁撴瀯鏍戞嫹璐� - handleProductTree(docInfo,docRelativeList.get(0),mdcEquipment.getEquipmentId()); +// handleProductTree(docInfo,docRelativeList.get(0),mdcEquipment.getEquipmentId()); synchronizedFlagService.updateFlag(2); return Result.OK("鎿嶄綔鎴愬姛"); } @@ -397,9 +405,9 @@ //娑夊瘑缃戣繘琛孨C鏂囦欢鐨勬嫹璐� handleFileTransfer(mdcEquipment, docFile); //NC鏂囦欢鐨勬嫹璐� - handleFileProcessing(docFile, mdcEquipment, secretFolder); +// handleFileProcessing(docFile, mdcEquipment, secretFolder); //瀵瑰簲浜у搧缁撴瀯鏍戞嫹璐� - handleProductTree(docInfo,docRelativeList.get(0),mdcEquipment.getEquipmentId()); +// handleProductTree(docInfo,docRelativeList.get(0),mdcEquipment.getEquipmentId()); return synchronizedFlagService.updateFlag(1); }else if(up.getStatus() == 3) { //鎷掔粷鎿嶄綔 浠�涔堜篃涓嶅仛 @@ -524,16 +532,16 @@ } //鑾峰彇鏂囦欢 - private void handleExistingDeviceDoc(DocFile docFile, MdcEquipment mdcEquipment, String deviceId) { + private void handleExistingDeviceDoc(DocInfo docInfo,DocFile docFile, MdcEquipment mdcEquipment, String deviceId) { List<String> strings = iMdcProductionService.findListParentTreeAll(mdcEquipment.getId()); if (strings != null && !strings.isEmpty()) { String path = StringUtils.join(strings.toArray(), "/"); boolean copyFileNc = FileUtilS.copyFileNcToBak(path + "/" + mdcEquipment.getEquipmentId(), docFile.getFileName(), docFile.getFileSuffix()); if (!copyFileNc) { - ExceptionCast.cast(ActivitiCode.ACT_FILE_ERROR); + ExceptionCast.cast(ActivitiCode.ACT_DEVICE_DOC_ERROR); } else { - DocInfo deviceDoc = docInfoService.getByDocAttrAndDocId(deviceId, 7, deviceId); + DocInfo deviceDoc = docInfoService.getByDocAttrAndDocId(docInfo.getDocId(), 7, deviceId); boolean doc = docRelativeService.deleteDocByAttr(deviceDoc.getDocId(), 7, deviceId); if (!doc) { ExceptionCast.cast(ActivitiCode.ACT_DOC_ERROR_DELEVE); -- Gitblit v1.9.3